-
Notifications
You must be signed in to change notification settings - Fork 113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define tag policies for images #171
Comments
@sbose78 thanks for this. Definitely not to use I think I´m more inclined on a
For the |
Hi Enrique, I think they are two different level requirements.
For the better design, We(our internal) should use the For |
The digest isn't something we can set right? It's a unique identifier which the container registry provides us upon pushing an image. From a policy perspective, I see two policies that sound implementable to me ( there could be more )
|
Yep, but I think we still need the for the pay account docker registry, it may not allow me to pull lots of test image with different image tags, it may cost me lots of money. So For Both of this basic policies are also not hard to implement in our controller logic :) |
The None and Manual policies are both supported today, without being explicit about it. Users may or may not specify tags today. When we do introduce tag policies in our API/CRD, when the user skips that attribute, the current behaviour would kick in without the need of explicitly calling it a Manual or None policy. What do you think? |
Yes, I agree the But the
That is why we are providing a PR: xiujuan95@61f2113 so that we can JUST change to a new |
I feel uncomfortable making changes to the BuildRun to be able to support that when we could modify the spec.output.image in the Build CR itself :(
Curious, why is this an issue? |
It comes from our user experince from UI, We won't ask end user to just kubectl apply the build resource, we should ask user to do from UI or Cli. Then what we should provide to end user?
I think it is a good UX for end user. Build should just keep the static source or build policy related data, and for buildRun, we can have some custom parameters to build a new image without two steps: modify build -> trigger new buildRun from UI for image tag (can use output.image, or a new tag parameter in buildRun). But yes, as you see, we didn't provide the PR, we can discuss and confirm in the issue first. Or any other comment about the overwrite rule or comments? :) |
@sbose78 Let me share my viewpoint (using a concrete example): Assume you have a production build setup. So you'd have a |
My 2 cents on this: Purely speaking about overriding via BuildRun, and based on the following statement
|
If then, I think we are back to the old If we can define anything in the Build, why we still need the BuildRun? Why we still need BuildStrategy shared? Everytime, we modify the build and re-trigger it is enough. So I also think, they are two requirements now:
But for the first Beta release, we just require the first one.
so that ONLY the |
Community notes:
|
@zhangtbj I think the tekton example you wrote is good, but there is a big difference. Tekton PARAMS are just a set of |
@sbose78 @SaschaSchwarze0 @qu1queee @zhangtbj Thank you for the discussion. Let me write down in detail for our discussion. Option 1: update both build and buildrun to build image with specific tag.
The problem for this is that And it does not make sense to ask UI or CLI to orchestrate these 2 steps. Because the purpose of Option 2: Add tag property in
I agree that output image is build parameters. But I think tag is not. Because tag value is only meaningful for image which output from one buildrun. It will be easy for end user to kickoff multiple builds with special tags. In future, if we support tag policy. Then
In this case, end user may also want to build a image with special tag, like bump a new release 1.0. End user could create a
Only after 1.0, the tag policy will auto generate 1.1, 1.2 ... It will be easy to only create a new BuildRun, but otherwise removing @sbose78 you can think from Openshift UX perspective. We discuss later. Thank you. |
From Grooming: We would like to aim for the following:
The above is what we expect to happen for the v0.10.0 milestone. |
From Refinement, we are not committing this to a release, per the lack of design. Moving it to the Backlog only. |
Let's use this issue to discuss the exhaustive list of tag policies we would like to support. We'll do the API design as part of a different discussion.
The text was updated successfully, but these errors were encountered: