Inventory of development flows for Jenkinsfile and Pipeline Library

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Inventory of development flows for Jenkinsfile and Pipeline Library

Martin d'Anjou
I'd like to inventory the current development flows for unit testing, integration testing and release of Jenkinsfile and Pipeline DSL libraries.

I am guessing everyone's objective is to reach a level where a single "gradle" or "mvn" command runs all tests and deploys a new set of Jenkinsfile/Pipeline Libraries to production servers.

There is a ticket open on this topic: https://issues.jenkins-ci.org/browse/JENKINS-33925

Here is what I have found so far:
  • The replay button in Jenkins
    • Not much of process here
  • https://github.com/lesfurets/JenkinsPipelineUnit
    • For unit testing
    • Uses mocking
    • Supports Jenkins Pipeline libraries
    • Usage example here: https://github.com/macg33zr/pipelineUnit
    • Not sure this covers plugin version compatibility
  • https://github.com/SpencerMalone/JenkinsPipelineIntegration
    • Unit and some Integration tests possible
    • Accounts for Jenkins version
    • Accounts for plugins and plugin versions
    • JenkinsRule approach
    • This is like writing tests for a Jenkins plugin
  • https://github.com/oleg-nenashev/demo-jenkins-config-as-code
I am probably not giving these projects the full credit and description they deserve, feel free to comment and complete the list. I feel the objective is within reach, what do you think?

Martin

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/73ff120a-6c18-429e-a15b-33b1b8028977%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Inventory of development flows for Jenkinsfile and Pipeline Library

Christopher Orr
On Wed, 6 Sep 2017, at 16:23, Martin d'Anjou wrote:
> I'd like to inventory the current development flows for unit testing,
> integration testing and release of Jenkinsfile and Pipeline DSL
> libraries.

Sounds good.

> I am guessing everyone's objective is to reach a level where a single
> "gradle" or "mvn" command runs all tests and deploys a new set of
> Jenkinsfile/Pipeline Libraries to production servers.
>
> There is a ticket open on this
> topic: https://issues.jenkins-ci.org/browse/JENKINS-33925
>
> Here is what I have found so far:
>
>    - The replay button in Jenkins
>      - Not much of process here

There is the possibility to automate this somewhat, via the
`replay-pipeline` CLI command:
https://jenkins.io/blog/2016/04/14/replay-with-pipeline/

Regards,
Chris

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/1504738750.3222408.1097699136.07B10473%40webmail.messagingengine.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Inventory of development flows for Jenkinsfile and Pipeline Library

Oleg Nenashev
Hi Martin,

You are always welcome to write an overview blogpost!
I have a plan to publish such one about the local Pipeline development, but I am not sure when I find some time for that.

Best regards,
Oleg

среда, 6 сентября 2017 г., 23:59:22 UTC+1 пользователь Christopher Orr написал:
On Wed, 6 Sep 2017, at 16:23, Martin d'Anjou wrote:
> I'd like to inventory the current development flows for unit testing,
> integration testing and release of Jenkinsfile and Pipeline DSL
> libraries.

Sounds good.

> I am guessing everyone's objective is to reach a level where a single
> "gradle" or "mvn" command runs all tests and deploys a new set of
> Jenkinsfile/Pipeline Libraries to production servers.
>
> There is a ticket open on this
> topic: <a href="https://issues.jenkins-ci.org/browse/JENKINS-33925" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-33925\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGh2JWuilKAxgPdmK13IlGAqotbZA&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fissues.jenkins-ci.org%2Fbrowse%2FJENKINS-33925\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGh2JWuilKAxgPdmK13IlGAqotbZA&#39;;return true;">https://issues.jenkins-ci.org/browse/JENKINS-33925
>
> Here is what I have found so far:
>
>    - The replay button in Jenkins
>      - Not much of process here

There is the possibility to automate this somewhat, via the
`replay-pipeline` CLI command:
<a href="https://jenkins.io/blog/2016/04/14/replay-with-pipeline/" target="_blank" rel="nofollow" onmousedown="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fjenkins.io%2Fblog%2F2016%2F04%2F14%2Freplay-with-pipeline%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEIxQrmrJrSd55J4KemW9DmvEiqLg&#39;;return true;" onclick="this.href=&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fjenkins.io%2Fblog%2F2016%2F04%2F14%2Freplay-with-pipeline%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNEIxQrmrJrSd55J4KemW9DmvEiqLg&#39;;return true;">https://jenkins.io/blog/2016/04/14/replay-with-pipeline/

Regards,
Chris

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/027442da-ef3e-491f-8a47-6f56b20f5a9b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Inventory of development flows for Jenkinsfile and Pipeline Library

Baptiste MATHUS
+1, awesome idea. An entry like the "State of Jenkins Pipeline Testing" on jenkins.io would certainly be much useful to help this subject mature. And to that end we probably need more people trying different strategies to see what works well or less well. Hence trying to list the current strategies to make those more accessible to newcomers.



2017-09-10 0:42 GMT+02:00 Oleg Nenashev <[hidden email]>:
Hi Martin,

You are always welcome to write an overview blogpost!
I have a plan to publish such one about the local Pipeline development, but I am not sure when I find some time for that.

Best regards,
Oleg

среда, 6 сентября 2017 г., 23:59:22 UTC+1 пользователь Christopher Orr написал:
On Wed, 6 Sep 2017, at 16:23, Martin d'Anjou wrote:
> I'd like to inventory the current development flows for unit testing,
> integration testing and release of Jenkinsfile and Pipeline DSL
> libraries.

Sounds good.

> I am guessing everyone's objective is to reach a level where a single
> "gradle" or "mvn" command runs all tests and deploys a new set of
> Jenkinsfile/Pipeline Libraries to production servers.
>
> There is a ticket open on this
> topic: https://issues.jenkins-ci.org/browse/JENKINS-33925
>
> Here is what I have found so far:
>
>    - The replay button in Jenkins
>      - Not much of process here

There is the possibility to automate this somewhat, via the
`replay-pipeline` CLI command:
https://jenkins.io/blog/2016/04/14/replay-with-pipeline/

Regards,
Chris

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/027442da-ef3e-491f-8a47-6f56b20f5a9b%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
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 [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/CANWgJS7d550dg7m0QKE%3DBj4apUnOCzpGKmQBHY9iZ422Y8JK%3Dw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.