mirror of
				https://github.com/linuxserver/docker-code-server
				synced 2025-06-26 18:27:40 +00:00 
			
		
		
		
	Bot Updating Templated Files
This commit is contained in:
		
							parent
							
								
									9e97f5c03f
								
							
						
					
					
						commit
						245c2612a1
					
				
							
								
								
									
										88
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										88
									
								
								Jenkinsfile
									
									
									
									
										vendored
									
									
								
							@ -55,7 +55,7 @@ pipeline {
 | 
			
		||||
          env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
 | 
			
		||||
          env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
 | 
			
		||||
          env.PULL_REQUEST = env.CHANGE_ID
 | 
			
		||||
          env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/greetings.yml ./.github/workflows/stale.yml ./.github/workflows/package_trigger.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/external_trigger.yml ./.github/workflows/external_trigger_scheduler.yml'
 | 
			
		||||
          env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/stale.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml'
 | 
			
		||||
        }
 | 
			
		||||
        script{
 | 
			
		||||
          env.LS_RELEASE_NUMBER = sh(
 | 
			
		||||
@ -307,22 +307,24 @@ pipeline {
 | 
			
		||||
                git commit -m 'Bot Updating Documentation'
 | 
			
		||||
                git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all
 | 
			
		||||
              fi
 | 
			
		||||
              mkdir -p ${TEMPDIR}/unraid 
 | 
			
		||||
              mkdir -p ${TEMPDIR}/unraid
 | 
			
		||||
              git clone https://github.com/linuxserver/docker-templates.git ${TEMPDIR}/unraid/docker-templates
 | 
			
		||||
              git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates
 | 
			
		||||
              if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then
 | 
			
		||||
                sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
 | 
			
		||||
              if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then
 | 
			
		||||
                sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
 | 
			
		||||
              fi
 | 
			
		||||
              if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
 | 
			
		||||
                cd ${TEMPDIR}/unraid/templates/
 | 
			
		||||
                if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
 | 
			
		||||
                  echo "Image is on the ignore list, skipping Unraid template upload"
 | 
			
		||||
                  echo "Image is on the ignore list, removing Unraid template"
 | 
			
		||||
                  git rm unraid/${CONTAINER_NAME}.xml || :
 | 
			
		||||
                  git commit -m 'Bot Removing Deprecated Unraid Template' || :
 | 
			
		||||
                else
 | 
			
		||||
                  cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
 | 
			
		||||
                  cd ${TEMPDIR}/unraid/templates/
 | 
			
		||||
                  git add unraid/${CONTAINER_NAME}.xml
 | 
			
		||||
                  git commit -m 'Bot Updating Unraid Template'
 | 
			
		||||
                  git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all
 | 
			
		||||
                fi
 | 
			
		||||
                git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/templates.git --all
 | 
			
		||||
              fi
 | 
			
		||||
              rm -Rf ${TEMPDIR}'''
 | 
			
		||||
        script{
 | 
			
		||||
@ -379,8 +381,21 @@ pipeline {
 | 
			
		||||
      }
 | 
			
		||||
      steps {
 | 
			
		||||
        echo "Running on node: ${NODE_NAME}"
 | 
			
		||||
        sh "docker build --no-cache --pull -t ${IMAGE}:${META_TAG} \
 | 
			
		||||
        --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
        sh "docker build \
 | 
			
		||||
          --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
 | 
			
		||||
          --label \"org.opencontainers.image.authors=linuxserver.io\" \
 | 
			
		||||
          --label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-code-server/packages\" \
 | 
			
		||||
          --label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-code-server\" \
 | 
			
		||||
          --label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-code-server\" \
 | 
			
		||||
          --label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
 | 
			
		||||
          --label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
 | 
			
		||||
          --label \"org.opencontainers.image.vendor=linuxserver.io\" \
 | 
			
		||||
          --label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
 | 
			
		||||
          --label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
 | 
			
		||||
          --label \"org.opencontainers.image.title=Code-server\" \
 | 
			
		||||
          --label \"org.opencontainers.image.description=[Code-server](https://coder.com) is VS Code running on a remote server, accessible through the browser.  - Code on your Chromebook, tablet, and laptop with a consistent dev environment.  - If you have a Windows or Mac workstation, more easily develop for Linux.  - Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.  - Preserve battery life when you're on the go.  - All intensive computation runs on your server.  - You're no longer running excess instances of Chrome.\" \
 | 
			
		||||
          --no-cache --pull -t ${IMAGE}:${META_TAG} \
 | 
			
		||||
          --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
    // Build MultiArch Docker containers for push to LS Repo
 | 
			
		||||
@ -393,8 +408,21 @@ pipeline {
 | 
			
		||||
        stage('Build X86') {
 | 
			
		||||
          steps {
 | 
			
		||||
            echo "Running on node: ${NODE_NAME}"
 | 
			
		||||
            sh "docker build --no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
 | 
			
		||||
            --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
            sh "docker build \
 | 
			
		||||
              --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.authors=linuxserver.io\" \
 | 
			
		||||
              --label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-code-server/packages\" \
 | 
			
		||||
              --label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.vendor=linuxserver.io\" \
 | 
			
		||||
              --label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
 | 
			
		||||
              --label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.title=Code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.description=[Code-server](https://coder.com) is VS Code running on a remote server, accessible through the browser.  - Code on your Chromebook, tablet, and laptop with a consistent dev environment.  - If you have a Windows or Mac workstation, more easily develop for Linux.  - Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.  - Preserve battery life when you're on the go.  - All intensive computation runs on your server.  - You're no longer running excess instances of Chrome.\" \
 | 
			
		||||
              --no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
 | 
			
		||||
              --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
        stage('Build ARMHF') {
 | 
			
		||||
@ -407,8 +435,21 @@ pipeline {
 | 
			
		||||
            sh '''#! /bin/bash
 | 
			
		||||
                  echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
 | 
			
		||||
               '''
 | 
			
		||||
            sh "docker build --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
 | 
			
		||||
                         --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
            sh "docker build \
 | 
			
		||||
              --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.authors=linuxserver.io\" \
 | 
			
		||||
              --label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-code-server/packages\" \
 | 
			
		||||
              --label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.vendor=linuxserver.io\" \
 | 
			
		||||
              --label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
 | 
			
		||||
              --label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.title=Code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.description=[Code-server](https://coder.com) is VS Code running on a remote server, accessible through the browser.  - Code on your Chromebook, tablet, and laptop with a consistent dev environment.  - If you have a Windows or Mac workstation, more easily develop for Linux.  - Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.  - Preserve battery life when you're on the go.  - All intensive computation runs on your server.  - You're no longer running excess instances of Chrome.\" \
 | 
			
		||||
              --no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
 | 
			
		||||
              --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
            sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
			
		||||
            retry(5) {
 | 
			
		||||
              sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
			
		||||
@ -428,8 +469,21 @@ pipeline {
 | 
			
		||||
            sh '''#! /bin/bash
 | 
			
		||||
                  echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
 | 
			
		||||
               '''
 | 
			
		||||
            sh "docker build --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
 | 
			
		||||
                         --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
            sh "docker build \
 | 
			
		||||
              --label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.authors=linuxserver.io\" \
 | 
			
		||||
              --label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-code-server/packages\" \
 | 
			
		||||
              --label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.vendor=linuxserver.io\" \
 | 
			
		||||
              --label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
 | 
			
		||||
              --label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
 | 
			
		||||
              --label \"org.opencontainers.image.title=Code-server\" \
 | 
			
		||||
              --label \"org.opencontainers.image.description=[Code-server](https://coder.com) is VS Code running on a remote server, accessible through the browser.  - Code on your Chromebook, tablet, and laptop with a consistent dev environment.  - If you have a Windows or Mac workstation, more easily develop for Linux.  - Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.  - Preserve battery life when you're on the go.  - All intensive computation runs on your server.  - You're no longer running excess instances of Chrome.\" \
 | 
			
		||||
              --no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
 | 
			
		||||
              --build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
 | 
			
		||||
            sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
			
		||||
            retry(5) {
 | 
			
		||||
              sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
 | 
			
		||||
@ -740,7 +794,7 @@ pipeline {
 | 
			
		||||
              echo '{"tag_name":"'${META_TAG}'",\
 | 
			
		||||
                     "target_commitish": "master",\
 | 
			
		||||
                     "name": "'${META_TAG}'",\
 | 
			
		||||
                     "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**Remote Changes:**\\n\\n' > start
 | 
			
		||||
                     "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
 | 
			
		||||
              printf '","draft": false,"prerelease": false}' >> releasebody.json
 | 
			
		||||
              paste -d'\\0' start releasebody.json > releasebody.json.done
 | 
			
		||||
              curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
 | 
			
		||||
@ -765,7 +819,7 @@ pipeline {
 | 
			
		||||
                set -e
 | 
			
		||||
                TEMPDIR=$(mktemp -d)
 | 
			
		||||
                docker pull ghcr.io/linuxserver/jenkins-builder:latest
 | 
			
		||||
                docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest 
 | 
			
		||||
                docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH="${BRANCH_NAME}" -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
 | 
			
		||||
                docker pull ghcr.io/linuxserver/readme-sync
 | 
			
		||||
                docker run --rm=true \
 | 
			
		||||
                  -e DOCKERHUB_USERNAME=$DOCKERUSER \
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user