@leverege/build-tools 2.1.9 → 2.2.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.
@@ -6,8 +6,12 @@ require("core-js/modules/es.symbol.description");
6
6
 
7
7
  require("core-js/modules/es.symbol.iterator");
8
8
 
9
+ require("core-js/modules/es.array.from");
10
+
9
11
  require("core-js/modules/es.array.iterator");
10
12
 
13
+ require("core-js/modules/es.array.slice");
14
+
11
15
  require("core-js/modules/es.object.to-string");
12
16
 
13
17
  require("core-js/modules/es.promise");
@@ -20,11 +24,15 @@ require("core-js/modules/web.dom-collections.iterator");
20
24
 
21
25
  require("regenerator-runtime/runtime");
22
26
 
23
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
27
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
28
+
29
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
30
+
31
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
24
32
 
25
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
33
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
26
34
 
27
- function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
35
+ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
28
36
 
29
37
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
30
38
 
@@ -47,9 +55,7 @@ var path = require('path');
47
55
  var _require = require('util'),
48
56
  promisify = _require.promisify;
49
57
 
50
- var CloudflareAPI =
51
- /*#__PURE__*/
52
- function () {
58
+ var CloudflareAPI = /*#__PURE__*/function () {
53
59
  function CloudflareAPI(options) {
54
60
  _classCallCheck(this, CloudflareAPI);
55
61
 
@@ -71,9 +77,7 @@ function () {
71
77
  _createClass(CloudflareAPI, [{
72
78
  key: "decrypt",
73
79
  value: function () {
74
- var _decrypt = _asyncToGenerator(
75
- /*#__PURE__*/
76
- regeneratorRuntime.mark(function _callee() {
80
+ var _decrypt = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
77
81
  var projectId,
78
82
  keyRingId,
79
83
  cryptoKeyId,
@@ -86,8 +90,8 @@ function () {
86
90
  contentsBuffer,
87
91
  name,
88
92
  ciphertext,
89
- _ref,
90
- _ref2,
93
+ _yield$client$decrypt,
94
+ _yield$client$decrypt2,
91
95
  result,
92
96
  writeFile,
93
97
  _args = arguments;
@@ -123,9 +127,9 @@ function () {
123
127
  });
124
128
 
125
129
  case 16:
126
- _ref = _context.sent;
127
- _ref2 = _slicedToArray(_ref, 1);
128
- result = _ref2[0];
130
+ _yield$client$decrypt = _context.sent;
131
+ _yield$client$decrypt2 = _slicedToArray(_yield$client$decrypt, 1);
132
+ result = _yield$client$decrypt2[0];
129
133
  // Writes the decrypted file to disk
130
134
  writeFile = promisify(fs.writeFile);
131
135
  _context.next = 22;
@@ -163,9 +167,7 @@ function () {
163
167
  }, {
164
168
  key: "deleteSecrets",
165
169
  value: function () {
166
- var _deleteSecrets = _asyncToGenerator(
167
- /*#__PURE__*/
168
- regeneratorRuntime.mark(function _callee2() {
170
+ var _deleteSecrets = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
169
171
  var deleteFile;
170
172
  return regeneratorRuntime.wrap(function _callee2$(_context2) {
171
173
  while (1) {
@@ -192,9 +194,7 @@ function () {
192
194
  }, {
193
195
  key: "createDNSRecord",
194
196
  value: function () {
195
- var _createDNSRecord = _asyncToGenerator(
196
- /*#__PURE__*/
197
- regeneratorRuntime.mark(function _callee3() {
197
+ var _createDNSRecord = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
198
198
  return regeneratorRuntime.wrap(function _callee3$(_context3) {
199
199
  while (1) {
200
200
  switch (_context3.prev = _context3.next) {
@@ -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
 
@@ -95,9 +97,7 @@ function main() {
95
97
  }
96
98
 
97
99
  function _main() {
98
- _main = _asyncToGenerator(
99
- /*#__PURE__*/
100
- regeneratorRuntime.mark(function _callee() {
100
+ _main = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
101
101
  var CF;
102
102
  return regeneratorRuntime.wrap(function _callee$(_context) {
103
103
  while (1) {
@@ -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
 
@@ -72,9 +74,7 @@ var tar = require('tar');
72
74
 
73
75
  var semver = require('semver');
74
76
 
75
- var Packleator =
76
- /*#__PURE__*/
77
- function () {
77
+ var Packleator = /*#__PURE__*/function () {
78
78
  function Packleator(options) {
79
79
  _classCallCheck(this, Packleator);
80
80
 
@@ -97,9 +97,7 @@ function () {
97
97
  _createClass(Packleator, [{
98
98
  key: "run",
99
99
  value: function () {
100
- var _run = _asyncToGenerator(
101
- /*#__PURE__*/
102
- regeneratorRuntime.mark(function _callee2() {
100
+ var _run = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
103
101
  var _this = this;
104
102
 
105
103
  var deps;
@@ -149,12 +147,8 @@ function () {
149
147
  callback();
150
148
  });
151
149
  });
152
- },
153
- /*#__PURE__*/
154
- function () {
155
- var _ref = _asyncToGenerator(
156
- /*#__PURE__*/
157
- regeneratorRuntime.mark(function _callee(err) {
150
+ }, /*#__PURE__*/function () {
151
+ var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(err) {
158
152
  var _this$outputPackageJs, name, version, fileName;
159
153
 
160
154
  return regeneratorRuntime.wrap(function _callee$(_context) {
@@ -239,9 +233,7 @@ function () {
239
233
  }, {
240
234
  key: "rebuildPackageJson",
241
235
  value: function () {
242
- var _rebuildPackageJson = _asyncToGenerator(
243
- /*#__PURE__*/
244
- regeneratorRuntime.mark(function _callee3() {
236
+ var _rebuildPackageJson = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
245
237
  var _this2 = this;
246
238
 
247
239
  var packageJson, tarredPackages, _packageJson$dependen, dependencies, _packageJson$devDepen, devDependencies;
@@ -288,9 +280,7 @@ function () {
288
280
  }, {
289
281
  key: "rebuildPackageLockJson",
290
282
  value: function () {
291
- var _rebuildPackageLockJson = _asyncToGenerator(
292
- /*#__PURE__*/
293
- regeneratorRuntime.mark(function _callee4() {
283
+ var _rebuildPackageLockJson = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {
294
284
  var packageLockJson, tarredPackages, recurseDeps;
295
285
  return regeneratorRuntime.wrap(function _callee4$(_context4) {
296
286
  while (1) {
@@ -339,9 +329,7 @@ function () {
339
329
  }, {
340
330
  key: "copyFiles",
341
331
  value: function () {
342
- var _copyFiles = _asyncToGenerator(
343
- /*#__PURE__*/
344
- regeneratorRuntime.mark(function _callee5() {
332
+ var _copyFiles = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5() {
345
333
  var _this3 = this;
346
334
 
347
335
  var startsWith, endsWith;
@@ -401,9 +389,7 @@ function () {
401
389
  }, {
402
390
  key: "pack",
403
391
  value: function () {
404
- var _pack = _asyncToGenerator(
405
- /*#__PURE__*/
406
- regeneratorRuntime.mark(function _callee6(name, version, dir) {
392
+ var _pack = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee6(name, version, dir) {
407
393
  var fileName;
408
394
  return regeneratorRuntime.wrap(function _callee6$(_context6) {
409
395
  while (1) {
@@ -454,9 +440,7 @@ function () {
454
440
  }, {
455
441
  key: "cleanup",
456
442
  value: function () {
457
- var _cleanup = _asyncToGenerator(
458
- /*#__PURE__*/
459
- regeneratorRuntime.mark(function _callee7() {
443
+ var _cleanup = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee7() {
460
444
  return regeneratorRuntime.wrap(function _callee7$(_context7) {
461
445
  while (1) {
462
446
  switch (_context7.prev = _context7.next) {
@@ -488,9 +472,7 @@ function () {
488
472
  }, {
489
473
  key: "npmInstall",
490
474
  value: function () {
491
- var _npmInstall = _asyncToGenerator(
492
- /*#__PURE__*/
493
- regeneratorRuntime.mark(function _callee8() {
475
+ var _npmInstall = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee8() {
494
476
  var _this4 = this;
495
477
 
496
478
  var dir,
@@ -544,9 +526,7 @@ function () {
544
526
  }, {
545
527
  key: "getPrivateDeps",
546
528
  value: function () {
547
- var _getPrivateDeps = _asyncToGenerator(
548
- /*#__PURE__*/
549
- regeneratorRuntime.mark(function _callee9(depth) {
529
+ var _getPrivateDeps = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee9(depth) {
550
530
  var _this5 = this;
551
531
 
552
532
  return regeneratorRuntime.wrap(function _callee9$(_context9) {
@@ -591,9 +571,7 @@ function () {
591
571
  }, {
592
572
  key: "getPackageJson",
593
573
  value: function () {
594
- var _getPackageJson = _asyncToGenerator(
595
- /*#__PURE__*/
596
- regeneratorRuntime.mark(function _callee10() {
574
+ var _getPackageJson = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee10() {
597
575
  var dir,
598
576
  lock,
599
577
  lockModifier,
@@ -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
 
@@ -107,9 +109,7 @@ function main() {
107
109
  }
108
110
 
109
111
  function _main() {
110
- _main = _asyncToGenerator(
111
- /*#__PURE__*/
112
- regeneratorRuntime.mark(function _callee() {
112
+ _main = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
113
113
  var packleator;
114
114
  return regeneratorRuntime.wrap(function _callee$(_context) {
115
115
  while (1) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leverege/build-tools",
3
- "version": "2.1.9",
3
+ "version": "2.2.0",
4
4
  "description": "A collection of build / support tools for Leverege developers",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -52,17 +52,17 @@
52
52
  "parse-gitignore": "^1.0.1",
53
53
  "readline-sync": "^1.4.10",
54
54
  "recursive-copy": "^2.0.10",
55
- "regenerator-runtime": "^0.13.3",
55
+ "regenerator-runtime": "^0.13.5",
56
56
  "semver": "^6.3.0",
57
57
  "tar": "^5.0.5"
58
58
  },
59
59
  "devDependencies": {
60
60
  "@babel/cli": "^7.8.4",
61
- "@babel/core": "^7.8.7",
61
+ "@babel/core": "^7.9.0",
62
62
  "@babel/plugin-proposal-class-properties": "^7.8.3",
63
- "@babel/plugin-proposal-optional-chaining": "^7.8.3",
64
- "@babel/preset-env": "^7.8.7",
65
- "@babel/register": "^7.8.6",
63
+ "@babel/plugin-proposal-optional-chaining": "^7.9.0",
64
+ "@babel/preset-env": "^7.9.0",
65
+ "@babel/register": "^7.9.0",
66
66
  "@leverege/eslint-config-leverege": "^2.0.10",
67
67
  "core-js": "^3.6.4"
68
68
  }
package/src/helmup CHANGED
@@ -3,7 +3,7 @@
3
3
  # This script is used to ease the pain of transition testing to chart museum
4
4
  # for adding / updating deployments on a fluster.
5
5
  #
6
- # printf "\nRUNNING LOCALLY\n" && sleep 2
6
+ # printf "\n***** RUNNING LOCALLY *****\n" && sleep 2
7
7
  PLATFORM=(
8
8
  api-server
9
9
  db-curator
@@ -16,7 +16,6 @@ PLATFORM=(
16
16
  transponder-bq
17
17
  transponder-fb
18
18
  transponder-postgres
19
- # transponder-sql
20
19
  )
21
20
 
22
21
  SYSTEM=(
@@ -26,6 +25,7 @@ SYSTEM=(
26
25
  redis
27
26
  velero
28
27
  reloader
28
+ tiller
29
29
  # monitoring
30
30
  # custom-metrics
31
31
  )
@@ -360,7 +360,21 @@ function doInstall() {
360
360
 
361
361
  for PARAM in "$@";
362
362
  do
363
+ # Allows chart version from command line via <deployment>/<x.y.z>
363
364
  IFS="/" read SERVICE CHARTVER <<< "$PARAM"
365
+
366
+ # Allows chart version as <deployment>/.chart-x.y.z>
367
+ if [ -z "$CHARTVER" ];
368
+ then
369
+ for PARAM in $SERVICE/.chart-?.?.?; do
370
+ IFS="-" read JUNK VERSION <<< "$PARAM"
371
+ [ $VERSION != "?.?.?" ] && CHARTVER=$VERSION
372
+ printf "PARAM=[$PARAM] SVC=[$SERVICE] CHT=[$CHARTVER]\n"
373
+ break
374
+ done
375
+ fi
376
+
377
+ # slap additional helm syntax in there if the version is set
364
378
  [ ! -z "$CHARTVER" ] && CHARTVER="--version $CHARTVER"
365
379
 
366
380
  # If we're referencing a plugin the execute it and continue
@@ -380,11 +394,6 @@ function doInstall() {
380
394
  printf "\nGithub repo is here => https://github.com/helm/charts/tree/master/stable/coredns\n\n"
381
395
  ;;
382
396
 
383
- # "disks") DEPRECATED
384
- # checkSSDStorageClass
385
- # helm upgrade --install disks ./disks
386
- # ;;
387
-
388
397
  "elastic"|"elasticsearch")
389
398
  checkSSDStorageClass
390
399
  helm repo add elastic https://helm.elastic.co
@@ -424,6 +433,12 @@ function doInstall() {
424
433
  printf "To start a specific version => `color c 'REDIS_HELM_CHART="v9.1.5" helmup redis'`\n\n"
425
434
  ;;
426
435
 
436
+ "tiller")
437
+ kubectl create -f $GITTOP/k8s-utils/tiller.yaml &> /dev/null
438
+ helm init --service-account tiller --upgrade --history-max 5
439
+ sleep 3
440
+ ;;
441
+
427
442
  "timescale-db")
428
443
  checkTimescalePassword
429
444
  helm upgrade --install timescale-db leverege/timescale-db
package/src/overwhelm CHANGED
@@ -17,6 +17,7 @@ const optionsDefinitions = [
17
17
  { name : 'export', alias : 'e', type : Boolean, default : false },
18
18
  { name : 'continue', alias : 'c', type : Boolean, default : false },
19
19
  { name : 'checkctx', alias : 't', type : Boolean, default : false },
20
+ { name : 'fetchctx', alias : 'f', type : Boolean, default : false },
20
21
  { name : 'verbose', alias : 'v', type : Boolean, default : false },
21
22
  ]
22
23
  const args = cliArgs( optionsDefinitions )
@@ -200,10 +201,14 @@ const opt = {
200
201
 
201
202
  const ahoy = glob.sync( '*/', opt )
202
203
 
203
- // Generate the values.yaml files in directories not marked with .nohelm.
204
+ // .noahoy = skips generation of values.yaml but allows helmup to run
205
+ // .nohelm = overwhelm and helmup will skip the deployment entirely
204
206
  ahoy.forEach( ( dir ) => {
205
- if ( !fs.existsSync( `${dir}/.nohelm` ) ) {
206
- console.log( `Generating values in ${dir}` )
207
+ if ( fs.existsSync( `${dir}/.noahoy` ) ) {
208
+ !args.fetchctx && console.log( chalk.yellow( `***WARNING: .noahoy detected, not regenerating ${dir}values.yaml` ) )
209
+ }
210
+ else if ( !fs.existsSync( `${dir}/.nohelm` ) ) {
211
+ args.verbose && console.log( `Generating values in ${dir}` )
207
212
 
208
213
  let valuesOut = [] // An accumulator for all of the output values.
209
214
 
@@ -211,7 +216,7 @@ ahoy.forEach( ( dir ) => {
211
216
  const valuesLocal = `${dir}values-local.yaml`
212
217
 
213
218
  if ( fs.existsSync( valuesLocal ) ) {
214
- console.log( ` Local values in ${valuesLocal}` )
219
+ args.verbose && console.log( ` Local values in ${valuesLocal}` )
215
220
  valuesOut += `\n# AHOY => values-local.yaml\n\n`
216
221
  valuesOut += fs.readFileSync( valuesLocal, { encoding : 'utf-8' } )
217
222
  }
@@ -250,9 +255,10 @@ ahoy.forEach( ( dir ) => {
250
255
 
251
256
  let kubeout = '_no_current_context_'
252
257
  try {
253
- // if current is not set exec will throw
254
- kubeout = exec( 'kubectl config current-context' )
255
- } catch (err) { }
258
+ kubeout = exec( 'kubectl config current-context', { stdio: [ undefined ] } )
259
+ } catch (err) {
260
+ // err && console.log( `Caught Error =>[${err}]` )
261
+ }
256
262
 
257
263
  const currentCtx = kubeout.toString().trim()
258
264
  let desiredCtx = `gke_${projectId}_${zone}_${clusterName}`
@@ -270,17 +276,27 @@ ahoy.forEach( ( dir ) => {
270
276
 
271
277
  const matchedCtx = ( currentCtx === desiredCtx )
272
278
 
279
+ // just fetch the context and exit if -f is specified
280
+ if ( args.fetchctx ) {
281
+ if ( !matchedCtx ) {
282
+ try {
283
+ exec( `${cmd}`, { stdio: [ undefined ] } )
284
+ } catch (err) {
285
+ process.exit( 61 ) // ECONNREFUSED
286
+ }
287
+ }
288
+ process.exit( 0 )
289
+ }
290
+
273
291
  if ( matchedCtx ) {
274
292
  console.log( `
275
293
 
276
- Current context ${chalk.bold.green(currentCtx)} matches the desired
277
- context. Do you want to update credentials anyway?
294
+ Current context matches => ${chalk.bold.green(currentCtx)}
278
295
 
279
296
  ` )
280
297
  }
281
298
  else {
282
299
  console.log( `
283
-
284
300
  You are about to change your Kubernetes context to:
285
301
  CLUSTER_NAME => ${chalk.bold.green(clusterName)}
286
302
  PROJECT_ID => ${chalk.bold.green(projectId)}
@@ -288,7 +304,8 @@ ahoy.forEach( ( dir ) => {
288
304
 
289
305
  ` )
290
306
  }
291
- const ans = ask.question( `Enter "${chalk.bold.green( 'yes' )}" if you wish to fetch the credentials => ` )
307
+ const operation = matchedCtx ? 'refetch the credentials' : 'switch your context'
308
+ const ans = ask.question( `Enter "${chalk.bold.green( 'yes' )}" if you wish to ${operation} => ` )
292
309
  if ( ans !== 'yes' ) {
293
310
  if ( matchedCtx ) {
294
311
  console.log( chalk.bold.yellow( `\n\nSkipping a refetch of your Kubernetes context and credentials\n\n` ) )
@@ -299,7 +316,7 @@ ahoy.forEach( ( dir ) => {
299
316
  process.exit( 1 )
300
317
  }
301
318
 
302
- console.log( `\n\nExecuting: ${cmd}\n\n` )
319
+ console.log( `\n\nExecuting: ${chalk.bold.yellow(cmd)}\n\n` )
303
320
  exec( `${cmd}`, ( error, out ) => {
304
321
  if ( error ) {
305
322
  console.log( `\n\n***ERROR ${error}\n\n` )