Use this action to setup environment of skopeo, and use skopeo to sync images across the registries. 🚀
- Basic knowledge of docker images and skopeo which is a container tool to sync images across the registries.
- This action runs using Node 20. If you are using self-hosted GitHub Actions runners, you must use a runner version that supports this version or newer.
jobs:
job_id:
steps:
- name: 'Set up skopeo'
uses: warjiang/setup-skopeo@main
with:
version: latest
- name: 'Sync images'
run: |
skopeo --version
skopeo copy --dest-creds \
${{ secrets.DEST_REGISTRY_USER }}:${{ secrets.DEST_REGISTRY_PASSWORD }} \
docker://alpine:3.19 \
docker://${{ secrets.DEST_REGISTRY }}/alpine:3.19
- version: (Optional) Set the version of skopeo. Default: latest. More informations about supported versions can be found here.
- skopeo-binary: generate the skopeo binary file, it fetches all the tags of official skopeo repository and generate the binary file for each tag by a cronjob.
- actions/toolkit: some toolkis which very useful for GitHub actions.
- actions/typescript-action: which is a template for creating a TypeScript action.