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

Bump instance-identity from 3.1 to 116.vf8f487400980 #6715

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jun 28, 2022

Bumps instance-identity from 3.1 to 116.vf8f487400980.

Release notes

Sourced from instance-identity's releases.

116.vf8f487400980

📦 Dependency updates

113.vb926fdeb6c55

🚀 New features and improvements

✍ Other changes

instance-indetity-3.2

Bug Fixes

Switch from the JDK to BouncyCastle for PEM decoding. PR#23 / JENKINS-68662

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [instance-identity](https://github.com/jenkinsci/instance-identity-plugin) from 3.1 to 116.vf8f487400980.
- [Release notes](https://github.com/jenkinsci/instance-identity-plugin/releases)
- [Changelog](https://github.com/jenkinsci/instance-identity-plugin/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jenkinsci/instance-identity-plugin/commits)

---
updated-dependencies:
- dependency-name: org.jenkins-ci.modules:instance-identity
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Jun 28, 2022
basil
basil previously requested changes Jun 29, 2022
Copy link
Member

@basil basil left a comment

Choose a reason for hiding this comment

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

Many test failures, seems like fallout from #6585 and/or jenkinsci/instance-identity-plugin#23

java.lang.IllegalStateException: Couldn't locate either of bouncy castle FIPS or non fips provider, available providers areSUN,SunRsaSign,SunEC,SunJSSE,SunJCE,SunJGSS,SunSASL,XMLDSig,SunPCSC,JdkLDAP,JdkSASL,SunPKCS11.
        at jenkins.bouncycastle.api.PEMEncodable.<clinit>(PEMEncodable.java:96)
Caused: java.lang.ExceptionInInitializerError
        at org.jenkinsci.main.modules.instance_identity.pem.PEMHelper.encodePEM(PEMHelper.java:72)
        at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.write(InstanceIdentity.java:97)
        at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:67)
        at org.jenkinsci.main.modules.instance_identity.InstanceIdentity.<init>(InstanceIdentity.java:41)
        at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl.<init>(PageDecoratorImpl.java:22)
        at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$415856317.GUICE$TRAMPOLINE(<generated>)
        at org.jenkinsci.main.modules.instance_identity.PageDecoratorImpl$$FastClassByGuice$$415856317.apply(<generated>)
        at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:82)
        at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:114)
        at com.google.inject.internal.ConstructorInjector.access$000(ConstructorInjector.java:33)
        at com.google.inject.internal.ConstructorInjector$1.call(ConstructorInjector.java:98)
        at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:109)
        at hudson.ExtensionFinder$GuiceFinder$SezpozModule.onProvision(ExtensionFinder.java:568)
        at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:117)
        at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:66)
        at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:93)
        at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:296)
        at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)

Somehow https://github.com/jenkinsci/bouncycastle-api-plugin/blob/1588e77cf5a919f6c7c9c8afee09aad6d5948de5/src/main/java/jenkins/bouncycastle/api/SecurityProviderInitializer.java#L50= is not being invoked prior to https://github.com/jenkinsci/instance-identity-plugin/blob/f8f487400980878419c197dfc5e87c06c30d54b9/src/main/java/org/jenkinsci/main/modules/instance_identity/PageDecoratorImpl.java#L22=

CC @jglick @jmdesprez @jtnord

@jtnord
Copy link
Member

jtnord commented Jun 29, 2022

I think I know what is going on here and will look at fixing this tomorrow.

I did not think we updated detached plugins unless there is a security release?

@basil
Copy link
Member

basil commented Jun 29, 2022

I did not think we updated detached plugins unless there is a security release?

This is not an update to a detached plugin. It is an update to a plugin in test scope in the test/ module (test/pom.xml). We regularly update plugins listed in that file.

@jtnord
Copy link
Member

jtnord commented Jun 30, 2022

There is nothing wrong with either the BouncyCastle or InstanceIdentity plugins. The issue is JenkinsRule and the maven-hpi-plugin. Specifically Jenkins when started by JenkinsRule in this project never calls Plugin.start() which is what conditionally registers the BC provider, because there are no plugin archives.

This is a bug in the test project setup - fix incoming.

The test environment used by the test project was not reaslistic as non
of the plugins had been linked so JenkinsRule was just blicdly ignoring
their existance.

this means things did not happen correctly when Jenkins was starting up
- not limited to PLugins being correctly started - as observed by
  @basil in #6715
@jtnord
Copy link
Member

jtnord commented Jun 30, 2022

4601c05 should fix the failures. Was tested locally with one of the tests that failed also with the addition of the bouncycastle plugin as a dependency but that should not be needed. If it still fails then I will add that dep, but for now I expect the hpi plugin to do the right thing

@jtnord jtnord requested review from basil and jglick June 30, 2022 16:11
@jglick jglick dismissed basil’s stale review June 30, 2022 16:58

supposedly addressed

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.

OK I think.

@jtnord
Copy link
Member

jtnord commented Jul 1, 2022

failures seem to be due to tests making assumptions about installed plugins which are incorrect.

now that we actually have the plugins as expected in JenkinsRule 4 tests
where failing for a variety of reasons

1. loading a detached plugin would downgrade the version requiring a
   restart and failing the test
2. the test was checking that nothing was installed

installing detached plugins has now been skipped where the plugin being
installed was already available due to being a maven dependency.  This
also means we only have onve version of the plugin on the classpath -
prior to this both the classes from the maven dependency and the classes
from the plugin would have been on the uber classpath creating
interesting results.

tests have been updated where there are changes between the detached
version of the plugin and the plugin from the maven dependency.

Where the test was making invalid assumptions this has also been fixed.
@jtnord jtnord force-pushed the dependabot/maven/org.jenkins-ci.modules-instance-identity-116.vf8f487400980 branch from ec6b759 to ec05f0d Compare July 1, 2022 12:43
((TestPluginManager) r.jenkins.pluginManager).installDetachedPlugin("matrix-auth");
r.createWebClient().goTo("plugin/matrix-auth/images/user-disabled.png", "image/png");
r.createWebClient().goTo("plugin/matrix-auth/images/../images/user-disabled.png", "image/png"); // collapsed somewhere before it winds up in restOfPath
r.createWebClient().goTo("plugin/matrix-auth/images/select-all.svg", "image/svg+xml");
Copy link
Member

Choose a reason for hiding this comment

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

(implicitly assumes that matrix-auth is loaded)

test/pom.xml Outdated Show resolved Hide resolved
Co-authored-by: Basil Crow <me@basilcrow.com>
@jtnord jtnord added ready-for-merge The PR is ready to go, and it will be merged soon if there is no negative feedback skip-changelog Should not be shown in the changelog labels Jul 5, 2022
@jtnord
Copy link
Member

jtnord commented Jul 5, 2022

This PR is now ready for merge. We will merge it after ~24 hours if there is no negative feedback.
Please see the merge process documentation for more information about the merge process.
Thanks!

@basil basil merged commit 2b83c2e into master Jul 6, 2022
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Jul 6, 2022

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/maven/org.jenkins-ci.modules-instance-identity-116.vf8f487400980 branch July 6, 2022 05:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file java Pull requests that update Java code ready-for-merge The PR is ready to go, and it will be merged soon if there is no negative feedback skip-changelog Should not be shown in the changelog
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants