Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
34130ffa25
3 changed files with 168 additions and 185 deletions
49
Jenkinsfile
vendored
49
Jenkinsfile
vendored
|
|
@ -277,7 +277,7 @@ pipeline {
|
||||||
# ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
|
# ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
|
||||||
# ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
|
# ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
|
||||||
git clone --branch master --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
|
git clone --branch master --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
|
||||||
docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true ghcr.io/linuxserver/jenkins-builder:latest
|
docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true -e PUID=$(id -u) -e PGID=$(id -g) ghcr.io/linuxserver/jenkins-builder:latest
|
||||||
echo "Starting Stage 1 - Jenkinsfile update"
|
echo "Starting Stage 1 - Jenkinsfile update"
|
||||||
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
|
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
|
||||||
mkdir -p ${TEMPDIR}/repo
|
mkdir -p ${TEMPDIR}/repo
|
||||||
|
|
@ -297,7 +297,7 @@ pipeline {
|
||||||
echo "Jenkinsfile is up to date."
|
echo "Jenkinsfile is up to date."
|
||||||
fi
|
fi
|
||||||
echo "Starting Stage 2 - Delete old templates"
|
echo "Starting Stage 2 - Delete old templates"
|
||||||
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf"
|
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml"
|
||||||
for i in ${OLD_TEMPLATES}; do
|
for i in ${OLD_TEMPLATES}; do
|
||||||
if [[ -f "${i}" ]]; then
|
if [[ -f "${i}" ]]; then
|
||||||
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
|
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
|
||||||
|
|
@ -383,7 +383,9 @@ pipeline {
|
||||||
echo "Updating Unraid template"
|
echo "Updating Unraid template"
|
||||||
cd ${TEMPDIR}/unraid/templates/
|
cd ${TEMPDIR}/unraid/templates/
|
||||||
GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
GH_TEMPLATES_DEFAULT_BRANCH=$(git remote show origin | grep "HEAD branch:" | sed 's|.*HEAD branch: ||')
|
||||||
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
|
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list && [[ -f ${TEMPDIR}/unraid/templates/unraid/deprecated/${CONTAINER_NAME}.xml ]]; then
|
||||||
|
echo "Image is on the ignore list, and already in the deprecation folder."
|
||||||
|
elif grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
|
||||||
echo "Image is on the ignore list, marking Unraid template as deprecated"
|
echo "Image is on the ignore list, marking Unraid template as deprecated"
|
||||||
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
|
||||||
git add -u unraid/${CONTAINER_NAME}.xml
|
git add -u unraid/${CONTAINER_NAME}.xml
|
||||||
|
|
@ -525,6 +527,7 @@ pipeline {
|
||||||
--label \"org.opencontainers.image.title=Plex\" \
|
--label \"org.opencontainers.image.title=Plex\" \
|
||||||
--label \"org.opencontainers.image.description=[Plex](https://plex.tv) organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server. Straightforward design and bulk actions mean getting things done faster.\" \
|
--label \"org.opencontainers.image.description=[Plex](https://plex.tv) organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server. Straightforward design and bulk actions mean getting things done faster.\" \
|
||||||
--no-cache --pull -t ${IMAGE}:${META_TAG} --platform=linux/amd64 \
|
--no-cache --pull -t ${IMAGE}:${META_TAG} --platform=linux/amd64 \
|
||||||
|
--provenance=false --sbom=false \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -556,6 +559,7 @@ pipeline {
|
||||||
--label \"org.opencontainers.image.title=Plex\" \
|
--label \"org.opencontainers.image.title=Plex\" \
|
||||||
--label \"org.opencontainers.image.description=[Plex](https://plex.tv) organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server. Straightforward design and bulk actions mean getting things done faster.\" \
|
--label \"org.opencontainers.image.description=[Plex](https://plex.tv) organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server. Straightforward design and bulk actions mean getting things done faster.\" \
|
||||||
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} --platform=linux/amd64 \
|
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} --platform=linux/amd64 \
|
||||||
|
--provenance=false --sbom=false \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -584,6 +588,7 @@ pipeline {
|
||||||
--label \"org.opencontainers.image.title=Plex\" \
|
--label \"org.opencontainers.image.title=Plex\" \
|
||||||
--label \"org.opencontainers.image.description=[Plex](https://plex.tv) organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server. Straightforward design and bulk actions mean getting things done faster.\" \
|
--label \"org.opencontainers.image.description=[Plex](https://plex.tv) organizes video, music and photos from personal media libraries and streams them to smart TVs, streaming boxes and mobile devices. This container is packaged as a standalone Plex Media Server. Straightforward design and bulk actions mean getting things done faster.\" \
|
||||||
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} --platform=linux/arm64 \
|
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} --platform=linux/arm64 \
|
||||||
|
--provenance=false --sbom=false \
|
||||||
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
|
--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}"
|
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
|
||||||
retry(5) {
|
retry(5) {
|
||||||
|
|
@ -610,7 +615,7 @@ pipeline {
|
||||||
sh '''#! /bin/bash
|
sh '''#! /bin/bash
|
||||||
set -e
|
set -e
|
||||||
TEMPDIR=$(mktemp -d)
|
TEMPDIR=$(mktemp -d)
|
||||||
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" == "false" ]; then
|
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" != "true" ]; then
|
||||||
LOCAL_CONTAINER=${IMAGE}:amd64-${META_TAG}
|
LOCAL_CONTAINER=${IMAGE}:amd64-${META_TAG}
|
||||||
else
|
else
|
||||||
LOCAL_CONTAINER=${IMAGE}:${META_TAG}
|
LOCAL_CONTAINER=${IMAGE}:${META_TAG}
|
||||||
|
|
@ -707,7 +712,7 @@ pipeline {
|
||||||
--shm-size=1gb \
|
--shm-size=1gb \
|
||||||
-v /var/run/docker.sock:/var/run/docker.sock \
|
-v /var/run/docker.sock:/var/run/docker.sock \
|
||||||
-e IMAGE=\"${IMAGE}\" \
|
-e IMAGE=\"${IMAGE}\" \
|
||||||
-e DELAY_START=\"${CI_DELAY}\" \
|
-e DOCKER_LOGS_TIMEOUT=\"${CI_DELAY}\" \
|
||||||
-e TAGS=\"${CI_TAGS}\" \
|
-e TAGS=\"${CI_TAGS}\" \
|
||||||
-e META_TAG=\"${META_TAG}\" \
|
-e META_TAG=\"${META_TAG}\" \
|
||||||
-e PORT=\"${CI_PORT}\" \
|
-e PORT=\"${CI_PORT}\" \
|
||||||
|
|
@ -815,35 +820,13 @@ pipeline {
|
||||||
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
|
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
|
||||||
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
||||||
fi
|
fi
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:latest || :
|
done
|
||||||
docker manifest create ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
|
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:arm64v8-latest --os linux --arch arm64 --variant v8
|
docker buildx imagetools create -t ${MANIFESTIMAGE}:latest ${MANIFESTIMAGE}:amd64-latest ${MANIFESTIMAGE}:arm64v8-latest
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
|
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
||||||
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
|
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} || :
|
|
||||||
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
|
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
|
|
||||||
if [ -n "${SEMVER}" ]; then
|
if [ -n "${SEMVER}" ]; then
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
|
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
||||||
docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
|
|
||||||
docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
|
|
||||||
fi
|
|
||||||
token=$(curl -sX GET "https://ghcr.io/token?scope=repository%3Alinuxserver%2F${CONTAINER_NAME}%3Apull" | jq -r '.token')
|
|
||||||
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-latest")
|
|
||||||
if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest || :
|
|
||||||
docker manifest create ${MANIFESTIMAGE}:arm32v7-latest ${MANIFESTIMAGE}:amd64-latest
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-latest
|
|
||||||
fi
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:latest
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
|
|
||||||
if [ -n "${SEMVER}" ]; then
|
|
||||||
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
|
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
'''
|
'''
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ Find us at:
|
||||||
|
|
||||||
# [linuxserver/plex](https://github.com/linuxserver/docker-plex)
|
# [linuxserver/plex](https://github.com/linuxserver/docker-plex)
|
||||||
|
|
||||||
[](https://scarf.sh/gateway/linuxserver-ci/docker/linuxserver%2Fplex)
|
[](https://scarf.sh)
|
||||||
[](https://github.com/linuxserver/docker-plex)
|
[](https://github.com/linuxserver/docker-plex)
|
||||||
[](https://github.com/linuxserver/docker-plex/releases)
|
[](https://github.com/linuxserver/docker-plex/releases)
|
||||||
[](https://github.com/linuxserver/docker-plex/packages)
|
[](https://github.com/linuxserver/docker-plex/packages)
|
||||||
|
|
|
||||||
|
|
@ -5,9 +5,9 @@ apt-utils 2.4.12 deb
|
||||||
base-files 12ubuntu4.6 deb
|
base-files 12ubuntu4.6 deb
|
||||||
base-passwd 3.5.52build1 deb
|
base-passwd 3.5.52build1 deb
|
||||||
bash 5.1-6ubuntu1.1 deb
|
bash 5.1-6ubuntu1.1 deb
|
||||||
bash 5.1.16 binary
|
|
||||||
bsdutils 1:2.37.2-4ubuntu3.4 deb
|
bsdutils 1:2.37.2-4ubuntu3.4 deb
|
||||||
ca-certificates 20230311ubuntu0.22.04.1 deb
|
ca-certificates 20230311ubuntu0.22.04.1 deb
|
||||||
|
catatonit 0.1.7-1 deb
|
||||||
coreutils 8.32-4.1ubuntu1.2 deb
|
coreutils 8.32-4.1ubuntu1.2 deb
|
||||||
cron 3.0pl1-137ubuntu3 deb
|
cron 3.0pl1-137ubuntu3 deb
|
||||||
curl 7.81.0-1ubuntu1.16 deb
|
curl 7.81.0-1ubuntu1.16 deb
|
||||||
|
|
@ -45,8 +45,8 @@ libblkid1 2.37.2-4ubuntu3.4 deb
|
||||||
libbrotli1 1.0.9-2build6 deb
|
libbrotli1 1.0.9-2build6 deb
|
||||||
libbsd0 0.11.5-1 deb
|
libbsd0 0.11.5-1 deb
|
||||||
libbz2-1.0 1.0.8-5build1 deb
|
libbz2-1.0 1.0.8-5build1 deb
|
||||||
libc-bin 2.35-0ubuntu3.7 deb
|
libc-bin 2.35-0ubuntu3.8 deb
|
||||||
libc6 2.35-0ubuntu3.7 deb
|
libc6 2.35-0ubuntu3.8 deb
|
||||||
libcap-ng0 0.7.9-2.2build3 deb
|
libcap-ng0 0.7.9-2.2build3 deb
|
||||||
libcap2 1:2.44-1ubuntu0.22.04.1 deb
|
libcap2 1:2.44-1ubuntu0.22.04.1 deb
|
||||||
libcom-err2 1.46.5-2ubuntu1.1 deb
|
libcom-err2 1.46.5-2ubuntu1.1 deb
|
||||||
|
|
@ -80,7 +80,7 @@ libmount1 2.37.2-4ubuntu3.4 deb
|
||||||
libncurses6 6.3-2ubuntu0.1 deb
|
libncurses6 6.3-2ubuntu0.1 deb
|
||||||
libncursesw6 6.3-2ubuntu0.1 deb
|
libncursesw6 6.3-2ubuntu0.1 deb
|
||||||
libnettle8 3.7.3-1build2 deb
|
libnettle8 3.7.3-1build2 deb
|
||||||
libnghttp2-14 1.43.0-1ubuntu0.1 deb
|
libnghttp2-14 1.43.0-1ubuntu0.2 deb
|
||||||
libnpth0 1.6-3build2 deb
|
libnpth0 1.6-3build2 deb
|
||||||
libnsl2 1.3.0-2build2 deb
|
libnsl2 1.3.0-2build2 deb
|
||||||
libonig5 6.9.7.1-2build1 deb
|
libonig5 6.9.7.1-2build1 deb
|
||||||
|
|
@ -119,7 +119,7 @@ libunistring2 1.0-1 deb
|
||||||
libuuid1 2.37.2-4ubuntu3.4 deb
|
libuuid1 2.37.2-4ubuntu3.4 deb
|
||||||
libxxhash0 0.8.1-1 deb
|
libxxhash0 0.8.1-1 deb
|
||||||
libzstd1 1.4.8+dfsg-3build1 deb
|
libzstd1 1.4.8+dfsg-3build1 deb
|
||||||
locales 2.35-0ubuntu3.7 deb
|
locales 2.35-0ubuntu3.8 deb
|
||||||
login 1:4.8.1-2ubuntu2.2 deb
|
login 1:4.8.1-2ubuntu2.2 deb
|
||||||
logsave 1.46.5-2ubuntu1.1 deb
|
logsave 1.46.5-2ubuntu1.1 deb
|
||||||
lsb-base 11.1.0ubuntu4 deb
|
lsb-base 11.1.0ubuntu4 deb
|
||||||
|
|
@ -133,7 +133,7 @@ openssl 3.0.2-0ubuntu1.15 deb
|
||||||
passwd 1:4.8.1-2ubuntu2.2 deb
|
passwd 1:4.8.1-2ubuntu2.2 deb
|
||||||
perl-base 5.34.0-3ubuntu1.3 deb
|
perl-base 5.34.0-3ubuntu1.3 deb
|
||||||
pinentry-curses 1.1.1-1build2 deb
|
pinentry-curses 1.1.1-1build2 deb
|
||||||
plexmediaserver 1.40.2.8395-c67dce28e deb
|
plexmediaserver 1.40.3.8555-fef15d30c deb
|
||||||
procps 2:3.3.17-6ubuntu2.1 deb
|
procps 2:3.3.17-6ubuntu2.1 deb
|
||||||
publicsuffix 20211207.1025-1 deb
|
publicsuffix 20211207.1025-1 deb
|
||||||
readline-common 8.1.2-1 deb
|
readline-common 8.1.2-1 deb
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue