diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index febfa025304cc8b1d9f68734224f50ab4018a9e2..88778a72769b89a6c4b8a96fd162dbe381ff44db 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,42 +2,22 @@ variables: FLATDEB_PROJECT_URL: https://gitlab.apertis.org/infrastructure/apertis-flatdeb.git - APERTIS_RELEASE: "v2021dev2" + APERTIS_RELEASE: "v2021pre" upload_host: archive@images.apertis.org upload_root_main: /srv/images/public/flatpak/mildenhall upload_root_test: /srv/images/test/flatpak/mildenhall/$CI_COMMIT_REF_SLUG -image: registry.gitlab.apertis.org/infrastructure/apertis-docker-images/${APERTIS_RELEASE}-package-builder +image: registry.gitlab.apertis.org/infrastructure/apertis-docker-images/${APERTIS_RELEASE}-flatdeb-builder stages: + - build base - build runtime -build-runtime: +.build: variables: GIT_STRATEGY: clone - stage: build runtime - tags: - - kvm before_script: - - apt update - - apt install -y binutils debootstrap debos flatpak ostree pigz python3 python3-debian python3-gi python3-yaml systemd-container time flatpak-builder - chmod 0400 "$ARCHIVE_SECRET_FILE" - script: - - git clone --branch apertis/${APERTIS_RELEASE} --depth 1 ${FLATDEB_PROJECT_URL} - - apertis-flatdeb/run.py --suite=${APERTIS_RELEASE} --arch=amd64 base - - apertis-flatdeb/run.py --suite=${APERTIS_RELEASE} --arch=amd64 runtimes runtimes/org.apertis.mildenhall.yaml - - | - case "$CI_COMMIT_REF_NAME" in - apertis/*) - export UPLOAD_ROOT=$upload_root_main - ;; - *) - export UPLOAD_ROOT=$upload_root_test - ;; - esac - - ssh -oStrictHostKeyChecking=no -i "$ARCHIVE_SECRET_FILE" "$upload_host" mkdir -p "$UPLOAD_ROOT" - - rsync -e "ssh -oStrictHostKeyChecking=no -i $ARCHIVE_SECRET_FILE" -aP ~/.cache/flatdeb/ostree-repo/. "$upload_host:$UPLOAD_ROOT" - - ssh -oStrictHostKeyChecking=no -i "$ARCHIVE_SECRET_FILE" "$upload_host" flatpak build-update-repo "$UPLOAD_ROOT" only: refs: - branches @@ -46,3 +26,51 @@ build-runtime: - $ARCHIVE_SECRET_FILE except: - tags + +.upload: + after_script: + - | + if [[ -f $(pwd)/flatdeb-builddir/ostree-repo/summary ]]; then + case "$CI_COMMIT_REF_NAME" in + apertis/*) + export UPLOAD_ROOT=$upload_root_main + ;; + *) + export UPLOAD_ROOT=$upload_root_test + ;; + esac + ssh -oStrictHostKeyChecking=no -i "$ARCHIVE_SECRET_FILE" "$upload_host" mkdir -p "$UPLOAD_ROOT" + rsync -e "ssh -oStrictHostKeyChecking=no -i $ARCHIVE_SECRET_FILE" -aP $(pwd)/flatdeb-builddir/ostree-repo/. "$upload_host:$UPLOAD_ROOT" + ssh -oStrictHostKeyChecking=no -i "$ARCHIVE_SECRET_FILE" "$upload_host" flatpak build-update-repo "$UPLOAD_ROOT" + fi + +build-base: + extends: + - .build + stage: build base + script: + - /opt/apertis-flatdeb/run.py --build-area=$(pwd)/flatdeb-builddir --ostree-repo=$(pwd)/flatdeb-builddir/ostree-repo --suite=${APERTIS_RELEASE} --arch=amd64 base + artifacts: + expire_in: 1d + paths: + - flatdeb-builddir/base-${APERTIS_RELEASE}-amd64.tar.gz + +build-platform-runtime: + extends: + - .build + - .upload + stage: build runtime + script: + - /opt/apertis-flatdeb/run.py --build-area=$(pwd)/flatdeb-builddir --ostree-repo=$(pwd)/flatdeb-builddir/ostree-repo --suite=${APERTIS_RELEASE} --arch=amd64 --platform runtimes runtimes/org.apertis.mildenhall.yaml + dependencies: + - build-base + +build-sdk-runtime: + extends: + - .build + - .upload + stage: build runtime + script: + - /opt/apertis-flatdeb/run.py --build-area=$(pwd)/flatdeb-builddir --ostree-repo=$(pwd)/flatdeb-builddir/ostree-repo --suite=${APERTIS_RELEASE} --arch=amd64 --sdk runtimes runtimes/org.apertis.mildenhall.yaml + dependencies: + - build-base diff --git a/ci-flatpak-builder.yml b/ci-flatpak-builder.yml index 6171de0062588a78586d7ef797deb71c27e3cdf6..b08d8221579eb7cf88faf205796aeecac103de20 100644 --- a/ci-flatpak-builder.yml +++ b/ci-flatpak-builder.yml @@ -1,12 +1,12 @@ # vi:et:sts=2 variables: - APERTIS_RELEASE: "v2021dev2" + APERTIS_RELEASE: "v2021pre" upload_host: archive@images.apertis.org upload_root_main: /srv/images/public/flatpak/mildenhall upload_root_test: /srv/images/test/flatpak/mildenhall/$CI_COMMIT_REF_SLUG -image: registry.gitlab.apertis.org/infrastructure/apertis-docker-images/${APERTIS_RELEASE}-package-builder +image: registry.gitlab.apertis.org/infrastructure/apertis-docker-images/${APERTIS_RELEASE}-flatdeb-builder stages: - build app @@ -16,11 +16,9 @@ build-app: GIT_STRATEGY: clone stage: build app before_script: - - apt update - - apt install -y binutils debootstrap debos flatpak ostree pigz python3 python3-debian python3-gi python3-yaml systemd-container time flatpak-builder - chmod 0400 "$ARCHIVE_SECRET_FILE" - - flatpak --if-not-exists --user remote-add --no-gpg-verify mildenhall https://images.apertis.org/public/flatpak/mildenhall - - flatpak install -y org.apertis.mildenhall.Platform org.apertis.mildenhall.Sdk + - flatpak --if-not-exists --user remote-add --no-gpg-verify mildenhall https://images.apertis.org/flatpak/mildenhall + - flatpak install -y org.apertis.mildenhall.Platform//${APERTIS_RELEASE} org.apertis.mildenhall.Sdk//${APERTIS_RELEASE} script: - REPODIR=$(mktemp -d repo-XXXXXX) - chmod 755 ${REPODIR} diff --git a/suites/v2021dev2.yaml b/suites/v2021pre.yaml similarity index 100% rename from suites/v2021dev2.yaml rename to suites/v2021pre.yaml