Add otel tracing via file exports to nodejs-corepack #855
Workflow file for this run
This file contains 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: CI | |
on: | |
push: | |
branches: ["main"] | |
pull_request: | |
permissions: | |
contents: read | |
jobs: | |
shell-lint: | |
runs-on: ubuntu-22.04 | |
container: | |
image: koalaman/shellcheck-alpine:v0.9.0 | |
steps: | |
- run: apk add git | |
- run: apk add shfmt --repository=http://dl-3.alpinelinux.org/alpine/edge/community | |
- uses: actions/checkout@v3 | |
- name: shellcheck | |
run: shfmt -f . | grep -v ^test/ | xargs shellcheck | |
- name: shfmt | |
run: shfmt -f . | grep -v ^test/ | grep -v '_shpec.sh$' | xargs shfmt -d | |
rust-lint: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Update Rust toolchain | |
run: rustup update | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v2.6.2 | |
- name: Clippy | |
run: cargo clippy --all-targets --locked -- --deny warnings | |
- name: rustfmt | |
run: cargo fmt -- --check | |
rust-unit-test: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Update Rust toolchain | |
run: rustup update | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v2.6.2 | |
- name: Run unit tests | |
run: cargo test --locked | |
find-libcnb-buildpacks: | |
name: Find libcnb buildpacks | |
runs-on: ubuntu-22.04 | |
outputs: | |
buildpack_dirs: ${{ steps.find-buildpack-dirs.outputs.buildpack_dirs }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: true | |
- id: find-buildpack-dirs | |
name: Find libcnb buildpack directories | |
run: echo "buildpack_dirs=$(find . -type d -execdir test -e "{}/buildpack.toml" -a -e "{}/Cargo.toml" \; -print | sort | uniq | jq -nRc '[inputs]')" >> $GITHUB_OUTPUT | |
rust-integration-test: | |
name: libcnb.rs integration tests (${{ matrix.buildpack-directory }}) | |
runs-on: pub-hk-ubuntu-22.04-large | |
needs: find-libcnb-buildpacks | |
strategy: | |
fail-fast: false | |
matrix: | |
buildpack-directory: ${{ fromJson(needs.find-libcnb-buildpacks.outputs.buildpack_dirs) }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install musl-tools | |
run: sudo apt-get install musl-tools --no-install-recommends | |
- name: Update Rust toolchain | |
run: rustup update | |
- name: Install Rust linux-musl target | |
run: rustup target add x86_64-unknown-linux-musl | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v2.6.2 | |
- name: Install Pack CLI | |
uses: buildpacks/github-actions/setup-pack@v5.4.0 | |
- name: Run integration tests | |
working-directory: ${{ matrix.buildpack-directory }} | |
run: cargo test --locked -- --ignored --test-threads 16 | |
shpec: | |
runs-on: ubuntu-22.04 | |
container: | |
image: heroku/heroku:${{ matrix.stack-version }}-build | |
strategy: | |
matrix: | |
stack-version: | |
- '20' | |
- '22' | |
buildpack-dir: | |
- buildpacks/npm | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install shpec | |
run: sh -c "`curl -L https://raw.githubusercontent.com/rylnd/shpec/master/install.sh`" | |
- name: Shpec unit tests on heroku-${{ matrix.stack-version }} | |
run: shpec ${{ matrix.buildpack-dir }}/shpec/*_shpec.sh | |
cutlass-integration-test: | |
runs-on: ubuntu-22.04 | |
strategy: | |
matrix: | |
test-dir: | |
- test/specs/node-function | |
- test/specs/node | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up Ruby, bundler, and cache | |
uses: ruby/setup-ruby@v1 | |
with: | |
ruby-version: 3.0.2 | |
bundler-cache: true | |
- name: Install musl-tools | |
run: sudo apt-get install musl-tools --no-install-recommends | |
- name: Update Rust toolchain | |
run: rustup update | |
- name: Install Rust linux-musl target | |
run: rustup target add x86_64-unknown-linux-musl | |
- name: Rust Cache | |
uses: Swatinem/rust-cache@v2.6.2 | |
- name: Install libcnb | |
run: cargo install libcnb-cargo | |
- name: Install Pack CLI | |
uses: buildpacks/github-actions/setup-pack@v5.4.0 | |
- name: Install yj | |
uses: buildpacks/github-actions/setup-tools@v5.4.0 | |
- name: Run rspec tests against a given directory | |
run: bundle exec rspec ${{ matrix.test-dir }} |