update to upstream 2.2.0 agent #546
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: Build | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
workflow_dispatch: | |
permissions: | |
contents: read | |
jobs: | |
# validate gradle wrapper binary https://github.com/gradle/wrapper-validation-action | |
gradle-wrapper-validation: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: gradle/[email protected] | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Gradle build without tests | |
uses: ./.github/workflows/gradle-goal | |
with: | |
# We also compile the test-classes, even though we are skipping the tests | |
command: "./gradlew build testClasses -x test" | |
# We first tar the working directory and then upload it | |
# We do this because the upload-artifact action doesn't preserve file permissions | |
- name: Create working dir archive | |
run: "mkdir ./wdarch && tar --exclude='./wdarch' -czf ./wdarch/working-dir-build-cache.tar.gz ." | |
- name: Cache working directory with build results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: working-dir-build-cache | |
path: ./wdarch/working-dir-build-cache.tar.gz | |
retention-days: 1 # No need to waste space when this artifact is only used as part of the build process | |
- name: Agent artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: elastic-otel-javaagent | |
path: | | |
./agent/build/libs/elastic-otel-javaagent-*.jar | |
test: | |
runs-on: ubuntu-latest | |
needs: | |
- build | |
steps: | |
# We use the cached working directory so that we don't have to recompile everything | |
- name: Download cached build working directory | |
uses: actions/download-artifact@v4 | |
with: | |
name: working-dir-build-cache | |
path: ./ | |
- name: Untar cached build working directory | |
run: "tar -xvf working-dir-build-cache.tar.gz" | |
- name: Run tests | |
uses: ./.github/workflows/gradle-goal | |
with: | |
# We manually skip the compileJni task because we know it is up-to-date in the cached | |
# working directory. The up-to-date check of this task checks for the presence of docker | |
# images used for compiling the native library, which do not exist because we are in a new | |
# environment. | |
command: "./gradlew test -x compileJni" | |
- name: Store test results | |
if: success() || failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: test-results | |
path: '**/build/test-results/test/TEST-*.xml' |