|
|
|
|
@ -48,7 +48,7 @@ pipeline {
|
|
|
|
|
script{
|
|
|
|
|
env.EXIT_STATUS = ''
|
|
|
|
|
env.LS_RELEASE = sh(
|
|
|
|
|
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:3.19 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
|
|
|
|
|
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:3.20 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
|
|
|
|
|
returnStdout: true).trim()
|
|
|
|
|
env.LS_RELEASE_NOTES = sh(
|
|
|
|
|
script: '''cat readme-vars.yml | awk -F \\" '/date: "[0-9][0-9].[0-9][0-9].[0-9][0-9]:/ {print $4;exit;}' | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
|
|
|
|
|
@ -77,7 +77,7 @@ pipeline {
|
|
|
|
|
script{
|
|
|
|
|
env.LS_TAG_NUMBER = sh(
|
|
|
|
|
script: '''#! /bin/bash
|
|
|
|
|
tagsha=$(git rev-list -n 1 3.19-${LS_RELEASE} 2>/dev/null)
|
|
|
|
|
tagsha=$(git rev-list -n 1 3.20-${LS_RELEASE} 2>/dev/null)
|
|
|
|
|
if [ "${tagsha}" == "${COMMIT_SHA}" ]; then
|
|
|
|
|
echo ${LS_RELEASE_NUMBER}
|
|
|
|
|
elif [ -z "${GIT_COMMIT}" ]; then
|
|
|
|
|
@ -166,13 +166,13 @@ pipeline {
|
|
|
|
|
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
|
|
|
|
|
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
|
|
|
|
|
if (env.MULTIARCH == 'true') {
|
|
|
|
|
env.CI_TAGS = 'amd64-3.19-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-3.19-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
env.CI_TAGS = 'amd64-3.20-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-3.20-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
} else {
|
|
|
|
|
env.CI_TAGS = '3.19-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
env.CI_TAGS = '3.20-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
}
|
|
|
|
|
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
env.META_TAG = '3.19-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
env.EXT_RELEASE_TAG = '3.19-version-' + env.EXT_RELEASE_CLEAN
|
|
|
|
|
env.META_TAG = '3.20-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
|
|
|
|
|
env.EXT_RELEASE_TAG = '3.20-version-' + env.EXT_RELEASE_CLEAN
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -189,13 +189,13 @@ pipeline {
|
|
|
|
|
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
|
|
|
|
|
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
|
|
|
|
|
if (env.MULTIARCH == 'true') {
|
|
|
|
|
env.CI_TAGS = 'amd64-3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
env.CI_TAGS = 'amd64-3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
} else {
|
|
|
|
|
env.CI_TAGS = '3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
env.CI_TAGS = '3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
}
|
|
|
|
|
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
env.META_TAG = '3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
env.EXT_RELEASE_TAG = '3.19-version-' + env.EXT_RELEASE_CLEAN
|
|
|
|
|
env.META_TAG = '3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
|
|
|
|
|
env.EXT_RELEASE_TAG = '3.20-version-' + env.EXT_RELEASE_CLEAN
|
|
|
|
|
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
@ -212,13 +212,13 @@ pipeline {
|
|
|
|
|
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
|
|
|
|
|
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
|
|
|
|
|
if (env.MULTIARCH == 'true') {
|
|
|
|
|
env.CI_TAGS = 'amd64-3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
env.CI_TAGS = 'amd64-3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
} else {
|
|
|
|
|
env.CI_TAGS = '3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
env.CI_TAGS = '3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
}
|
|
|
|
|
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
env.META_TAG = '3.19-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
env.EXT_RELEASE_TAG = '3.19-version-' + env.EXT_RELEASE_CLEAN
|
|
|
|
|
env.META_TAG = '3.20-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
|
|
|
|
|
env.EXT_RELEASE_TAG = '3.20-version-' + env.EXT_RELEASE_CLEAN
|
|
|
|
|
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
|
|
|
|
|
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.PR_DOCKERHUB_IMAGE + '/tags/'
|
|
|
|
|
}
|
|
|
|
|
@ -712,12 +712,12 @@ pipeline {
|
|
|
|
|
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
|
|
|
|
|
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
|
|
|
|
|
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
|
|
|
|
|
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:3.19
|
|
|
|
|
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:3.20
|
|
|
|
|
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
|
|
|
|
|
if [ -n "${SEMVER}" ]; then
|
|
|
|
|
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
|
|
|
|
|
fi
|
|
|
|
|
docker push ${PUSHIMAGE}:3.19
|
|
|
|
|
docker push ${PUSHIMAGE}:3.20
|
|
|
|
|
docker push ${PUSHIMAGE}:${META_TAG}
|
|
|
|
|
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
|
|
|
|
|
if [ -n "${SEMVER}" ]; then
|
|
|
|
|
@ -757,10 +757,10 @@ pipeline {
|
|
|
|
|
fi
|
|
|
|
|
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
|
|
|
|
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-3.19
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-3.20
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
|
|
|
|
|
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-3.19
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-3.20
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
|
|
|
|
if [ -n "${SEMVER}" ]; then
|
|
|
|
|
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
|
|
|
|
|
@ -768,17 +768,17 @@ pipeline {
|
|
|
|
|
fi
|
|
|
|
|
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
|
|
|
|
|
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
|
|
|
|
|
docker push ${MANIFESTIMAGE}:amd64-3.19
|
|
|
|
|
docker push ${MANIFESTIMAGE}:amd64-3.20
|
|
|
|
|
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
|
|
docker push ${MANIFESTIMAGE}:arm64v8-3.19
|
|
|
|
|
docker push ${MANIFESTIMAGE}:arm64v8-3.20
|
|
|
|
|
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
|
|
|
|
if [ -n "${SEMVER}" ]; then
|
|
|
|
|
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
|
|
|
|
|
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
|
|
|
|
fi
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:3.19 || :
|
|
|
|
|
docker manifest create ${MANIFESTIMAGE}:3.19 ${MANIFESTIMAGE}:amd64-3.19 ${MANIFESTIMAGE}:arm64v8-3.19
|
|
|
|
|
docker manifest annotate ${MANIFESTIMAGE}:3.19 ${MANIFESTIMAGE}:arm64v8-3.19 --os linux --arch arm64 --variant v8
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:3.20 || :
|
|
|
|
|
docker manifest create ${MANIFESTIMAGE}:3.20 ${MANIFESTIMAGE}:amd64-3.20 ${MANIFESTIMAGE}:arm64v8-3.20
|
|
|
|
|
docker manifest annotate ${MANIFESTIMAGE}:3.20 ${MANIFESTIMAGE}:arm64v8-3.20 --os linux --arch arm64 --variant v8
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
|
|
|
|
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
|
|
|
|
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
|
|
|
|
@ -794,13 +794,13 @@ pipeline {
|
|
|
|
|
digest=$(curl -s \
|
|
|
|
|
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
|
|
|
|
|
--header "Authorization: Bearer ${token}" \
|
|
|
|
|
"https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-3.19")
|
|
|
|
|
"https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-3.20")
|
|
|
|
|
if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-3.19 || :
|
|
|
|
|
docker manifest create ${MANIFESTIMAGE}:arm32v7-3.19 ${MANIFESTIMAGE}:amd64-3.19
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-3.19
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-3.20 || :
|
|
|
|
|
docker manifest create ${MANIFESTIMAGE}:arm32v7-3.20 ${MANIFESTIMAGE}:amd64-3.20
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-3.20
|
|
|
|
|
fi
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:3.19
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:3.20
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
|
|
|
|
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
|
|
|
|
|
if [ -n "${SEMVER}" ]; then
|
|
|
|
|
|