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
fileOnMaster
java.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:
Configuration as Code Plugin
<https://wiki.jenkins.io/display/JENKINS/Configuration+as+Code+Plugin>: 1.20
<https://wiki.jenkins.io/display/JENKINS/Configuration+as+Code+Plugin>
Configuration as Code Support Plugin:
<https://wiki.jenkins.io/display/JENKINS/Configuration+as+Code+Support+Plugin>
1.19
<https://wiki.jenkins.io/display/JENKINS/Configuration+as+Code+Support+Plugin>
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?
Thanks
<https://wiki.jenkins.io/display/JENKINS/Configuration+as+Code+Support+Plugin>
<https://wiki.jenkins.io/display/JENKINS/Configuration+as+Code+Support+Plugin>
--
You received this message because you are subscribed to the Google Groups
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/jenkinsci-users/e9d6d31c-a55d-4a73-ae24-70666857623a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.