Skip to content

Commit a0bcdfd

Browse files
authored
Merge branch 'develop' into feature/kweiss/update-gh-actions
2 parents 8833cec + bccfef8 commit a0bcdfd

File tree

1,128 files changed

+46564
-16213
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,128 files changed

+46564
-16213
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ _axom_build_and_test_*
1515
tpl_dirs_summary.json
1616
*.swp
1717
*.vscode*
18+
.vs/*
1819
uberenv_libs
1920
*_build*
2021
.idea

.gitlab-ci.yml

+6-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and
1+
# Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and
22
# other Axom Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: (BSD-3-Clause)
@@ -29,13 +29,14 @@ stages:
2929
.src_build_script:
3030
script:
3131
# Use pre-existing allocation if any
32-
- JOBID=$(if [[ "$SYS_TYPE" == "toss_3_x86_64_ib" ]]; then squeue -h --name=${PROJECT_ALLOC_NAME} --format=%A; fi)
32+
- export JOBID=$(if [[ "$SYS_TYPE" == "toss_4_x86_64_ib" ]]; then squeue -h --name=${PROJECT_ALLOC_NAME} --format=%A; fi)
3333
- ASSIGN_ID=$(if [[ -n "${JOBID}" ]]; then echo "--jobid=${JOBID}"; fi)
3434
# BUILD + TEST
3535
- echo -e "\e[0Ksection_start:$(date +%s):src_build_and_test\r\e[0KSource Build and Test ${CI_PROJECT_NAME}"
3636
- ${ALLOC_COMMAND} ${ASSIGN_ID} python3 scripts/llnl_scripts/build_src.py -v --host-config ${HOST_CONFIG} --extra-cmake-options '-DENABLE_DOCS=OFF ${EXTRA_CMAKE_OPTIONS}' --build-type ${BUILD_TYPE:-Debug} ${EXTRA_OPTIONS}
3737
- echo -e "\e[0Ksection_end:$(date +%s):src_build_and_test\r\e[0K"
3838
artifacts:
39+
expire_in: 2 weeks
3940
paths:
4041
- _axom_build_and_test_*/output.log*.txt
4142
- _axom_build_and_test_*/build-*/output.log*.txt
@@ -48,14 +49,15 @@ stages:
4849
- ${ALLOC_COMMAND} python3 scripts/llnl_scripts/build_tpls.py -v --spec="${SPEC} ${EXTRA_SPEC}" --directory=${FULL_BUILD_ROOT}
4950
- echo -e "\e[0Ksection_end:$(date +%s):full_build_and_test\r\e[0K"
5051
artifacts:
52+
expire_in: 2 weeks
5153
paths:
5254
- ${FULL_BUILD_ROOT}/${SYS_TYPE}/*/_axom_build_and_test_*/output.log*.txt
53-
- ${FULL_BUILD_ROOT}}/${SYS_TYPE}/*/_axom_build_and_test_*/build-*/output.log*.txt
55+
- ${FULL_BUILD_ROOT}/${SYS_TYPE}/*/_axom_build_and_test_*/build-*/output.log*.txt
5456
reports:
5557
junit: ${FULL_BUILD_ROOT}/${SYS_TYPE}/*/_axom_build_and_test_*/build-*/junit.xml
5658

5759
# This is where jobs are included
5860
include:
59-
- local: .gitlab/build_ruby.yml
61+
- local: .gitlab/build_quartz.yml
6062
- local: .gitlab/build_lassen.yml
6163
- local: .gitlab/build_tioga.yml

.gitlab/build_lassen.yml

+10-14
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,35 @@
1-
# Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and
1+
# Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and
22
# other Axom Project Developers. See the top-level LICENSE file for details.
33
#
44
# SPDX-License-Identifier: (BSD-3-Clause)
55

66
####
77
# This is the share configuration of jobs for lassen
88
.on_lassen:
9-
variables:
109
tags:
1110
- shell
1211
- lassen
1312
rules:
1413
- if: '$CI_COMMIT_BRANCH =~ /_lnone/ || $ON_LASSEN == "OFF"' #run except if ...
1514
when: never
1615
- when: on_success
17-
18-
####
19-
# Load required CUDA module
20-
.with_cuda:
2116
before_script:
2217
- module load cuda/11.2.0
18+
- module load cmake/3.21.1
2319

