add choice between zip or tar.gz for archive type

This commit is contained in:
Clemens Lauermann 2020-04-27 18:13:47 +02:00
parent 6039a8f249
commit 6266a90e71
2 changed files with 22 additions and 8 deletions

23
Jenkinsfile vendored
View File

@ -20,8 +20,12 @@ pipeline {
string( string(
name: 'GIT_BRANCH', name: 'GIT_BRANCH',
defaultValue: '*/master', defaultValue: '*/master',
description: "Expert: Wenn Sie einen anderen als den 'master' Branch bauen möchten" description: 'Experte: Wenn Sie einen anderen als den 'master' Branch bauen möchten'
) )
choice(
name: 'ARCHIVE_FORMAT',
choices: ['diplomarbeit.zip', 'diplomarbeit.tar.gz'],
description: 'Archiv-Typ als der die Arbeit per Mail versandt wird')
} }
stages { stages {
@ -32,6 +36,9 @@ pipeline {
// set template values // set template values
env.TEMPLATE_URL = 'https://itsp.htl-leoben.at/git/Hg/HTLLE-DA-Vorlage.git' env.TEMPLATE_URL = 'https://itsp.htl-leoben.at/git/Hg/HTLLE-DA-Vorlage.git'
env.TEMPLATE_NAME = 'HTLLE-DA-Vorlage' env.TEMPLATE_NAME = 'HTLLE-DA-Vorlage'
// builduser credentials id in jenkins store for gitea login
env.GIT_CRED_ID = 'd65d903b-21ee-4055-98aa-ef82a903e287'
// add https to the url if not present // add https to the url if not present
env.REPOSITORY = params.REPOSITORY env.REPOSITORY = params.REPOSITORY
@ -81,7 +88,7 @@ pipeline {
]], ]],
submoduleCfg: [], submoduleCfg: [],
userRemoteConfigs: [[ userRemoteConfigs: [[
credentialsId: 'd65d903b-21ee-4055-98aa-ef82a903e287', credentialsId: "${env.GIT_CRED_ID}",
url: "${env.REPOSITORY}" url: "${env.REPOSITORY}"
]] ]]
]) ])
@ -101,7 +108,7 @@ pipeline {
]], ]],
submoduleCfg: [], submoduleCfg: [],
userRemoteConfigs: [[ userRemoteConfigs: [[
credentialsId: 'd65d903b-21ee-4055-98aa-ef82a903e287', credentialsId: "${env.GIT_CRED_ID}",
url: "${env.TEMPLATE_URL}" url: "${env.TEMPLATE_URL}"
]] ]]
]) ])
@ -139,10 +146,14 @@ pipeline {
} }
} }
} }
stage('Create Tarball-Archive') { stage('Create Archive') {
steps { steps {
dir(env.GIT_PATH) { dir(env.GIT_PATH) {
sh "tar -czvf diplomarbeit.tar.gz diplomarbeit.pdf* spellcheck-results.txt" if (param.ARCHIVE_FORMAT == 'diplomarbeit.zip') {
sh "zip -q diplomarbeit.zip diplomarbeit.pdf* spellcheck-results.txt"
} else {
sh "tar -czf diplomarbeit.tar.gz diplomarbeit.pdf* spellcheck-results.txt"
}
} }
} }
} }
@ -167,7 +178,7 @@ pipeline {
} }
} }
dir(env.GIT_PATH) { dir(env.GIT_PATH) {
emailext attachmentsPattern: "diplomarbeit.tar.gz", emailext attachmentsPattern: "${param.ARCHIVE_FORMAT}",
to: "${env.RECIPIENTS}", to: "${env.RECIPIENTS}",
subject: "[${currentBuild.currentResult}] Diplomarbeit Build #${env.BUILD_NUMBER}", subject: "[${currentBuild.currentResult}] Diplomarbeit Build #${env.BUILD_NUMBER}",
body: "Job ${env.JOB_NAME}: ${env.JOB_URL}" body: "Job ${env.JOB_NAME}: ${env.JOB_URL}"

View File

@ -284,7 +284,10 @@ Sollten Sie die notwendigen Tools (pandoc, LaTeX, etc.) nicht lokal installieren
Öffnen Sie dazu den [Jenkins-Job](https://itsp.htl-leoben.at/ci/job/HTLLE-Diplomarbeit/build?delay=0sec) und melden Sie sich ggf. mit Ihren Benutzerdaten (z.B.: `1911wit00`) an. Öffnen Sie dazu den [Jenkins-Job](https://itsp.htl-leoben.at/ci/job/HTLLE-Diplomarbeit/build?delay=0sec) und melden Sie sich ggf. mit Ihren Benutzerdaten (z.B.: `1911wit00`) an.
Für `REPOSITORY` tragen Sie bitte Ihre Repository-URL (z.B: `https://itsp.htl-leoben.at/git/1911wit00/Diplomarbeit.git`) und für `GIT_PATH` ggf. den Unterordner in dem sich Ihre Diplomarbeit auf GIT befindet (z.B.: `diplomarbeit/`) ein. Wenn Sie nicht wissen was in GIT `branches` sind, brauchen Sie den Parameter `GIT_BRANCH` nicht anpassen. - `REPOSITORY` Ihre Repository-URL z.B: `https://itsp.htl-leoben.at/git/1911wit00/Diplomarbeit.git`
- `GIT_PATH` Ggf. der Unterordner in dem sich Ihre Diplomarbeit auf GIT befindet z.B.: `diplomarbeit/`
- `GIT_BRANCH` Wenn Sie nicht wissen, was in GIT `branches` sind, brauchen Sie den Parameter nicht anpassen
- `ARCHIVE_FORMAT` Wählen Sie aus, ob die fertige Arbeit als `.zip` oder `.tar.gz` Datei versendet wird
Beispiel: `GIT_PATH` ist `"text"` Beispiel: `GIT_PATH` ist `"text"`
``` ```
@ -344,7 +347,7 @@ $ tree ~/Diplomarbeit
Es muss nicht einmal die Vorlage als GIT submodule im Repository eingecheckt sein, weil hier während des Build Prozesses die aktuelle verwendet wird. Es muss nicht einmal die Vorlage als GIT submodule im Repository eingecheckt sein, weil hier während des Build Prozesses die aktuelle verwendet wird.
**Wichtig:** Sie bekommen eine `tar.gz` Datei via E-Mail zugeschickt. Dieses Archiv lässt sich mit gängigen Tools entpacken (z.B.: [7-zip](https://www.7-zip.org/)). Darin befinet sich: **Wichtig:** Sie bekommen eine Archiv-Datei (`.zip` oder `.tar.gz`) via E-Mail zugeschickt. Dieses Archiv lässt sich mit gängigen Tools entpacken (z.B.: [7-zip](https://www.7-zip.org/)). Darin befinet sich:
- `diplomarbeit.pdf` Ihre fertige Diplomarbeit - `diplomarbeit.pdf` Ihre fertige Diplomarbeit
- `diplomarbeit.pdf.log` Der Log Output von pandoc - `diplomarbeit.pdf.log` Der Log Output von pandoc
- `spellcheck-results.txt` Die vermeintlich falsch geschriebenen Begriffe - `spellcheck-results.txt` Die vermeintlich falsch geschriebenen Begriffe