RegTests IoLoopV2 #28
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: RegTests IoLoopV2 | |
| # Manually triggered only | |
| on: | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| strategy: | |
| matrix: | |
| # Test of these containers | |
| container: ["ubuntu-dev:20"] | |
| proactor: [Uring] | |
| build-type: [Debug, Release] | |
| runner: [ubuntu-latest, [self-hosted, linux, ARM64]] | |
| runs-on: ${{ matrix.runner }} | |
| container: | |
| image: ghcr.io/romange/${{ matrix.container }} | |
| options: --security-opt seccomp=unconfined --sysctl "net.ipv6.conf.all.disable_ipv6=0" | |
| volumes: | |
| - /var/crash:/var/crash | |
| steps: | |
| - uses: actions/checkout@v5 | |
| with: | |
| submodules: true | |
| - name: Print environment info | |
| run: | | |
| cat /proc/cpuinfo | |
| ulimit -a | |
| env | |
| - name: Configure & Build | |
| run: | | |
| # -no-pie to disable address randomization so we could symbolize stacktraces | |
| cmake -B ${GITHUB_WORKSPACE}/build -DCMAKE_BUILD_TYPE=${{matrix.build-type}} -GNinja \ | |
| -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DPRINT_STACKTRACES_ON_SIGNAL=ON \ | |
| -DCMAKE_CXX_FLAGS=-no-pie -DHELIO_STACK_CHECK:STRING=4096 | |
| cd ${GITHUB_WORKSPACE}/build && ninja dragonfly | |
| pwd | |
| ls -l .. | |
| - name: Run regression tests action | |
| uses: ./.github/actions/regression-tests | |
| with: | |
| dfly-executable: dragonfly | |
| gspace-secret: ${{ secrets.GSPACES_BOT_DF_BUILD }} | |
| build-folder-name: build | |
| filter: ${{ matrix.build-type == 'Release' && 'not debug_only and not tls' || 'not opt_only and not tls' }} | |
| aws-access-key-id: ${{ secrets.AWS_S3_ACCESS_KEY }} | |
| aws-secret-access-key: ${{ secrets.AWS_S3_ACCESS_SECRET }} | |
| s3-bucket: ${{ secrets.S3_REGTEST_BUCKET }} | |
| df-arg: "experimental_io_loop_v2" | |
| - name: Upload logs on failure | |
| if: failure() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: logs | |
| path: /tmp/failed/* | |
| - name: Copy binary on a self hosted runner | |
| if: failure() | |
| run: | | |
| # We must use sh syntax. | |
| if [ "$RUNNER_ENVIRONMENT" = "self-hosted" ]; then | |
| cd ${GITHUB_WORKSPACE}/build | |
| timestamp=$(date +%Y-%m-%d_%H:%M:%S) | |
| mv ./dragonfly /var/crash/dragonfy_${timestamp} | |
| fi | |
| lint-test-chart: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: ./.github/actions/lint-test-chart |