Skip to content

Commit a7f725c

Browse files
committed
Create repository if not exists
1 parent 9ddbb55 commit a7f725c

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

.github/workflows/publish-version-ecr.yaml

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,11 @@ jobs:
7878
ECR_REPOSITORY: decode-cloud/user-api
7979
PYTHON_VERSION: ${{ steps.get-python-version.outputs.PYTHON_VERSION }}
8080
run: |
81-
IMAGE_REF=$ECR_REGISTRY/$ECR_REPOSITORY:$VERSION
81+
ECR_REPOSITORY_FULL=$ECR_REGISTRY/$ECR_REPOSITORY
82+
if ! aws ecr-public describe-repositories --repository-names $ECR_REPOSITORY_FULL --region us-east-1 2>/dev/null; then
83+
aws ecr-public create-repository --repository-name $ECR_REPOSITORY_FULL --region us-east-1
84+
fi
85+
IMAGE_REF=$ECR_REPOSITORY_FULL:$VERSION
8286
echo "IMAGE_REF=$IMAGE_REF" >> $GITHUB_OUTPUT
8387
if docker manifest inspect $IMAGE_REF > /dev/null 2>&1; then
8488
NEW_IMAGE=false
@@ -90,17 +94,17 @@ jobs:
9094
echo "## 🚀 Published Docker Image: $IMAGE_REF" >> $GITHUB_STEP_SUMMARY
9195
if [[ $PROD == "true" ]]; then
9296
SET_LATEST=true
93-
LATEST_EXISTS=$(docker manifest inspect $ECR_REGISTRY/$ECR_REPOSITORY:latest > /dev/null 2>&1 && echo "true" || echo "false")
97+
LATEST_EXISTS=$(docker manifest inspect $ECR_REPOSITORY_FULL:latest > /dev/null 2>&1 && echo "true" || echo "false")
9498
if [[ $LATEST_EXISTS == "true" ]]; then
95-
LATEST_LABELS=$(docker manifest inspect $ECR_REGISTRY/$ECR_REPOSITORY:latest | grep -o '"org.opencontainers.image.version":"[^"]*"' | cut -d'"' -f4 || echo "")
99+
LATEST_LABELS=$(docker manifest inspect $ECR_REPOSITORY_FULL:latest | grep -o '"org.opencontainers.image.version":"[^"]*"' | cut -d'"' -f4 || echo "")
96100
if printf '%s\n%s\n' "$LATEST_LABELS" "$VERSION" | sort -V | head -n1 | grep -q "^$VERSION$"; then
97101
SET_LATEST=false
98102
fi
99103
fi
100104
if [[ $SET_LATEST == "true" ]]; then
101-
docker tag $IMAGE_REF $ECR_REGISTRY/$ECR_REPOSITORY:latest
102-
docker push $ECR_REGISTRY/$ECR_REPOSITORY:latest
103-
echo "Also tagged as: \`$ECR_REGISTRY/$ECR_REPOSITORY:latest\`" >> $GITHUB_STEP_SUMMARY
105+
docker tag $IMAGE_REF $ECR_REPOSITORY_FULL:latest
106+
docker push $ECR_REPOSITORY_FULL:latest
107+
echo "Also tagged as: \`$ECR_REPOSITORY_FULL:latest\`" >> $GITHUB_STEP_SUMMARY
104108
fi
105109
fi
106110
fi

0 commit comments

Comments
 (0)