11name : Release Build
22on :
3+ push :
34 workflow_dispatch :
45 inputs :
56 version :
1314 PUBLIC_REPOSITORY : public.ecr.aws/aws-observability/adot-autoinstrumentation-java
1415 PRIVATE_REPOSITORY : 020628701572.dkr.ecr.us-west-2.amazonaws.com/adot-autoinstrumentation-java
1516 PRIVATE_REGISTRY : 020628701572.dkr.ecr.us-west-2.amazonaws.com
17+ ARTIFACT_NAME : aws-opentelemetry-agent.jar
1618
1719permissions :
1820 id-token : write
@@ -29,122 +31,109 @@ jobs:
2931 distribution : ' temurin'
3032 - uses : gradle/wrapper-validation-action@v1
3133
32- - name : Publish patched dependencies to maven local
33- uses : ./.github/actions/patch-dependencies
34- with :
35- gpg_private_key : ${{ secrets.GPG_PRIVATE_KEY }}
36- gpg_password : ${{ secrets.GPG_PASSPHRASE }}
34+ # - name: Publish patched dependencies to maven local
35+ # uses: ./.github/actions/patch-dependencies
36+ # with:
37+ # gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
38+ # gpg_password: ${{ secrets.GPG_PASSPHRASE }}
3739
38- - name : Configure AWS Credentials
39- uses : aws-actions/configure-aws-credentials@v4
40- with :
41- role-to-assume : ${{ secrets.AWS_ASSUME_ROLE_ARN }}
42- aws-region : ${{ env.AWS_PUBLIC_ECR_REGION }}
40+ # - name: Configure AWS Credentials
41+ # uses: aws-actions/configure-aws-credentials@v4
42+ # with:
43+ # role-to-assume: ${{ secrets.AWS_ASSUME_ROLE_ARN }}
44+ # aws-region: ${{ env.AWS_PUBLIC_ECR_REGION }}
4345
44- - name : Log in to AWS ECR
45- uses : docker/login-action@v3
46- with :
47- registry : public.ecr.aws
46+ # - name: Log in to AWS ECR
47+ # uses: docker/login-action@v3
48+ # with:
49+ # registry: public.ecr.aws
4850
4951 - name : Build release with Gradle
5052 uses : gradle/gradle-build-action@v3
5153 with :
52- arguments : build integrationTests -PlocalDocker=true -Prelease.version=${{ github.event.inputs.version }} --stacktrace
53-
54- - name : Configure AWS Credentials
55- uses : aws-actions/configure-aws-credentials@v4
56- with :
57- role-to-assume : ${{ secrets.AWS_ASSUME_ROLE_ARN_RELEASE }}
58- aws-region : ${{ env.AWS_PUBLIC_ECR_REGION }}
59-
60- - name : Log in to AWS ECR
61- uses : docker/login-action@v3
62- with :
63- registry : public.ecr.aws
64-
65- - name : Configure AWS Credentials for Private ECR
66- uses : aws-actions/configure-aws-credentials@v4
67- with :
68- role-to-assume : ${{ secrets.AWS_ASSUME_ROLE_ARN_RELEASE }}
69- aws-region : ${{ env.AWS_PRIVATE_ECR_REGION }}
70-
71- - name : Log in to AWS private ECR
72- uses : docker/login-action@v3
73- with :
74- registry : ${{ env.PRIVATE_REGISTRY }}
75-
76- - name : Set up QEMU
77- uses : docker/setup-qemu-action@v3
78-
79- - name : Set up Docker Buildx
80- uses : docker/setup-buildx-action@v3
81- with :
82- driver-opts : image=moby/buildkit:v0.15.1
83-
84- - name : Build image for testing
85- uses : docker/build-push-action@v5
86- with :
87- push : false
88- build-args : " ADOT_JAVA_VERSION=${{ github.event.inputs.version }}"
89- context : .
90- platforms : linux/amd64
91- tags : ${{ env.TEST_TAG }}
92- load : true
93-
94- - name : Test docker image
95- shell : bash
96- run : .github/scripts/test-adot-javaagent-image.sh "${{ env.TEST_TAG }}" "${{ github.event.inputs.version }}"
97-
98- - name : Build and push image
99- uses : docker/build-push-action@v5
100- with :
101- push : true
102- build-args : " ADOT_JAVA_VERSION=${{ github.event.inputs.version }}"
103- context : .
104- platforms : linux/amd64,linux/arm64
105- tags : |
106- ${{ env.PUBLIC_REPOSITORY }}:v${{ github.event.inputs.version }}
107- ${{ env.PRIVATE_REPOSITORY }}:v${{ github.event.inputs.version }}
108-
109- - name : Build and Publish release with Gradle
110- uses : gradle/gradle-build-action@v3
111- with :
112- arguments : build final closeAndReleaseSonatypeStagingRepository -Prelease.version=${{ github.event.inputs.version }} --stacktrace
113- env :
114- PUBLISH_TOKEN_USERNAME : ${{ secrets.PUBLISH_TOKEN_USERNAME }}
115- PUBLISH_TOKEN_PASSWORD : ${{ secrets.PUBLISH_TOKEN_PASSWORD }}
116- GRGIT_USER : ${{ secrets.GITHUB_TOKEN }}
117- GPG_PRIVATE_KEY : ${{ secrets.GPG_PRIVATE_KEY }}
118- GPG_PASSPHRASE : ${{ secrets.GPG_PASSPHRASE }}
54+ arguments : build integrationTests -PlocalDocker=true -Prelease.version=0.0.0 --stacktrace
55+
56+ # - name: Configure AWS Credentials
57+ # uses: aws-actions/configure-aws-credentials@v4
58+ # with:
59+ # role-to-assume: ${{ secrets.AWS_ASSUME_ROLE_ARN_RELEASE }}
60+ # aws-region: ${{ env.AWS_PUBLIC_ECR_REGION }}
61+
62+ # - name: Log in to AWS ECR
63+ # uses: docker/login-action@v3
64+ # with:
65+ # registry: public.ecr.aws
66+
67+ # - name: Configure AWS Credentials for Private ECR
68+ # uses: aws-actions/configure-aws-credentials@v4
69+ # with:
70+ # role-to-assume: ${{ secrets.AWS_ASSUME_ROLE_ARN_RELEASE }}
71+ # aws-region: ${{ env.AWS_PRIVATE_ECR_REGION }}
72+
73+ # - name: Log in to AWS private ECR
74+ # uses: docker/login-action@v3
75+ # with:
76+ # registry: ${{ env.PRIVATE_REGISTRY }}
77+
78+ # - name: Set up QEMU
79+ # uses: docker/setup-qemu-action@v3
80+
81+ # - name: Set up Docker Buildx
82+ # uses: docker/setup-buildx-action@v3
83+ # with:
84+ # driver-opts: image=moby/buildkit:v0.15.1
85+
86+ # - name: Build image for testing
87+ # uses: docker/build-push-action@v5
88+ # with:
89+ # push: false
90+ # build-args: "ADOT_JAVA_VERSION=0.0.0"
91+ # context: .
92+ # platforms: linux/amd64
93+ # tags: ${{ env.TEST_TAG }}
94+ # load: true
95+
96+ # - name: Test docker image
97+ # shell: bash
98+ # run: .github/scripts/test-adot-javaagent-image.sh "${{ env.TEST_TAG }}" "0.0.0"
99+
100+ # - name: Build and push image
101+ # uses: docker/build-push-action@v5
102+ # with:
103+ # push: true
104+ # build-args: "ADOT_JAVA_VERSION=0.0.0"
105+ # context: .
106+ # platforms: linux/amd64,linux/arm64
107+ # tags: |
108+ # ${{ env.PUBLIC_REPOSITORY }}:v0.0.0
109+ # ${{ env.PRIVATE_REPOSITORY }}:v0.0.0
110+
111+ # - name: Build and Publish release with Gradle
112+ # uses: gradle/gradle-build-action@v3
113+ # with:
114+ # arguments: build final closeAndReleaseSonatypeStagingRepository -Prelease.version=0.0.0 --stacktrace
115+ # env:
116+ # PUBLISH_TOKEN_USERNAME: ${{ secrets.PUBLISH_TOKEN_USERNAME }}
117+ # PUBLISH_TOKEN_PASSWORD: ${{ secrets.PUBLISH_TOKEN_PASSWORD }}
118+ # GRGIT_USER: ${{ secrets.GITHUB_TOKEN }}
119+ # GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
120+ # GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
121+
122+
123+ - name : Get SHA256 checksum of release artifact
124+ id : get_sha256
125+ run : |
126+ cp "otelagent/build/libs/aws-opentelemetry-agent-0.0.0.jar" ${{ env.ARTIFACT_NAME }}
127+ shasum -a 256 ${{ env.ARTIFACT_NAME }} > ${{ env.ARTIFACT_NAME }}.sha256
119128
120129 - name : Create release
121130 env :
122131 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
123132 run : |
124- cp "otelagent/build/libs/aws-opentelemetry-agent-${{ github.event.inputs.version }}.jar" aws-opentelemetry-agent.jar
133+
125134 gh release create --target "$GITHUB_REF_NAME" \
126- --title "Release v${{ github.event.inputs.version }} " \
135+ --title "Release v0.0.0 " \
127136 --draft \
128- "v${{ github.event.inputs.version }}" \
129- aws-opentelemetry-agent.jar
130-
131- - name : Get SHA256 checksum of wheel file
132- id : get_sha256
133- env :
134- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
135- run : |
136- checksum=$(shasum -a 256 aws-opentelemetry-agent.jar | awk '{ print $1 }')
137- echo "CHECKSUM=$checksum" >> $GITHUB_OUTPUT
138-
139- - name : Append checksum and update version
140- env :
141- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
142- run : |
143- echo "${{ github.event.inputs.version }} ${{ steps.get_sha256.outputs.CHECKSUM }}" >> checksum.txt
144- echo "${{ github.event.inputs.version }}" > version.txt
145-
146- git config --local user.email "github-actions[bot]@users.noreply.github.com"
147- git config --local user.name "GitHub Action Release Workflow"
148- git add checksum.txt version.txt
149- git commit -m "Update latest version and append checksum"
150- git push
137+ "v0.0.0" \
138+ ${{ env.ARTIFACT_NAME }} \
139+ ${{ env.ARTIFACT_NAME }}.sha256
0 commit comments