[gnome-build-meta/abderrahim/child-pipelines] fixup! WIP: generate deploy configuration



commit dbaaf197d0dbd2a93531ad036ceaa9a46efb43fe
Author: Abderrahim Kitouni <akitouni gnome org>
Date:   Wed Aug 5 11:52:00 2020 +0100

    fixup! WIP: generate deploy configuration

 .gitlab-ci/flat-manager.yml | 82 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 82 insertions(+)
---
diff --git a/.gitlab-ci/flat-manager.yml b/.gitlab-ci/flat-manager.yml
new file mode 100644
index 00000000..cd32eabe
--- /dev/null
+++ b/.gitlab-ci/flat-manager.yml
@@ -0,0 +1,82 @@
+include: .gitlab-ci/arch.yml
+
+stages:
+- prepare
+- deploy
+- finish
+
+.flatmgr-template:
+  stage: deploy
+  dependencies: [flatmgr-prepare]
+  script:
+  - test -n "$BUILD_TARGETS" && $BST -o arch $ARCH build $BUILD_TARGETS
+
+  - TARGETS_REPO=TARGETS_${FLAT_MANAGER_REPO}
+  - TARGETS_REPO_ARCH=TARGETS_{$FLAT_MANAGER_REPO}_${ARCH}
+  - TARGETS="$TARGETS ${!TARGETS_REPO} ${!TARGETS_REPO_ARCH}"
+
+  - $BST -o arch $ARCH pull $TARGETS
+  
+  - ostree init --repo repo/ --mode archive
+
+  - |
+    for target in $TARGETS; do
+      $BST -o arch $ARCH checkout --hardlinks $target checkout-repo/
+      ostree pull-local --repo repo/ checkout-repo/
+      rm -rf checkout-repo/
+    done
+
+  - flatpak build-update-repo --generate-static-deltas repo/
+  - flat-manager-client push $(cat build.txt) repo/
+
+
+flatmgr-prepare:
+  <<: *x86_64
+  stage: prepare
+  script:
+  - curl -O $CI_PROJECT_URL/-/jobs/$TRACK_JOB_ID/artifacts/raw/project.refs
+  - flat-manager-client create $FLAT_MANAGER_SERVER $FLAT_MANAGER_REPO > build.txt
+  artifacts:
+    paths:
+    - build.txt
+    - project.refs
+
+
+flatmgr-x86_64:
+  extends: .flatmgr-template
+  <<: *x86_64
+
+flatmgr-i386:
+  extends: .flatmgr-template
+  <<: *i686
+
+flatmgr-aarch64:
+  extends: .flatmgr-template
+  <<: *aarch64
+
+flatmgr-arm:
+  extends: .flatmgr-template
+  <<: *arm
+
+flatmgr-ppc64le:
+  extends: .flatmgr-template
+  <<: *ppc64le
+
+
+flatmgr-finish:
+  stage: finish
+  dependencies: [flatmgr-prepare]
+  script:
+  - flat-manager-client commit --publish --wait $(cat build.txt)
+  - flat-manager-client publish --wait $(cat build.txt)
+  after_script:
+  - flat-manager-client purge $(cat build.txt)
+  <<: *x86_64
+
+flatmgr-finish-failed:
+  stage: finish
+  dependencies: [flatmgr-prepare]
+  script:
+  - flat-manager-client purge $(cat build.txt)
+  when: on_failure
+  <<: *x86_64


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]