mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-12-14 23:10:17 +00:00
ci: migrate from Jenkins to GitHub Actions
This commit is contained in:
committed by
Dennis Klein
parent
dcea48fcee
commit
7a8ccb8df6
@@ -1,19 +0,0 @@
|
||||
ARG VERSION=latest
|
||||
FROM fedora:${VERSION}
|
||||
ARG VERSION=latest
|
||||
LABEL org.opencontainers.image.source "https://github.com/FairRootGroup/FairMQ"
|
||||
LABEL org.opencontainers.image.description "FairMQ development environment"
|
||||
RUN dnf -y update
|
||||
# https://git.gsi.de/SDE/packages/builder
|
||||
RUN dnf -y install https://alfa-ci.gsi.de/packages/rpm/fedora-$VERSION-x86_64/fairsoft-release-dev.rpm
|
||||
RUN dnf -y install clang cli11-devel ninja-build 'dnf-command(builddep)' libasan liblsan libtsan libubsan clang-tools-extra
|
||||
RUN dnf -y builddep fairmq
|
||||
RUN dnf -y clean all
|
||||
|
||||
# buildah build --build-arg "VERSION=36" -t "ghcr.io/fairrootgroup/fairmq-dev/fedora-36:latest" -f test/ci/Containerfile.fedora .
|
||||
# echo $GH_PAT | buildah login -u dennisklein --password-stdin ghcr.io
|
||||
# buildah push ghcr.io/fairrootgroup/fairmq-dev/fedora-36:latest
|
||||
|
||||
# apptainer pull docker://ghcr.io/fairrootgroup/fairmq-dev/fedora-36:latest
|
||||
# echo $GH_PAT | apptainer remote login -u dennisklein --password-stdin oras://ghcr.io
|
||||
# apptainer push ./fedora-36_latest.sif oras://ghcr.io/fairrootgroup/fairmq-dev/fedora-36-sif:latest
|
||||
@@ -1,36 +0,0 @@
|
||||
ARG VERSION=latest
|
||||
FROM ubuntu:${VERSION}
|
||||
ARG VERSION=latest
|
||||
LABEL org.opencontainers.image.source "https://github.com/FairRootGroup/FairMQ"
|
||||
LABEL org.opencontainers.image.description "FairMQ development environment"
|
||||
|
||||
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
|
||||
RUN apt-get update
|
||||
RUN apt-get -y upgrade
|
||||
RUN apt-get -y install ca-certificates patch cmake git libboost-dev libboost-log-dev libboost-system-dev libboost-regex-dev libboost-filesystem-dev libboost-container-dev libboost-thread-dev libboost-date-time-dev libboost-program-options-dev g++ libfmt-dev ninja-build wget libczmq-dev libxml2-utils libfabric-dev libfabric-bin pkg-config
|
||||
RUN apt-get -y clean
|
||||
|
||||
RUN cd /tmp
|
||||
|
||||
RUN git clone -b v1.19.2 --recurse-submodules https://github.com/FairRootGroup/asio
|
||||
RUN cmake -GNinja -S asio -B asio_build -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
|
||||
RUN cmake --build asio_build --target install
|
||||
RUN rm -rf asio asio_build
|
||||
|
||||
RUN git clone -b v1.0.0 https://github.com/FairRootGroup/FairCMakeModules
|
||||
RUN cmake -GNinja -S FairCMakeModules -B FairCMakeModules_build -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
|
||||
RUN cmake --build FairCMakeModules_build --target install
|
||||
RUN rm -rf FairCMakeModules FairCMakeModules_build
|
||||
|
||||
RUN git clone -b v1.11.0 https://github.com/FairRootGroup/FairLogger
|
||||
RUN cmake -GNinja -S FairLogger -B FairLogger_build -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DUSE_EXTERNAL_FMT=ON
|
||||
RUN cmake --build FairLogger_build --target install
|
||||
RUN rm -rf FairLogger FairLogger_build
|
||||
|
||||
# buildah build --build-arg "VERSION=22.04" -t "ghcr.io/fairrootgroup/fairmq-dev/ubuntu-22.04:latest" -f test/ci/Containerfile.ubuntu .
|
||||
# echo $GH_PAT | buildah login -u dennisklein --password-stdin ghcr.io
|
||||
# buildah push ghcr.io/fairrootgroup/fairmq-dev/ubuntu-22.04:latest
|
||||
|
||||
# apptainer pull docker://ghcr.io/fairrootgroup/fairmq-dev/ubuntu-22.04:latest
|
||||
# echo $GH_PAT | apptainer remote login -u dennisklein --password-stdin oras://ghcr.io
|
||||
# apptainer push ./ubuntu-22.04_latest.sif oras://ghcr.io/fairrootgroup/fairmq-dev/ubuntu-22.04-sif:latest
|
||||
@@ -1,42 +0,0 @@
|
||||
#! /bin/bash
|
||||
|
||||
label="$1"
|
||||
jobsh="$2"
|
||||
|
||||
if [ -z "$ALFACI_SLURM_CPUS" ]
|
||||
then
|
||||
ALFACI_SLURM_CPUS=20
|
||||
fi
|
||||
CPUS_PER_JOB=$(($ALFACI_SLURM_CPUS / 2))
|
||||
if [ -z "$ALFACI_SLURM_EXTRA_OPTS" ]
|
||||
then
|
||||
ALFACI_SLURM_EXTRA_OPTS="--hint=compute_bound"
|
||||
fi
|
||||
if [ -z "$ALFACI_SLURM_TIMEOUT" ]
|
||||
then
|
||||
ALFACI_SLURM_TIMEOUT=30
|
||||
fi
|
||||
if [ -z "$ALFACI_SLURM_QUEUE" ]
|
||||
then
|
||||
ALFACI_SLURM_QUEUE=main
|
||||
fi
|
||||
|
||||
echo "*** Slurm request options :"
|
||||
echo "*** Working directory ..: $PWD"
|
||||
echo "*** Queue ..............: $ALFACI_SLURM_QUEUE"
|
||||
echo "*** CPUs ...............: $ALFACI_SLURM_CPUS"
|
||||
echo "*** Wall Time ..........: $ALFACI_SLURM_TIMEOUT min"
|
||||
echo "*** Job Name ...........: ${label}"
|
||||
echo "*** Extra Options ......: ${ALFACI_SLURM_EXTRA_OPTS}"
|
||||
echo "*** Submitting job at ....: $(date -R)"
|
||||
(
|
||||
set -x
|
||||
srun -p $ALFACI_SLURM_QUEUE -c $CPUS_PER_JOB -n 1 \
|
||||
-t $ALFACI_SLURM_TIMEOUT \
|
||||
--job-name="${label}" \
|
||||
${ALFACI_SLURM_EXTRA_OPTS} \
|
||||
bash "${jobsh}"
|
||||
)
|
||||
retval=$?
|
||||
echo "*** Exit Code ............: $retval"
|
||||
exit "$retval"
|
||||
17
test/ci/spack.yaml
Normal file
17
test/ci/spack.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
spack:
|
||||
specs:
|
||||
- "fairlogger@2.2.0 ^fmt@:11"
|
||||
- "boost@1.66: +container +program_options +filesystem +date_time +regex"
|
||||
- "libzmq@4.1.4:"
|
||||
- ninja
|
||||
- "cmake@3.15:"
|
||||
|
||||
config:
|
||||
install_tree:
|
||||
root: /opt/spack
|
||||
padded_length: 128
|
||||
|
||||
mirrors:
|
||||
local-buildcache:
|
||||
url: oci://ghcr.io/fairrootgroup/fairmq-spack-buildcache
|
||||
signed: false
|
||||
Reference in New Issue
Block a user