-
Notifications
You must be signed in to change notification settings - Fork 80
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
cli: add container lint #381
Conversation
Skipping CI for Draft Pull Request. |
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 working on this!
Mostly nits.
Also it'd be great to have a test for this, which could be done in a variety of ways there's currently 3 distinct frameworks in use here (GHA, tmt, Prow+kola), which I'd like to take down to just the first two probably, except Prow is the most container-native which is what this test would be oriented towards. But basically building a derived image with two kernels and running the lint in it would make sense. Another longer term thing to consider here is things like machine-readable output for lints; they're like compiler errors, with the same long term need for tooling that can do more to render than just scrape stdout. |
e3cc97a
to
9ed6a19
Compare
Thank you for that idea, we had not even gotten to the testing stage yet, I think this makes sense and we will look into doing this in our next mob session!
Ah so similar to how the context.paths work in butane/ignition? |
I'm not sure, can you give an example? Or do you mean just how Ignition is inherently JSON? My thought was like https://doc.rust-lang.org/rustc/json.html (could obviously be much, much simpler than that of course). |
See #410 for another good lint. |
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 working on this! I think this is a good start; basically we can polish it up a bit and ship it I think.
#439 is perhaps another thing we could try to lint against. (That said I'm increasingly thinking we should just make everything else be |
One thing that came up related to #128 is we found out that people are trying to do |
28071ac
to
ddd5167
Compare
What about the land the initial kernel lint and then add the other lints on other PRs? |
@jmarrero, I think that makes sense. I dont want to see this outstanding for much longer. That way we add value, and can add more as time allows. I need to rebase this thing before I add the doc's that colin wanted me to create though. After that the pr should be healthy. |
c36de74
to
181411f
Compare
Agree with @jmarrero , make the original PR ready and let CI runs, can check if there is anything regression with the change. |
@cgwalters how do you feel about this atm? If you wanted to have the container subcommand I have an alternative here: that runs via:
Is there one you think is better still, another option you prefer? |
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 so much for working on this!
156150d
to
6859db9
Compare
I went ahead and did some further updates here:
WDYT? |
Add an entrypoint that basically everyone can start adding to their builds which performs some basic static analysis for known problems. Closes : containers#216 Co-authored-by: Joseph Marrero <[email protected]> Co-authored-by: Huijing Hei <[email protected]> Co-authored-by: Yasmin de Souza <[email protected]> Signed-off-by: Steven Presti <[email protected]> Signed-off-by: Colin Walters <[email protected]>
Im good to merge; Thank you for the assist! and all the help up to this point! LGTM. |
cargo: bump to clap v4
Add an entrypoint that basically everyone can start
adding to their builds which performs some basic
static analysis for known problems.
(original description follows)
We know this does not fix #216 yet, we are working this in time-slots as a part of mobbing to address this. In the next update we plan on having the logic to check for one kernel complete. Then we can debate if we want the lint to be in this code base, or if we want it to be moved somewhere else.