Skip to content

Commit f2238c8

Browse files
authored
support publishing to ATR (#2714)
1 parent 789220d commit f2238c8

1 file changed

Lines changed: 69 additions & 4 deletions

File tree

.github/workflows/stage-release-candidate.yml

Lines changed: 69 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,12 @@ name: Stage release candidate
2020
on:
2121
workflow_dispatch:
2222
inputs:
23-
source-tar:
24-
description: "Stage the source tarball to svn"
23+
source-tar-to-svn:
24+
description: "Stage the source tarball to svn (old)"
25+
default: true
26+
type: boolean
27+
source-tar-to-atr:
28+
description: "Stage the source tarball to ATR (new)"
2529
default: true
2630
type: boolean
2731
jars:
@@ -41,7 +45,7 @@ jobs:
4145
# Partly based on https://github.com/apache/daffodil/blob/main/.github/workflows/release-candidate.yml
4246
stage-release-candidate-to-svn:
4347
runs-on: ubuntu-24.04
44-
if: ${{ inputs.source-tar }}
48+
if: ${{ inputs.source-tar-to-svn }}
4549
steps:
4650
- name: Check version parameter
4751
run: |-
@@ -110,6 +114,67 @@ jobs:
110114
PEKKO_SVN_DEV_PASSWORD: ${{ secrets.PEKKO_SVN_DEV_PASSWORD }}
111115
REF: ${{ github.ref_name }}
112116

117+
stage-release-candidate-to-atr:
118+
permissions:
119+
id-token: write
120+
contents: read
121+
runs-on: ubuntu-24.04
122+
if: ${{ inputs.source-tar-to-atr }}
123+
steps:
124+
- name: Check version parameter
125+
run: |-
126+
# To be enabled after this workflow has been tested:
127+
#if [[ "$REF" != "v"* ]]; then
128+
# echo "Trigger this workflow on a version tag"
129+
# exit 1
130+
#fi
131+
if [[ "$REF" != *"-RC"* ]]; then
132+
echo "Trigger this workflow on an RC tag"
133+
exit 1
134+
fi
135+
export VERSION=$(echo $REF | sed -e "s/.\(.*\)-.*/\\1/")
136+
export RC_VERSION=$(echo $REF | tail -c +2)
137+
echo "Version: $VERSION"
138+
echo "RC Version: $RC_VERSION"
139+
env:
140+
REF: ${{ github.ref_name }}
141+
142+
- name: Checkout
143+
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v5.0.1
144+
with:
145+
fetch-depth: 0
146+
fetch-tags: true
147+
persist-credentials: false
148+
149+
- name: Generate source archive
150+
id: generate-source-archive
151+
run: |-
152+
VERSION=$(echo $REF | sed -e "s/.\(.*\)-.*/\\1/")
153+
echo "version=$VERSION" >> $GITHUB_OUTPUT
154+
PREFIX=apache-pekko-$VERSION
155+
DATE=$(git log -n1 --format=%cs | tr -d -)
156+
TARBALL=$PREFIX-src-$DATE.tgz
157+
158+
mkdir dist
159+
git archive --format=tar --prefix=$PREFIX/ HEAD | gzip -6 -n > dist/$TARBALL
160+
cd dist
161+
sha512sum $TARBALL > $TARBALL.sha512
162+
env:
163+
REF: ${{ github.ref_name }}
164+
165+
- name: Sign source archive
166+
run: |-
167+
echo "$PEKKO_GPG_SECRET_KEY" | gpg --batch --import --import-options import-show
168+
gpg -ab dist/*.tgz
169+
env:
170+
PEKKO_GPG_SECRET_KEY: ${{ secrets.PEKKO_GPG_SECRET_KEY }}
171+
172+
- name: Upload source dist
173+
uses: apache/tooling-actions/upload-to-atr@ca6ed9e095c40db61c42a90db2599bb2fbc2319f
174+
with:
175+
project: pekko
176+
version: ${{ steps.generate-source-archive.outputs.version }}
177+
113178
stage-jars-to-nexus:
114179
runs-on: ubuntu-24.04
115180
if: ${{ inputs.jars }}
@@ -244,7 +309,7 @@ jobs:
244309
The VOTE will pass if we have more positive votes than negative votes
245310
and there must be a minimum of 3 approvals from Pekko PMC members.
246311
Anyone voting in favour of the release, could you please provide a list of the checks you have done?
247-
The vote will be left open for 72hrs.
312+
The vote will be left open for at least 72hrs.
248313
249314
[ ] +1 approve
250315
[ ] +0 no opinion

0 commit comments

Comments
 (0)