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