From 901d0305ad4aff8e750942a3180201b8a37ef320 Mon Sep 17 00:00:00 2001 From: Gerd Aschemann Date: Fri, 5 Aug 2022 12:37:22 +0200 Subject: [PATCH] Add Jenkins demo documenation (#1) --- Jenkinsfile | 4 +-- README.adoc | 31 +++++++++++++++++++++- jenkins-workspace-with-build-artifact.png | Bin 0 -> 27045 bytes 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 jenkins-workspace-with-build-artifact.png diff --git a/Jenkinsfile b/Jenkinsfile index 21350d7..c865462 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,12 +1,12 @@ pipeline { agent { - docker { image 'doctoolchain/doctoolchain-jenkins-ssh-agent:v2.0.5' } + docker { image 'doctoolchain/doctoolchain-jenkins-ssh-agent:v2.0.5' } // <1> } stages { stage('Generate Docs and check link sanity') { steps { - sh "doctoolchain . -PmainConfigFile=docToolchainConfig.groovy generateHTML htmlSanityCheck" + sh "doctoolchain . -PmainConfigFile=docToolchainConfig.groovy generateHTML htmlSanityCheck" // <2> } } } diff --git a/README.adoc b/README.adoc index 15299e0..0630fab 100644 --- a/README.adoc +++ b/README.adoc @@ -45,4 +45,33 @@ The URL for your microsite is displayed in the green box of the settings page. http://doctoolchain.org/ci-cd-demo/ -WARNING: Github pages are always public - even if your repository is private. \ No newline at end of file +WARNING: Github pages are always public - even if your repository is private. + +== Jenkins + +[NOTE] +.Jenkins build agent types +==== +Jenkins supports different types of so-called _Build Agents_ (cf. https://wiki.jenkins-ci.org/display/JENKINS/Distributed+builds[Jenkins Distributed Builds]). +In this example we use a Docker based build agent which is connected via SSH to the Jenkins controller. +There are many more ways to perform the same result. +==== + +.`Jenkinsfile` +[source,groovy] +---- +include::Jenkinsfile[] +---- +<1> Using a Docker build agent already requires several plugins in your Jenkins installation. ++ +[WARNING] +==== +The embedded link:dtcw[`dtcw` script] is not used here as the Docker based build performs best when the version from the image is used (including all dependant tools). +Otherwise the Docker container might start to download many other tools, including `doctoolchain`, in their respective versions any time you start your build. +==== +<2> The sample just generates some HTML and checks for its link sanity. +Other tasks might be used as well. + +When the build was successful you might find the generated artifact in workspace of the Jenkins job. + +image::jenkins-workspace-with-build-artifact.png[alt="Jenkins build workspace with generated arc42 artifact"] diff --git a/jenkins-workspace-with-build-artifact.png b/jenkins-workspace-with-build-artifact.png new file mode 100644 index 0000000000000000000000000000000000000000..4d5699a6c3fd5fc70a0426eeb10f6bda051e0d37 GIT binary patch literal 27045 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 L;8FF%=WqT4lkBOO literal 0 HcmV?d00001