-
Notifications
You must be signed in to change notification settings - Fork 4
/
azure-pipelines.yml
116 lines (112 loc) · 4.3 KB
/
azure-pipelines.yml
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
# Docker
trigger:
- main
pool:
vmImage: "ubuntu-20.04"
variables:
IMAGE_REGISTRY: "code.usgs.gov:5001/ghsc/gmp/earth-structure/cvms/geomodelgrids"
stages:
- stage: basic_build
displayName: "Basic Build"
jobs:
- job: ubuntu_20_04
variables:
BASE_IMAGE: "testenv-ubuntu-20.04"
ENABLE_GDAL: "yes"
steps:
- checkout: self
submodules: "true"
- task: Docker@2
displayName: Build
inputs:
command: "build"
Dockerfile: "docker/geomodelgrids-testenv"
buildContext: $(Build.SourcesDirectory)
arguments: "-t geomodelgrids-testenv --build-arg BASE_IMAGE=$(IMAGE_REGISTRY)/$(BASE_IMAGE) --build-arg ENABLE_GDAL=$(ENABLE_GDAL) --target build"
addPipelineData: false
addBaseImageData: false
- script: docker run geomodelgrids-testenv ci-config/run_tests.sh
displayName: Test
- stage: other_platforms
displayName: "Other Builds"
jobs:
- job: code_coverage
variables:
BASE_IMAGE: "testenv-debian-stable"
TEST_COVERAGE: "yes"
PYTHON_COVERAGE: "coverage3"
ENABLE_GDAL: "yes"
steps:
- checkout: self
submodules: "true"
- task: Docker@2
displayName: Build
inputs:
command: "build"
Dockerfile: "docker/geomodelgrids-testenv"
buildContext: $(Build.SourcesDirectory)
arguments: "-t geomodelgrids-testenv --build-arg BASE_IMAGE=$(IMAGE_REGISTRY)/$(BASE_IMAGE) --build-arg ENABLE_GDAL=$(ENABLE_GDAL) --build-arg TEST_COVERAGE=$(TEST_COVERAGE) --build-arg PYTHON_COVERAGE=$(PYTHON_COVERAGE) --target build"
addPipelineData: false
addBaseImageData: false
- script: ci_env=`bash <(curl -s https://codecov.io/env)`; docker run $ci_env -e CI=true geomodelgrids-testenv ci-config/run_tests.sh
displayName: Test
env:
CODECOV_TOKEN: $(codecovToken)
- job: valgrind
variables:
BASE_IMAGE: "testenv-debian-stable"
ENABLE_GDAL: "yes"
ENABLE_VALGRIND: "yes"
steps:
- checkout: self
submodules: "true"
- task: Docker@2
displayName: Build
inputs:
command: "build"
Dockerfile: "docker/geomodelgrids-testenv"
buildContext: $(Build.SourcesDirectory)
arguments: "-t geomodelgrids-testenv --build-arg BASE_IMAGE=$(IMAGE_REGISTRY)/$(BASE_IMAGE) --build-arg ENABLE_GDAL=$(ENABLE_GDAL) --build-arg ENABLE_VALGRIND=$(ENABLE_VALGRIND) --target build"
addPipelineData: false
addBaseImageData: false
- script: docker run geomodelgrids-testenv ci-config/run_tests.sh
displayName: Test
- job: main
strategy:
matrix:
debian_testing:
BASE_IMAGE: "testenv-debian-testing"
ENABLE_GDAL: "yes"
ubuntu_20.04:
BASE_IMAGE: "testenv-ubuntu-20.04"
ENABLE_GDAL: "yes"
ubuntu_22.04:
BASE_IMAGE: "testenv-ubuntu-22.04"
ENABLE_GDAL: "yes"
ubuntu_23.04:
BASE_IMAGE: "testenv-ubuntu-23.04"
ENABLE_GDAL: "yes"
fedora_37:
BASE_IMAGE: "testenv-fedora-37"
ENABLE_GDAL: "yes"
fedora_38:
BASE_IMAGE: "testenv-fedora-38"
ENABLE_GDAL: "yes"
rockylinux_8:
BASE_IMAGE: "testenv-rockylinux-8"
rockylinux_9:
BASE_IMAGE: "testenv-rockylinux-9"
steps:
- checkout: self
submodules: "true"
- task: Docker@2
displayName: Build
inputs:
command: "build"
Dockerfile: "docker/geomodelgrids-testenv"
buildContext: $(Build.SourcesDirectory)
arguments: "-t geomodelgrids-testenv --build-arg BASE_IMAGE=$(IMAGE_REGISTRY)/$(BASE_IMAGE) --build-arg ENABLE_GDAL=$(ENABLE_GDAL) --target build"
addPipelineData: false
addBaseImageData: false
- script: docker run geomodelgrids-testenv ci-config/run_tests.sh
displayName: Test