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 <cmoul...@redhat.com>
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 jenkinsci-users+unsubscr...@googlegroups.com.
> 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 jenkinsci-users+unsubscr...@googlegroups.com.
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