On Tue, Apr 17, 2018 at 2:03 PM, nicolas de loof
<[email protected]> wrote:
> the yaml schema is for a specific version of jenkins-core + plugin.
> Any change to a plugin will change this model, this will happen any time a
> DataBoundConstructor is modified

Well, typically we would expect parameters to be compatible after a
plugin update, so that if for example a `@DataBoundSetter` method
needs to be `@Deprecated`, it is removed from databinding but still
accessible as a Java setter. The compatibility policy for such
refactorings does need to be defined. Currently we only expect plugins
to be compatible in their XStream settings form, plus Pipeline `Step`s
and any `Describable`s used by them need to continue to accept
parameters that worked before.

> I would anyway expect Credentials plugin to own this code, so such decision
> is made from maintainer

JEP-201 is introducing a new overall Jenkins feature, and the
Credentials plugin is a longstanding piece of plumbing, so I would
expect JEP-201 developers to address this particular integration.

> I don't understand why this plugin adopted this
> odd design - most probably for compatibility reasons

I do not think compatibility had anything to do with it. The
configuration model of Credentials is that you have various providers,
inside of each of which you can create various domains, each of which
then contains a set of credentials. The Java-level structure is more
or less arbitrary and was not intended to map directly to Jenkins
databinding, because its UI manifestation is not a single
configuration screen.

> sounds to me job-dsl could support a yaml syntax (just by switching
> parser)

Why would you need `job-dsl` at all? You already have a general system
for binding YAML to `Describable`s. You would need a bit of extra code
to bind some syntax to `TopLevelItem` and
`DirectlyModifiableTopLevelItemGroup`, and a call to JENKINS-50173 if
and when written.

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" 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-dev/CANfRfr00%2BpNy%2BSfbY%2BLeye-GYd0v7Q%2BxttRZCJddyv_Y8fgOyA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to