Skip to content

2-promote-images

2-promote-images #1

name: 2-promote-images
on:
workflow_dispatch
# push:
# branches: [ main ]
# pull_request:
# branches: [ main ]
env:
DEV_REGISTRY: ${{ vars.DEV_REGISTRY }}
DEV_APP_IMAGE_REPO: ${{ vars.DEV_APP_IMAGE_REPO }}
DEV_APP_IMAGE_TAG: ${{ vars.DEV_APP_IMAGE_TAG }}
CATALOG_REGISTRY: ${{ vars.CATALOG_REGISTRY }}
CATALOG_UTILITY_IMAGE_REPO: ${{ vars.CATALOG_UTILITY_IMAGE_REPO }}
CATALOG_UTILITY_IMAGE_TAG: ${{ vars.CATALOG_UTILITY_IMAGE_TAG }}
PROD_REGISTRY: ${{ vars.PROD_REGISTRY }}
PROD_APP_IMAGE_REPO: ${{ vars.PROD_APP_IMAGE_REPO }}
PROD_APP_IMAGE_TAG: ${{ vars.PROD_APP_IMAGE_TAG }}
PROD_UTILITY_IMAGE_REPO: ${{ vars.PROD_UTILITY_IMAGE_REPO }}
PROD_UTILITY_IMAGE_TAG: ${{ vars.PROD_UTILITY_IMAGE_TAG }}
jobs:
copy-images-and-referrers-to-prod:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- name: Display environment
run: |
echo "DEV_REGISTRY: $DEV_REGISTRY"
echo "DEV_APP_IMAGE_REPO: $DEV_APP_IMAGE_REPO"
echo "DEV_APP_IMAGE_TAG: $DEV_APP_IMAGE_TAG"
echo "PROD_REGISTRY: $PROD_REGISTRY"
echo "PROD_APP_IMAGE_REPO: $PROD_APP_IMAGE_REPO"
echo "PROD_APP_IMAGE_TAG: $PROD_APP_IMAGE_TAG"
echo "CATALOG_REGISTRY: $CATALOG_REGISTRY"
echo "CATALOG_UTILITY_IMAGE_REPO: $CATALOG_UTILITY_IMAGE_REPO"
echo "CATALOG_UTILITY_IMAGE_TAG: $CATALOG_UTILITY_IMAGE_TAG"
echo "PROD_UTILITY_IMAGE_REPO: $PROD_UTILITY_IMAGE_TAG"
echo "PROD_UTILITY_IMAGE_TAG: $PROD_UTILITY_IMAGE_TAG"
- name: Checkout the code
uses: actions/checkout@v4
- name: Log in to GitHub Container Registry
run: echo ${{ secrets.CR_PAT }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Setup ORAS CLI
uses: oras-project/setup-oras@v1
- name: Copy images from dev to prod
run: |
oras cp -r "${{ env.DEV_REGISTRY }}/${{ env.DEV_APP_IMAGE_REPO }}:${{ env.DEV_APP_IMAGE_TAG }}" "${{ env.PROD_REGISTRY }}/${{ env.PROD_APP_IMAGE_REPO }}:${{ env.PROD_APP_IMAGE_TAG }}"
oras cp -r "${{ env.CATALOG_REGISTRY }}/${{ env.CATALOG_UTILITY_IMAGE_REPO }}:${{ env.CATALOG_UTILITY_IMAGE_TAG }}" "${{ env.PROD_REGISTRY }}/${{ env.PROD_UTILITY_IMAGE_REPO }}:${{ env.PROD_UTILITY_IMAGE_TAG }}"