diff --git a/debian/changelog b/debian/changelog index fa166f12b1..c430753c58 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,9 @@ linux (6.1.153-2) UNRELEASED; urgency=medium * d/b/genorig.py, d/rules, d/salsa-ci.yml: Put orig tarballs directly in .. * d/salsa-ci.yml: Adjust filenames to allow source package name suffix + * d/salsa-ci.yml: Fix cache configuration for build job + * d/salsa-ci.yml: Move orig tarball generation to a separate job again + * d/salsa-ci.yml: Restore lintian checking of source package -- Ben Hutchings Sat, 01 Nov 2025 22:50:11 +0100 diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml index 3391bcab02..fb41228bb0 100644 --- a/debian/salsa-ci.yml +++ b/debian/salsa-ci.yml @@ -18,6 +18,7 @@ variables: # Add stages for signed packages stages: + - provisioning - build - publish - test @@ -25,17 +26,67 @@ stages: - build-signed - test-signed +orig: + stage: provisioning + image: $SALSA_CI_IMAGES_BASE + cache: + key: "orig-${RELEASE}" + paths: + - orig + extends: + - .artifacts-default-expire + except: + variables: + - $CI_COMMIT_TAG != null + script: + # Move orig tarball cache + - | + if [ -d orig ]; then + mv orig/* .. + rmdir orig + fi + + # Install dpkg-parsechangelog and dependencies of genorig.py + - apt-get update + - | + eatmydata apt-get install --no-install-recommends -y \ + dpkg-dev \ + git \ + gpg \ + gpgv \ + python3 \ + python3-debian + + - source=$(dpkg-parsechangelog -SSource) + - version=$(dpkg-parsechangelog -SVersion) + - upstream_version=$(echo $version | sed 's/-[^-]*$//') + + # We could use origtargz to download a tarball fom the archive if + # available or run uscan if not, but uscan is currently + # excessively slow for us (bug #1003251). + - | + if ! [ -f ../${source}_${upstream_version}.orig.tar.xz ]; then + debian/bin/genorig.py https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git + fi + + # Move orig tarballs back to where GitLab wants them + - mkdir orig + - mv ../*.orig.tar.* orig + # Our modified build jobs build: timeout: 3 hours cache: - key: "orig-${RELEASE}" - paths: - - orig - key: "build-${BUILD_ARCH}_${HOST_ARCH}" - paths: - - .ccache + - key: "orig-${RELEASE}" + paths: + - orig + policy: pull + - key: "build-${BUILD_ARCH}_${HOST_ARCH}" + paths: + - .ccache + needs: + - job: orig extends: - .build-definition except: @@ -53,14 +104,11 @@ build: rmdir orig fi - # Install dependencies of gencontrol.py, genorig.py, and debian/rules orig + # Install dependencies of gencontrol.py and debian/rules orig - apt-get update - | eatmydata apt-get install --no-install-recommends -y \ debhelper \ - git \ - gpg \ - gpgv \ kernel-wedge \ python3 \ python3-debian \ @@ -72,13 +120,7 @@ build: - version=$(dpkg-parsechangelog -SVersion) - upstream_version=$(echo $version | sed 's/-[^-]*$//') - # Merge upstream source. We could use origtargz to download a - # tarball fom the archive if available or run uscan if not, but - # uscan is currently excessively slow for us (bug #1003251). - - | - if ! [ -f ../${source}_${upstream_version}.orig.tar.xz ]; then - debian/bin/genorig.py https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git - fi + # Merge upstream source - debian/rules orig # Fudge source version and distribution *before* gencontrol.py @@ -99,12 +141,7 @@ build: # Put packed source in artifacts - dpkg-buildpackage -uc -us -S -sa -d - mkdir -p ${WORKING_DIR} - - cp ../${source}_${upstream_version}.orig.tar.xz ${WORKING_DIR} - - mv ../${source}_${version}.dsc ../${source}_${version}.debian.tar.xz ${WORKING_DIR} - - # Move orig tarballs back to where GitLab wants them - - mkdir ${CI_PROJECT_DIR}/orig - - cp -v ${WORKING_DIR}/*.orig.tar.* ${CI_PROJECT_DIR}/orig + - mv ../${source}_${upstream_version}.orig.tar.xz ../${source}_${version}.dsc ../${source}_${version}.debian.tar.xz ../${source}_${version}_source.buildinfo ../${source}_${version}_source.changes ${WORKING_DIR} - chown -R 'salsa-ci:' ${WORKING_DIR} ${CCACHE_DIR}