Skip to content

A GitHub Action for installing and configuring the skopeo CLI.

License

Notifications You must be signed in to change notification settings

meatballhat/setup-skopeo

 
 

Repository files navigation

Setup skopeo in github action

GitHub Super-Linter CI Check dist/ CodeQL Coverage

Use this action to setup environment of skopeo, and use skopeo to sync images across the registries. 🚀

Prerequisites

  • 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.

Usage

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

Inputs

  • version: (Optional) Set the version of skopeo. Default: latest. More informations about supported versions can be found here.

Credits

  • 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.

About

A GitHub Action for installing and configuring the skopeo CLI.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 82.9%
  • Shell 17.1%