-
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
As developer, I 'd to kick off build to generate a image with new tag, so that to do image version management #150
Comments
I generally like this proposal. But does it then mean that a tag MUST NOT be included in the output image in the build cr ? And we therefore should therefore "fail" a build cr which tries to specify it ? |
In our PoC, our design like this: We just set the image url in the spec.output.image, like And we provide a TagPolicy like Then, when we generate the taskrun and the output image for the taskrun, we will add the related If end user chooses And then, we show the image status in the buildRun or image CR status, to show its tag. So it looks like:
...
Or similar style or configuration. BTW, we also have a similar |
@zhangtbj I know before we working build-v2, we have POC for auto generate tag. But may not for first phase. For first phase, I suggest to just have capability for end user easy put the special tag string, like Thank you. |
Thinking out a loud: |
Yes, similar to the tagPolicy approach. |
Yes, auto generate unique tag is good feature, we can do semver version policy I think. |
On OpenShift is common to use the image SHA signature as tag, by the way. |
Thinking out loud, we could use the Git project itself to define the version from different places:
|
Community notes:
|
Hi all, I am not sure if we can do this feature step by step. And first of all, I think we can add Do you agree with that? |
Hi all, If no other comment, I will start the phase 1 of this feature above (add output.image property in BuildRun) ^^ tomorrow, so that we complement our capability first. Thanks! |
Created this to be track the tag policies we are interested in #171 |
Hi Jordan, are you suggesting that the user might specify one image in Build and another in BuildRun? |
Hi Shoubhik, Yes. For different buildRun or rerun, we don't have the capability to build the different tag of image somewhere. Now what we have to do is:
It is still complex and not convenient for end user. And for the tag policies (#171), I think we still need more discussion and maybe one or two month to confirm and implement that. So I think we can use Or do you other suggestion or concern? :) I will stop here until ALL of us agree it is good for us. |
Yes! No hurry, let's brainstorm and design it well. When we do have tag policies, would the BuildRun output.image tag still be relevant? |
I think it may not relate to the tag policy, or buildRun configuration will overwrite the build policy? But I think we should have this requirement that an org of users define a build as team work. For each buildrun, I use my serviceaccount(my docker account) maybe to build and push to the test image or my registry. If we define an |
Community notes:
|
As a future tag policy, I also would like to be able to define the image tag based in the project being build. Like re-use Git tag as container tag, and the same for commit-id/branch, similarly than quay.io does. |
Yep, I think we can provide more image tag policies for us:
At least, I think we should allow end-user to manually change to special image tag (The And I think what we can do for If end user chooses Like the current ServiceAccount setting in buildRun:
I am not sure if it is ok for all of us? Or any other suggestion? |
Yes, I agree with above. For me, Consider from end user experience, a development team define a To do this, if And pattern of So suggest to allow overwrite in 'buildrun' API spec. Thank you. |
Good, agreed! And to add here, Thinking out loud, maybe we should also allow the user to inform a command which will return the version of the project, in other words, which tag the image should have, in the project folder itself. Similarly to informing the location of the
Definitely, well said.
Okay, fair enough. We should also inform about this circumstance in the |
Yes, agree. We should suppport both UI and cli. And we should design the tag policy logic first then prioritize the policies and do it one by one. |
The basic build flow from developer I think:
status
.To implement above scenarios, what I understand there is some gap here.
for 2, we have to update build cr spec
output
with new tag each time, then create a buildrun cr to kick off a build. One build needs to touch 2 cr which is not good from end user perspective.for 3, we have to get image+tag from
build
cr spec, which is not good, as spec is not design as result, status is for result.Proposal:
Add
tag
inbuildrun
CRDspec
, end user to specific image tag when create buildrun.Add
image
inbuildrun
CRDstatus
, where end user can get a full url of image when build completed successfully.@sbose78 @zhangtbj your thought ?
The text was updated successfully, but these errors were encountered: