diff --git a/.github/workflows/external_trigger.yml b/.github/workflows/external_trigger.yml index 32e328b..b1bd429 100644 --- a/.github/workflows/external_trigger.yml +++ b/.github/workflows/external_trigger.yml @@ -29,8 +29,9 @@ jobs: echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY echo "> External trigger running off of master branch. To disable this trigger, add \`eden_master\` into the Github organizational variable \`SKIP_EXTERNAL_TRIGGER\`." >> $GITHUB_STEP_SUMMARY printf "\n## Retrieving external version\n\n" >> $GITHUB_STEP_SUMMARY - EXT_RELEASE=$(curl -u "${{ secrets.CR_USER }}:${{ secrets.CR_PAT }}" -sX GET "https://api.github.com/repos/eden-emulator/Releases/releases/latest" | jq -r '. | .tag_name') - echo "Type is \`github_stable\`" >> $GITHUB_STEP_SUMMARY + EXT_RELEASE=$(curl -sX GET 'https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/releases/latest' | awk '/tag_name/{print $6;exit}' FS='[""]' +) + echo "Type is \`custom_version_command\`" >> $GITHUB_STEP_SUMMARY if grep -q "^eden_master_${EXT_RELEASE}" <<< "${SKIP_EXTERNAL_TRIGGER}"; then echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` matches current external release; skipping trigger." >> $GITHUB_STEP_SUMMARY diff --git a/Dockerfile b/Dockerfile index 7e0ebc0..595ed88 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,12 +20,12 @@ RUN \ DEBIAN_FRONTEND=noninteractive \ echo "**** install eden ****" && \ if [ -z ${EDEN_VERSION+x} ]; then \ - EDEN_VERSION=$(curl -sX GET "https://api.github.com/repos/eden-emulator/Releases/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + EDEN_VERSION=$(curl -sX GET "https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/releases/latest" \ + | awk '/tag_name/{print $6;exit}' FS='[""]'); \ fi && \ curl -o \ /tmp/eden.deb -L \ - "https://github.com/eden-emulator/Releases/releases/download/${EDEN_VERSION}/Eden-Debian-13-${EDEN_VERSION}-amd64.deb" && \ + "https://git.eden-emu.dev/eden-emu/eden/releases/download/${EDEN_VERSION}/Eden-Debian-13-${EDEN_VERSION}-amd64.deb" && \ apt-get install -y \ /tmp/eden.deb && \ echo "**** cleanup ****" && \ diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index ae6d801..2d40f72 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -20,12 +20,12 @@ RUN \ DEBIAN_FRONTEND=noninteractive \ echo "**** install eden ****" && \ if [ -z ${EDEN_VERSION+x} ]; then \ - EDEN_VERSION=$(curl -sX GET "https://api.github.com/repos/eden-emulator/Releases/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ + EDEN_VERSION=$(curl -sX GET "https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/releases/latest" \ + | awk '/tag_name/{print $6;exit}' FS='[""]'); \ fi && \ curl -o \ /tmp/eden.deb -L \ - "https://github.com/eden-emulator/Releases/releases/download/${EDEN_VERSION}/Eden-Debian-13-${EDEN_VERSION}-aarch64.deb" && \ + "https://git.eden-emu.dev/eden-emu/eden/releases/download/${EDEN_VERSION}/Eden-Debian-13-${EDEN_VERSION}-aarch64.deb" && \ apt-get install -y \ /tmp/eden.deb && \ echo "**** cleanup ****" && \ diff --git a/Jenkinsfile b/Jenkinsfile index 518bb89..ddfb329 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -144,23 +144,17 @@ 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://git.eden-emu.dev/api/v1/repos/eden-emu/eden/releases/latest' | awk '/tag_name/{print $6;exit}' FS='[""]' + ''', + returnStdout: true).trim() + env.RELEASE_LINK = 'custom_command' + } + } } // Sanitize the release tag and strip illegal docker or github characters stage("Sanitize tag"){ @@ -1029,7 +1023,7 @@ pipeline { "type": "commit",\ "tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}' echo "Pushing New release for Tag" - curl -H "Authorization: token ${GITHUB_TOKEN}" -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq -r '. |.body' > releasebody.json + echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json jq -n \ --arg tag_name "$META_TAG" \ --arg target_commitish "master" \ diff --git a/README.md b/README.md index 9893b80..40cbdee 100644 --- a/README.md +++ b/README.md @@ -612,4 +612,5 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **17.03.26:** - Ingest releases from self hosted git. * **18.02.26:** - Initial Version. diff --git a/jenkins-vars.yml b/jenkins-vars.yml index 5940669..952bc92 100644 --- a/jenkins-vars.yml +++ b/jenkins-vars.yml @@ -2,7 +2,9 @@ # jenkins variables project_name: docker-eden -external_type: github_stable +external_type: na +custom_version_command: | + curl -sX GET 'https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/releases/latest' | awk '/tag_name/{print $6;exit}' FS='[""]' release_type: stable release_tag: latest ls_branch: master diff --git a/readme-vars.yml b/readme-vars.yml index 076d0c8..4da6287 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -107,4 +107,5 @@ init_diagram: | "eden:latest" <- Base Images # changelog changelogs: + - {date: "17.03.26:", desc: "Ingest releases from self hosted git."} - {date: "18.02.26:", desc: "Initial Version."}