diff --git a/Dockerfile b/Dockerfile index ca5c20d..4b36ea5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,36 +1,4 @@ -FROM lsiobase/ubuntu:bionic as builder - -ARG DEBIAN_FRONTEND="noninteractive" -ARG NPM_CONFIG_UNSAFE_PERM=true - -RUN \ - echo "**** install build packages ****" && \ - apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ - git \ - make \ - python && \ - echo "**** Compile Cloud9 from source ****" && \ - git clone --depth 1 \ - https://github.com/c9/core.git c9sdk && \ - cd c9sdk && \ - mkdir -p /c9bins && \ - HOME=/c9bins scripts/install-sdk.sh && \ - echo "**** Restructure files for copy ****" && \ - mkdir -p \ - /buildout && \ - rm -Rf \ - /c9bins/.c9/tmp && \ - mv \ - /c9bins \ - /buildout/c9bins && \ - mv \ - /c9sdk \ - /buildout/ - -# runtime stage +FROM lsiobase/cloud9:files as builder FROM lsiobase/ubuntu:bionic # set version label diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index db64f13..3e03a13 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,36 +1,4 @@ -FROM lsiobase/ubuntu:arm64v8-bionic as builder - -ARG DEBIAN_FRONTEND="noninteractive" -ARG NPM_CONFIG_UNSAFE_PERM=true - -RUN \ - echo "**** install build packages ****" && \ - apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ - git \ - make \ - python && \ - echo "**** Compile Cloud9 from source ****" && \ - git clone --depth 1 \ - https://github.com/c9/core.git c9sdk && \ - cd c9sdk && \ - mkdir -p /c9bins && \ - HOME=/c9bins scripts/install-sdk.sh && \ - echo "**** Restructure files for copy ****" && \ - mkdir -p \ - /buildout && \ - rm -Rf \ - /c9bins/.c9/tmp && \ - mv \ - /c9bins \ - /buildout/c9bins && \ - mv \ - /c9sdk \ - /buildout/ - -# runtime stage +FROM lsiobase/cloud9:arm64v8-files as builder FROM lsiobase/ubuntu:arm64v8-bionic # set version label diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 35ed75c..0bc34c2 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,36 +1,4 @@ -FROM lsiobase/ubuntu:arm32v7-bionic as builder - -ARG DEBIAN_FRONTEND="noninteractive" -ARG NPM_CONFIG_UNSAFE_PERM=true - -RUN \ - echo "**** install build packages ****" && \ - apt-get update && \ - apt-get install -y \ - g++ \ - gcc \ - git \ - make \ - python && \ - echo "**** Compile Cloud9 from source ****" && \ - git clone --depth 1 \ - https://github.com/c9/core.git c9sdk && \ - cd c9sdk && \ - mkdir -p /c9bins && \ - HOME=/c9bins scripts/install-sdk.sh && \ - echo "**** Restructure files for copy ****" && \ - mkdir -p \ - /buildout && \ - rm -Rf \ - /c9bins/.c9/tmp && \ - mv \ - /c9bins \ - /buildout/c9bins && \ - mv \ - /c9sdk \ - /buildout/ - -# runtime stage +FROM lsiobase/cloud9:arm32v7-files as builder FROM lsiobase/ubuntu:arm32v7-bionic # set version label diff --git a/Jenkinsfile b/Jenkinsfile index ed64e8d..fc9cb64 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -10,9 +10,6 @@ pipeline { environment { BUILDS_DISCORD=credentials('build_webhook_url') GITHUB_TOKEN=credentials('498b4638-2d02-4ce5-832d-8a57d01d97ab') - EXT_GIT_BRANCH = 'master' - EXT_USER = 'c9' - EXT_REPO = 'core' BUILD_VERSION_ARG = 'CLOUD9_VERSION' LS_USER = 'linuxserver' LS_REPO = 'docker-baseimage-cloud9' @@ -102,23 +99,14 @@ pipeline { /* ######################## External Release Tagging ######################## */ - // If this is a github commit trigger determine the current commit at head - stage("Set ENV github_commit"){ - steps{ - script{ - env.EXT_RELEASE = sh( - script: '''curl -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/commits/${EXT_GIT_BRANCH} | jq -r '. | .sha' | cut -c1-8 ''', - returnStdout: true).trim() - } - } - } - // If this is a github commit trigger Set the external release link - stage("Set ENV commit_link"){ - steps{ - script{ - env.RELEASE_LINK = 'https://github.com/' + env.EXT_USER + '/' + env.EXT_REPO + '/commit/' + env.EXT_RELEASE - } - } + // If this is an os release set release type to none to indicate no external release + stage("Set ENV os"){ + steps{ + script{ + env.EXT_RELEASE = env.PACKAGE_TAG + env.RELEASE_LINK = 'none' + } + } } // Sanitize the release tag and strip illegal docker or github characters stage("Sanitize tag"){ @@ -595,11 +583,11 @@ pipeline { "tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' ''' echo "Pushing New release for Tag" sh '''#! /bin/bash - curl -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/commits/${EXT_GIT_BRANCH} | jq '. | .commit.message' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json + echo "Updating base packages to ${PACKAGE_TAG}" > releasebody.json echo '{"tag_name":"'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\ "target_commitish": "master",\ "name": "'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\ - "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**'${EXT_REPO}' Changes:**\\n\\n' > start + "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**OS 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 f85e549..134ea0e 100644 --- a/jenkins-vars.yml +++ b/jenkins-vars.yml @@ -2,14 +2,11 @@ # jenkins variables project_name: docker-baseimage-cloud9 -external_type: github_commit +external_type: os release_type: stable release_tag: latest ls_branch: master repo_vars: - - EXT_GIT_BRANCH = 'master' - - EXT_USER = 'c9' - - EXT_REPO = 'core' - BUILD_VERSION_ARG = 'CLOUD9_VERSION' - LS_USER = 'linuxserver' - LS_REPO = 'docker-baseimage-cloud9'