Skip to content
Snippets Groups Projects
Commit 6f20733e authored by Philipp Spilger's avatar Philipp Spilger
Browse files

Make recipe filename configurable and specifiable via env var

Change-Id: I43990cebca3c57186462cb0dedc8800c5200d246
parent d4e2ff5e
No related branches found
No related tags found
No related merge requests found
...@@ -36,6 +36,7 @@ pipeline { ...@@ -36,6 +36,7 @@ pipeline {
environment { environment {
DOCKER_BASE_IMAGE = "debian:bullseye" DOCKER_BASE_IMAGE = "debian:bullseye"
DEPENDENCY_PYTHON = "python@3.8.2" DEPENDENCY_PYTHON = "python@3.8.2"
YASHCHIKI_RECIPE_PATH = "${WORKSPACE}/visionary_recipe.def"
YASHCHIKI_CACHES_ROOT = "${HOME}" YASHCHIKI_CACHES_ROOT = "${HOME}"
YASHCHIKI_SPACK_PATH = "${env.WORKSPACE}/spack" YASHCHIKI_SPACK_PATH = "${env.WORKSPACE}/spack"
YASHCHIKI_IMAGE_NAME = "singularity_visionary_temp.img" YASHCHIKI_IMAGE_NAME = "singularity_visionary_temp.img"
......
...@@ -38,6 +38,7 @@ pipeline { ...@@ -38,6 +38,7 @@ pipeline {
DOCKER_BASE_IMAGE = "centos:7" DOCKER_BASE_IMAGE = "centos:7"
// versions from system packages // versions from system packages
DEPENDENCY_PYTHON = "python@3.8.3" DEPENDENCY_PYTHON = "python@3.8.3"
YASHCHIKI_RECIPE_PATH = "${WORKSPACE}/asic_recipe.def"
YASHCHIKI_CACHES_ROOT = "${HOME}" YASHCHIKI_CACHES_ROOT = "${HOME}"
YASHCHIKI_SPACK_PATH = "${env.WORKSPACE}/spack" YASHCHIKI_SPACK_PATH = "${env.WORKSPACE}/spack"
YASHCHIKI_IMAGE_NAME = "singularity_asic_temp.img" YASHCHIKI_IMAGE_NAME = "singularity_asic_temp.img"
......
...@@ -3,12 +3,10 @@ ...@@ -3,12 +3,10 @@
SOURCE_DIR="$(dirname "$(readlink -m "${BASH_SOURCE[0]}")")" SOURCE_DIR="$(dirname "$(readlink -m "${BASH_SOURCE[0]}")")"
source "${SOURCE_DIR}/commons.sh" source "${SOURCE_DIR}/commons.sh"
RECIPE_FILENAME="${WORKSPACE}/asic_recipe.def"
# create container description file # create container description file
# * based on CentOS 7's docker image # * based on CentOS 7's docker image
# * just manually install everything we need # * just manually install everything we need
cat <<EOF >"${RECIPE_FILENAME}" cat <<EOF >"${YASHCHIKI_RECIPE_PATH}"
Bootstrap: docker Bootstrap: docker
From: ${DOCKER_BASE_IMAGE} From: ${DOCKER_BASE_IMAGE}
...@@ -299,10 +297,10 @@ for view in "${spack_views[@]}"; do ...@@ -299,10 +297,10 @@ for view in "${spack_views[@]}"; do
( (
generate_appenv "${view}" "${view}" generate_appenv "${view}" "${view}"
[[ "${view}" =~ ^visionary- ]] && generate_appenv "${view#visionary-}" "${view}" [[ "${view}" =~ ^visionary- ]] && generate_appenv "${view#visionary-}" "${view}"
) >> "${RECIPE_FILENAME}" ) >> "${YASHCHIKI_RECIPE_PATH}"
if [ "${view}" = "visionary-simulation" ];then if [ "${view}" = "visionary-simulation" ];then
cat <<EOF >>"${RECIPE_FILENAME}" cat <<EOF >>"${YASHCHIKI_RECIPE_PATH}"
export NEST_MODULES=visionarymodule export NEST_MODULES=visionarymodule
EOF EOF
fi fi
......
...@@ -14,12 +14,12 @@ unset LC_NUMERIC ...@@ -14,12 +14,12 @@ unset LC_NUMERIC
unset LC_TIME unset LC_TIME
unset LC_MESSAGES unset LC_MESSAGES
echo "creating ${CONTAINER_STYLE}_recipe.def" >&2 echo "creating ${YASHCHIKI_RECIPE_PATH}" >&2
SOURCE_DIR="$(dirname "$(readlink -m "${BASH_SOURCE[0]}")")" SOURCE_DIR="$(dirname "$(readlink -m "${BASH_SOURCE[0]}")")"
"${SOURCE_DIR}/${CONTAINER_STYLE}_create_recipe.sh" "${SOURCE_DIR}/${CONTAINER_STYLE}_create_recipe.sh"
echo "created ${CONTAINER_STYLE}_recipe.def" >&2 echo "created ${YASHCHIKI_RECIPE_PATH}" >&2
cat "${WORKSPACE}/${CONTAINER_STYLE}_recipe.def" cat "${YASHCHIKI_RECIPE_PATH}"
# check if host-user-owned temp folder for spack build exists # check if host-user-owned temp folder for spack build exists
if [ ! -d "${JOB_TMP_SPACK}" ]; then if [ ! -d "${JOB_TMP_SPACK}" ]; then
...@@ -47,4 +47,4 @@ sudo rm -rf ${YASHCHIKI_SANDBOXES}/ ...@@ -47,4 +47,4 @@ sudo rm -rf ${YASHCHIKI_SANDBOXES}/
mkdir ${YASHCHIKI_SANDBOXES} mkdir ${YASHCHIKI_SANDBOXES}
# Do not change: special sudo permit for the host user... # Do not change: special sudo permit for the host user...
sudo -E singularity build --sandbox "${TARGET_FOLDER}" ${CONTAINER_STYLE}_recipe.def | tee out_singularity_build_${CONTAINER_STYLE}_recipe.txt sudo -E singularity build --sandbox "${TARGET_FOLDER}" "${YASHCHIKI_RECIPE_PATH}" | tee out_singularity_build_${CONTAINER_STYLE}_recipe.txt
...@@ -3,8 +3,6 @@ ...@@ -3,8 +3,6 @@
SOURCE_DIR="$(dirname "$(readlink -m "${BASH_SOURCE[0]}")")" SOURCE_DIR="$(dirname "$(readlink -m "${BASH_SOURCE[0]}")")"
source "${SOURCE_DIR}/commons.sh" source "${SOURCE_DIR}/commons.sh"
RECIPE_FILENAME="${WORKSPACE}/visionary_recipe.def"
# create container description file # create container description file
# * based on Debian buster (minimal) + a few extra packages (e.g. git, python, ...) # * based on Debian buster (minimal) + a few extra packages (e.g. git, python, ...)
# * bind mount spack's fetch-cache and ccache into the container -> speed up stuff # * bind mount spack's fetch-cache and ccache into the container -> speed up stuff
...@@ -13,7 +11,7 @@ RECIPE_FILENAME="${WORKSPACE}/visionary_recipe.def" ...@@ -13,7 +11,7 @@ RECIPE_FILENAME="${WORKSPACE}/visionary_recipe.def"
# * create "spack" user in the container and run spack installation script as spack user # * create "spack" user in the container and run spack installation script as spack user
# (-> installs to /opt/spack, and creates views) # (-> installs to /opt/spack, and creates views)
# * provide "apps" which set environment variables to appropriate views # * provide "apps" which set environment variables to appropriate views
cat <<EOF >"${RECIPE_FILENAME}" cat <<EOF >"${YASHCHIKI_RECIPE_PATH}"
Bootstrap: docker Bootstrap: docker
From: ${DOCKER_BASE_IMAGE} From: ${DOCKER_BASE_IMAGE}
...@@ -135,5 +133,5 @@ for view in "${spack_views[@]}"; do ...@@ -135,5 +133,5 @@ for view in "${spack_views[@]}"; do
( (
generate_appenv "${view}" "${view}" generate_appenv "${view}" "${view}"
[[ "${view}" =~ ^visionary- ]] && generate_appenv "${view#visionary-}" "${view}" [[ "${view}" =~ ^visionary- ]] && generate_appenv "${view#visionary-}" "${view}"
) >> "${RECIPE_FILENAME}" ) >> "${YASHCHIKI_RECIPE_PATH}"
done done
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment