Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
automatizace:jenkins [2023/03/30 19:21]
tomas [Skripty Groovy]
automatizace:jenkins [2024/02/15 19:19]
tomas [Dokumentace]
Line 8: Line 8:
 [[http://w3.devops.ibm.com/devops/#/toolchain/advanced/jenkins|Male edu o Jenkins]]\\ [[http://w3.devops.ibm.com/devops/#/toolchain/advanced/jenkins|Male edu o Jenkins]]\\
 [[http://www.slideshare.net/dstine4/jenkins-and-chef-infrastructure-ci-and-automated-deployment|Prezentace o Jenkinsovi]]\\ [[http://www.slideshare.net/dstine4/jenkins-and-chef-infrastructure-ci-and-automated-deployment|Prezentace o Jenkinsovi]]\\
 +
 +==== Dokumentace ====
 +JENKINS_URL/env-vars.html ... popis preddefinovanych promennych\\
 +/queue/api/\\
 +/api\\
 +/script ... scriptovaci konzole\\
  
 ==== API ==== ==== API ====
Line 129: Line 135:
 input {} ... uživatlský vstup\\ input {} ... uživatlský vstup\\
 stages {} || parallel {} || matrix {} || steps {} ... obsahuje max. 1 z uvedených\\ stages {} || parallel {} || matrix {} || steps {} ... obsahuje max. 1 z uvedených\\
-script {} ... umožnuje vnořit akce, včetně smyček atd.\\ 
 try {} catch () {}\\ try {} catch () {}\\
 for (int i = 0; i < browsers.size(); ++i) { echo "${pole[i]} " }\\ for (int i = 0; i < browsers.size(); ++i) { echo "${pole[i]} " }\\
Line 138: Line 143:
  
 === sekce steps === === sekce steps ===
 +script {} ... umožnuje vnořit akce, včetně smyček atd.\\
 if (sharedTools.shouldRun("build")) {} .. podmínka, provede akce v {} když je podmínka spněna\\ if (sharedTools.shouldRun("build")) {} .. podmínka, provede akce v {} když je podmínka spněna\\
 dir('android') {} ... provede akce v {} v adresáři android\\ dir('android') {} ... provede akce v {} v adresáři android\\
Line 150: Line 156:
 withNPM(npmrcConfig: 'npmrcs-cz') {} ... použije file npmrcs-cz a udělá z něj .npmrc\\ withNPM(npmrcConfig: 'npmrcs-cz') {} ... použije file npmrcs-cz a udělá z něj .npmrc\\
 %%checkout([$class: 'GitSCM', branches: [[name: 'develop']], extensions: [[$class: 'CleanBeforeCheckout']],userRemoteConfigs: [[credentialsId: 'secret1',url: 'https://user@github.bbb.com/ccc/ddd.git']]])%%\\ %%checkout([$class: 'GitSCM', branches: [[name: 'develop']], extensions: [[$class: 'CleanBeforeCheckout']],userRemoteConfigs: [[credentialsId: 'secret1',url: 'https://user@github.bbb.com/ccc/ddd.git']]])%%\\
 +withDockerRegistry([credentialsId: 'aaa', url: "https://REPOSITORY"]) ... provede docker login s kredencema\\
  
 +<code>configFileProvider([fileId:'conf_file', variable:'soubor']) {
 +      script {
 +        echo "Ctu soubor '${soubor}' ..." 
 +        servers = readJSON(file:soubor)  } }</code>
  
  
Line 165: Line 176:
 unsuccessful {} ...\\ unsuccessful {} ...\\
 cleanup {} ... poslední step, provede se po všech ostatních post krocích, ať dopadly jakkoli\\ cleanup {} ... poslední step, provede se po všech ostatních post krocích, ať dopadly jakkoli\\
 +
 +=== Definice funkcí ===
 +def call(body) {def pipelineParams = [:] } ... definice funkce v knihovně. 1 soubor = jedna funkce, název funkce = název souboru, např. /vars/aaa.groovy, funkce aaa(parametr1=2), pipelineParams.parametr1 je vstupní parametr s hodnotou 2\\