On Sat, Jul 18, 2020 at 11:41 AM Michael Carter
<
mikeyca...@gmail.com> wrote:
> can pipeline shared libraries create UI interfaces so that rather than writing pipeline code our developers can just add UI selections to the pipeline job like Jenkins Plugin can for FreeStyle jobs?
No, there is no integration with the *Pipeline Syntax* pages. In
principle there could be some system by which a library could include
metadata (Groovy annotations?) that could be introspected and generate
a RAD-builder-like GUI, but there has been no such effort.
> can pipeline shared libraries include and access third-party Java SDKs jars? Similar to docker SDKs or cloud SDKs for example? Not using existing plugins but on top of these SDKs directly
They _can_, via `@Grab`, but it is not recommended. (See
https://github.com/jenkins-infra/jenkins.io/pull/3535 for docs.) In
most cases you can get a similar effect from a library by bundling
(via `libraryResource`) or otherwise referring to external (`sh` etc.)
tools that run like any other build steps in a workspace.
> Can pipeline shared libraries create new credentials types or new credential store providers, I'm dealing with an external password manager which I'm sync'ing up with jenkins?
No, this must be done via a plugin:
https://www.jenkins.io/doc/developer/extensions/credentials/#credentialsprovider
> Can shared libraries be run as background sync/bridge that runs as a task over running as a job/build?
No, code runs the same way as any other Pipeline script, within the
context of a build.
> Can shared libraries add items/jelly files to snippet generator area?
See above.
> Can shared libraries add global variables read from REST APIs to be available to FreeStyle jobs?
No, libraries are very specific to Pipeline.
> Can shared libraries hook into pre/post job hooks? (like publisher, notifier, triggers)
Publishers and notifiers exist only for traditional job types.
Pipeline jobs have undifferentiated “steps” which can be run at any
time.
Triggers must be implemented in plugins:
https://www.jenkins.io/doc/developer/extensions/jenkins-core/#trigger