• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Blocker Blocker
    • openshift-sync-plugin
    • None
    • Jenkins 2.289.2, k8s plugin 1.30.1, k8s cred plugin 0.9.0, k8s CLI plugin 1.10.3

      This was working in 1.0.46 but has not worked in any version since.
      The plugin does not sync existing secrets. I can create a new secret and it appears straight away, but existing secrets are not synced. 
      I can have a secret syncing, restart Jenkins and it no longer syncs. 
      I have enabled finest logging on io.fabric8.jenkins.openshiftsync and .SecretInformaer .CredentislUtils, GlobalPluginConfiguration and can see no errors.
      I do see :

      Aug 27, 2021 8:55:00 AM INFO io.fabric8.jenkins.openshiftsync.SecretInformer start
      Starting secret informer {} !!oceanus-dev
      Aug 27, 2021 8:55:00 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer start
      listing Secret resources
      Aug 27, 2021 8:55:00 AM INFO io.fabric8.jenkins.openshiftsync.SecretInformer start
      Secret informer started for namespace: {}oceanus-dev
      Aug 27, 2021 8:55:00 AM INFO io.fabric8.jenkins.openshiftsync.GlobalPluginConfigurationTimerTask start
      All the namespaced informers have been registered!! ... starting all registered informers
      Aug 27, 2021 8:55:00 AM INFO io.fabric8.jenkins.openshiftsync.GlobalPluginConfigurationTimerTask start
      All registered informers have been started
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:02 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onAdd
      Secret informer  received add event for: {}null
      Aug 27, 2021 8:55:05 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:10 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:15 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:20 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:25 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:30 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:35 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      Secret informer received update event for: {} to: {}nullnull
      Aug 27, 2021 8:55:40 AM FINE io.fabric8.jenkins.openshiftsync.SecretInformer onUpdate
      

          [JENKINS-66468] Does not sync existing credentials

          max allan added a comment -

          Also tracking the issue on GitHub. Most people need pre 1.0.47 when the new method for getting resources was brought in. Weird that 1.0.49 works for you.

          https://github.com/openshift/jenkins-sync-plugin/issues/392

          max allan added a comment - Also tracking the issue on GitHub. Most people need pre 1.0.47 when the new method for getting resources was brought in. Weird that 1.0.49 works for you. https://github.com/openshift/jenkins-sync-plugin/issues/392

          Adam Kaplan added a comment - - edited

          Work to fix this issue will be tracked in https://bugzilla.redhat.com/show_bug.cgi?id=2024933

          Adam Kaplan added a comment - - edited Work to fix this issue will be tracked in https://bugzilla.redhat.com/show_bug.cgi?id=2024933

          Same case here

          Openshift version 4.8
          Kubernetes version 1.21.1
          Jenkins version 2.303.3

          Secrets are not being syncd at all.

          We're seeing this since last Openshift update to 4.8. Tried downgrading other plugins like kubernetes, kubernets-api, kubernetes-credential as found in other posts but nothing worked.

          With 1.0.50, 1.0.51 and 1.0.52 obtaining same error:

          2022-01-18 18:42:31 WARNING hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1 error Failed to instantiate Key[type=io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration, annotation=[none]]; skipping this component
          com.google.inject.ProvisionException: Unable to provision, see the following errors:
          1) Error injecting constructor, java.lang.NoSuchMethodError: 'okhttp3.OkHttpClient io.fabric8.openshift.client.DefaultOpenShiftClient.getHttpClient()'
          at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.<init>(GlobalPluginConfiguration.java:109)
          1 error
          at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:52)
          at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145)
          at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:441)
          at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
          at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1016)
          at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092)
          at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1012)
          at hudson.ExtensionFinder$GuiceFinder._find(ExtensionFinder.java:401)
          at hudson.ExtensionFinder$GuiceFinder.find(ExtensionFinder.java:392)
          at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:349)
          at hudson.ExtensionList.load(ExtensionList.java:382)
          at hudson.ExtensionList.ensureLoaded(ExtensionList.java:318)
          at hudson.ExtensionList.iterator(ExtensionList.java:170)
          at hudson.ExtensionList.get(ExtensionList.java:147)
          at org.jenkinsci.main.modules.sshd.SSHD.get(SSHD.java:263)
          at org.jenkinsci.main.modules.sshd.SSHD.init(SSHD.java:268)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.base/java.lang.reflect.Method.invoke(Method.java:566)
          at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:104)
          at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:180)
          at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296)
          at jenkins.model.Jenkins$5.runTask(Jenkins.java:1158)
          at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
          at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
          at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:68)
          at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
          at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
          at java.base/java.lang.Thread.run(Thread.java:829)
          Caused by: java.lang.NoSuchMethodError: 'okhttp3.OkHttpClient io.fabric8.openshift.client.DefaultOpenShiftClient.getHttpClient()'
          at io.fabric8.jenkins.openshiftsync.OpenShiftUtils.initializeOpenShiftClient(OpenShiftUtils.java:153)
          at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.start(GlobalPluginConfiguration.java:128)
          at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.configChange(GlobalPluginConfiguration.java:123)
          at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.<init>(GlobalPluginConfiguration.java:111)
          at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration$$FastClassByGuice$$7bc306ea.newInstance(<generated>)
          at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40)
          at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61)
          at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105)
          at com.google.inject.internal.ConstructorInjector.access$000(ConstructorInjector.java:32)
          at com.google.inject.internal.ConstructorInjector$1.call(ConstructorInjector.java:89)
          at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:115)
          at hudson.ExtensionFinder$GuiceFinder$SezpozModule.onProvision(ExtensionFinder.java:568)
          at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:126)
          at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:68)
          at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:87)
          at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267)
          at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
          at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103)
          at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
          ... 29 more

          Raúl González added a comment - Same case here Openshift version 4.8 Kubernetes version 1.21.1 Jenkins version 2.303.3 Secrets are not being syncd at all. We're seeing this since last Openshift update to 4.8. Tried downgrading other plugins like kubernetes, kubernets-api, kubernetes-credential as found in other posts but nothing worked. With 1.0.50, 1.0.51 and 1.0.52 obtaining same error: 2022-01-18 18:42:31 WARNING hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1 error Failed to instantiate Key[type=io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration, annotation= [none] ]; skipping this component com.google.inject.ProvisionException: Unable to provision, see the following errors: 1) Error injecting constructor, java.lang.NoSuchMethodError: 'okhttp3.OkHttpClient io.fabric8.openshift.client.DefaultOpenShiftClient.getHttpClient()' at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.<init>(GlobalPluginConfiguration.java:109) 1 error at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:52) at com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145) at hudson.ExtensionFinder$GuiceFinder$FaultTolerantScope$1.get(ExtensionFinder.java:441) at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41) at com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1016) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092) at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1012) at hudson.ExtensionFinder$GuiceFinder._find(ExtensionFinder.java:401) at hudson.ExtensionFinder$GuiceFinder.find(ExtensionFinder.java:392) at hudson.ClassicPluginStrategy.findComponents(ClassicPluginStrategy.java:349) at hudson.ExtensionList.load(ExtensionList.java:382) at hudson.ExtensionList.ensureLoaded(ExtensionList.java:318) at hudson.ExtensionList.iterator(ExtensionList.java:170) at hudson.ExtensionList.get(ExtensionList.java:147) at org.jenkinsci.main.modules.sshd.SSHD.get(SSHD.java:263) at org.jenkinsci.main.modules.sshd.SSHD.init(SSHD.java:268) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:104) at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:180) at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296) at jenkins.model.Jenkins$5.runTask(Jenkins.java:1158) at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214) at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117) at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:68) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.NoSuchMethodError: 'okhttp3.OkHttpClient io.fabric8.openshift.client.DefaultOpenShiftClient.getHttpClient()' at io.fabric8.jenkins.openshiftsync.OpenShiftUtils.initializeOpenShiftClient(OpenShiftUtils.java:153) at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.start(GlobalPluginConfiguration.java:128) at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.configChange(GlobalPluginConfiguration.java:123) at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration.<init>(GlobalPluginConfiguration.java:111) at io.fabric8.jenkins.openshiftsync.GlobalPluginConfiguration$$FastClassByGuice$$7bc306ea.newInstance(<generated>) at com.google.inject.internal.cglib.reflect.$FastConstructor.newInstance(FastConstructor.java:40) at com.google.inject.internal.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:61) at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:105) at com.google.inject.internal.ConstructorInjector.access$000(ConstructorInjector.java:32) at com.google.inject.internal.ConstructorInjector$1.call(ConstructorInjector.java:89) at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:115) at hudson.ExtensionFinder$GuiceFinder$SezpozModule.onProvision(ExtensionFinder.java:568) at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:126) at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:68) at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:87) at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:267) at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103) at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) ... 29 more

          Adam Kaplan added a comment -

          We're tracking the NoSuchMethod error in https://bugzilla.redhat.com/show_bug.cgi?id=2040810

          Adam Kaplan added a comment - We're tracking the NoSuchMethod error in https://bugzilla.redhat.com/show_bug.cgi?id=2040810

          Eveline Dupas added a comment - - edited

          My team is experiencing similar problem.

          When we create Secrets and BuildConfigs in Openshift, it syncs and I can use it normally in Jenkins.
          After couple hours I see, in Jenkins POD logs, that some exceptions come up and an event of deletion is triggered to my credentials (Secrets) and some times it triggers a deletion event to my pipelines (BuildConfig). Once this deletion is triggered (not requested by me, but by some random thing of the sync plugin), secrets and build config doesn't sync anymore... They are still in Openshift but not in Jenkins anymore...

          If I delete and create them again in Openshift, then they come back to Jenkins until this auto purge delete them again couple hours later....

          My current settings are:

          Openshift 4.8.23
          Jenkins 2.303.3
          Openshift sync plugin: 1.0.50
          Kubernetes plugin: 1.30.1
          Kubernetes Client Api Plugin: 5.4.1

           

          ######

          Updating my status: 

           

          I tried to update my Openshift sync plugin to version 1.0.53 to see if it works, but now it doesn't sync anything anymore and even downgrading the plugin version to the previous version (1.0.50) it's not working anymore...

          Eveline Dupas added a comment - - edited My team is experiencing similar problem. When we create Secrets and BuildConfigs in Openshift, it syncs and I can use it normally in Jenkins. After couple hours I see, in Jenkins POD logs, that some exceptions come up and an event of deletion is triggered to my credentials (Secrets) and some times it triggers a deletion event to my pipelines (BuildConfig). Once this deletion is triggered (not requested by me, but by some random thing of the sync plugin), secrets and build config doesn't sync anymore... They are still in Openshift but not in Jenkins anymore... If I delete and create them again in Openshift, then they come back to Jenkins until this auto purge delete them again couple hours later.... My current settings are: Openshift 4.8.23 Jenkins 2.303.3 Openshift sync plugin: 1.0.50 Kubernetes plugin: 1.30.1 Kubernetes Client Api Plugin: 5.4.1   ###### Updating my status:    I tried to update my Openshift sync plugin to version 1.0.53 to see if it works, but now it doesn't sync anything anymore and even downgrading the plugin version to the previous version (1.0.50) it's not working anymore...

          Adam Kaplan added a comment -

          In addition to the openshift-sync plugin, please make sure that you have upgraded the following plugins:

          Kubernetes plugin: 1.31.0
          Kubernetes Client API Plugin: 5.10.1-171.vaa0774fb8c20

          There is a tight coupling between the sync plugin issue and the dependencies in the Kubernetes plugin and client API plugin.

          Adam Kaplan added a comment - In addition to the openshift-sync plugin, please make sure that you have upgraded the following plugins: Kubernetes plugin: 1.31.0 Kubernetes Client API Plugin: 5.10.1-171.vaa0774fb8c20 There is a tight coupling between the sync plugin issue and the dependencies in the Kubernetes plugin and client API plugin.

          max allan added a comment -

          Thanks adambkaplan, do you mean you need those specific versions of k8s/k8s client API ? Because the latest versions are 1.31.3 and 5.11.2-182.v0f1cf4c5904e . Should we install latest or stick with the specified older versions?

          max allan added a comment - Thanks adambkaplan , do you mean you need those specific versions of k8s/k8s client API ? Because the latest versions are 1.31.3 and 5.11.2-182.v0f1cf4c5904e . Should we install latest or stick with the specified older versions?

          Hi max_allan,

           

          You must install those specific versions, and don't upgrade them until a real fix comes out. That worked for me.

          Kubernetes plugin: 1.31.0
          Kubernetes Client API Plugin: 5.10.1-171.vaa0774fb8c20

           

          https://bugzilla.redhat.com/show_bug.cgi?id=2040810

           

          Raúl González added a comment - Hi max_allan ,   You must install those specific versions, and don't upgrade them until a real fix comes out. That worked for me. Kubernetes plugin: 1.31.0 Kubernetes Client API Plugin: 5.10.1-171.vaa0774fb8c20   https://bugzilla.redhat.com/show_bug.cgi?id=2040810  

          Eveline Dupas added a comment - - edited

          Thank you people!

          The versions that adambkaplan posted worked for me if I update Openshift Sync Plugin to version 1.0.53

          So my current combination of settings working is:

           

          Openshift 4.8.23
          Jenkins 2.303.3
          Openshift sync plugin: 1.0.53
          Kubernetes plugin: 1.31.0
          Kubernetes Client Api Plugin: 5.10.1-171.vaa0774fb8c20

           

          here is the link to get the specific plugin version for Jenkins: https://updates.jenkins.io/download/plugins/

           

          Eveline Dupas added a comment - - edited Thank you people! The versions that adambkaplan posted worked for me if I update Openshift Sync Plugin to version 1.0.53 So my current combination of settings working is:   Openshift 4.8.23 Jenkins 2.303.3 Openshift sync plugin: 1.0.53 Kubernetes plugin: 1.31.0 Kubernetes Client Api Plugin: 5.10.1-171.vaa0774fb8c20   here is the link to get the specific plugin version for Jenkins: https://updates.jenkins.io/download/plugins/  

          Adam Kaplan added a comment -

          Fixed with the following combination of plugins:

          OpenShift Sync :1.0.53
          Kubernetes Client: 1.31.0
          Kubernetes Client API: 5.10.1-171.vaa0774fb8c20

          Adam Kaplan added a comment - Fixed with the following combination of plugins: OpenShift Sync :1.0.53 Kubernetes Client: 1.31.0 Kubernetes Client API: 5.10.1-171.vaa0774fb8c20

            adambkaplan Adam Kaplan
            max_allan max allan
            Votes:
            1 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: