aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorParthasarathy Tirumalai <parthasarathy.tirumalai@desy.de>2024-09-18 16:20:06 +0200
committerParthasarathy Tirumalai <parthasarathy.tirumalai@desy.de>2024-09-19 09:22:31 +0200
commitac936d429f7a56f304a325324d8f95b02bc97ea5 (patch)
tree3ad0e00d14359482b551b405b74df2a3911a9e64
parent751e4330469ed453e923d7a2bec51234b0fbf9e1 (diff)
Refactor Alma Linux/RHEL 9 build job into build and test job.
-rw-r--r--.gitlab-ci.yml74
-rw-r--r--Dockerfile_ubuntu2
2 files changed, 29 insertions, 47 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0387113f..1be308cf 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -40,43 +40,7 @@ build_dev_images:
when: manual
build-and-test:
- image: $CI_REGISTRY_IMAGE/$IMAGE
-
- script:
- - meson setup build && ninja -C build && ninja -C build test
-
- artifacts:
- when: always
- paths:
- - build/meson-logs/testlog.junit.xml
- reports:
- junit: build/meson-logs/testlog.junit.xml
-
- parallel:
- matrix:
- - IMAGE: ["centos7","alma9","fedora","ubuntu"]
-
-build-and-test-minimal:
- image: $IMAGE:latest
- script:
- - dnf update -y && dnf group install -y 'Development Tools' &&
- dnf install -y gsl-devel flex bison cmake meson
- - meson setup build -Dhdf5=disabled --wrap-mode=nofallback && ninja -C build && ninja -C build test
-
- artifacts:
- when: always
- paths:
- - build/meson-logs/testlog.junit.xml
- reports:
- junit: build/meson-logs/testlog.junit.xml
-
- parallel:
- matrix:
- - IMAGE: ["fedora"]
-
-build-almalinux9:
- image: $CI_REGISTRY_IMAGE/alma9
-
+ image: $CI_REGISTRY_IMAGE/$PLATFORM
variables:
GIT_STRATEGY: clone
SECURE_FILES_DOWNLOAD_PATH: './downloads'
@@ -88,7 +52,7 @@ build-almalinux9:
# Seedee
- tar -xzf downloads/seedee-main.tar.gz
- - pushd seedee
+ - pushd seedee-main
- mkdir build
- cd build
- cmake .. -GNinja -DCMAKE_INSTALL_PREFIX=$CFPREFIX -DCMAKE_BUILD_TYPE=RelWithDebInfo
@@ -129,20 +93,38 @@ build-almalinux9:
- echo "$CFPREFIX/bin/mosflm.real -n \$@" >> $CFPREFIX/bin/mosflm
- chmod +x $CFPREFIX/bin/mosflm
- - cp -Rp /software $CI_PROJECT_DIR/almalinux9/
+ - cp -Rp /software $CI_PROJECT_DIR/$PLATFORM
artifacts:
paths:
- - almalinux9/
+ - $PLATFORM
- build/meson-logs/testlog.junit.xml
+ reports:
+ junit: build/meson-logs/testlog.junit.xml
when: on_success
expire_in: 1 day
+
+ parallel:
+ matrix:
+ - PLATFORM: ["centos7","alma9","fedora","ubuntu"]
+
+build-and-test-minimal:
+ image: $IMAGE:latest
+ script:
+ - dnf update -y && dnf group install -y 'Development Tools' &&
+ dnf install -y gsl-devel flex bison cmake meson
+ - meson setup build -Dhdf5=disabled --wrap-mode=nofallback && ninja -C build && ninja -C build test
+
+ artifacts:
+ when: always
+ paths:
+ - build/meson-logs/testlog.junit.xml
reports:
junit: build/meson-logs/testlog.junit.xml
- rules:
- - if: $CI_COMMIT_BRANCH == "master"
-
+ parallel:
+ matrix:
+ - IMAGE: ["fedora"]
build-brew-macos:
dependencies: []
@@ -164,7 +146,7 @@ deploy-remote-maxwell:
stage: deploy
image: $CI_REGISTRY_IMAGE/alma9
dependencies:
- - build-almalinux9
+ - build-and-test
variables:
GIT_STRATEGY: none
tags:
@@ -178,7 +160,7 @@ deploy-remote-maxwell:
## If MAXWELL_SSH_PRIVATE_KEY is not set then use $MAXWELL_USER_NAME and $MAXWELL_ACCOUNT_PASSWORD
## to connect using Kerberos.
- HOST="max-wgs";
- - PREFIX="almalinux9";
+ - PREFIX="alma9";
- if [ $MAXWELL_SSH_PRIVATE_KEY ]; then
eval $(ssh-agent -s);
chmod 400 "$MAXWELL_SSH_PRIVATE_KEY";
@@ -198,7 +180,7 @@ deploy-remote-maxwell:
- scp -r $PREFIX/crystfel/devel $MAXWELL_USER_NAME@$HOST:/software/crystfel/
rules:
- - if: $MAXWELL_DEPLOYMENT == "remote" && $CI_COMMIT_BRANCH == "master"
+ - if: $CI_COMMIT_BRANCH == "master"
build_container_image:
stage: build_container
diff --git a/Dockerfile_ubuntu b/Dockerfile_ubuntu
index 92e84999..4940e83f 100644
--- a/Dockerfile_ubuntu
+++ b/Dockerfile_ubuntu
@@ -13,7 +13,7 @@ RUN export DEBIAN_FRONTEND=noninteractive; \
libcairo2-dev libpango1.0-dev libgdk-pixbuf2.0-dev libfftw3-dev libpng-dev libmsgpack-dev \
libeigen3-dev libccp4-dev libhdf5-dev libzmq3-dev libpython3-dev python3-full python3-venv \
liblz4-dev libbz2-dev libcurl4-openssl-dev debianutils wget lz4 diffutils openssh-client \
- krb5-user sssd-krb5 git
+ krb5-user sssd-krb5 git curl unzip
RUN sed -i -E '/default_ccache_name/s//# default_ccache_name/g' /etc/krb5.conf ; \
sed -i -E '/#\s+default_realm\s* =\s*EXAMPLE.COM\s*/s//default_realm = DESY.DE/g' /etc/krb5.conf ; \