10 URI: /demo/server/server.php
11 HTTPSSERVER: localhost
12 HTTPSURI: /demo/server/server.php
13 PROXYSERVER: localhost:8080
14 # Travis currently compiles PHP with an oldish cURL/GnuTLS combination;
15 # to make the tests pass when Apache has a bogus SSL cert whe need the full set of options below
23 php: ['8.1', '8.0', '7.4', '7.3', '7.2', '7.1', '7.0', '5.6', '5.5', '5.4', '5.3']
26 uses: shivammathur/setup-php@v2
28 php-version: ${{ matrix.php }}
29 extensions: curl, dom, mbstring, xsl
32 # run: 'php -v && env'
34 uses: actions/checkout@v2
36 run: 'chmod 755 ./tests/ci/setup/*.sh && sudo ./tests/ci/setup/setup_perl.sh && sudo ./tests/ci/setup/setup_apache.sh && sudo ./tests/ci/setup/setup_privoxy.sh'
37 # Avoid downloading composer deps on every workflow. Is this useful for us?
39 # uses: actions/cache@v2
41 # path: /tmp/composer-cache
42 # key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }}
44 # simpler alternative ? Atm, php-actions/composer also fails because of missing php xsl extension!
45 #uses: php-actions/composer@v6
46 run: 'composer install'
48 if: ${{ matrix.php == '7.4' }}
49 run: './tests/ci/setup/setup_code_coverage.sh enable'
51 # @todo bring back $PHPUNIT_OPTS
52 run: './vendor/bin/phpunit -v tests'
54 run: 'python3 demo/client/python/test.py'
56 run: 'perl demo/client/perl/test.pl'
59 run: 'systemctl status apache2.service; env; php -i; sudo cat /var/log/privoxy/*; sudo cat /var/log/apache2/error.log; sudo cat /var/log/apache2/other_vhosts_access.log; sudo cat /var/log/php*.log'