@leverege/build-tools 1.12.16 → 1.13.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/helmup +8 -67
- package/lib/web/dnsify/index.js +3 -1
- package/lib/web/packleate/Packleator.js +3 -1
- package/lib/web/packleate/index.js +3 -1
- package/lib/web/pkglint/index.js +2 -0
- package/package.json +2 -2
- package/src/helmup +8 -67
package/lib/server/helmup
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
2
|
#
|
|
3
3
|
# This script is used to ease the pain of transition testing to chart museum
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
# Removing db-curator from the list of platform components for now. It needs
|
|
7
|
-
# to be turned into a cronjob to avoid having it run as soon as it gets
|
|
8
|
-
# deployed.
|
|
4
|
+
# for adding / updating deployments on a fluster.
|
|
9
5
|
#
|
|
10
6
|
# printf "\nRUNNING LOCALLY\n" && sleep 2
|
|
11
7
|
PLATFORM=(
|
|
@@ -55,34 +51,6 @@ function setOrUnset() {
|
|
|
55
51
|
echo "$setting"
|
|
56
52
|
}
|
|
57
53
|
|
|
58
|
-
# Installing keel is a little more involved since we need to feed it svc acct
|
|
59
|
-
# keys and a slack bot token.
|
|
60
|
-
function keelNeeds() {
|
|
61
|
-
cat<<KEELNEEDS
|
|
62
|
-
|
|
63
|
-
$RED_ERROR $1
|
|
64
|
-
|
|
65
|
-
In order to get its job done keel needs the service account JSON file for the
|
|
66
|
-
project containing the docker images that it is reponsible for. It also needs
|
|
67
|
-
a token for the slack bot in order to interact with slack.
|
|
68
|
-
|
|
69
|
-
`color g LEV_KEYS`
|
|
70
|
-
points to the top level directory containing the keys and secrets
|
|
71
|
-
to the k8s clusters
|
|
72
|
-
`color g \$LEV_KEYS/docker-image-svc-acct`
|
|
73
|
-
directory containing the service account JSON files
|
|
74
|
-
`color g "\$LEV_KEYS/<branch-name>/slack-bot-token"`
|
|
75
|
-
location of the slack bot token text file
|
|
76
|
-
|
|
77
|
-
Current settings:
|
|
78
|
-
LEV_KEYS => `setOrUnset $LEV_KEYS`
|
|
79
|
-
|
|
80
|
-
Missing variables should be set using the standard bash syntax:
|
|
81
|
-
`color y export\ VARNAME=\"\<YOUR_SETTING\>\"`
|
|
82
|
-
|
|
83
|
-
KEELNEEDS
|
|
84
|
-
exit 1
|
|
85
|
-
}
|
|
86
54
|
|
|
87
55
|
function createSSDYAML(){
|
|
88
56
|
cat<<EOSSD > ${K8S_UTILS}/ssd-storageclass.yaml
|
|
@@ -192,35 +160,6 @@ function installVelero() {
|
|
|
192
160
|
printf "\n$YELO_WARN NO REALLY...MOVE credentials-velero file NOW"
|
|
193
161
|
}
|
|
194
162
|
|
|
195
|
-
function installKeel() {
|
|
196
|
-
[ ! -d "$LEV_KEYS" ] &&
|
|
197
|
-
keelNeeds "`color c \\$LEV_KEYS` must point to the keys directory for the clusters."
|
|
198
|
-
|
|
199
|
-
# TODO make the docker image project configurable and not just lev
|
|
200
|
-
SVC_ACCT="$LEV_KEYS/docker-image-svc-acct/leverege-docker-images.json"
|
|
201
|
-
[ ! -f "$SVC_ACCT" ] &&
|
|
202
|
-
keelNeeds "Missing service account info => `color c $SVC_ACCT`"
|
|
203
|
-
|
|
204
|
-
BRANCH=`git rev-parse --abbrev-ref HEAD`
|
|
205
|
-
SLACK_BOT_NAME="`overwhelm -k SLACK_BOT_NAME`"
|
|
206
|
-
[[ -z "$SLACK_BOT_NAME" || "$SLACK_BOT_NAME" == "undefined" ]] && SLACK_BOT_NAME=$BRANCH
|
|
207
|
-
SLACK_TOKEN="$LEV_KEYS/$BRANCH/slack-bot-token"
|
|
208
|
-
[ ! -f "$SLACK_TOKEN" ] &&
|
|
209
|
-
keelNeeds "Missing slack bot token => `color c $SLACK_TOKEN`"
|
|
210
|
-
|
|
211
|
-
helm repo add keel https://charts.keel.sh; helm repo update
|
|
212
|
-
helm upgrade --install keel keel/keel \
|
|
213
|
-
--set gcr.enabled="true" \
|
|
214
|
-
--set gcr.projectId="leverege-docker-images" \
|
|
215
|
-
--set gcr.pubSub.enabled="true" \
|
|
216
|
-
--set slack.enabled="true" \
|
|
217
|
-
--set slack.channel="devs-cicd" \
|
|
218
|
-
--set slack.approvalsChannel="cd-approvals" \
|
|
219
|
-
--set slack.botName="$SLACK_BOT_NAME" \
|
|
220
|
-
--set slack.token="$(cat $SLACK_TOKEN)" \
|
|
221
|
-
--set googleApplicationCredentials="$(cat $SVC_ACCT | base64 -w 0)"
|
|
222
|
-
}
|
|
223
|
-
|
|
224
163
|
# ---------- helmup MAIN ----------
|
|
225
164
|
command -v chartmuseum &> /dev/null
|
|
226
165
|
if [ $? -ne 0 ];
|
|
@@ -284,7 +223,6 @@ function doInstall() {
|
|
|
284
223
|
case "$SERVICE" in
|
|
285
224
|
"platform")
|
|
286
225
|
doInstall "${PLATFORM[@]}"
|
|
287
|
-
printf "\nkeel may be installed by running => helmup keel\n\n"
|
|
288
226
|
;;
|
|
289
227
|
|
|
290
228
|
"system")
|
|
@@ -312,10 +250,6 @@ function doInstall() {
|
|
|
312
250
|
helm upgrade --install elasticsearch elastic/elasticsearch --set volumeClaimTemplate.storageClassName="ssd"
|
|
313
251
|
;;
|
|
314
252
|
|
|
315
|
-
"keel")
|
|
316
|
-
installKeel # because it's a little more involved
|
|
317
|
-
;;
|
|
318
|
-
|
|
319
253
|
"monitoring")
|
|
320
254
|
helm dep up ./monitoring && helm upgrade --install monitoring ./monitoring
|
|
321
255
|
;;
|
|
@@ -366,6 +300,13 @@ function doInstall() {
|
|
|
366
300
|
continue
|
|
367
301
|
fi
|
|
368
302
|
|
|
303
|
+
if [ -f $SERVICE/DEPRECATED ];
|
|
304
|
+
then
|
|
305
|
+
printf "\n$YELO_WARN Skipping DEPRECATED service => $SERVICE\n\n"
|
|
306
|
+
sleep 2 # sleep on it to make sure people see the deprecation
|
|
307
|
+
continue
|
|
308
|
+
fi
|
|
309
|
+
|
|
369
310
|
printf "\n--------------------------------------------------------------\nCharting $SERVICE\n"
|
|
370
311
|
# By default the museum chart name will be the same as the service, but
|
|
371
312
|
# we have the flexibility to override the naming when the charts are
|
package/lib/web/dnsify/index.js
CHANGED
|
@@ -5,6 +5,8 @@ require("core-js/modules/es.symbol");
|
|
|
5
5
|
|
|
6
6
|
require("core-js/modules/es.array.filter");
|
|
7
7
|
|
|
8
|
+
require("core-js/modules/es.array.for-each");
|
|
9
|
+
|
|
8
10
|
require("core-js/modules/es.object.get-own-property-descriptor");
|
|
9
11
|
|
|
10
12
|
require("core-js/modules/es.object.get-own-property-descriptors");
|
|
@@ -21,7 +23,7 @@ require("regenerator-runtime/runtime");
|
|
|
21
23
|
|
|
22
24
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
23
25
|
|
|
24
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
26
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
25
27
|
|
|
26
28
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
27
29
|
|
|
@@ -6,6 +6,8 @@ require("core-js/modules/es.array.concat");
|
|
|
6
6
|
|
|
7
7
|
require("core-js/modules/es.array.filter");
|
|
8
8
|
|
|
9
|
+
require("core-js/modules/es.array.for-each");
|
|
10
|
+
|
|
9
11
|
require("core-js/modules/es.array.index-of");
|
|
10
12
|
|
|
11
13
|
require("core-js/modules/es.array.iterator");
|
|
@@ -46,7 +48,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
|
|
|
46
48
|
|
|
47
49
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
48
50
|
|
|
49
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
51
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
50
52
|
|
|
51
53
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
52
54
|
|
|
@@ -5,6 +5,8 @@ require("core-js/modules/es.symbol");
|
|
|
5
5
|
|
|
6
6
|
require("core-js/modules/es.array.filter");
|
|
7
7
|
|
|
8
|
+
require("core-js/modules/es.array.for-each");
|
|
9
|
+
|
|
8
10
|
require("core-js/modules/es.object.get-own-property-descriptor");
|
|
9
11
|
|
|
10
12
|
require("core-js/modules/es.object.get-own-property-descriptors");
|
|
@@ -21,7 +23,7 @@ require("regenerator-runtime/runtime");
|
|
|
21
23
|
|
|
22
24
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
23
25
|
|
|
24
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
26
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
25
27
|
|
|
26
28
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
27
29
|
|
package/lib/web/pkglint/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@leverege/build-tools",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.13.0",
|
|
4
4
|
"description": "A package for development build tools.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -62,4 +62,4 @@
|
|
|
62
62
|
"@leverege/eslint-config-leverege": "^2.0.1",
|
|
63
63
|
"core-js": "^3.4.7"
|
|
64
64
|
}
|
|
65
|
-
}
|
|
65
|
+
}
|
package/src/helmup
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
2
|
#
|
|
3
3
|
# This script is used to ease the pain of transition testing to chart museum
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
# Removing db-curator from the list of platform components for now. It needs
|
|
7
|
-
# to be turned into a cronjob to avoid having it run as soon as it gets
|
|
8
|
-
# deployed.
|
|
4
|
+
# for adding / updating deployments on a fluster.
|
|
9
5
|
#
|
|
10
6
|
# printf "\nRUNNING LOCALLY\n" && sleep 2
|
|
11
7
|
PLATFORM=(
|
|
@@ -55,34 +51,6 @@ function setOrUnset() {
|
|
|
55
51
|
echo "$setting"
|
|
56
52
|
}
|
|
57
53
|
|
|
58
|
-
# Installing keel is a little more involved since we need to feed it svc acct
|
|
59
|
-
# keys and a slack bot token.
|
|
60
|
-
function keelNeeds() {
|
|
61
|
-
cat<<KEELNEEDS
|
|
62
|
-
|
|
63
|
-
$RED_ERROR $1
|
|
64
|
-
|
|
65
|
-
In order to get its job done keel needs the service account JSON file for the
|
|
66
|
-
project containing the docker images that it is reponsible for. It also needs
|
|
67
|
-
a token for the slack bot in order to interact with slack.
|
|
68
|
-
|
|
69
|
-
`color g LEV_KEYS`
|
|
70
|
-
points to the top level directory containing the keys and secrets
|
|
71
|
-
to the k8s clusters
|
|
72
|
-
`color g \$LEV_KEYS/docker-image-svc-acct`
|
|
73
|
-
directory containing the service account JSON files
|
|
74
|
-
`color g "\$LEV_KEYS/<branch-name>/slack-bot-token"`
|
|
75
|
-
location of the slack bot token text file
|
|
76
|
-
|
|
77
|
-
Current settings:
|
|
78
|
-
LEV_KEYS => `setOrUnset $LEV_KEYS`
|
|
79
|
-
|
|
80
|
-
Missing variables should be set using the standard bash syntax:
|
|
81
|
-
`color y export\ VARNAME=\"\<YOUR_SETTING\>\"`
|
|
82
|
-
|
|
83
|
-
KEELNEEDS
|
|
84
|
-
exit 1
|
|
85
|
-
}
|
|
86
54
|
|
|
87
55
|
function createSSDYAML(){
|
|
88
56
|
cat<<EOSSD > ${K8S_UTILS}/ssd-storageclass.yaml
|
|
@@ -192,35 +160,6 @@ function installVelero() {
|
|
|
192
160
|
printf "\n$YELO_WARN NO REALLY...MOVE credentials-velero file NOW"
|
|
193
161
|
}
|
|
194
162
|
|
|
195
|
-
function installKeel() {
|
|
196
|
-
[ ! -d "$LEV_KEYS" ] &&
|
|
197
|
-
keelNeeds "`color c \\$LEV_KEYS` must point to the keys directory for the clusters."
|
|
198
|
-
|
|
199
|
-
# TODO make the docker image project configurable and not just lev
|
|
200
|
-
SVC_ACCT="$LEV_KEYS/docker-image-svc-acct/leverege-docker-images.json"
|
|
201
|
-
[ ! -f "$SVC_ACCT" ] &&
|
|
202
|
-
keelNeeds "Missing service account info => `color c $SVC_ACCT`"
|
|
203
|
-
|
|
204
|
-
BRANCH=`git rev-parse --abbrev-ref HEAD`
|
|
205
|
-
SLACK_BOT_NAME="`overwhelm -k SLACK_BOT_NAME`"
|
|
206
|
-
[[ -z "$SLACK_BOT_NAME" || "$SLACK_BOT_NAME" == "undefined" ]] && SLACK_BOT_NAME=$BRANCH
|
|
207
|
-
SLACK_TOKEN="$LEV_KEYS/$BRANCH/slack-bot-token"
|
|
208
|
-
[ ! -f "$SLACK_TOKEN" ] &&
|
|
209
|
-
keelNeeds "Missing slack bot token => `color c $SLACK_TOKEN`"
|
|
210
|
-
|
|
211
|
-
helm repo add keel https://charts.keel.sh; helm repo update
|
|
212
|
-
helm upgrade --install keel keel/keel \
|
|
213
|
-
--set gcr.enabled="true" \
|
|
214
|
-
--set gcr.projectId="leverege-docker-images" \
|
|
215
|
-
--set gcr.pubSub.enabled="true" \
|
|
216
|
-
--set slack.enabled="true" \
|
|
217
|
-
--set slack.channel="devs-cicd" \
|
|
218
|
-
--set slack.approvalsChannel="cd-approvals" \
|
|
219
|
-
--set slack.botName="$SLACK_BOT_NAME" \
|
|
220
|
-
--set slack.token="$(cat $SLACK_TOKEN)" \
|
|
221
|
-
--set googleApplicationCredentials="$(cat $SVC_ACCT | base64 -w 0)"
|
|
222
|
-
}
|
|
223
|
-
|
|
224
163
|
# ---------- helmup MAIN ----------
|
|
225
164
|
command -v chartmuseum &> /dev/null
|
|
226
165
|
if [ $? -ne 0 ];
|
|
@@ -284,7 +223,6 @@ function doInstall() {
|
|
|
284
223
|
case "$SERVICE" in
|
|
285
224
|
"platform")
|
|
286
225
|
doInstall "${PLATFORM[@]}"
|
|
287
|
-
printf "\nkeel may be installed by running => helmup keel\n\n"
|
|
288
226
|
;;
|
|
289
227
|
|
|
290
228
|
"system")
|
|
@@ -312,10 +250,6 @@ function doInstall() {
|
|
|
312
250
|
helm upgrade --install elasticsearch elastic/elasticsearch --set volumeClaimTemplate.storageClassName="ssd"
|
|
313
251
|
;;
|
|
314
252
|
|
|
315
|
-
"keel")
|
|
316
|
-
installKeel # because it's a little more involved
|
|
317
|
-
;;
|
|
318
|
-
|
|
319
253
|
"monitoring")
|
|
320
254
|
helm dep up ./monitoring && helm upgrade --install monitoring ./monitoring
|
|
321
255
|
;;
|
|
@@ -366,6 +300,13 @@ function doInstall() {
|
|
|
366
300
|
continue
|
|
367
301
|
fi
|
|
368
302
|
|
|
303
|
+
if [ -f $SERVICE/DEPRECATED ];
|
|
304
|
+
then
|
|
305
|
+
printf "\n$YELO_WARN Skipping DEPRECATED service => $SERVICE\n\n"
|
|
306
|
+
sleep 2 # sleep on it to make sure people see the deprecation
|
|
307
|
+
continue
|
|
308
|
+
fi
|
|
309
|
+
|
|
369
310
|
printf "\n--------------------------------------------------------------\nCharting $SERVICE\n"
|
|
370
311
|
# By default the museum chart name will be the same as the service, but
|
|
371
312
|
# we have the flexibility to override the naming when the charts are
|