Newer
Older
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
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# This file is included as part of the main repository .gitlab-ci.yml file
# NOTE: Since this is running from the root of the repository all referenced
# files must be relative to the root directory.
# Most jobs in this file are only meant to be run from the master branch
# geosphere-test currently uses GRB and geotiffs created from the main
# geosphere site.
# Prerequisites:
# Create TLS certificate secret:
# kubectl create -n geosphere-test secret tls geosphere-tls-certs --cert=geosphere_ssec_wisc_edu.crt --key=geosphere_ssec_wisc_edu.key
gstest create shapefile storage:
extends: .helm_based_job
stage: create storage
script:
- ns=$(./helpers/get_namespace.sh)
# copy secret kubeconfig to the mounted (pwd) directory
- cp $kubekorner_k3s_config .
- kubeconfig=$(basename $kubekorner_k3s_config)
- ./helpers/create_pvc.sh "$ns" "ci_geosphere-test/shapefiles-pvc.yaml" "geosphere-tile-gen-shapefiles" "$kubeconfig"
# this job doesn't actually need any artifacts from previous jobs
dependencies: []
rules:
- if: "$CI_COMMIT_BRANCH == master"
- changes:
- ci_geosphere-test/shapefiles-pvc.yaml
- if: $CREATE_STORAGE
gstest deploy rabbit:
environment:
name: geosphere-test
url: http://geosphere-test.ssec.wisc.edu
extends: .helm_based_job
stage: deploy rabbit
script:
- ./deploy_rabbitmq.sh ci_geosphere-test
- cp $kubekorner_k3s_config .
- kubeconfig=$(basename $kubekorner_k3s_config)
- |-
kubectl get secret geosphere-rabbit-rabbitmq --namespace=geosphere -oyaml | grep -v '^\s*namespace:\s' | grep -v "helm" | sed 's/ name: .*/ name: geosphere-rabbit-rabbitmq-production/' | kubectl apply --namespace=geosphere-test -f -
# this job doesn't actually need any artifacts from previous jobs
dependencies: []
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
# no need to build if another project triggered us
- if: $CI_PIPELINE_SOURCE == "pipeline"
when: never
- changes:
- ci_geosphere-test/values-geosphere-rabbit.yaml
- if: $DEPLOY_RABBIT
gstest deploy tile gen g16 radf:
extends: .deploy_tile_gen
variables:
VALUES_DIR: "ci_geosphere-test"
DEPLOY_SUFFIX: "-g16-radf"
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success
gstest deploy tile gen g16 radc:
extends: .deploy_tile_gen
variables:
VALUES_DIR: "ci_geosphere-test"
DEPLOY_SUFFIX: "-g16-radc"
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success
gstest deploy tile gen g16 radm1:
extends: .deploy_tile_gen
variables:
VALUES_DIR: "ci_geosphere-test"
DEPLOY_SUFFIX: "-g16-radm1"
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success
gstest deploy tile gen g16 radm2:
extends: .deploy_tile_gen
variables:
VALUES_DIR: "ci_geosphere-test"
DEPLOY_SUFFIX: "-g16-radm2"
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success
gstest deploy mapserver:
environment:
name: geosphere-test
url: http://geosphere-test.ssec.wisc.edu
variables:
VALUES_DIR: "ci_geosphere-test"
extends: .deploy_mapserver
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success
gstest deploy mapcache:
environment:
name: geosphere-test
url: http://geosphere-test.ssec.wisc.edu
variables:
VALUES_DIR: "ci_geosphere-test"
extends: .deploy_mapcache
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success
gstest deploy client:
environment:
name: geosphere-test
url: http://geosphere-test.ssec.wisc.edu
extends: .helm_based_job
stage: deploy Client
script:
- ns="geosphere-test"
- cd geosphere-client/chart
- source geosphere-client/cibuild.env
# copy secret kubeconfig to the mounted (pwd) directory
- cp $kubekorner_k3s_config .
- kubeconfig=$(basename $kubekorner_k3s_config)
- echo "Deploying version $docker_tag to cluster namespace $ns"
# copy extra values files to the local directory (where helm has access via docker mount)
- cp ../../ci_geosphere-test/values-client.yaml .
# namespace names are the same as domain names
- helm upgrade -v 2 --install --kubeconfig $kubeconfig --namespace $ns -f values-client.yaml geosphere-client geosphere-client/
dependencies:
- get_chart_client_test
rules:
- if: "$CI_COMMIT_BRANCH == master"
- if: '$kubekorner_k3s_config == ""'
when: never
- when: on_success