summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml126
1 files changed, 111 insertions, 15 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 96f5d99a..7330df69 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,22 +1,118 @@
-image: samthursfield/buildstream:0.1-20170627.1
+image: debian:stretch
-before_script:
- # Update to latest BuildStream commit
- - cd ~/buildstream
- - git remote update origin
- - git reset --hard origin/master
- - pip3 install .
- - cd -
-
- # Work around https://github.com/fedora-cloud/docker-brew-fedora/issues/14
- - export LANG="C.UTF-8"
- - export LC_ALL="C.UTF-8"
+variables:
+ YBD_base: "/cache/ybd_base"
+ YBD_gits: "/cache/ybd_base/gits"
+
+cache:
+ paths:
+ - "${YBD_gits}/"
-# We are limited to simple CI unless we provide our own GitLab CI runners.
stages:
- validate
+ - build-1
+ - deploy-1
+ - build-2
+ - build-3
+
+before_script:
+ - export LC_ALL="C.UTF-8"
+ - apt-get update -qq && apt-get install -y -qq git python-dev
+ - export CI_YBD_BRANCH=`[[ "$CI_BUILD_REF_NAME" =~ ^staging/fromybd/ ]] && echo -b ${CI_BUILD_REF_NAME#staging/fromybd/}`
+ - git clone https://gitlab.com/baserock/spec.git
+ - git clone https://gitlab.com/baserock/ybd.git $CI_YBD_BRANCH
+ - cd ybd && ./install_dependencies.sh && cd ..
+ - pip install -r spec/requirements.txt
-validate:
+validate-all-definitions:
stage: validate
script:
- - bst --colors show gnu-toolchain.bst
+ - python spec/quick_check.py .
+
+build-system-x86_64-chroot-build:
+ stage: build-1
+ script:
+ - ybd/ybd.py systems/build-system-x86_64-chroot.morph x86_64
+
+build-system-x86_64-chroot-deploy:
+ stage: deploy-1
+ dependencies:
+ - build-system-x86_64-chroot-build
+ script:
+ - ybd/ybd.py clusters/build-system-x86_64-chroot-deploy.morph x86_64
+ artifacts:
+ name: "${CI_BUILD_NAME}-${CI_BUILD_REF}"
+ paths:
+ - build-system-x86_64-chroot.tar
+
+#build-system-armv7lhf-rootfs-build:
+# stage: build-1
+# script:
+# - sudo ybd/ybd.py systems/build-system-armv7lhf-rootfs.morph armv7lhf
+# tags:
+# - armv7l
+# only:
+# - master
+# - /^staging\/.*$/
+
+devel-build-64:
+ stage: build-2
+ script:
+ - ybd/ybd.py systems/devel-system-x86_64-generic.morph x86_64
+
+genivi-baseline-build-64:
+ stage: build-2
+ script:
+ - ybd/ybd.py genivi/systems/genivi-baseline-system-x86_64-generic.morph x86_64
+ - ybd/ybd.py systems/initramfs-x86_64.morph x86_64
+
+genivi-demo-platform-build-64:
+ stage: build-3
+ script:
+ - ybd/ybd.py genivi/systems/genivi-demo-platform-x86_64-generic.morph x86_64
+ - ybd/ybd.py systems/initramfs-x86_64.morph x86_64
+
+ivi-build-64:
+ stage: build-3
+ script:
+ - ybd/ybd.py ivi/systems/ivi-system-x86_64.morph x86_64
+ - ybd/ybd.py systems/initramfs-x86_64.morph x86_64
+
+gnome-build-64:
+ stage: build-3
+ script:
+ - ybd/ybd.py gnome/systems/gnome-system-x86_64.morph x86_64
+ - ybd/ybd.py systems/initramfs-x86_64.morph x86_64
+
+minimal-build-64:
+ stage: build-1
+ script:
+ - ybd/ybd.py systems/minimal-system-x86_64-chroot.morph x86_64
+
+minimal-system-x86_64-chroot-deploy:
+ stage: deploy-1
+ dependencies:
+ - minimal-build-64
+ script:
+ - ybd/ybd.py clusters/minimal-system-x86_64-chroot-deploy.morph x86_64
+ artifacts:
+ name: "${CI_BUILD_NAME}-${CI_BUILD_REF}"
+ paths:
+ - minimal-system-x86_64-chroot.tar
+
+trove-build-64:
+ stage: build-2
+ script:
+ - ybd/ybd.py trove/systems/trove-system-x86_64.morph x86_64
+
+weston-build-64:
+ stage: build-2
+ script:
+ - ybd/ybd.py weston/systems/weston-system-x86_64-generic.morph x86_64
+ - ybd/ybd.py systems/initramfs-x86_64.morph x86_64
+
+weston-qt-build-64:
+ stage: build-3
+ script:
+ - ybd/ybd.py weston/systems/weston-qt5-system-x86_64.morph x86_64
+ - ybd/ybd.py systems/initramfs-x86_64.morph x86_64