-
Notifications
You must be signed in to change notification settings - Fork 263
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
feat(push): allow pushing composed components to registry #2996
base: main
Are you sure you want to change the base?
Conversation
ee371d1
to
9176ca1
Compare
895614d
to
2ba49e1
Compare
cc/ @itowlson a simple test is now included. |
@itowlson friendly ping that this is ready for another review! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First off, sorry for taking so long to get to this.
I don't really feel capable of reviewing this beyond "I affirm that Brian is not sneaking in a Bitcoin miner," but from what I can tell it seems sound, and I assume you've tested it against suitable hosts which is more reassuring than any reading of mine could be!
I did have some comments on the style and the testing - they're not blockers, but I'd like to see if they're easy to address before we merge. (And please ignore the melodramatic last comment - we've already covered that but I'm struggling to reconcile myself to the outcome!)
Signed-off-by: Brian H <[email protected]>
) -> Result<Vec<ImageLayer>> { | ||
let mut layers = Vec::new(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@itowlson Calling attention to this diff because it's minimized by default. Let me know if this is easier to follow.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for those changes - this feels much more readable now (at least to me!). Appreciate your patience with my niggling. If you're still comfortable with it then good to go!
Thanks for the review! I think i'll try to get 1 or 2 more 👀 just to spread awareness. |
@@ -49,6 +49,10 @@ pub struct Push { | |||
)] | |||
pub insecure: bool, | |||
|
|||
/// Skip composing the application's components before pushing it. | |||
#[clap(long = "skip-compose")] | |||
pub skip_compose: bool, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Clarifying that now this will default to true right so this is a breaking change to how users expect artifacts to be produced by default? Run runtimes should still be able to handle the composed artifacts so it shouldn't break runtimes that are tied to this CLI
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It defaults to false but yes the rest of your comment is correct! A follow up to this would be to set this to true for all the plugins that push to the registry.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if it defaults to false then there is no change. I thought the idea was for the default to unlock success for SpinKube (the shim)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry! Yeah you're correct: the default is skip-compose = false
which will always push compositions by default. My bad, I was responding literally to the value being false not the behavior 😅
WIP for now to flesh out the concept.Implements #2988
Still working to add a test but the meat-and-potatoes is ready to serve.