From 1c840b35549f5593dd88c5e5a2f4d51b218ef5af Mon Sep 17 00:00:00 2001 From: aptalca Date: Thu, 24 Jun 2021 11:14:37 -0400 Subject: [PATCH] avoid double lsio versioning --- .github/workflows/external_trigger.yml | 2 +- Dockerfile | 4 ++-- Dockerfile.aarch64 | 4 ++-- Dockerfile.armhf | 4 ++-- Jenkinsfile | 31 ++++++++++---------------- jenkins-vars.yml | 3 ++- 6 files changed, 21 insertions(+), 27 deletions(-) diff --git a/.github/workflows/external_trigger.yml b/.github/workflows/external_trigger.yml index 85834b4..96fd140 100755 --- a/.github/workflows/external_trigger.yml +++ b/.github/workflows/external_trigger.yml @@ -18,7 +18,7 @@ jobs: fi echo "**** External trigger running off of master branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_CLOUD9_MASTER\". ****" echo "**** Retrieving external version ****" - EXT_RELEASE=$(curl -u "${{ secrets.CR_USER }}:${{ secrets.CR_PAT }}" -sX GET "https://api.github.com/repos/linuxserver/docker-docker-compose/releases/latest" | jq -r '. | .tag_name') + EXT_RELEASE=$(curl -u ${{ secrets.CR_USER }}:${{ secrets.CR_PAT }} -sX GET https://api.github.com/repos/linuxserver/docker-docker-compose/releases/latest | jq -r '.tag_name' | sed 's|-ls.*||') if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then echo "**** Can't retrieve external version, exiting ****" FAILURE_REASON="Can't retrieve external version for cloud9 branch master" diff --git a/Dockerfile b/Dockerfile index 6594e71..f394adf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ -ARG COMPOSE_VERSION="latest" +ARG COMPOSE_VERSION="1.29.2" # docker compose -FROM ghcr.io/linuxserver/docker-compose:amd64-${COMPOSE_VERSION} as compose +FROM ghcr.io/linuxserver/docker-compose:amd64-version-${COMPOSE_VERSION} as compose # runtime stage FROM ghcr.io/linuxserver/baseimage-cloud9:latest diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index c590c2a..ba00b36 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,7 +1,7 @@ -ARG COMPOSE_VERSION="latest" +ARG COMPOSE_VERSION="1.29.2" # docker compose -FROM ghcr.io/linuxserver/docker-compose:arm64v8-${COMPOSE_VERSION} as compose +FROM ghcr.io/linuxserver/docker-compose:arm64v8-version-${COMPOSE_VERSION} as compose # runtime stage FROM ghcr.io/linuxserver/baseimage-cloud9:arm64v8-latest diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 8cbe16c..64b4094 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,7 +1,7 @@ -ARG COMPOSE_VERSION="latest" +ARG COMPOSE_VERSION="1.29.2" # docker compose -FROM ghcr.io/linuxserver/docker-compose:arm32v7-${COMPOSE_VERSION} as compose +FROM ghcr.io/linuxserver/docker-compose:arm32v7-version-${COMPOSE_VERSION} as compose # runtime stage FROM ghcr.io/linuxserver/baseimage-cloud9:arm32v7-latest diff --git a/Jenkinsfile b/Jenkinsfile index aaa9c29..bbcc6d5 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -101,23 +101,16 @@ pipeline { /* ######################## External Release Tagging ######################## */ - // If this is a stable github release use the latest endpoint from github to determine the ext tag - stage("Set ENV github_stable"){ - steps{ - script{ - env.EXT_RELEASE = sh( - script: '''curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq -r '. | .tag_name' ''', - returnStdout: true).trim() - } - } - } - // If this is a stable or devel github release generate the link for the build message - stage("Set ENV github_link"){ - steps{ - script{ - env.RELEASE_LINK = 'https://github.com/' + env.EXT_USER + '/' + env.EXT_REPO + '/releases/tag/' + env.EXT_RELEASE - } - } + // If this is a custom command to determine version use that command + stage("Set tag custom bash"){ + steps{ + script{ + env.EXT_RELEASE = sh( + script: ''' curl -sX GET https://api.github.com/repos/linuxserver/docker-docker-compose/releases/latest | jq -r '.tag_name' | sed 's|-ls.*||' ''', + returnStdout: true).trim() + env.RELEASE_LINK = 'custom_command' + } + } } // Sanitize the release tag and strip illegal docker or github characters stage("Sanitize tag"){ @@ -800,11 +793,11 @@ pipeline { "tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' ''' echo "Pushing New release for Tag" sh '''#! /bin/bash - curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq '. |.body' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json + echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json echo '{"tag_name":"'${META_TAG}'",\ "target_commitish": "master",\ "name": "'${META_TAG}'",\ - "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**'${EXT_REPO}' 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''' diff --git a/jenkins-vars.yml b/jenkins-vars.yml index b46ad08..bf917be 100644 --- a/jenkins-vars.yml +++ b/jenkins-vars.yml @@ -2,7 +2,8 @@ # jenkins variables project_name: docker-cloud9 -external_type: github_stable +external_type: na +custom_version_command: "curl -sX GET https://api.github.com/repos/linuxserver/docker-docker-compose/releases/latest | jq -r '.tag_name' | sed 's|-ls.*||'" release_type: stable release_tag: latest ls_branch: master