-
Notifications
You must be signed in to change notification settings - Fork 16
Expand file tree
/
Copy pathconfig.yml
More file actions
134 lines (127 loc) · 3.79 KB
/
config.yml
File metadata and controls
134 lines (127 loc) · 3.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
version: 2.1
parameters:
GHA_Actor:
type: string
default: ""
GHA_Action:
type: string
default: ""
GHA_Event:
type: string
default: ""
GHA_Meta:
type: string
default: ""
# Anchors to prevent forgetting to update a version
os_version: &os_version ubuntu24
baselibs_version: &baselibs_version v9.7.1
bcs_version: &bcs_version v12.0.0
tag_build_arg_name: &tag_build_arg_name gcmversion
orbs:
ci: geos-esm/circleci-tools@6
workflows:
build-test:
jobs:
- ci/build:
name: build-GEOSgcm-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [gfortran, ifort, ifx]
baselibs_version: *baselibs_version
repo: GEOSgcm
persist_workspace: true # Needs to be true to run fv3/gcm experiment, costs extra
# Run AMIP GCM (1 hour, no ExtData)
- ci/run_gcm:
name: run-GCM-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [gfortran, ifort, ifx]
requires:
- build-GEOSgcm-on-<< matrix.compiler >>
repo: GEOSgcm
baselibs_version: *baselibs_version
bcs_version: *bcs_version
# Run Coupled GCM (1 hour, no ExtData)
# NOTE: Both gfortran and ifx seem to have
# issues with the Debug build of MOM6. For
# now, we only test on ifort
- ci/run_gcm:
name: run-coupled-GCM-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
#compiler: [ifort, ifx]
compiler: [ifort]
requires:
- build-GEOSgcm-on-<< matrix.compiler >>
repo: GEOSgcm
baselibs_version: *baselibs_version
bcs_version: *bcs_version
gcm_ocean_type: MOM6
change_layout: false
build-and-publish-docker:
when:
equal: [ "release", << pipeline.parameters.GHA_Event >> ]
jobs:
- ci/publish_docker:
filters:
tags:
only: /^v.*$/
name: publish-ifort-docker-image
context:
- docker-hub-creds
- ghcr-creds
os_version: *os_version
baselibs_version: *baselibs_version
bcs_version: *bcs_version
container_name: geosgcm
mpi_name: intelmpi
mpi_version: "2021.13"
compiler_name: ifort
compiler_version: "2021.13"
image_name: geos-env-bcs
tag_build_arg_name: *tag_build_arg_name
resource_class: xlarge
- ci/publish_docker:
filters:
tags:
only: /^v.*$/
name: publish-ifx-docker-image
context:
- docker-hub-creds
- ghcr-creds
os_version: *os_version
baselibs_version: *baselibs_version
bcs_version: *bcs_version
container_name: geosgcm
mpi_name: intelmpi
mpi_version: "2021.17"
compiler_name: ifx
compiler_version: "2025.3"
image_name: geos-env-bcs
tag_build_arg_name: *tag_build_arg_name
resource_class: xlarge
- ci/publish_docker:
filters:
tags:
only: /^v.*$/
name: publish-gcc-docker-image
context:
- docker-hub-creds
- ghcr-creds
os_version: *os_version
baselibs_version: *baselibs_version
bcs_version: *bcs_version
container_name: geosgcm
mpi_name: openmpi
mpi_version: 5.0.5
compiler_name: gcc
compiler_version: 15.2.0
image_name: geos-env-bcs
tag_build_arg_name: *tag_build_arg_name
resource_class: xlarge