chore(deps): update actions/checkout action to v6 #497
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: build | |
| on: | |
| push: | |
| branches: | |
| - main | |
| tags: | |
| - ".*" | |
| pull_request: | |
| permissions: | |
| contents: read | |
| jobs: | |
| build-package: | |
| runs-on: ${{ matrix.ARCH == 'amd64' && 'ubuntu-24.04' || 'ubuntu-24.04-arm' }} | |
| strategy: | |
| matrix: | |
| SYS_PACKAGE: [ "deb", "rpm" ] | |
| ARCH: [ "amd64", "arm64"] | |
| steps: | |
| - name: Check out the codebase. | |
| uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 | |
| with: | |
| fetch-depth: 0 | |
| - uses: mlugg/setup-zig@8d6198c65fb0feaa111df26e6b467fea8345e46f # v2.0.5 | |
| with: | |
| # maintenance note: This version needs to be kept in sync with the version referenced in the file /zig-version | |
| # in the root of the repository. | |
| version: 0.14.1 | |
| - name: lint source code | |
| run: | | |
| make lint | |
| - name: Run Zig unit tests | |
| run: make zig-unit-tests ARCH=${{ matrix.ARCH }} | |
| - name: Run Injector integration tests | |
| run: make injector-integration-tests-for-one-architecture ARCH=${{ matrix.ARCH }} | |
| # TODO I think we should split the build-package job at this point. Everything above is independent of SYS_PACKAGE. | |
| # In particular the make injector-integration-tests-for-one-architecture ARCH=${{ matrix.ARCH }} step is not | |
| # super cheap and right now we are running it twice for each CPU arch, once for deb and once for rpm, although | |
| # it is independent of SYS_PACKAGE. The remaining steps below should be a separate job (named build-and-upload | |
| # package) and the steps above should be a job named run-tests or verify or something like that. | |
| # However, I'll leave that to a separate follow up PR. | |
| - name: Determine version | |
| id: github_tag | |
| run: | | |
| TAG="${GITHUB_REF##*/}" | |
| if [[ -z "$TAG" ]] | |
| then | |
| echo "version=$TAG" >> $GITHUB_OUTPUT | |
| else | |
| echo "version=dev" >> $GITHUB_OUTPUT | |
| fi | |
| - name: Build ${{ matrix.ARCH }} ${{ matrix.SYS_PACKAGE }} package | |
| run: make ${{ matrix.SYS_PACKAGE }}-package ARCH="${{ matrix.ARCH }}" VERSION="${{ steps.github_tag.version.version }}" | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 | |
| with: | |
| name: otelinject-${{ matrix.ARCH }}-${{ matrix.SYS_PACKAGE }} | |
| path: ./instrumentation/dist/*.${{ matrix.SYS_PACKAGE }} | |
| packaging-integration-tests: | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| matrix: | |
| SYS_PACKAGE: [ "deb", "rpm" ] | |
| lang: [ "java", "nodejs", "dotnet" ] | |
| steps: | |
| - name: Check out the codebase. | |
| uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 | |
| with: | |
| fetch-depth: 0 | |
| # TODO we currently build the RPM and DEB for at least once CPU architectures twice, once in the build-package job | |
| # in the step "Build ${{ matrix.ARCH }} ${{ matrix.SYS_PACKAGE }} package", and once here in the context of | |
| # running the packacking integration tests. We should run the packaging integration tests for both CPU | |
| # architectures (instead of only amd64), but ideally only build each combination of CPU arch & SYS_PACKAGE once. | |
| - name: Run packaging integration tests for ${{ matrix.SYS_PACKAGE }}/${{ matrix.lang }} | |
| run: make packaging-integration-test-${{ matrix.SYS_PACKAGE }}-${{ matrix.lang }} | |
| publish-stable: | |
| runs-on: ubuntu-24.04 | |
| if: startsWith(github.ref, 'refs/tags/') && github.repository == 'open-telemetry/opentelemetry-injector' | |
| needs: build-package | |
| permissions: | |
| contents: write | |
| steps: | |
| - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 | |
| - run: mkdir -p artifacts | |
| - name: Download artifacts | |
| uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 | |
| with: | |
| path: ./artifacts/ | |
| - name: Prepare release notes | |
| run: ./.github/workflows/scripts/prepare-release-notes.sh | |
| env: | |
| RELEASE_TAG: ${{ steps.github_tag.outputs.tag }} | |
| - name: Release | |
| uses: softprops/action-gh-release@5be0e66d93ac7ed76da52eca8bb058f665c3a5fe # v2.4.2 | |
| with: | |
| body_path: release-notes.md | |
| files: | | |
| artifacts/* |