Skip to content
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

Introduce RealJenkinsRule.createSyntheticPlugin to allow synthetic plugins to be installed dynamically and break compatibility for existing callers of RealJenkinsRule.addSyntheticPlugin #920

Merged
merged 3 commits into from
Feb 19, 2025

Conversation

dwnusbaum
Copy link
Member

@dwnusbaum dwnusbaum commented Feb 18, 2025

Needed for jenkinsci/jenkins#10240.

Backwards-incompatible for most existing callers of RealJenkinsRule.addSyntheticPlugin.

Testing done

New automated test case added.

Submitter checklist

  • Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
  • Ensure that the pull request title represents the desired changelog entry
  • Please describe what you did
  • Link to relevant issues in GitHub or Jira
  • Link to relevant pull requests, esp. upstream and downstream changes
  • Ensure you have provided tests - that demonstrates feature works or fixes the issue

jglick
jglick previously approved these changes Feb 18, 2025
Copy link
Member

@jglick jglick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(pending discussion of done)

@jglick jglick dismissed their stale review February 18, 2025 23:40

design still under discussion

@dwnusbaum dwnusbaum requested a review from jglick February 19, 2025 17:01
@@ -40,7 +41,7 @@ public final class RealJenkinsRuleSyntheticPluginTest {
@Rule public RealJenkinsRule rr = new RealJenkinsRule().prepareHomeLazily(true);

@Test public void smokes() throws Throwable {
rr.addSyntheticPlugin(Stuff.class.getPackage()).done();
rr.addSyntheticPlugin(new SyntheticPlugin(Stuff.class.getPackage()));
Copy link
Member Author

@dwnusbaum dwnusbaum Feb 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The change is no longer backwards compatible, but this is all that needs to be done to adapt.

@jglick
Copy link
Member

jglick commented Feb 19, 2025

(Merge at will, if the revised API is being used successfully downstream.)

@dwnusbaum dwnusbaum changed the title Allow synthetic plugins to be installed dynamically Introduce RealJenkinsRule.createSyntheticPlugin to allow synthetic plugins to be installed dynamically and break compatibility for existing callers of RealJenkinsRule.addSyntheticPlugin Feb 19, 2025
@dwnusbaum dwnusbaum merged commit 5992ad4 into jenkinsci:master Feb 19, 2025
15 checks passed
@dwnusbaum dwnusbaum deleted the create-synthetic-plugin branch February 19, 2025 17:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants