Skip to content

v5.27.1

v5.27.1 #15733

Workflow file for this run

name: System Tests
on:
pull_request:
branches:
- "**"
push:
branches: [master]
workflow_dispatch: {}
schedule:
- cron: '00 04 * * 2-6'
jobs:
build-artifacts:
runs-on: ubuntu-latest
steps:
- name: Checkout dd-trace-js
uses: actions/checkout@v4
with:
path: dd-trace-js
- name: Pack dd-trace-js
run: mkdir -p ./binaries && echo /binaries/$(npm pack --pack-destination ./binaries ./dd-trace-js) > ./binaries/nodejs-load-from-npm
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: system_tests_binaries
path: ./binaries/**/*
get-scenarios:
name: Get parameters
uses: DataDog/system-tests/.github/workflows/compute-workflow-parameters.yml@main
with:
library: nodejs
scenarios_groups: essentials,appsec_rasp
system-tests:
runs-on: ${{ contains(fromJSON('["CROSSED_TRACING_LIBRARIES", "INTEGRATIONS"]'), matrix.scenario) && 'ubuntu-latest-16-cores' || 'ubuntu-latest' }}
needs:
- get-scenarios
strategy:
matrix:
weblog-variant: ${{fromJson(needs.get-scenarios.outputs.endtoend_weblogs)}}
scenario: ${{fromJson(needs.get-scenarios.outputs.endtoend_scenarios)}}
env:
TEST_LIBRARY: nodejs
WEBLOG_VARIANT: ${{ matrix.weblog-variant }}
DD_API_KEY: ${{ secrets.DD_API_KEY }}
SYSTEM_TESTS_AWS_ACCESS_KEY_ID: ${{ secrets.IDM_AWS_ACCESS_KEY_ID }}
SYSTEM_TESTS_AWS_SECRET_ACCESS_KEY: ${{ secrets.IDM_AWS_SECRET_ACCESS_KEY }}
steps:
- name: Checkout system tests
uses: actions/checkout@v4
with:
repository: 'DataDog/system-tests'
- name: Checkout dd-trace-js
uses: actions/checkout@v4
with:
path: 'binaries/dd-trace-js'
- name: Build runner
uses: ./.github/actions/install_runner
- name: Pull images
uses: ./.github/actions/pull_images
with:
library: nodejs
weblog: ${{ matrix.weblog-variant }}
scenarios: '["${{ matrix.scenario }}"]'
cleanup: false
- name: Build weblog
run: ./build.sh -i weblog
- name: Build agent
id: build-agent
run: ./build.sh -i agent
- name: Run scenario ${{ matrix.scenario }}
run: ./run.sh ${{ matrix.scenario }}
- name: Compress artifact
if: ${{ always() }}
run: tar -czvf artifact.tar.gz $(ls | grep logs)
- name: Upload artifact
uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: logs_${{ matrix.weblog-variant }}-${{ matrix.scenario }}
path: artifact.tar.gz
parametric:
needs:
- build-artifacts
uses: DataDog/system-tests/.github/workflows/run-parametric.yml@main
secrets: inherit
with:
library: nodejs
binaries_artifact: system_tests_binaries
_experimental_job_count: 8
_experimental_job_matrix: '[1,2,3,4,5,6,7,8]'