From e23861d10f42224e7bd4c536f9d0a1a99d362ab2 Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 14:21:58 +0100 Subject: [PATCH 1/7] Migrate to GH actions (#291) * Migrate to GH actions Signed-off-by: Pavol Loffay * Action Signed-off-by: Pavol Loffay * Add muzzle Signed-off-by: Pavol Loffay * rename Signed-off-by: Pavol Loffay * muzzle Signed-off-by: Pavol Loffay * Fix Signed-off-by: Pavol Loffay * fix Signed-off-by: Pavol Loffay * Disable Signed-off-by: Pavol Loffay --- .circleci/config.yml | 42 ++++++------ .github/workflows/build.yaml | 66 +++++++++++++++++++ .github/workflows/release.yaml | 50 ++++++++++++++ .../workflows/{pr-test.yml => smoke-test.yml} | 4 +- 4 files changed, 139 insertions(+), 23 deletions(-) create mode 100644 .github/workflows/build.yaml create mode 100644 .github/workflows/release.yaml rename .github/workflows/{pr-test.yml => smoke-test.yml} (96%) diff --git a/.circleci/config.yml b/.circleci/config.yml index 19369ea2f..0f29fda3b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -111,24 +111,24 @@ workflows: filters: tags: only: /.*/ - - release-maven-publish: - context: - - hypertrace-publishing - - maven-central-publish - requires: - - build - - muzzle - filters: - branches: - ignore: /.*/ - tags: - only: /^[0-9]+\.[0-9]+\.[0-9]+/ - - release-github-publish: - context: hypertrace-publishing - requires: - - release-maven-publish - filters: - branches: - ignore: /.*/ - tags: - only: /^[0-9]+\.[0-9]+\.[0-9]+/ +# - release-maven-publish: +# context: +# - hypertrace-publishing +# - maven-central-publish +# requires: +# - build +# - muzzle +# filters: +# branches: +# ignore: /.*/ +# tags: +# only: /^[0-9]+\.[0-9]+\.[0-9]+/ +# - release-github-publish: +# context: hypertrace-publishing +# requires: +# - release-maven-publish +# filters: +# branches: +# ignore: /.*/ +# tags: +# only: /^[0-9]+\.[0-9]+\.[0-9]+/ diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 000000000..77ead47d5 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,66 @@ +name: build +on: + push: + branches: + - main + paths-ignore: + - '**/README.md' + - 'smoke-tests/matrix' + pull_request: + +jobs: + build: + runs-on: ubuntu-20.04 + steps: + # Set fetch-depth: 0 to fetch commit history and tags for use in version calculation + - name: Check out code + uses: actions/checkout@v2.3.4 + with: + fetch-depth: 0 + submodules: true + + - name: create checksum file + uses: hypertrace/github-actions/checksum@main + + - name: Cache packages + id: cache-packages + uses: actions/cache@v2 + with: + path: ~/.gradle + key: gradle-packages-${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/checksum.txt') }} + restore-keys: | + gradle-packages-${{ runner.os }}-${{ github.job }} + gradle-packages-${{ runner.os }} + + - name: build + run: make build + env: + JVM_OPTS: -Xmx1g + TERM: dumb + muzzle: + runs-on: ubuntu-20.04 + steps: + - name: Check out code + uses: actions/checkout@v2.3.4 + with: + fetch-depth: 0 + submodules: true + + - name: create checksum file + uses: hypertrace/github-actions/checksum@main + + - name: Cache packages + id: cache-packages + uses: actions/cache@v2 + with: + path: ~/.gradle + key: gradle-packages-${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/checksum.txt') }} + restore-keys: | + gradle-packages-${{ runner.os }}-${{ github.job }} + gradle-packages-${{ runner.os }} + + - name: muzzle + run: make muzzle + env: + JVM_OPTS: -Xmx1g + TERM: dumb diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 000000000..3f0de0473 --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,50 @@ +name: release +on: + create: + tags: + - ^[0-9]+\.[0-9]+\.[0-9]+ + +jobs: + release: + runs-on: ubuntu-20.04 + steps: + # Set fetch-depth: 0 to fetch commit history and tags for use in version calculation + - name: Check out code + uses: actions/checkout@v2.3.4 + with: + fetch-depth: 0 + submodules: true + + - name: create checksum file + uses: hypertrace/github-actions/checksum@main + + - name: Cache packages + id: cache-packages + uses: actions/cache@v2 + with: + path: ~/.gradle + key: gradle-packages-${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/checksum.txt') }} + restore-keys: | + gradle-packages-${{ runner.os }}-${{ github.job }} + gradle-packages-${{ runner.os }} + + - name: build + run: make build + env: + JVM_OPTS: -Xmx1g + TERM: dumb + + - name: publish to maven + run: ./gradlew publish closeAndReleaseRepository + env: + JVM_OPTS: -Xmx1g + TERM: dumb + + - name: Set release version env + run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + + - name: Create github release + uses: fnkr/github-action-ghr@v1 + run: ls ./javaagent/build/libs && ghr -t ${GITHUB_TOKEN} -u hypertrace -r javaagent -n "Release ${RELEASE_VERSION}" -b "..." --soft ${RELEASE_VERSION} ./artifacts/ + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/pr-test.yml b/.github/workflows/smoke-test.yml similarity index 96% rename from .github/workflows/pr-test.yml rename to .github/workflows/smoke-test.yml index 78d6be39b..482c65b64 100644 --- a/.github/workflows/pr-test.yml +++ b/.github/workflows/smoke-test.yml @@ -1,4 +1,4 @@ -name: test +name: smoke-test on: push: branches: @@ -36,4 +36,4 @@ jobs: run: make smoke-test env: JVM_OPTS: -Xmx1g - TERM: dumb \ No newline at end of file + TERM: dumb From 8fb798f98a94a6315077b0825c8378dec8f1f61a Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 14:27:33 +0100 Subject: [PATCH 2/7] Fix github release action --- .github/workflows/release.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 3f0de0473..732e4b619 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -43,8 +43,12 @@ jobs: - name: Set release version env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV + - name: List build artifacts + run: ls ./javaagent/build/libs + - name: Create github release uses: fnkr/github-action-ghr@v1 - run: ls ./javaagent/build/libs && ghr -t ${GITHUB_TOKEN} -u hypertrace -r javaagent -n "Release ${RELEASE_VERSION}" -b "..." --soft ${RELEASE_VERSION} ./artifacts/ + if: startsWith(github.ref, 'refs/tags/') env: + GHR_PATH: ./javaagent/build/libs GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From bcd282b5d19ab1d32babfb13e175ab8f572eb794 Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 14:37:59 +0100 Subject: [PATCH 3/7] Update secrets Signed-off-by: Pavol Loffay --- .github/workflows/release.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 732e4b619..d96af16a3 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -39,6 +39,10 @@ jobs: env: JVM_OPTS: -Xmx1g TERM: dumb + ORG_GRADLE_PROJECT_ossrhUsername: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHUSERNAME }} + ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHPASSWORD }} + ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SINGINGKEYID }} + ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.ORG_GRADLE_PROJECT_SINGINGPASSWORD }} - name: Set release version env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV From 803638fd79db2ca68260640472a2b4b2a082fb2a Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 14:46:58 +0100 Subject: [PATCH 4/7] Fix GHA env var names Signed-off-by: Pavol Loffay --- .github/workflows/release.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index d96af16a3..20f11ad59 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -41,8 +41,8 @@ jobs: TERM: dumb ORG_GRADLE_PROJECT_ossrhUsername: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHUSERNAME }} ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHPASSWORD }} - ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SINGINGKEYID }} - ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.ORG_GRADLE_PROJECT_SINGINGPASSWORD }} + ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGKEYID }} + ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGPASSWORD }} - name: Set release version env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV From e9bdbaa9a3e34ce945db44d93180c1dad93ec357 Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 14:56:14 +0100 Subject: [PATCH 5/7] Fix GHA env var names 2 Signed-off-by: Pavol Loffay --- .github/workflows/release.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 20f11ad59..e59d4be76 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -43,6 +43,7 @@ jobs: ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHPASSWORD }} ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGKEYID }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGPASSWORD }} + ORG_GRADLE_PROJECT_signingKey: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGKEY }} - name: Set release version env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV From 64e01595a88b31fad833e009b7cb0b60a00ab123 Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 15:28:37 +0100 Subject: [PATCH 6/7] Fix release singing key Signed-off-by: Pavol Loffay --- .github/workflows/release.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index e59d4be76..a6457cda6 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -35,7 +35,7 @@ jobs: TERM: dumb - name: publish to maven - run: ./gradlew publish closeAndReleaseRepository + run: export ORG_GRADLE_PROJECT_signingKey=$(echo $SIGNING_KEY | base64 -d) && ./gradlew publish closeAndReleaseRepository env: JVM_OPTS: -Xmx1g TERM: dumb @@ -43,7 +43,7 @@ jobs: ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHPASSWORD }} ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGKEYID }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGPASSWORD }} - ORG_GRADLE_PROJECT_signingKey: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGKEY }} + SINGING_KEY: ${{ secrets.MAVEN_SIGNING_KEY }} - name: Set release version env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV From f4bbaf5ea1ec1a7ffa6228639a6fff8e38210ba1 Mon Sep 17 00:00:00 2001 From: Pavol Loffay Date: Mon, 22 Mar 2021 15:57:59 +0100 Subject: [PATCH 7/7] Fix env var name Signed-off-by: Pavol Loffay --- .github/workflows/release.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index a6457cda6..f42bf5565 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -43,7 +43,7 @@ jobs: ORG_GRADLE_PROJECT_ossrhPassword: ${{ secrets.ORG_GRADLE_PROJECT_OSSRHPASSWORD }} ORG_GRADLE_PROJECT_signingKeyId: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGKEYID }} ORG_GRADLE_PROJECT_signingPassword: ${{ secrets.ORG_GRADLE_PROJECT_SIGNINGPASSWORD }} - SINGING_KEY: ${{ secrets.MAVEN_SIGNING_KEY }} + SIGNING_KEY: ${{ secrets.MAVEN_SIGNING_KEY }} - name: Set release version env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV