Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v5.18.0 #4496

Merged
merged 70 commits into from
Jul 11, 2024
Merged

v5.18.0 #4496

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
70 commits
Select commit Hold shift + click to select a range
31a88ef
Exploit prevention metrics (#4370)
uurien Jun 11, 2024
02379d4
update appsec rules to 1.12.0 (#4398)
simon-id Jun 11, 2024
4797c12
Fix cassandra tests (#4403)
uurien Jun 14, 2024
5e7a088
Add support to `generate_stack` action (#4382)
CarlesDD Jun 17, 2024
2191cd7
Add js hapi macrobenchmark (#4407)
Jun 18, 2024
ad9500e
add datadog static analyzer (#4409)
juli1 Jun 18, 2024
0b35f31
update dep: import-in-the-middle@^1.8.1 (#4414)
tlhunter Jun 19, 2024
52fc3ca
Improve nextjs tests flakyness (#4411)
uurien Jun 19, 2024
e73e441
Standalone ASM configuration and span tags (#4291)
iunanua Jun 19, 2024
ab74445
fix: child_process: default to tracer service name (#4417)
tlhunter Jun 20, 2024
a11357e
Fix stack trace collection for appsec events (#4410)
CarlesDD Jun 21, 2024
61d04dd
increase timeout for aws-sdk and next tests (#4421)
rochdev Jun 21, 2024
52aa03a
fix missing on section in static analysis yaml (#4422)
rochdev Jun 21, 2024
f313876
remove get-port usage from http tests and test agent (#4426)
rochdev Jun 22, 2024
013e24b
Fix rasp tests (#4432)
uurien Jun 24, 2024
24fe532
test: add a test for express 404 errors (#4423)
tlhunter Jun 24, 2024
d350b46
remove most get-port usage in appsec tests (#4428)
rochdev Jun 24, 2024
9f58562
remove actual resolution for dns resolve test (#4430)
rochdev Jun 24, 2024
f328139
increase timeout of profiler integration test to 30s (#4431)
rochdev Jun 24, 2024
a15d60b
tracing(aws-sdk): improve sqs dsm tracing experience (#4425)
wconti27 Jun 24, 2024
7a85bdf
deps: upgrade lru-cache@^7.14.0 -> ^10.2.2 (#4435)
tlhunter Jun 25, 2024
07457c6
remove most usage of get-port for plugin tests (#4429)
rochdev Jun 25, 2024
14cd6ae
Revert "deps: upgrade lru-cache@^7.14.0 -> ^10.2.2 (#4435)" (#4437)
tlhunter Jun 25, 2024
7b2f4b5
[CI] Use system-tests reusable workflow for PARAMETRIC scenario (#4438)
cbeauchesne Jun 25, 2024
34c78f2
fix(openai): safe require `tiktoken` for webpack bundlers (#4433)
sabrenner Jun 25, 2024
9f4e5c3
split couchbase tests by major version (#4439)
rochdev Jun 26, 2024
0948797
split nextjs tests by major versions (#4441)
rochdev Jun 26, 2024
ace344f
increase timeout for integration test helpers to 30s (#4443)
rochdev Jun 26, 2024
3f0e5bb
Add runtime guardrail for SSI (#4319)
bengl Jun 26, 2024
2ca11a9
remove async_hooks implem (#4399)
simon-id Jun 26, 2024
7df4a05
Collect request headers on user event (#4385)
uurien Jun 27, 2024
46f8d19
[appsec] do not ping `ifconfig.pro` in RASP tests (#4444)
simon-id Jun 27, 2024
edc4749
split parametric tests on multiple machines (#4436)
rochdev Jun 27, 2024
0390e18
fix(openai): handle `image_url` option on chat completion request gra…
sabrenner Jun 27, 2024
c387516
test: enable an esbuild test for early node v16 versions (#4447)
tlhunter Jun 28, 2024
9777ed2
[test-visibility] Add support for vitest (#4415)
juan-fernandez Jun 28, 2024
7ea06d1
PROF-9979: use SIMPLE_HOST_AUTO_INJECTION_PROFILING target (#4450)
szegedi Jul 1, 2024
06c9ae4
[test visibility] Reorg test visibility e2e tests for mocha and jest …
juan-fernandez Jul 2, 2024
f9409ee
[test visibility] Speed up cypress tests (#4457)
juan-fernandez Jul 2, 2024
9ba4a0b
tracing(aws): add configuration option to inject all messages with tr…
wconti27 Jul 2, 2024
f89e954
ci: fix issue with actions/checkout@v3 (#4463)
watson Jul 4, 2024
7ea3ddc
Use OS-independent path separators in scripts/install_plugin_modules.…
watson Jul 4, 2024
d74d131
docs: add a Testing Prerequisites section to CONTRIBUTING.md (#4462)
watson Jul 4, 2024
a345693
ci: exclude aerospike on arm64 archs when running 'yarn services' (#4…
watson Jul 4, 2024
5dcd35e
Update native-iast-taint-tracking to 3.0.0 (#4464)
uurien Jul 4, 2024
69c97c1
split aws-sdk and http tests by node version (#4467)
rochdev Jul 4, 2024
0f12727
disable caching for windows ci (#4469)
rochdev Jul 4, 2024
1650d8d
Standalone ASM priority sampler and tag propagation (#4416)
iunanua Jul 5, 2024
b3e8a9f
split appsec nextjs tests by nextjs version (#4468)
rochdev Jul 5, 2024
56b1eec
split cypress integration tests by module type (#4470)
rochdev Jul 5, 2024
ec89ba7
Update default appsec obfuscation regex (#4472)
uurien Jul 8, 2024
7534086
[test-visibility] Do not unsafely access `.steps` from test result in…
juan-fernandez Jul 8, 2024
b1ad33f
[test-visibility] Fix vitest instrumentation (#4480)
juan-fernandez Jul 8, 2024
f55d71d
Update Otel Invalid Telemetry Calculation (#4369)
khanayan123 Jul 8, 2024
00fec42
ci: upgrade elasticsearch service to latest 7.x (#4478)
watson Jul 9, 2024
327f83c
PROF-9979: Use SIMPLE_CONTAINER_AUTO_INJECTION_PROFILING in SSI tests…
szegedi Jul 9, 2024
07efec4
[test visibility] Add automatic flaky test retries to Mocha (#4453)
juan-fernandez Jul 9, 2024
48d8981
Fix a typo that disabled debug message logging (#4490)
szegedi Jul 9, 2024
84e90be
remove node 14 tests for aerospike (#4484)
rochdev Jul 9, 2024
a442885
increase timeout to 60s for ci integration tests (#4485)
rochdev Jul 9, 2024
26cc0f3
release dev version only when a label is used (#4483)
rochdev Jul 10, 2024
692743d
[test-visibility] Flaky test retries for cucumber (#4491)
juan-fernandez Jul 10, 2024
b653b3d
Use http.get instead of fetch in asm standalone tests (#4500)
uurien Jul 10, 2024
d9389b5
Fix init.spec.js test for node 16 (v4 release) (#4499)
juan-fernandez Jul 10, 2024
17b6c33
feat: add dd_tags to datastreams monitoring stats payload (#4481)
wconti27 Jul 10, 2024
3946606
split nextjs tests even more and increase timeout (#4486)
rochdev Jul 10, 2024
df5d0d7
add mocha configuration file and increase default timeout (#4493)
rochdev Jul 10, 2024
a8ead3e
Do not run undici tests for node16 and >=6.0.0 (#4501)
juan-fernandez Jul 10, 2024
d8560ba
[test-visibility] Fix mocha plugin tests (#4495)
juan-fernandez Jul 10, 2024
5e2767c
v5.18.0
juan-fernandez Jul 10, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .github/workflows/appsec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,9 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: actions/setup-node@v3
with:
node-version: '18'
- run: yarn install
- run: yarn test:appsec:ci
- uses: codecov/codecov-action@v3
Expand Down Expand Up @@ -207,9 +209,11 @@ jobs:
version:
- 18
- latest
range: ['9.5.0', '11.1.4', '13.2.0', '*']
runs-on: ubuntu-latest
env:
PLUGINS: next
PACKAGE_VERSION_RANGE: ${{ matrix.range }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/testagent/start
Expand Down
24 changes: 24 additions & 0 deletions .github/workflows/datadog-static-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Datadog Static Analysis

on:
pull_request:
push:
branches: [master]

jobs:
static-analysis:
runs-on: ubuntu-latest
name: Datadog Static Analyzer
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Check code meets quality and security standards
id: datadog-static-analysis
uses: DataDog/datadog-static-analyzer-github-action@v1
with:
dd_api_key: ${{ secrets.DD_STATIC_ANALYSIS_API_KEY }}
dd_app_key: ${{ secrets.DD_STATIC_ANALYSIS_APP_KEY }}
dd_service: dd-trace-js
dd_env: ci
dd_site: datadoghq.com
cpu_count: 2
88 changes: 22 additions & 66 deletions .github/workflows/plugins.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,60 +15,6 @@ concurrency:


jobs:
aerospike-node-14:
runs-on: ubuntu-latest
container:
image: ubuntu:18.04
services:
aerospike:
image: aerospike:ce-5.3.0.16
ports:
- 3000:3000
testagent:
image: ghcr.io/datadog/dd-apm-test-agent/ddapm-test-agent:v1.16.0
env:
LOG_LEVEL: DEBUG
TRACE_LANGUAGE: javascript
ENABLED_CHECKS: trace_stall,meta_tracer_version_header,trace_count_header,trace_peer_service
PORT: 9126
ports:
- 9126:9126
env:
PLUGINS: aerospike
SERVICES: aerospike
PACKAGE_VERSION_RANGE: '3.16.2 - 3.16.7'
DD_TEST_AGENT_URL: http://testagent:9126
AEROSPIKE_HOST_ADDRESS: aerospike
steps:
# Needs to remain on v3 for now due to GLIBC version
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '14'
- id: pkg
run: |
content=`cat ./package.json | tr '\n' ' '`
echo "json=$content" >> $GITHUB_OUTPUT
- id: extract
run: |
version="${{fromJson(steps.pkg.outputs.json).version}}"
majorVersion=$(echo "$version" | cut -d '.' -f 1)
echo "Major Version: $majorVersion"
echo "MAJOR_VERSION=$majorVersion" >> $GITHUB_ENV
- name: Install dependencies and run tests
if: env.MAJOR_VERSION == '3'
run: |
apt-get update && \
apt-get install -y \
python3 python3-pip \
wget \
g++ libssl1.0.0 libssl-dev zlib1g-dev && \
npm install -g yarn
yarn install --ignore-engines
yarn test:plugins:ci
- if: always()
uses: codecov/codecov-action@v2

aerospike-node-16:
runs-on: ubuntu-latest
services:
Expand Down Expand Up @@ -222,6 +168,9 @@ jobs:
- uses: codecov/codecov-action@v3

aws-sdk:
strategy:
matrix:
node-version: ['18', 'latest']
runs-on: ubuntu-latest
services:
localstack:
Expand Down Expand Up @@ -262,9 +211,9 @@ jobs:
- uses: ./.github/actions/testagent/start
- uses: ./.github/actions/node/setup
- run: yarn install
- uses: ./.github/actions/node/oldest
- run: yarn test:plugins:ci
- uses: ./.github/actions/node/latest
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: yarn test:plugins:ci
- if: always()
uses: ./.github/actions/testagent/logs
Expand Down Expand Up @@ -327,9 +276,7 @@ jobs:
runs-on: ubuntu-latest
services:
cassandra:
image: spotify/cassandra
env:
CASSANDRA_TOKEN: '-9223372036854775808'
image: cassandra:3-focal
ports:
- 9042:9042
env:
Expand Down Expand Up @@ -365,6 +312,9 @@ jobs:
- uses: codecov/codecov-action@v2

couchbase:
strategy:
matrix:
range: ['^2.6.12', '^3.0.7', '>=4.2.0']
runs-on: ubuntu-latest
services:
couchbase:
Expand All @@ -375,6 +325,7 @@ jobs:
env:
PLUGINS: couchbase
SERVICES: couchbase
PACKAGE_VERSION_RANGE: ${{ matrix.range }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/testagent/start
Expand Down Expand Up @@ -458,7 +409,7 @@ jobs:
runs-on: ubuntu-latest
services:
elasticsearch:
image: elasticsearch:7.14.0
image: elasticsearch:7.17.22
env:
discovery.type: single-node
ports:
Expand Down Expand Up @@ -622,6 +573,9 @@ jobs:
- uses: codecov/codecov-action@v3

http:
strategy:
matrix:
node-version: ['18', '20', 'latest']
runs-on: ubuntu-latest
env:
PLUGINS: http
Expand All @@ -630,11 +584,9 @@ jobs:
- uses: ./.github/actions/testagent/start
- uses: ./.github/actions/node/setup
- run: yarn install
- uses: ./.github/actions/node/18
- run: yarn test:plugins:ci
- uses: ./.github/actions/node/20
- run: yarn test:plugins:ci
- uses: ./.github/actions/node/latest
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- run: yarn test:plugins:ci
- if: always()
uses: ./.github/actions/testagent/logs
Expand Down Expand Up @@ -940,9 +892,11 @@ jobs:
version:
- 18
- latest
range: ['9.5.0', '11.1.4', '13.2.0', '*']
runs-on: ubuntu-latest
env:
PLUGINS: next
PACKAGE_VERSION_RANGE: ${{ matrix.range }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/testagent/start
Expand Down Expand Up @@ -1022,6 +976,8 @@ jobs:
PLUGINS: oracledb
SERVICES: oracledb
DD_TEST_AGENT_URL: http://testagent:9126
# Needed to fix issue with `actions/checkout@v3: https://github.com/actions/checkout/issues/1590
ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/profiling.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,9 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: actions/setup-node@v3
with:
node-version: '18'
- run: yarn install
- run: yarn test:profiler:ci
- run: yarn test:integration:profiler
Expand Down
35 changes: 34 additions & 1 deletion .github/workflows/project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,25 @@ jobs:
- run: sudo sysctl -w kernel.core_pattern='|/bin/false'
- run: yarn test:integration

# We'll run these separately for earlier (i.e. unsupported) versions
integration-guardrails:
strategy:
matrix:
version: [12, 14, 16]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: ${{ matrix.version }}
- run: yarn install --ignore-engines
- run: node node_modules/.bin/mocha --colors --timeout 30000 -r packages/dd-trace/test/setup/core.js integration-tests/init.spec.js

integration-ci:
strategy:
matrix:
version: [18, latest]
framework: [cucumber, playwright, selenium]
framework: [cucumber, playwright, selenium, jest, mocha]
runs-on: ubuntu-latest
env:
DD_SERVICE: dd-trace-js-integration-tests
Expand Down Expand Up @@ -78,6 +92,7 @@ jobs:
version: [16, latest]
# 6.7.0 is the minimum version we support
cypress-version: [6.7.0, latest]
module-type: ['commonJS', 'esm']
runs-on: ubuntu-latest
env:
DD_SERVICE: dd-trace-js-integration-tests
Expand All @@ -95,6 +110,24 @@ jobs:
env:
CYPRESS_VERSION: ${{ matrix.cypress-version }}
NODE_OPTIONS: '-r ./ci/init'
CYPRESS_MODULE_TYPE: ${{ matrix.module-type }}

integration-vitest:
runs-on: ubuntu-latest
env:
DD_SERVICE: dd-trace-js-integration-tests
DD_CIVISIBILITY_AGENTLESS_ENABLED: 1
DD_API_KEY: ${{ secrets.DD_API_KEY_CI_APP }}
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- run: yarn install
- uses: actions/setup-node@v3
with:
node-version: 20
- run: yarn test:integration:vitest
env:
NODE_OPTIONS: '-r ./ci/init'

lint:
runs-on: ubuntu-latest
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/release-dev.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
name: Release dev release line

on:
push:
pull_request_target:
types: [labeled]
branches:
- master

jobs:
dev_release:
if: ${{ github.event.label.name == 'release-dev' }}
runs-on: ubuntu-latest
environment: npm
permissions:
Expand Down
50 changes: 22 additions & 28 deletions .github/workflows/system-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,19 @@ on:
- 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: Upload artifact
uses: actions/upload-artifact@v4
with:
name: system_tests_binaries
path: .

get-essential-scenarios:
runs-on: ubuntu-latest
outputs:
Expand Down Expand Up @@ -71,31 +84,12 @@ jobs:
path: artifact.tar.gz

parametric:
runs-on: ubuntu-latest
env:
TEST_LIBRARY: nodejs
steps:
- name: Checkout system tests
uses: actions/checkout@v4
with:
repository: 'DataDog/system-tests'
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Checkout dd-trace-js
uses: actions/checkout@v4
with:
path: 'binaries/dd-trace-js'
- name: Build
run: ./build.sh -i runner
- name: Run
run: ./run.sh PARAMETRIC
- 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_parametric
path: artifact.tar.gz
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]'
5 changes: 4 additions & 1 deletion .github/workflows/tracing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,10 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/node/setup
- uses: actions/setup-node@v3
with:
cache: yarn
node-version: '18'
- run: yarn install
- run: yarn test:trace:core:ci
- uses: codecov/codecov-action@v3
2 changes: 2 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,13 @@ stages:
- benchmarks-pr-comment
- single-step-instrumentation-tests
- manual_images
- macrobenchmarks

include:
- remote: https://gitlab-templates.ddbuild.io/apm/packaging.yml
- local: ".gitlab/benchmarks.yml"
- local: ".gitlab/single-step-instrumentation-tests.yml"
- local: ".gitlab/macrobenchmarks.yml"

variables:

Expand Down
Loading
Loading