2420
####
2521
# Template
2622
.src_build_on_lassen:
2723
stage: build
2824
variables:
29-
ALLOC_COMMAND: "lalloc 1 -W 25 -q pdebug"
25+
ALLOC_COMMAND: "lalloc 1 -W 25 -q pwdev -G wdev -alloc_flags atsdisable"
3026
extends: [.src_build_script, .on_lassen, .src_workflow]
3127
needs: []
3228

3329
.full_build_on_lassen:
3430
stage: build
3531
variables:
36-
ALLOC_COMMAND: "lalloc 1 -W 45 -q pdebug"
32+
ALLOC_COMMAND: "lalloc 1 -W 45 -q pwdev -G wdev -alloc_flags atsdisable"
3733
extends: [.full_build_script, .on_lassen, .full_workflow]
3834
needs: []
3935

@@ -49,7 +45,7 @@ lassen-clang_10_0_1_cuda-src:
4945
variables:
5046
COMPILER: "[email protected]_cuda"
5147
HOST_CONFIG: "lassen-blueos_3_ppc64le_ib_p9-${COMPILER}.cmake"
52-
extends: [.src_build_on_lassen, .with_cuda]
48+
extends: [.src_build_on_lassen]
5349

5450
lassen-gcc_8_3_1-src:
5551
variables:
@@ -61,7 +57,7 @@ lassen-gcc_8_3_1_cuda-src:
6157
variables:
6258
COMPILER: "[email protected]_cuda"
6359
HOST_CONFIG: "lassen-blueos_3_ppc64le_ib_p9-${COMPILER}.cmake"
64-
extends: [.src_build_on_lassen, .with_cuda]
60+
extends: [.src_build_on_lassen]
6561

6662
lassen-xl_16_1_1-src:
6763
variables:
@@ -73,7 +69,7 @@ lassen-xl_16_1_1_cuda-src:
7369
variables:
7470
COMPILER: "[email protected]_cuda"
7571
HOST_CONFIG: "lassen-blueos_3_ppc64le_ib_p9-${COMPILER}.cmake"
76-
extends: [.src_build_on_lassen, .with_cuda]
72+
extends: [.src_build_on_lassen]
7773

7874
####
7975
# Full Build jobs
@@ -88,7 +84,7 @@ lassen-clang_10_0_1_cuda-full:
8884
COMPILER: "[email protected]"
8985
SPEC: "%${COMPILER}+mfem+cuda~openmp"
9086
EXTRA_SPEC: "cuda_arch=70"
91-
extends: [.full_build_on_lassen, .with_cuda]
87+
extends: [.full_build_on_lassen]
9288

9389
lassen-gcc_8_3_1-full:
9490
variables:
@@ -101,7 +97,7 @@ lassen-gcc_8_3_1_cuda-full:
10197
COMPILER: "[email protected]"
10298
SPEC: "%${COMPILER}~mfem+cuda"
10399
EXTRA_SPEC: "cuda_arch=70"
104-
extends: [.full_build_on_lassen, .with_cuda]
100+
extends: [.full_build_on_lassen]
105101

106102
lassen-xl_16_1_1-full:
107103
variables:
@@ -114,4 +110,4 @@ lassen-xl_16_1_1_cuda-full:
114110
COMPILER: "[email protected]"
115111
SPEC: "%${COMPILER}+mfem+cuda~openmp~cpp14"
116112
EXTRA_SPEC: "cuda_arch=70"
117-
extends: [.full_build_on_lassen, .with_cuda]
113+
extends: [.full_build_on_lassen]

.gitlab/build_quartz.yml

