Hi Charles,

I am working on a pipeline (build java > build docker > deploy pod in
Openshift) and currently I have no unit test.
I think you achieved something huge !! Well done by the way :)

Could you please give me someone web links or tips in order to do the same
as you ?
Do you use https://github.com/jenkinsci/JenkinsPipelineUnit ?
Is there a sample project from which we can start ?
Should we just have to follow the same organization in JenkinsPipelineUnit
> test ?
Have you automatised your scripts or do you have to play them sometimes to
update your project ?

Thank for you advices

PS : Currently my pipeline is declared in a shared library.



Regards



On Thu, Dec 17, 2020 at 9:51 AM Charles Moulliard <[email protected]>
wrote:

> I created 2 groovy scripts that I execute in a jenkins instance to figure
> out the list to be used and to be configured within the `build.gradle` file
>
> Jenkins.instance.pluginManager.plugins
> .findAll { !(it.shortName in ['job-dsl', 'structs']) }
> .collect { "testPlugins
> '${it.manifest.mainAttributes.getValue("Group-Id")}:${it.shortName}:${it.version}'"
> }
> .sort()
> .each { println it }
>
> and testCompile dependencies
> Jenkins.instance.pluginManager.plugins
> .findAll { !(it.shortName in ['job-dsl', 'structs']) }
> .collect { "testCompile
> '${it.manifest.mainAttributes.getValue("Group-Id")}:${it.shortName}:${it.version}@jar'"
> }
> .sort()
> .each { println it }
>
> On Wednesday, December 16, 2020 at 6:48:41 PM UTC+1 Charles Moulliard
> wrote:
>
>> Hi
>>
>> As a java unit test will need jar files, it is then needed to load them
>> nd to declare them within the pom.xml file or build.gradle file
>>
>> Example:
>>
>> testCompile("org.jenkins-ci.main:jenkins-test-harness:${jenkinsTestHarness}")
>>     testCompile("org.jenkins-ci.main:jenkins-war:${jenkinsCore}")
>>
>> testCompile("org.jenkins-ci.plugins:script-security:${jenkinsTestSecurityScript}@jar
>> ")
>>
>>     // Add the jar file as the testPlugins will install the hpi/jpi files
>> and not the jar needed by the junit test
>>     testCompile 'org.jenkins-ci.tools:git-parameter:0.9.13@jar'
>>
>>     testCompile 'org.jenkins-ci.plugins:structs:1.20@jar'
>>     testCompile 'org.jenkins-ci.plugins:git:3.10.0@jar'
>>     testCompile 'org.jenkins-ci.plugins:git-client:3.5.1@jar'
>>     testCompile 'org.jenkins-ci.plugins:credentials:2.3.9@jar'
>>     testCompile 'org.jenkins-ci.plugins:scm-api:2.6.4@jar'
>>     testCompile 'org.jenkins-ci.plugins:matrix-project:1.18@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins:global-variable-string-parameter:1.2@jar'
>>     testCompile 'org.jenkins-ci.plugins:junit:1.47@jar'
>>
>>     testCompile 'org.jenkins-ci.plugins:workflow-remote-loader:1.5@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins.workflow:workflow-aggregator:2.6@jar'
>>     testCompile 'org.jenkins-ci.plugins.workflow:workflow-api:2.40@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins.workflow:workflow-basic-steps:2.18@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins.workflow:workflow-scm-step:2.11@jar'
>>     testCompile 'org.jenkins-ci.plugins.workflow:workflow-cps:2.80@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins.workflow:workflow-durable-task-step:2.35@jar'
>>     testCompile 'org.jenkins-ci.plugins.workflow:workflow-job:2.38@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins.workflow:workflow-multibranch:2.20@jar'
>>     testCompile
>> 'org.jenkins-ci.plugins.workflow:workflow-step-api:2.23@jar'
>>     testCompile 'org.jenkins-ci.plugins.workflow:workflow-support:3.3@jar
>> '
>>
>>     testCompile 'org.jenkins-ci.plugins:matrix-auth:2.6.2@jar'
>>
>>     testCompile 'org.eclipse.jgit:org.eclipse.jgit:5.10.0.202012080955-r'
>>
>>     // Plugins to install in test jenkins instance running locally
>>     testPlugins 'org.jenkins-ci.main:maven-plugin:3.8'
>>
>>     testPlugins 'org.jenkins-ci.plugins:cloudbees-folder:5.14'
>>     testPlugins 'org.jenkins-ci.plugins:credentials:2.3.9'
>>     testPlugins 'org.jenkins-ci.plugins:structs:1.20'
>>     testPlugins
>> 'org.jenkins-ci.plugins:global-variable-string-parameter:1.2'
>>
>>     testPlugins 'org.jenkins-ci.tools:git-parameter:0.9.13'
>>     testPlugins 'org.jenkins-ci.plugins:git:3.10.0'
>>     testPlugins 'org.jenkins-ci.plugins:git-client:3.5.1'
>>     testPlugins 'org.jenkins-ci.plugins:scm-api:2.6.4'
>>     testPlugins 'org.jenkins-ci.plugins:matrix-project:1.18'
>>
>>     testPlugins 'org.jenkins-ci.plugins:workflow-remote-loader:1.5'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-aggregator:2.6'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-api:2.40'
>>     testPlugins
>> 'org.jenkins-ci.plugins.workflow:workflow-basic-steps:2.18'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-scm-step:2.11'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-cps:2.80'
>>     testPlugins
>> 'org.jenkins-ci.plugins.workflow:workflow-durable-task-step:2.35'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-job:2.38'
>>     testPlugins
>> 'org.jenkins-ci.plugins.workflow:workflow-multibranch:2.20'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-step-api:2.23'
>>     testPlugins 'org.jenkins-ci.plugins.workflow:workflow-support:3.3'
>>
>>     testPlugins 'org.jenkins-ci.plugins:matrix-auth:2.6.2'
>>
>>     testPlugins 'org.jenkins-ci.plugins:junit:1.47'
>>
>>     testPlugins 'org.jenkins-ci.plugins:matrix-project:1.18'
>>
>> As you can imagine, this process is long,tedious, will change when we
>> upgrade to another jenkins server (as the list of the default plugins will
>> be updated).
>>
>> Question:
>> Is there a script, tool able to grab from jenkins the plugins list and
>> next to create the corresponding plugins to be imported for Jenkinsrule
>> unit test and GAVs dependencies (pom.xml or build.gradle) ?
>>
>> Cheers
>>
>> charles
>>
> --
> 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/37fb12c3-604e-4ad5-881a-4836e1a7dca3n%40googlegroups.com
> <https://groups.google.com/d/msgid/jenkinsci-users/37fb12c3-604e-4ad5-881a-4836e1a7dca3n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
Yannick LACAUTE
Consultant indépendant
39 rue de Wattignies, 75012 Paris
Tel : 06 16 85 95 76

-- 
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/CAG1W_Ax2PcOyYAcgMWxZ5_PZJeoamWDkvBPhjJvbv9_9Hyi6JQ%40mail.gmail.com.

Reply via email to