Skip to content

system-tests

system-tests #785

Workflow file for this run

name: system-tests
on:
workflow_run:
workflows: ["Package"]
types:
- completed
branches:
- master
- develop**
- dd-appsec-php-**
workflow_dispatch:
schedule:
- cron: '00 04 * * 2-6'
jobs:
system-tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- weblog-variant: apache-mod-7.0
- weblog-variant: apache-mod-7.0-zts
- weblog-variant: php-fpm-7.0
- weblog-variant: apache-mod-7.1
- weblog-variant: apache-mod-7.1-zts
- weblog-variant: php-fpm-7.1
- weblog-variant: apache-mod-7.2
- weblog-variant: apache-mod-7.2-zts
- weblog-variant: php-fpm-7.2
- weblog-variant: apache-mod-7.3
- weblog-variant: apache-mod-7.3-zts
- weblog-variant: php-fpm-7.3
- weblog-variant: apache-mod-7.4
- weblog-variant: apache-mod-7.4-zts
- weblog-variant: php-fpm-7.4
- weblog-variant: apache-mod-8.0
- weblog-variant: apache-mod-8.0-zts
- weblog-variant: php-fpm-8.0
- weblog-variant: apache-mod-8.1
- weblog-variant: apache-mod-8.1-zts
- weblog-variant: php-fpm-8.1
- weblog-variant: apache-mod-8.2
- weblog-variant: apache-mod-8.2-zts
- weblog-variant: php-fpm-8.2
env:
TEST_LIBRARY: php
WEBLOG_VARIANT: ${{ matrix.weblog-variant }}
DD_API_KEY: ${{ secrets.DD_API_KEY }}
steps:
- name: Setup python 3.9
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Checkout system tests
uses: actions/checkout@v3
with:
repository: 'DataDog/system-tests'
- name: Download artifact
uses: dawidd6/action-download-artifact@v2
with:
workflow: package.yml
workflow_conclusion: success
name: package
path: binaries/
- name: Remove debug package
run: |
ls -la binaries/
rm binaries/*debug.tar.gz
- name: Build
run: ./build.sh
- name: Run DEFAULT scenario
run: ./run.sh DEFAULT
- name: Run REMOTE_CONFIG_MOCKED_BACKEND_ASM_FEATURES scenario
run: ./run.sh REMOTE_CONFIG_MOCKED_BACKEND_ASM_FEATURES
- name: Run REMOTE_CONFIG_MOCKED_BACKEND_LIVE_DEBUGGING scenario
run: ./run.sh REMOTE_CONFIG_MOCKED_BACKEND_LIVE_DEBUGGING
- name: Run REMOTE_CONFIG_MOCKED_BACKEND_ASM_DD scenario
run: ./run.sh REMOTE_CONFIG_MOCKED_BACKEND_ASM_DD
- name: Run APPSEC_MISSING_RULES scenario
run: ./run.sh APPSEC_MISSING_RULES
- name: Run APPSEC_CORRUPTED_RULES scenario
run: ./run.sh APPSEC_CORRUPTED_RULES
- name: Run APPSEC_CUSTOM_RULES scenario
run: ./run.sh APPSEC_CUSTOM_RULES
- name: Run APPSEC_RULES_MONITORING_WITH_ERRORS scenario
run: ./run.sh APPSEC_RULES_MONITORING_WITH_ERRORS
- name: Run APPSEC_BLOCKING scenario
run: ./run.sh APPSEC_BLOCKING
- name: Run APPSEC_DISABLED scenario
run: ./run.sh APPSEC_DISABLED
- name: Run APPSEC_LOW_WAF_TIMEOUT scenario
run: ./run.sh APPSEC_LOW_WAF_TIMEOUT
- name: Run APPSEC_CUSTOM_OBFUSCATION scenario
run: ./run.sh APPSEC_CUSTOM_OBFUSCATION
- name: Run APPSEC_RATE_LIMITER scenario
run: ./run.sh APPSEC_RATE_LIMITER
- name: Run APPSEC_BLOCKING_FULL_DENYLIST scenario
run: ./run.sh APPSEC_BLOCKING_FULL_DENYLIST
- name: Run APPSEC_RUNTIME_ACTIVATION scenario
run: ./run.sh APPSEC_RUNTIME_ACTIVATION
- name: Run APPSEC_WAF_TELEMETRY scenario
run: ./run.sh APPSEC_WAF_TELEMETRY
- name: Compress artifact
if: ${{ always() }}
run: tar -czvf artifact.tar.gz $(ls | grep logs)
- name: Upload artifact
uses: actions/upload-artifact@v3
if: ${{ always() }}
with:
name: logs_${{ matrix.weblog-variant }}
path: artifact.tar.gz