diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d846bcd7f1ea01986383fa83852a826943ad02b6..62ed47b316a4aaa1c46e4ebcad417ced8834828a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -36,8 +36,8 @@ compile dependencies: # If the download and compile script have been modified the cache gets invalidated and dependencies will be built again. - ( [ -f "${DEPS_COMMIT}" ] && git diff --quiet "`cat ${DEPS_COMMIT}`" -- scripts/dl_dep.sh scripts/compile_dep.sh ) || ( rm -f ${DEPS_COMMIT} && - scripts/dl_dep.sh ${DEPS_SRC_PATH} -n ofi && - scripts/compile_dep.sh -n ofi ${DEPS_SRC_PATH} ${DEPS_INSTALL_PATH} && + scripts/dl_dep.sh ${DEPS_SRC_PATH} -n ofi -c ci && + scripts/compile_dep.sh -n ofi -c ci ${DEPS_SRC_PATH} ${DEPS_INSTALL_PATH} && echo "${CI_COMMIT_SHA}" > "${DEPS_COMMIT}" ) artifacts: diff --git a/scripts/compile_dep.sh b/scripts/compile_dep.sh index f15ff66c5688b446b6baf822d6c9f81d991a758e..a7d35ebe69054efd37abd3dd9e77ed015bb74db3 100755 --- a/scripts/compile_dep.sh +++ b/scripts/compile_dep.sh @@ -9,7 +9,7 @@ SOURCE="" INSTALL="" DEP_CONFIG="" -VALID_DEP_OPTIONS="mogon2 mogon1 ngio direct all" +VALID_DEP_OPTIONS="mogon2 mogon1 ngio direct all ci" MOGON1_DEPS=( "zstd" "lz4" "snappy" "capstone" "ofi" "mercury" "argobots" "margo" "rocksdb" @@ -35,6 +35,10 @@ ALL_DEPS=( "syscall_intercept" "date" "agios" ) +CI_DEPS=( + "ofi" "mercury" "argobots" "margo" "rocksdb" "syscall_intercept" "date" "agios" +) + usage_short() { echo " usage: compile_dep.sh [-h] [-l] [-n ] [-c ] [-d ] [-j ] @@ -62,7 +66,7 @@ optional arguments: defaults to 'all' -c , --config allows additional configurations, e.g., for specific clusters - supported values: {mogon1, mogon2, ngio, direct, all} + supported values: {mogon1, mogon2, ngio, direct, all, ci} defaults to 'direct' -d , --dependency download a specific dependency and ignore --config setting. If unspecified @@ -104,6 +108,11 @@ list_dependencies() { echo -n "$d " done echo + echo -n " ci: " + for d in "${CI_DEPS[@]}"; do + echo -n "$d " + done + echo } check_dependency() { @@ -254,6 +263,10 @@ all) DEP_CONFIG=("${ALL_DEPS[@]}") echo "'All' dependencies are compiled" ;; +ci) + DEP_CONFIG=("${CI_DEPS[@]}") + echo "'CI' dependencies are compiled" + ;; direct | *) DEP_CONFIG=("${DIRECT_DEPS[@]}") echo "'Direct' GekkoFS dependencies are compiled (default)" diff --git a/scripts/dl_dep.sh b/scripts/dl_dep.sh index d299330f2c2052538198caa42a97c96e8ac8ef67..8d261691607684e62c18b0b4ffb732fc506550ba 100755 --- a/scripts/dl_dep.sh +++ b/scripts/dl_dep.sh @@ -9,7 +9,7 @@ NA_LAYER="" DEP_CONFIG="" VERBOSE=false -VALID_DEP_OPTIONS="mogon2 mogon1 ngio direct all" +VALID_DEP_OPTIONS="mogon2 mogon1 ngio direct all ci" MOGON1_DEPS=( "zstd" "lz4" "snappy" "capstone" "ofi-verbs" "mercury" "argobots" "margo" "rocksdb" @@ -35,6 +35,10 @@ ALL_DEPS=( "syscall_intercept" "date" "agios" ) +CI_DEPS=( + "ofi" "mercury" "argobots" "margo" "rocksdb" "syscall_intercept" "date" "agios" +) + # Stop all backround jobs on interruption. # "kill -- -$$" sends a SIGTERM to the whole process group, # thus killing also descendants. @@ -82,7 +86,12 @@ list_dependencies() { for d in "${ALL_DEPS[@]}"; do echo -n "$d " done - echo + echo + echo -n " ci: " + for d in "${CI_DEPS[@]}"; do + echo -n "$d " + done + echo } check_dependency() { @@ -191,7 +200,7 @@ optional arguments: defaults to 'ofi' -c , --config allows additional configurations, e.g., for specific clusters - supported values: {mogon2, mogon1, ngio, direct, all} + supported values: {mogon2, mogon1, ngio, direct, all, ci} defaults to 'direct' -d , --dependency download a specific dependency and ignore --config setting. If unspecified @@ -285,6 +294,10 @@ all) DEP_CONFIG=("${ALL_DEPS[@]}") [[ -z "${DEPENDENCY}" ]] && echo "'All' dependencies are downloaded" ;; +ci) + DEP_CONFIG=("${CI_DEPS[@]}") + [[ -z "${DEPENDENCY}" ]] && echo "'CI' dependencies are downloaded" + ;; direct | *) DEP_CONFIG=("${DIRECT_DEPS[@]}") [[ -z "${DEPENDENCY}" ]] && echo "'Direct' GekkoFS dependencies are downloaded (default)"