-
Notifications
You must be signed in to change notification settings - Fork 87
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
introdue a new mojo to list all Jenkins plugins in a reactor #463
Conversation
9748664
to
2165985
Compare
introduces a mojo that will print the artifactID version and location of all projects in the reactor that are Jenkins plugins.
2165985
to
71cefbf
Compare
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.
OK, I get why you are doing this, but a custom Mojo here seems completely overkill to me. Moreover its output isn't human readable, and I don't think any human would ever want to invoke this Mojo, so it would end up just being an appendage of PCT that lives in another repository, which I don't think is maintainable. Moreover this could be implemented entirely in PCT by listing all modules:
mvn -Dexpression=project.modules -DforceStdout=true -q help:evaluate
And then iterating over each one and getting its packaging, e.g. (for workflow-cps
):
mvn -pl dgm-builder -Dexpression=project.packaging -DforceStdout=true -q help:evaluate
mvn -pl lib -Dexpression=project.packaging -DforceStdout=true -q help:evaluate
mvn -pl plugin -Dexpression=project.packaging -DforceStdout=true -q help:evaluate
In this case only plugin
returns hpi
so that would yield the same result.
I am inclined to close this. If you want me to focus on writing the code I just described above, I am happy to do that. But I wanted to get your consent before closing this PR. What do you think?
I would argue the small amount of code in a maven plugin would be easier to understand than those in the pct.
agreed - but no different to
which only works for first level modules and not children of them. Whilst we don't have any currently in the bom or proprietary code there are some Jenkins plugins that have done this in the past and we should not be enforcing a structure onto plugin developers just so that they can use this tooling.
I believe that a single mojo call is easier to understand and should rarely if every need to change. I also concede that putting it in the If you desire to inline this into the |
was inlined with commit jenkinsci/plugin-compat-tester@e310871 |
introduces a mojo that will print the artifactID version and location of all projects in the reactor that are Jenkins plugins.