+128
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and
2+
# other Axom Project Developers. See the top-level LICENSE file for details.
3+
#
4+
# SPDX-License-Identifier: (BSD-3-Clause)
5+
6+
####
7+
# This is the shared configuration of jobs for quartz
8+
.on_quartz:
9+
tags:
10+
- shell
11+
- quartz
12+
rules:
13+
- if: '$CI_COMMIT_BRANCH =~ /_qnone/ || $ON_RUBY == "OFF"' #run except if ...
14+
when: never
15+
- if: '$CI_JOB_NAME =~ /quartz_release/'
16+
when: always
17+
- when: on_success
18+
before_script:
19+
- module load cmake/3.19.2
20+
21+
####
22+
# In pre-build phase, allocate a node for builds
23+
quartz_allocate:
24+
variables:
25+
GIT_STRATEGY: none
26+
extends: [.on_quartz, .src_workflow]
27+
stage: allocate
28+
script:
29+
# Use when ellastic ci is on quartz or we go back to ruby
30+
#- salloc --reservation=ci --qos=ci_ruby -N 1 -c 36 -t 60 --no-shell --job-name=${PROJECT_ALLOC_NAME}
31+
- salloc -N 1 -c 36 -t 60 -p pdebug --no-shell --job-name=${PROJECT_ALLOC_NAME}
32+
needs: []
33+
34+
####
35+
# In post-build phase, deallocate resources
36+
# Note : make sure this is run even on build phase failure
37+
quartz_release:
38+
variables:
39+
GIT_STRATEGY: none
40+
extends: [.on_quartz, .src_workflow]
41+
stage: release
42+
script:
43+
- export JOBID=$(squeue -h --name=${PROJECT_ALLOC_NAME} --format=%A)
44+
- if [[ -n "${JOBID}" ]]; then scancel ${JOBID}; fi
45+
46+
####
47+
# Template
48+
.src_build_on_quartz:
49+
stage: build
50+
variables:
51+
# Use when ellastic ci is on quartz or we go back to ruby
52+
# ALLOC_COMMAND: "srun --reservation=ci --qos=ci_ruby -t 60 -N 1 "
53+
ALLOC_COMMAND: "srun -t 60 -N 1 -p pdebug"
54+
extends: [.src_build_script, .on_quartz, .src_workflow]
55+
needs: [quartz_allocate]
56+
57+
.full_build_on_quartz:
58+
stage: build
59+
variables:
60+
# Use when ellastic ci is on quartz or we go back to ruby
61+
# ALLOC_COMMAND: "srun --reservation=ci --qos=ci_ruby -t 60 -N 1 "
62+
ALLOC_COMMAND: "srun -t 60 -N 1 -p pdebug"
63+
extends: [.full_build_script, .on_quartz, .full_workflow]
64+
needs: []
65+
66+
####
67+
# PR Build jobs
68+
quartz-clang_14_0_6-debug-src:
69+
variables:
70+
COMPILER: "[email protected]"
71+
HOST_CONFIG: "quartz-toss_4_x86_64_ib-${COMPILER}.cmake"
72+
extends: .src_build_on_quartz
73+
74+
quartz-clang_14_0_6-release-src:
75+
variables:
76+
COMPILER: "[email protected]"
77+
HOST_CONFIG: "quartz-toss_4_x86_64_ib-${COMPILER}.cmake"
78+
BUILD_TYPE: "Release"
79+
EXTRA_CMAKE_OPTIONS: "-DAXOM_QUEST_ENABLE_EXTRA_REGRESSION_TESTS:BOOL=ON"
80+
extends: .src_build_on_quartz
81+
82+
quartz-gcc_10_3_1-src:
83+
variables:
84+
COMPILER: "[email protected]"
85+
HOST_CONFIG: "quartz-toss_4_x86_64_ib-${COMPILER}.cmake"
86+
extends: .src_build_on_quartz
87+
88+
# TODO: turn back on
89+
#quartz-gcc_10_3_1_no_fortran-src:
90+
# variables:
91+
# COMPILER: "[email protected]"
92+
# HOST_CONFIG: "quartz-toss_4_x86_64_ib-${COMPILER}_nofortran.cmake"
93+
# extends: .src_build_on_quartz
94+
95+
# disabled due to not actually having a host-config yet
96+
# quartz-intel_19_0_4-src:
97+
# variables:
98+
# COMPILER: "[email protected]"
99+
# HOST_CONFIG: "quartz-toss_4_x86_64_ib-${COMPILER}.cmake"
100+
# extends: .src_build_on_quartz
101+
102+
103+
####
104+
# Full Build jobs
105+
quartz-clang_14_0_6-full:
106+
variables:
107+
COMPILER: "[email protected]"
108+
SPEC: "%${COMPILER}+mfem"
109+
extends: .full_build_on_quartz
110+
111+
quartz-gcc_10_3_1-full:
112+
variables:
113+
COMPILER: "[email protected]"
114+
SPEC: "%${COMPILER}+mfem"
115+
extends: .full_build_on_quartz
116+
117+
quartz-gcc_10_3_1_no_fortran-full:
118+
variables:
119+
COMPILER: "[email protected]"
120+
SPEC: "%${COMPILER}~fortran+mfem"
121+
extends: .full_build_on_quartz
122+
123+
# disabled due to not actually having a host-config yet
124+
#quartz-intel_19_0_4-full:
125+
# variables:
126+
# COMPILER: "[email protected]"
127+
# SPEC: "%${COMPILER}+mfem~cpp14"
128+
# extends: .full_build_on_quartz

0 commit comments

Comments
 (0)