Skip to content

Commit d461360

Browse files
committed
fix: release workflow
1 parent 91fcafe commit d461360

File tree

2 files changed

+47
-18
lines changed

2 files changed

+47
-18
lines changed

.github/helpers/release-docker.sh

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
#!/bin/bash
2+
3+
set -e
4+
5+
# Check for required arguments
6+
if [ "$#" -ne 2 ]; then
7+
echo "Usage: $0 <source-image:tag> <target-image:tag>"
8+
exit 1
9+
fi
10+
11+
SOURCE_IMAGE="$1"
12+
TARGET_IMAGE="$2"
13+
14+
# Platforms to support
15+
PLATFORMS=("linux/amd64" "linux/arm64")
16+
TEMP_IMAGES=()
17+
18+
# Pull, retag, and push platform-specific images
19+
for PLATFORM in "${PLATFORMS[@]}"; do
20+
ARCH=$(echo $PLATFORM | cut -d'/' -f2)
21+
TEMP_TAG="${TARGET_IMAGE}-${ARCH}"
22+
TEMP_IMAGES+=("$TEMP_TAG")
23+
24+
echo "Pulling $SOURCE_IMAGE for $PLATFORM..."
25+
docker pull --platform $PLATFORM "$SOURCE_IMAGE"
26+
27+
echo "Tagging as $TEMP_TAG..."
28+
docker tag "$SOURCE_IMAGE" "$TEMP_TAG"
29+
30+
echo "Pushing $TEMP_TAG..."
31+
docker push "$TEMP_TAG"
32+
done
33+
34+
# Create and push manifest for multi-arch image
35+
echo "Creating and pushing multi-arch manifest for $TARGET_IMAGE..."
36+
docker manifest create "$TARGET_IMAGE" "${TEMP_IMAGES[@]}"
37+
docker manifest push "$TARGET_IMAGE"
38+
39+
echo "✅ Multi-arch image pushed as $TARGET_IMAGE"

.github/workflows/do-release.yml

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,14 @@ jobs:
4848
name: Release Docker
4949
runs-on: ubuntu-latest
5050
needs: dependency-branches
51-
strategy:
52-
matrix:
53-
platform: [amd64, arm64]
5451
steps:
52+
- name: Checkout
53+
uses: actions/checkout@v2
5554
- name: Set up JDK 21.0.7
5655
uses: actions/setup-java@v2
5756
with:
5857
java-version: 21.0.7
5958
distribution: zulu
60-
- name: Pull Docker Image
61-
run: |
62-
tag=${{ github.event.inputs.core-version }}
63-
major=$(echo $tag | cut -d. -f1,2)
64-
docker pull --platform linux/${{ matrix.platform }} supertokens/supertokens-dev-postgresql:$major
6559
- name: Login to Docker Hub
6660
uses: docker/login-action@v3
6761
with:
@@ -73,17 +67,12 @@ jobs:
7367
major=$(echo $tag | cut -d. -f1)
7468
minor=$(echo $tag | cut -d. -f1,2)
7569
76-
docker tag supertokens/supertokens-dev-postgresql:$tag supertokens/supertokens-postgresql:$major
77-
docker tag supertokens/supertokens-dev-postgresql:$tag supertokens/supertokens-postgresql:$minor
78-
docker tag supertokens/supertokens-dev-postgresql:$tag supertokens/supertokens-postgresql:$tag
79-
80-
docker push supertokens/supertokens-postgresql:$major
81-
docker push supertokens/supertokens-postgresql:$minor
82-
docker push supertokens/supertokens-postgresql:$tag
70+
bash .github/helpers/release-docker.sh supertokens/supertokens-dev-postgresql:$minor supertokens/supertokens-postgresql:$major
71+
bash .github/helpers/release-docker.sh supertokens/supertokens-dev-postgresql:$minor supertokens/supertokens-postgresql:$minor
72+
bash .github/helpers/release-docker.sh supertokens/supertokens-dev-postgresql:$minor supertokens/supertokens-postgresql:$tag
8373
8474
if [ "${{ github.event.inputs.is-latest-release }}" == "true" ]; then
85-
docker tag supertokens/supertokens-dev-postgresql:$tag supertokens/supertokens-postgresql:latest
86-
docker push supertokens/supertokens-postgresql:latest
75+
bash .github/helpers/release-docker.sh supertokens/supertokens-dev-postgresql:$minor supertokens/supertokens-postgresql:latest
8776
fi
8877
add-release-tag:
8978
runs-on: ubuntu-latest
@@ -98,7 +87,7 @@ jobs:
9887
with:
9988
repository: supertokens/supertokens-root
10089
path: ./supertokens-root
101-
ref: feat/java_gradle_upgrade
90+
ref: master
10291
- name: Checkout supertokens-core
10392
run: |
10493
cd supertokens-root
@@ -121,6 +110,7 @@ jobs:
121110
run: |
122111
cd supertokens-root
123112
echo "${{ secrets.SUPERTOKENS_API_KEY }}" > releasePassword
113+
echo "${{ secrets.SUPERTOKENS_API_KEY }}" > apiPassword
124114
- name: Load Modules
125115
run: |
126116
cd supertokens-root

0 commit comments

Comments
 (0)