@@ -2,6 +2,10 @@ pipeline {
22 agent {
33 label ' X86-64-MULTI'
44 }
5+ options {
6+ buildDiscarder(logRotator(numToKeepStr : ' 10' , daysToKeepStr : ' 60' ))
7+ parallelsAlwaysFailFast()
8+ }
59 // Input to determine if this is a package check
610 parameters {
711 string(defaultValue : ' false' , description : ' package check run' , name : ' PACKAGE_CHECK' )
@@ -49,22 +53,7 @@ pipeline {
4953 env. CODE_URL = ' https://github.com/' + env. LS_USER + ' /' + env. LS_REPO + ' /commit/' + env. GIT_COMMIT
5054 env. DOCKERHUB_LINK = ' https://hub.docker.com/r/' + env. DOCKERHUB_IMAGE + ' /tags/'
5155 env. PULL_REQUEST = env. CHANGE_ID
52- env. LICENSE_TAG = sh(
53- script : ''' #!/bin/bash
54- if [ -e LICENSE ] ; then
55- cat LICENSE | md5sum | cut -c1-8
56- else
57- echo none
58- fi''' ,
59- returnStdout : true ). trim()
60- env. FUNDING_TAG = sh(
61- script : ''' #!/bin/bash
62- if [ -e ./.github/FUNDING.yml ] ; then
63- cat ./.github/FUNDING.yml | md5sum | cut -c1-8
64- else
65- echo none
66- fi''' ,
67- returnStdout : true ). trim()
56+ env. TEMPLATED_FILES = ' Jenkinsfile README.md LICENSE ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE.md ./.github/PULL_REQUEST_TEMPLATE.md'
6857 }
6958 script{
7059 env. LS_RELEASE_NUMBER = sh(
@@ -226,35 +215,32 @@ pipeline {
226215 TEMPDIR=$(mktemp -d)
227216 docker pull linuxserver/jenkins-builder:latest
228217 docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=master -v ${TEMPDIR}:/ansible/jenkins linuxserver/jenkins-builder:latest
229- docker pull linuxserver/doc-builder:latest
230- docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=master -v ${TEMPDIR}:/ansible/readme linuxserver/doc-builder:latest
231- if [ "$(md5sum ${TEMPDIR}/${LS_REPO}/Jenkinsfile | awk '{ print $1 }')" != "$(md5sum Jenkinsfile | awk '{ print $1 }')" ] || \
232- [ "$(md5sum ${TEMPDIR}/${CONTAINER_NAME}/README.md | awk '{ print $1 }')" != "$(md5sum README.md | awk '{ print $1 }')" ] || \
233- [ "$(cat ${TEMPDIR}/${LS_REPO}/LICENSE | md5sum | cut -c1-8)" != "${LICENSE_TAG}" ] || \
234- [ "$(cat ${TEMPDIR}/${LS_REPO}/.github/FUNDING.yml | md5sum | cut -c1-8)" != "${FUNDING_TAG}" ]; then
218+ CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
219+ cd ${TEMPDIR}/docker-${CONTAINER_NAME}
220+ NEWHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
221+ if [[ "${CURRENTHASH}" != "${NEWHASH}" ]]; then
235222 mkdir -p ${TEMPDIR}/repo
236223 git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
237- git --git-dir ${TEMPDIR}/repo/${LS_REPO}/.git checkout -f master
238- cp ${TEMPDIR}/${CONTAINER_NAME}/README.md ${TEMPDIR}/repo/${LS_REPO}/
239- cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
240- cp ${TEMPDIR}/docker-${CONTAINER_NAME}/LICENSE ${TEMPDIR}/repo/${LS_REPO}/
224+ cd ${TEMPDIR}/repo/${LS_REPO}
225+ git checkout -f master
226+ cd ${TEMPDIR}/docker-${CONTAINER_NAME}
241227 mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github
242- cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.github/FUNDING.yml ${TEMPDIR}/repo/${LS_REPO}/.github/FUNDING.yml
228+ cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/
243229 cd ${TEMPDIR}/repo/${LS_REPO}/
244- git --git-dir ${TEMPDIR}/repo/${LS_REPO}/.git add Jenkinsfile README.md LICENSE ./.github/FUNDING.yml
245- git --git-dir ${TEMPDIR}/repo/${LS_REPO}/.git commit -m 'Bot Updating Templated Files'
246- git --git-dir ${TEMPDIR}/repo/${LS_REPO}/.git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
230+ git add ${TEMPLATED_FILES}
231+ git commit -m 'Bot Updating Templated Files'
232+ git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
247233 echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
248234 else
249235 echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
250236 fi
251237 mkdir -p ${TEMPDIR}/gitbook
252238 git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/gitbook/docker-documentation
253- if [[ "${BRANCH_NAME}" == "master" ]] && [[ (! -f ${TEMPDIR}/gitbook/docker-documentation/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/gitbook/docker-documentation/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/${CONTAINER_NAME}/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
254- cp ${TEMPDIR}/${CONTAINER_NAME}/docker-${CONTAINER_NAME}.md ${TEMPDIR}/gitbook/docker-documentation/images/
239+ if [[ "${BRANCH_NAME}" == "master" ]] && [[ (! -f ${TEMPDIR}/gitbook/docker-documentation/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/gitbook/docker-documentation/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker- ${CONTAINER_NAME}/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
240+ cp ${TEMPDIR}/docker- ${CONTAINER_NAME}/docker-${CONTAINER_NAME}.md ${TEMPDIR}/gitbook/docker-documentation/images/
255241 cd ${TEMPDIR}/gitbook/docker-documentation/
256242 git add images/docker-${CONTAINER_NAME}.md
257- git commit -m 'Bot Updating Templated Files '
243+ git commit -m 'Bot Updating Documentation '
258244 git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all
259245 fi
260246 rm -Rf ${TEMPDIR}'''
0 commit comments