@leverege/build-tools 2.14.2 → 2.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/server/overwhelm.js +6 -0
- package/lib/server/repo-init/config.tgz +0 -0
- package/lib/web/overwhelm.js +6 -0
- package/package.json +5 -5
- package/src/dockreate +1 -0
- package/src/helmdn +1 -0
- package/src/helmup +106 -40
- package/src/overwhelm.js +4 -0
package/lib/server/overwhelm.js
CHANGED
|
@@ -342,6 +342,12 @@ glob.sync('**/*.ovh').forEach(cfgmap => {
|
|
|
342
342
|
}); // Set the GCP context for safety!
|
|
343
343
|
|
|
344
344
|
const clusterName = over.CLUSTER_NAME;
|
|
345
|
+
|
|
346
|
+
if (over.PROJECT_NAME === 'minikube') {
|
|
347
|
+
process.exit(0);
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
console.log(over, `XXXXX=>[${clusterName}]`);
|
|
345
351
|
const projectId = over.PROJECT_ID;
|
|
346
352
|
let zone = over['GCE_REGION'] + (over['GCE_ZONE'] ? `-${over['GCE_ZONE']}` : '');
|
|
347
353
|
|
|
Binary file
|
package/lib/web/overwhelm.js
CHANGED
|
@@ -342,6 +342,12 @@ glob.sync('**/*.ovh').forEach(cfgmap => {
|
|
|
342
342
|
}); // Set the GCP context for safety!
|
|
343
343
|
|
|
344
344
|
const clusterName = over.CLUSTER_NAME;
|
|
345
|
+
|
|
346
|
+
if (over.PROJECT_NAME === 'minikube') {
|
|
347
|
+
process.exit(0);
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
console.log(over, `XXXXX=>[${clusterName}]`);
|
|
345
351
|
const projectId = over.PROJECT_ID;
|
|
346
352
|
let zone = over['GCE_REGION'] + (over['GCE_ZONE'] ? `-${over['GCE_ZONE']}` : '');
|
|
347
353
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leverege/build-tools",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.16.0",
|
|
4
4
|
"description": "A collection of build / support tools for Leverege developers",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"repository": {
|
|
@@ -68,14 +68,14 @@
|
|
|
68
68
|
"parse-gitignore": "^1.0.1",
|
|
69
69
|
"readline-sync": "^1.4.10",
|
|
70
70
|
"semver": "^7.3.7",
|
|
71
|
-
"simple-git": "^3.
|
|
71
|
+
"simple-git": "^3.10.0"
|
|
72
72
|
},
|
|
73
73
|
"devDependencies": {
|
|
74
74
|
"@babel/cli": "^7.17.10",
|
|
75
|
-
"@babel/core": "^7.18.
|
|
76
|
-
"@babel/node": "^7.
|
|
75
|
+
"@babel/core": "^7.18.5",
|
|
76
|
+
"@babel/node": "^7.18.5",
|
|
77
77
|
"@leverege/babel-preset-leverege-node": "^2.0.0",
|
|
78
78
|
"@leverege/eslint-config-leverege": "^3.0.1",
|
|
79
|
-
"npm": "^8.
|
|
79
|
+
"npm": "^8.13.1"
|
|
80
80
|
}
|
|
81
81
|
}
|
package/src/dockreate
CHANGED
|
@@ -44,6 +44,7 @@ pluginFile="Dockerfile.plugin"
|
|
|
44
44
|
|
|
45
45
|
# cleanup trapper for gracefully killing, which doesn't do much right now
|
|
46
46
|
cleanup() {
|
|
47
|
+
[ ! -z "$DOCKER_SKIP_CLEANUP" ] && printf "\nSkipping clean up\n\n" && exit 1
|
|
47
48
|
printf "\nCleaning up and exiting...\n\n"
|
|
48
49
|
rm -rf ./workspace $SSHDIR .npmrc
|
|
49
50
|
exit 0
|
package/src/helmdn
CHANGED
package/src/helmup
CHANGED
|
@@ -25,6 +25,7 @@ PLATFORM=(
|
|
|
25
25
|
transponder-bq
|
|
26
26
|
transponder-rt
|
|
27
27
|
transponder-postgres
|
|
28
|
+
transponder-tsdb
|
|
28
29
|
)
|
|
29
30
|
|
|
30
31
|
SYSTEM=(
|
|
@@ -43,7 +44,7 @@ SYSTEM=(
|
|
|
43
44
|
|
|
44
45
|
# support for legacy bitnami charts
|
|
45
46
|
function addBitnamiRepo() {
|
|
46
|
-
if [ ! -z "$BITNAMI_LATEST" ];
|
|
47
|
+
if [ ! -z "$BITNAMI_LATEST" ] || [ "$1" == "latest" ];
|
|
47
48
|
then
|
|
48
49
|
BITNAMI_URL="https://charts.bitnami.com/bitnami"
|
|
49
50
|
else
|
|
@@ -148,8 +149,71 @@ function installPrometheus() {
|
|
|
148
149
|
# removeHelmRepo prometheus-community
|
|
149
150
|
}
|
|
150
151
|
|
|
152
|
+
function installRedis() {
|
|
153
|
+
showInstalling "Redis Network Cache"
|
|
154
|
+
addBitnamiRepo latest
|
|
155
|
+
[ -z "$REDIS_HELM_CHART" ] && REDIS_HELM_CHART="16" # latest breaks us => "v14+"
|
|
156
|
+
helm upgrade --install redis bitnami/redis \
|
|
157
|
+
--version $REDIS_HELM_CHART \
|
|
158
|
+
-f - <<REDIS_CHART_MODS
|
|
159
|
+
auth:
|
|
160
|
+
enabled: false
|
|
161
|
+
|
|
162
|
+
global:
|
|
163
|
+
storageClass: ssd
|
|
164
|
+
|
|
165
|
+
metrics:
|
|
166
|
+
enabled: true
|
|
167
|
+
|
|
168
|
+
networkPolicy:
|
|
169
|
+
enabled: true
|
|
170
|
+
|
|
171
|
+
master:
|
|
172
|
+
persistence:
|
|
173
|
+
size: 8Gi # 8Gi is default
|
|
174
|
+
|
|
175
|
+
tolerations:
|
|
176
|
+
- key: "database"
|
|
177
|
+
operator: "Equal"
|
|
178
|
+
value: "true"
|
|
179
|
+
effect: "NoSchedule"
|
|
180
|
+
|
|
181
|
+
affinity:
|
|
182
|
+
nodeAffinity:
|
|
183
|
+
requiredDuringSchedulingIgnoredDuringExecution:
|
|
184
|
+
nodeSelectorTerms:
|
|
185
|
+
- matchExpressions:
|
|
186
|
+
- key: target-env
|
|
187
|
+
operator: In
|
|
188
|
+
values:
|
|
189
|
+
- database
|
|
190
|
+
|
|
191
|
+
replica:
|
|
192
|
+
persistence:
|
|
193
|
+
size: 8Gi # 8Gi is default
|
|
194
|
+
|
|
195
|
+
tolerations:
|
|
196
|
+
- key: "database"
|
|
197
|
+
operator: "Equal"
|
|
198
|
+
value: "true"
|
|
199
|
+
effect: "NoSchedule"
|
|
200
|
+
|
|
201
|
+
affinity:
|
|
202
|
+
nodeAffinity:
|
|
203
|
+
requiredDuringSchedulingIgnoredDuringExecution:
|
|
204
|
+
nodeSelectorTerms:
|
|
205
|
+
- matchExpressions:
|
|
206
|
+
- key: target-env
|
|
207
|
+
operator: In
|
|
208
|
+
values:
|
|
209
|
+
- database
|
|
210
|
+
REDIS_CHART_MODS
|
|
211
|
+
printf "\n\nTo start a specific version => `color g 'REDIS_HELM_CHART="13.0.1" helmup redis'`\n\n"
|
|
212
|
+
removeHelmRepo bitnami
|
|
213
|
+
}
|
|
214
|
+
|
|
151
215
|
function installMonitoringCharts(){
|
|
152
|
-
showInstalling "
|
|
216
|
+
showInstalling "Monitoring Components"
|
|
153
217
|
createNamespaceIfNeeded monitoring
|
|
154
218
|
|
|
155
219
|
# Add necessary helm repositories - note that stable is deprecated
|
|
@@ -160,8 +224,8 @@ function installMonitoringCharts(){
|
|
|
160
224
|
|
|
161
225
|
IFS='_'
|
|
162
226
|
read -ra ADDR <<< "$currContext"
|
|
163
|
-
|
|
164
227
|
KUBERNETES_ENV=${ADDR[0]} # should be either gke or eks
|
|
228
|
+
GCP_PROJECT_ID=${ADDR[1]} # project id is the second string split by _
|
|
165
229
|
|
|
166
230
|
## Installing stackdriver exporter in GKE
|
|
167
231
|
if [[ "$KUBERNETES_ENV" = "gke" ]];
|
|
@@ -173,28 +237,16 @@ function installMonitoringCharts(){
|
|
|
173
237
|
|
|
174
238
|
The stackdriver-exporter SA already exists which means installing the
|
|
175
239
|
helm chart is going to fail because it wants to manage that aspect of the
|
|
176
|
-
system.
|
|
240
|
+
system. This most likely because the stackdriver exporter is already
|
|
241
|
+
installed and running. Run the following helm command to uninstall first:
|
|
242
|
+
|
|
243
|
+
`color y "overwhelm && helm uninstall -n monitoring stackdriver-exporter"`
|
|
177
244
|
|
|
178
245
|
SA_EXISTS
|
|
179
|
-
|
|
180
|
-
exitOnError 1 "Must remove the SA in order to proceed - `color r DANGER`"
|
|
246
|
+
exitOnError 1 "uninstall the existing deployment in order to proceed"
|
|
181
247
|
fi
|
|
182
248
|
|
|
183
|
-
GCP_PROJECT_ID=${ADDR[1]} # project id is the second string split by _
|
|
184
249
|
SDEXP_SA='stackdriver-exporter'
|
|
185
|
-
helm upgrade --install stackdriver-exporter \
|
|
186
|
-
prometheus-community/prometheus-stackdriver-exporter \
|
|
187
|
-
--namespace monitoring \
|
|
188
|
-
--values stackdriver-exporter/values.yaml \
|
|
189
|
-
--version 1.12.0
|
|
190
|
-
|
|
191
|
-
# Verify the Kubernetes SA
|
|
192
|
-
kubectl get sa -n monitoring $SDEXP_SA
|
|
193
|
-
if [[ $? -eq 1 ]];
|
|
194
|
-
then
|
|
195
|
-
printf "The $SDEXP_SA SA seems to be missing, which is weird - creating it now\n"
|
|
196
|
-
kubectl create sa -n monitoring stackdriver-exporter
|
|
197
|
-
fi
|
|
198
250
|
|
|
199
251
|
# NOTE: The k8s SA != GCP SA - the former is created by the helm chart
|
|
200
252
|
# that installs the stackdriver-exporter, the latter is handled here in
|
|
@@ -203,7 +255,8 @@ SA_EXISTS
|
|
|
203
255
|
# Create GCP SA and bind policies
|
|
204
256
|
printf "\n*** Creating GCP SA with monitoring/viewer ***\n"
|
|
205
257
|
gcloud iam service-accounts create $SDEXP_SA \
|
|
206
|
-
--project "$GCP_PROJECT_ID"
|
|
258
|
+
--project "$GCP_PROJECT_ID" \
|
|
259
|
+
--display-name "Prometheus Stackdriver Exporter"
|
|
207
260
|
warnOnError $? "the GCP SA $SDEXP_SA may already exist"
|
|
208
261
|
|
|
209
262
|
printf "\n*** Binding IAM role of monitoring viewer to stackdriver-exporter in $GCP_PROJECT_ID\n"
|
|
@@ -218,11 +271,26 @@ SA_EXISTS
|
|
|
218
271
|
--member "serviceAccount:$GCP_PROJECT_ID.svc.id.goog[monitoring/$SDEXP_SA]" \
|
|
219
272
|
"$SDEXP_SA@$GCP_PROJECT_ID.iam.gserviceaccount.com"
|
|
220
273
|
|
|
221
|
-
#
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
--namespace monitoring
|
|
274
|
+
# The GCP SA is now up but slight delay before launch helm to let the IAM update occur
|
|
275
|
+
sleep 2
|
|
276
|
+
helm upgrade --install stackdriver-exporter \
|
|
277
|
+
prometheus-community/prometheus-stackdriver-exporter \
|
|
278
|
+
--namespace monitoring \
|
|
279
|
+
--values stackdriver-exporter/values.yaml \
|
|
280
|
+
--version 3
|
|
281
|
+
|
|
282
|
+
# Verify the Kubernetes SA
|
|
283
|
+
kubectl get sa -n monitoring $SDEXP_SA
|
|
284
|
+
if [[ $? -eq 1 ]];
|
|
285
|
+
then
|
|
286
|
+
printf "The $SDEXP_SA SA seems to be missing - did startup fail?\n"
|
|
287
|
+
else
|
|
288
|
+
# Annotate Kubernetes SA
|
|
289
|
+
printf "\n*** Annotating the stackdriver-exporter SA\n"
|
|
290
|
+
kubectl annotate serviceaccount $SDEXP_SA \
|
|
291
|
+
"iam.gke.io/gcp-service-account=$SDEXP_SA@$GCP_PROJECT_ID.iam.gserviceaccount.com" \
|
|
292
|
+
--namespace monitoring
|
|
293
|
+
fi
|
|
226
294
|
fi
|
|
227
295
|
|
|
228
296
|
## Install Prometheus
|
|
@@ -232,14 +300,14 @@ SA_EXISTS
|
|
|
232
300
|
helm upgrade --install elasticsearch-exporter prometheus-community/prometheus-elasticsearch-exporter \
|
|
233
301
|
--namespace monitoring \
|
|
234
302
|
--values elasticsearch-exporter/values-es-exporter.yaml \
|
|
235
|
-
--version 4.
|
|
303
|
+
--version 4.13
|
|
236
304
|
|
|
237
305
|
## Install Grafana
|
|
238
306
|
addHelmRepo grafana https://grafana.github.io/helm-charts
|
|
239
307
|
helm upgrade --install grafana grafana/grafana \
|
|
240
308
|
--namespace monitoring \
|
|
241
309
|
--values grafana/values-grafana.yaml \
|
|
242
|
-
--version 6
|
|
310
|
+
--version 6 # latest v8 grafana
|
|
243
311
|
|
|
244
312
|
## Clean up
|
|
245
313
|
removeHelmRepo prometheus-community
|
|
@@ -321,7 +389,8 @@ function installPreemptibleKiller() {
|
|
|
321
389
|
printf "\nCreating the gcloud $SVC_ACCT service account (SA)\n"
|
|
322
390
|
gcloud iam service-accounts create $SVC_ACCT \
|
|
323
391
|
--project $PROJECT_ID \
|
|
324
|
-
--
|
|
392
|
+
--description "Estafette Node Killer SA" \
|
|
393
|
+
--display-name "Estafette Node Killer SA"
|
|
325
394
|
warnOnError $? "SA creation may have failed or it already exists"
|
|
326
395
|
|
|
327
396
|
printf "\nCreate the $SVC_ACCT IAM role\n"
|
|
@@ -456,7 +525,7 @@ NEED_MANAGED_SECRET
|
|
|
456
525
|
addHelmRepo jetstack https://charts.jetstack.io
|
|
457
526
|
helm upgrade --install cert-manager jetstack/cert-manager \
|
|
458
527
|
--namespace cert-manager --set installCRDs=true \
|
|
459
|
-
--version v1.
|
|
528
|
+
--version v1.8
|
|
460
529
|
|
|
461
530
|
cat<<DELAY
|
|
462
531
|
|
|
@@ -531,10 +600,12 @@ TRAEFIK_CFG
|
|
|
531
600
|
|
|
532
601
|
addHelmRepo traefik https://helm.traefik.io/traefik
|
|
533
602
|
|
|
603
|
+
[ -z "$TRAEFIK_HELM_CHART" ] && TRAEFIK_HELM_CHART="10"
|
|
534
604
|
helm upgrade --install traefik traefik/traefik \
|
|
535
605
|
--namespace traefik \
|
|
536
|
-
--
|
|
537
|
-
|
|
606
|
+
--version $TRAEFIK_HELM_CHART \
|
|
607
|
+
--values $TRAEFIK_HA_YAML
|
|
608
|
+
|
|
538
609
|
removeHelmRepo traefik
|
|
539
610
|
}
|
|
540
611
|
|
|
@@ -644,6 +715,7 @@ function installVelero() {
|
|
|
644
715
|
## Helpful debugging link => https://github.com/vmware-tanzu/helm-charts/issues/351
|
|
645
716
|
addHelmRepo vmware-tanzu https://vmware-tanzu.github.io/helm-charts
|
|
646
717
|
helm upgrade --install velero vmware-tanzu/velero \
|
|
718
|
+
--version 2.29 \
|
|
647
719
|
--namespace velero \
|
|
648
720
|
--set credentials.useSecret="false" \
|
|
649
721
|
--set configuration.provider="gcp" \
|
|
@@ -798,6 +870,7 @@ function doInstall() {
|
|
|
798
870
|
checkSSDStorageClass
|
|
799
871
|
addHelmRepo elastic https://helm.elastic.co
|
|
800
872
|
helm upgrade --install elasticsearch elastic/elasticsearch \
|
|
873
|
+
--version 7 \
|
|
801
874
|
--values $LOCAL_ES_VALUES \
|
|
802
875
|
--set volumeClaimTemplate.storageClassName="ssd"
|
|
803
876
|
removeHelmRepo elastic
|
|
@@ -828,14 +901,7 @@ function doInstall() {
|
|
|
828
901
|
;;
|
|
829
902
|
|
|
830
903
|
"redis")
|
|
831
|
-
|
|
832
|
-
addBitnamiRepo
|
|
833
|
-
[ -z "$REDIS_HELM_CHART" ] && REDIS_HELM_CHART="13.0.1" # latest breaks us => "v14+"
|
|
834
|
-
helm upgrade --install redis bitnami/redis \
|
|
835
|
-
-f redis/redis-values.yaml \
|
|
836
|
-
--version $REDIS_HELM_CHART
|
|
837
|
-
printf "\n\nTo start a specific version => `color g 'REDIS_HELM_CHART="13.0.1" helmup redis'`\n\n"
|
|
838
|
-
removeHelmRepo bitnami
|
|
904
|
+
installRedis
|
|
839
905
|
;;
|
|
840
906
|
|
|
841
907
|
"reloader")
|
package/src/overwhelm.js
CHANGED
|
@@ -286,6 +286,10 @@ glob.sync( '**/*.ovh' ).forEach( ( cfgmap ) => {
|
|
|
286
286
|
|
|
287
287
|
// Set the GCP context for safety!
|
|
288
288
|
const clusterName = over.CLUSTER_NAME
|
|
289
|
+
if ( over.PROJECT_NAME === 'minikube' ) {
|
|
290
|
+
process.exit(0)
|
|
291
|
+
}
|
|
292
|
+
console.log( over, `XXXXX=>[${clusterName}]` )
|
|
289
293
|
const projectId = over.PROJECT_ID
|
|
290
294
|
let zone = over['GCE_REGION'] + ( over['GCE_ZONE'] ? `-${over['GCE_ZONE']}` : '' )
|
|
291
295
|
|