Skip to content

Commit cf6c988

Browse files
thespadthelamer
authored andcommitted
Can't build RISCV for now because it requires RVA23 profile support
1 parent eb5876e commit cf6c988

2 files changed

Lines changed: 8 additions & 83 deletions

File tree

Jenkinsfile

Lines changed: 7 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ pipeline {
198198
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
199199
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
200200
if (env.MULTIARCH == 'true') {
201-
env.CI_TAGS = 'amd64-resolute-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|riscv64-resolute-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-resolute-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
201+
env.CI_TAGS = 'amd64-resolute-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-resolute-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
202202
} else {
203203
env.CI_TAGS = 'resolute-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
204204
}
@@ -223,7 +223,7 @@ pipeline {
223223
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
224224
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
225225
if (env.MULTIARCH == 'true') {
226-
env.CI_TAGS = 'amd64-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|riscv64-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
226+
env.CI_TAGS = 'amd64-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
227227
} else {
228228
env.CI_TAGS = 'resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
229229
}
@@ -248,7 +248,7 @@ pipeline {
248248
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
249249
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
250250
if (env.MULTIARCH == 'true') {
251-
env.CI_TAGS = 'amd64-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|riscv64-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
251+
env.CI_TAGS = 'amd64-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
252252
} else {
253253
env.CI_TAGS = 'resolute-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
254254
}
@@ -705,75 +705,6 @@ pipeline {
705705
'''
706706
}
707707
}
708-
stage('Build RISCV64') {
709-
agent {
710-
label 'RISCV64'
711-
}
712-
steps {
713-
echo "Running on node: ${NODE_NAME}"
714-
sh "docker buildx build \
715-
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
716-
--label \"org.opencontainers.image.authors=linuxserver.io\" \
717-
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-baseimage-ubuntu/packages\" \
718-
--label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-baseimage-ubuntu\" \
719-
--label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-baseimage-ubuntu\" \
720-
--label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
721-
--label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
722-
--label \"org.opencontainers.image.vendor=linuxserver.io\" \
723-
--label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
724-
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
725-
--label \"org.opencontainers.image.title=Baseimage-ubuntu\" \
726-
--label \"org.opencontainers.image.description=baseimage-ubuntu image by linuxserver.io\" \
727-
--no-cache --pull -f Dockerfile.riscv64 -t ${IMAGE}:riscv64-${META_TAG} --platform=linux/riscv64 \
728-
--provenance=true --sbom=true --builder=container --load \
729-
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
730-
sh '''#! /bin/bash
731-
set -e
732-
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
733-
for i in "${CACHE[@]}"; do
734-
docker tag ${IMAGE}:riscv64-${META_TAG} ${i}:riscv64-${COMMIT_SHA}-${BUILD_NUMBER}
735-
done
736-
'''
737-
withCredentials([
738-
[
739-
$class: 'UsernamePasswordMultiBinding',
740-
credentialsId: 'Quay.io-Robot',
741-
usernameVariable: 'QUAYUSER',
742-
passwordVariable: 'QUAYPASS'
743-
]
744-
]) {
745-
retry_backoff(5,5) {
746-
sh '''#! /bin/bash
747-
set -e
748-
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --password-stdin
749-
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
750-
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
751-
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
752-
753-
if [[ "${PACKAGE_CHECK}" != "true" ]]; then
754-
declare -A pids
755-
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
756-
for i in "${CACHE[@]}"; do
757-
docker push ${i}:riscv64-${COMMIT_SHA}-${BUILD_NUMBER} &
758-
pids[$!]="$i"
759-
done
760-
for p in "${!pids[@]}"; do
761-
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
762-
done
763-
fi
764-
'''
765-
}
766-
}
767-
sh '''#! /bin/bash
768-
containers=$(docker ps -aq)
769-
if [[ -n "${containers}" ]]; then
770-
docker stop ${containers}
771-
fi
772-
docker system prune -f --volumes || :
773-
docker image prune -af || :
774-
'''
775-
}
776-
}
777708
}
778709
}
779710
// Take the image we just built and dump package versions for comparison
@@ -887,8 +818,6 @@ pipeline {
887818
if [ "${MULTIARCH}" == "true" ]; then
888819
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} --platform=arm64
889820
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
890-
docker pull ghcr.io/linuxserver/lsiodev-buildcache:riscv64-${COMMIT_SHA}-${BUILD_NUMBER} --platform=riscv64
891-
docker tag ghcr.io/linuxserver/lsiodev-buildcache:riscv64-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:riscv64-${META_TAG}
892821
fi
893822
docker run --rm \
894823
--shm-size=1gb \
@@ -970,26 +899,22 @@ pipeline {
970899
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
971900
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${META_TAG} -t ${MANIFESTIMAGE}:arm64v8-resolute -t ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || \
972901
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
973-
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:riscv64-${META_TAG} -t ${MANIFESTIMAGE}:riscv64-resolute -t ${MANIFESTIMAGE}:riscv64-${EXT_RELEASE_TAG} ${CACHEIMAGE}:riscv64-${COMMIT_SHA}-${BUILD_NUMBER} || \
974-
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
975902
if [ -n "${SEMVER}" ]; then
976903
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
977904
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
978905
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${SEMVER} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || \
979906
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
980-
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:riscv64-${SEMVER} ${CACHEIMAGE}:riscv64-${COMMIT_SHA}-${BUILD_NUMBER} || \
981-
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
982907
fi
983908
done
984909
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
985-
docker buildx imagetools create -t ${MANIFESTIMAGE}:resolute ${MANIFESTIMAGE}:amd64-resolute ${MANIFESTIMAGE}:riscv64-resolute ${MANIFESTIMAGE}:arm64v8-resolute || \
910+
docker buildx imagetools create -t ${MANIFESTIMAGE}:resolute ${MANIFESTIMAGE}:amd64-resolute ${MANIFESTIMAGE}:arm64v8-resolute || \
986911
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
987-
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:riscv64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} || \
912+
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} || \
988913
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
989-
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:riscv64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} || \
914+
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} || \
990915
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
991916
if [ -n "${SEMVER}" ]; then
992-
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:riscv64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} || \
917+
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} || \
993918
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
994919
fi
995920
done

jenkins-vars.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ external_type: os
66
release_type: prerelease
77
release_tag: resolute
88
ls_branch: resolute
9-
build_riscv64: true
9+
build_riscv64: false
1010
repo_vars:
1111
- BUILD_VERSION_ARG = 'OS'
1212
- LS_USER = 'linuxserver'

0 commit comments

Comments
 (0)