1
1
name : Release
2
2
on :
3
3
workflow_dispatch :
4
+ inputs :
5
+ already_published :
6
+ description : ' Has the release already been published to maven central?'
7
+ type : boolean
8
+ default : false
4
9
5
10
permissions :
6
11
contents : read
95
100
uses : gradle/actions/setup-gradle@94baf225fe0a508e581a564467443d0e2379123b # v4.3.0
96
101
97
102
- name : Build and publish artifacts
103
+ if : ${{ !inputs.already_published }}
98
104
env :
99
105
SONATYPE_USER : ${{ secrets.SONATYPE_USER }}
100
106
SONATYPE_KEY : ${{ secrets.SONATYPE_KEY }}
@@ -103,6 +109,7 @@ jobs:
103
109
run : ./gradlew assemble spdxSbom publishToSonatype closeAndReleaseSonatypeStagingRepository
104
110
105
111
- name : Build and publish gradle plugins
112
+ if : ${{ !inputs.already_published }}
106
113
env :
107
114
SONATYPE_USER : ${{ secrets.SONATYPE_USER }}
108
115
SONATYPE_KEY : ${{ secrets.SONATYPE_KEY }}
@@ -115,12 +122,14 @@ jobs:
115
122
working-directory : gradle-plugins
116
123
117
124
- name : Collect SBOMs
125
+ if : ${{ !inputs.already_published }}
118
126
run : |
119
127
mkdir sboms
120
128
cp javaagent/build/spdx/*.spdx.json sboms
121
129
zip opentelemetry-java-instrumentation-SBOM.zip sboms/*
122
130
123
131
- uses : actions/upload-artifact@65c4c4a1ddee5b72f698fdd19549f0f0fb45cf08 # v4.6.0
132
+ if : ${{ !inputs.already_published }}
124
133
name : Upload SBOMs
125
134
with :
126
135
name : opentelemetry-java-instrumentation-SBOM
@@ -174,15 +183,22 @@ jobs:
174
183
env :
175
184
GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
176
185
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 }}" == "true" ]]; then
187
+ gh release create --target $GITHUB_REF_NAME \
188
+ --title "Version $VERSION" \
189
+ --notes-file /tmp/release-notes.txt \
190
+ v$VERSION
191
+ else
192
+ cp javaagent/build/libs/opentelemetry-javaagent-${VERSION}.jar opentelemetry-javaagent.jar
193
+ cp javaagent/build/libs/opentelemetry-javaagent-${VERSION}.jar.asc opentelemetry-javaagent.jar.asc
194
+ gh release create --target $GITHUB_REF_NAME \
195
+ --title "Version $VERSION" \
196
+ --notes-file /tmp/release-notes.txt \
197
+ v$VERSION \
198
+ opentelemetry-javaagent.jar \
199
+ opentelemetry-javaagent.jar.asc \
200
+ opentelemetry-java-instrumentation-SBOM.zip
201
+ fi
186
202
187
203
# these are used as job outputs
188
204
echo "version=$VERSION" >> $GITHUB_OUTPUT
0 commit comments