Skip to content

Update Dependencies #4073

Update Dependencies

Update Dependencies #4073

Workflow file for this run

name: build
on:
push:
branches:
- 'main'
pull_request:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Set up Node 18.12
uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3.9.1
with:
node-version: 18.12
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> "$GITHUB_OUTPUT"
- name: Restore node modules from cache
id: cache-node-modules
uses: actions/cache@6f8efc29b200d32929f49075959781ed54ec270c # v3.5.0
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Install dependencies
run: ./scripts/install_deps.sh
- name: Test dependency installer without a lockfile
run: ./scripts/test_install_deps.sh
- name: Check formatting
run: yarn check-formatting
- name: Lint
run: yarn lint
unit-test:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
node-version: [18.12, 20.19, 22.11, 24.11, 26.1]
steps:
- name: Checkout
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Set up Node ${{ matrix.node-version }}
uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3.9.1
with:
node-version: ${{ matrix.node-version }}
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn cache dir)" >> "$GITHUB_OUTPUT"
- name: Restore node modules from cache
id: cache-node-modules
uses: actions/cache@6f8efc29b200d32929f49075959781ed54ec270c # v3.5.0
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- name: Install dependencies
run: ./scripts/install_deps.sh
- name: Run tests
run: yarn test
- name: Upload code coverage report
run: bash <(curl -s https://codecov.io/bash)
# this job covers what npm consumers that arent using the layer
# actually resolve: one tarball, installed on every supported runtime against the dd-trace
# line that runtime supports, plus a case with no tracer at all.
pack-npm-package:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Set up Node 22.11
uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3.9.1
with:
node-version: 22.11
- name: Install dependencies
run: ./scripts/install_deps.sh
- name: Pack the npm package
run: |
yarn build
npm pack --pack-destination .
- name: Upload packed tarball
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: npm-tarball
path: datadog-lambda-js-*.tgz
npm-package-test:
runs-on: ubuntu-latest
needs: pack-npm-package
strategy:
fail-fast: false
matrix:
node-version: [18.12, 20.19, 22.11, 24.11, 26.1]
steps:
- name: Checkout
uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0
- name: Set up Node ${{ matrix.node-version }}
uses: actions/setup-node@3235b876344d2a9aa001b8d1453c930bba69e610 # v3.9.1
with:
node-version: ${{ matrix.node-version }}
- name: Download packed tarball
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
with:
name: npm-tarball
- name: Install the packed tarball on Node ${{ matrix.node-version }}
run: ./scripts/test_npm_package.sh datadog-lambda-js-*.tgz