Skip to content

Noelware/docker-manifest-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

πŸ»β€β„οΈπŸ³ docker-manifest-action

A tiny, simple GitHub Action to link Docker manifests easily

docker-manifest-action is a simple GitHub action that combines a list of Docker manifests and merges them into one image via the docker buildx imagetools command.

As of docker-manifest-action v1, the API is stable enough to not break at all.

Usage

on:
    # ...
jobs:
    docker:
        runs-on: ubuntu-latest
        name: my ci job
        steps:
            - uses: Noelware/docker-manifest-action@v1
              with:
                  inputs: namespace/image:latest
                  images: namespace/image:latest-amd64,namespace:image/latest-arm64
                  push: true

Migrating from v0.4.x

  • images was changed to tags to better reflect buildx imagetools create
  • base-image was removed, use inputs instead
  • extra-images was removed, use tags instead
  • amend was renamed to append to better reflect buildx imagetools create

Inputs

inputs (array of strings)

A list of Docker images thdocker buildx imagetoolsat were built from docker build into the merged manifests.

Optionally, it can be a comma-separated list (i.e, image/a:latest-amd64,image/b:latest-amd64) to create multiple final images from the given tags.

tags (array of strings)

A comma-separated list of tags that will be applied into the merged manifest from inputs.

push (boolean)

Whether if the action should push the outputs to the Docker registry.

annotations (mapping of label=value)

A mapping of annotations to annotate the final, merged manifest.

This is the same syntax as the official Docker GitHub actions handles mappings of label=value.

View the docker buildx imagetools create --annotation documentation on how to format each annotation.

append (boolean)

Sets the --append flag, which will add new sources to existing manifests.

builder (string)

Sets the --builder for the buildx command.

Contributing

Thanks for considering contributing to docker-manifest-action! Before you boop your heart out on your keyboard ✧ ─=≑Σ((( ぀‒̀ω‒́)぀, we recommend you to do the following:

If you read both if you're a new time contributor, now you can do the following:

  • Fork me! **β™‘( βŽα΅•α΄—α΅•βŽ οΌ‰
  • Clone your fork on your machine: git clone https://github.com/your-username/docker-manifest-action
  • Create a new branch: git checkout -b some-branch-name
  • Run corepack enable and use yarn for this project
  • BOOP THAT KEYBOARD!!!! ♑┉ˏ͛ (❛ γ€° ❛)ΛŠΛŽβ”‰β™‘
  • Commit your changes onto your branch: git commit -am "add features (q>β€Ώβ€Ώ<q οΌ‰"
  • Push it to the fork you created: git push -u origin some-branch-name
  • Submit a Pull Request and then cry! qο½₯゚゚ο½₯(ΰ°₯ Π” ΰ°₯。)ο½₯゚゚ο½₯q

License

docker-manifest-action is released under the MIT License with love and care by Noelware, LLC..

About

πŸ»β€β„οΈπŸ³ Simple and tiny GitHub action to link Docker manifests easily.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Sponsor this project

  •  
  •  

Contributors 10