HI
I am using JCasC plugin to backup configurations of our team's Jenkins server, the configuration contains some certificates in credential configuration, I added those certificates in the yaml file as follows:
credentials:
system:
domainCredentials:
- credentials:
- certificate:
id: "09cee6c2-8a39-41c0-982d-d61142881f51"
keyStoreSource:
fileOnMaster:
keyStoreFile: "/var/lib/jenkins/.kube/xxxx.pfx"
password: "{AQAAABAAAAAQQFDGeGfdsasdfajaGHAVcrBgCnZudsafdsPEWgYADaZ1mg=}"
scope: GLOBAL
But it failed to apply this configuration on another jenkins server, it threw the following errors:
No com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$KeyStoreSource implementation found for fileOnMasterjava.lang.IllegalArgumentException: No com.cloudbees.plugins.credentials.impl.CertificateCredentialsImpl$KeyStoreSource implementation found for fileOnMaster
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.lambda$lookupDescriptor$11(HeteroDescribableConfigurator.java:153)
at io.vavr.control.Option.orElse(Option.java:302)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.lookupDescriptor(HeteroDescribableConfigurator.java:152)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.lambda$configure$3(HeteroDescribableConfigurator.java:80)
at io.vavr.Tuple2.apply(Tuple2.java:239)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.configure(HeteroDescribableConfigurator.java:79)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.configure(HeteroDescribableConfigurator.java:51)
at io.jenkins.plugins.casc.impl.configurators.DataBoundConfigurator.tryConstructor(DataBoundConfigurator.java:131)
at io.jenkins.plugins.casc.impl.configurators.DataBoundConfigurator.instance(DataBoundConfigurator.java:74)
at io.jenkins.plugins.casc.BaseConfigurator.configure(BaseConfigurator.java:268)
at io.jenkins.plugins.casc.impl.configurators.DataBoundConfigurator.configure(DataBoundConfigurator.java:80)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.lambda$doConfigure$16668e2$1(HeteroDescribableConfigurator.java:219)
at io.vavr.CheckedFunction0.lambda$unchecked$52349c75$1(CheckedFunction0.java:201)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.doConfigure(HeteroDescribableConfigurator.java:219)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.lambda$null$2(HeteroDescribableConfigurator.java:82)
at io.vavr.control.Option.map(Option.java:373)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.lambda$configure$3(HeteroDescribableConfigurator.java:82)
at io.vavr.Tuple2.apply(Tuple2.java:239)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.configure(HeteroDescribableConfigurator.java:79)
at io.jenkins.plugins.casc.impl.configurators.HeteroDescribableConfigurator.configure(HeteroDescribableConfigurator.java:51)
at io.jenkins.plugins.casc.impl.configurators.DataBoundConfigurator.tryConstructor(DataBoundConfigurator.java:123)
at io.jenkins.plugins.casc.impl.configurators.DataBoundConfigurator.instance(DataBoundConfigurator.java:74)
at io.jenkins.plugins.casc.BaseConfigurator.configure(BaseConfigurator.java:268)
at io.jenkins.plugins.casc.impl.configurators.DataBoundConfigurator.check(DataBoundConfigurator.java:98)
at io.jenkins.plugins.casc.BaseConfigurator.configure(BaseConfigurator.java:345)
at io.jenkins.plugins.casc.BaseConfigurator.check(BaseConfigurator.java:288)
at io.jenkins.plugins.casc.BaseConfigurator.configure(BaseConfigurator.java:353)
at io.jenkins.plugins.casc.BaseConfigurator.check(BaseConfigurator.java:288)
at io.jenkins.plugins.casc.ConfigurationAsCode.lambda$checkWith$6(ConfigurationAsCode.java:672)
at io.jenkins.plugins.casc.ConfigurationAsCode.invokeWith(ConfigurationAsCode.java:634)
at io.jenkins.plugins.casc.ConfigurationAsCode.checkWith(ConfigurationAsCode.java:672)
at io.jenkins.plugins.casc.ConfigurationAsCode.checkWith(ConfigurationAsCode.java:567)
..
it seems that the fileOnMaster syntax is not supported with the current plugin version, the installed plugins have the following version number:
I checked the demos in JCasC's repository and didn't find a example for certificate, does anyone know how to add a configuration for certificate with the plugin version I have installed?
|
|