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(
name: 'GIT_BRANCH',
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 {
@ -32,6 +36,9 @@ pipeline {
// set template values
env.TEMPLATE_URL = 'https://itsp.htl-leoben.at/git/Hg/HTLLE-DA-Vorlage.git'
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
env.REPOSITORY = params.REPOSITORY
@ -81,7 +88,7 @@ pipeline {
]],
submoduleCfg: [],
userRemoteConfigs: [[
credentialsId: 'd65d903b-21ee-4055-98aa-ef82a903e287',
credentialsId: "${env.GIT_CRED_ID}",
url: "${env.REPOSITORY}"
]]
])
@ -101,7 +108,7 @@ pipeline {
]],
submoduleCfg: [],
userRemoteConfigs: [[
credentialsId: 'd65d903b-21ee-4055-98aa-ef82a903e287',
credentialsId: "${env.GIT_CRED_ID}",
url: "${env.TEMPLATE_URL}"
]]
])
@ -139,10 +146,14 @@ pipeline {
}
}
}
stage('Create Tarball-Archive') {
stage('Create Archive') {
steps {
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) {
emailext attachmentsPattern: "diplomarbeit.tar.gz",
emailext attachmentsPattern: "${param.ARCHIVE_FORMAT}",
to: "${env.RECIPIENTS}",
subject: "[${currentBuild.currentResult}] Diplomarbeit Build #${env.BUILD_NUMBER}",
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.
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"`
```
@ -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.
**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.log` Der Log Output von pandoc
- `spellcheck-results.txt` Die vermeintlich falsch geschriebenen Begriffe