Comments (7)
Thanks for the notification and the further discussion.
The workaround @TriplEight linked is a good example. I usually want/need to support multiple gliding tags along with unique tags for one image. Matrix build is a workaround, but in the end I need support for multiple tags as in the docker/build-push-action.
Due to the focus of this action to just push existing images, taking n
input tags here makes sense to me if (buildah-build
action can support multiple output tags).
from push-to-registry.
Thanks for @ing!
Would be really great to have similar behaviour in https://github.com/marketplace/actions/buildah-build action. They are pretty much connected and would be really nice to use them the way https://github.com/marketplace/actions/build-and-push-docker-images does.
My recent use case was building an ugly workaround which effectively builds and pushes the similar image twice, in parallel, just in order to have two tags.
We don't want to change the tag input because it should still point to the existing, "parent" image, that we will alias to have extra tags.
What's the difference though? Anyway, this is the same image, just with two tags pointing at it. And doesn't really matter which of them is the "parent".
from push-to-registry.
This feature is now available in the v2
tags of buildah-build
and push-to-registry
.
from push-to-registry.
This got some attention, so I will try and write a clearer requirement:
- We don't want to change the
tag
input because it should still point to the existing, "parent" image, that we will alias to have extra tags. - We can add a new input called
tag_aliases
(name is up for debate.extra_tags
?) which is a space-separated list of extra tags that we want to tag the parent image with, and then we will push the parent image as well as all the aliases.
Then when the action executes:
- First, find the image we're going to push, and pull it into Podman if it's from Docker.
- Before doing the
podman push
, do apodman tag
for each tag alias that was provided. - Then
podman push
all the tags.
from push-to-registry.
@kameshsampath, @breucode, @mpreu, @TriplEight who thumbs-upped this issue, let me know if above makes sense for your requirement.
from push-to-registry.
What's the difference though? Anyway, this is the same image, just with two tags pointing at it. And doesn't really matter which of them is the "parent".
My assumption was that the image would not be tagged more than once when the action started. Then, the action would do the tag duplication.
Maybe it makes more sense to allow buildah-build
to output one image with multiple tags, and then have this action take n tags which all must already exist? Then we wouldn't have to add a new input.
from push-to-registry.
It would be natural to build a [list]
of tags and pass them to build and then to the push action.
But given that podman
or buildah
are able to take many --tag
for build
and (for some reason) just one tag for push
command, it points to some inconsistency. But it's fine when you're in shell and can just call push on every tag.
from push-to-registry.
Related Issues (20)
- Add a GHCR example and document it HOT 1
- [Workflow] Add CRDA scan step in the CI workflow
- Failing to push image to ghcr.io: 403 (Forbidden) HOT 3
- Add support to push image manifest HOT 1
- [BUG] Enforce Lower-case Repository Name for Registry Push HOT 3
- [BUG] v2.4 breaks pushing multiple tags at once HOT 6
- [DISCUSSION] Handling multiple tags in v3
- [BUG] Push fails silently and pushes tags but no images HOT 1
- [BUG] buildah is not found while using on `nektos/act` HOT 2
- [QUESTION] Recommendation on dealing with server side errors? HOT 1
- [BUG] Remote images take precedence over localhost images HOT 2
- [BUG] Uppercase letters in username will cause transport error when uploading container HOT 1
- [FEATURE] Add option to disable push/pull from Docker daemon HOT 2
- [BUG] Normalised image names are not working HOT 1
- [BUG] `set-output` being deprecated
- [BUG] Deprecation warning
- [QUESTION] what is your suggested source for a qemu-user-static version that works with UBI9 ppc64le
- [FEATURE] set build context directory HOT 1
- [FEATURE] Add support for signing and pushing signatures with sigstore HOT 1
- [NODE20] Support for node20 now that node16 has been deprecated from GitHub
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from push-to-registry.