11name : Release
22on :
33 workflow_dispatch :
4+ inputs :
5+ already_published :
6+ description : ' Has the release already been published to maven central?'
7+ type : boolean
8+ default : false
49
510permissions :
611 contents : read
95100 uses : gradle/actions/setup-gradle@94baf225fe0a508e581a564467443d0e2379123b # v4.3.0
96101
97102 - name : Build and publish artifacts
103+ if : ${{ !inputs.already_published }}
98104 env :
99105 SONATYPE_USER : ${{ secrets.SONATYPE_USER }}
100106 SONATYPE_KEY : ${{ secrets.SONATYPE_KEY }}
@@ -103,6 +109,7 @@ jobs:
103109 run : ./gradlew assemble spdxSbom publishToSonatype closeAndReleaseSonatypeStagingRepository
104110
105111 - name : Build and publish gradle plugins
112+ if : ${{ !inputs.already_published }}
106113 env :
107114 SONATYPE_USER : ${{ secrets.SONATYPE_USER }}
108115 SONATYPE_KEY : ${{ secrets.SONATYPE_KEY }}
@@ -115,12 +122,14 @@ jobs:
115122 working-directory : gradle-plugins
116123
117124 - name : Collect SBOMs
125+ if : ${{ !inputs.already_published }}
118126 run : |
119127 mkdir sboms
120128 cp javaagent/build/spdx/*.spdx.json sboms
121129 zip opentelemetry-java-instrumentation-SBOM.zip sboms/*
122130
123131 - uses : actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
132+ if : ${{ !inputs.already_published }}
124133 name : Upload SBOMs
125134 with :
126135 name : opentelemetry-java-instrumentation-SBOM
@@ -174,15 +183,22 @@ jobs:
174183 env :
175184 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
176185 run : |
177- cp javaagent/build/libs/opentelemetry-javaagent-${VERSION}.jar opentelemetry-javaagent.jar
178- cp javaagent/build/libs/opentelemetry-javaagent-${VERSION}.jar.asc opentelemetry-javaagent.jar.asc
179- gh release create --target $GITHUB_REF_NAME \
180- --title "Version $VERSION" \
181- --notes-file /tmp/release-notes.txt \
182- v$VERSION \
183- opentelemetry-javaagent.jar \
184- opentelemetry-javaagent.asc.jar \
185- opentelemetry-java-instrumentation-SBOM.zip
186+ if [[ "${{ inputs.already_published }}" == "false" ]]; then
187+ cp javaagent/build/libs/opentelemetry-javaagent-${VERSION}.jar opentelemetry-javaagent.jar
188+ cp javaagent/build/libs/opentelemetry-javaagent-${VERSION}.jar.asc opentelemetry-javaagent.jar.asc
189+ gh release create --target $GITHUB_REF_NAME \
190+ --title "Version $VERSION" \
191+ --notes-file /tmp/release-notes.txt \
192+ v$VERSION \
193+ opentelemetry-javaagent.jar \
194+ opentelemetry-javaagent.jar.asc \
195+ opentelemetry-java-instrumentation-SBOM.zip
196+ else
197+ gh release create --target $GITHUB_REF_NAME \
198+ --title "Version $VERSION" \
199+ --notes-file /tmp/release-notes.txt \
200+ v$VERSION
201+ fi
186202
187203 # these are used as job outputs
188204 echo "version=$VERSION" >> $GITHUB_OUTPUT
0 commit comments