@leverege/build-tools 2.1.3 → 2.1.5

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/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
+ ## [2.1.5] - 2020-03-08
5
+ ### Updated
6
+ - (Helmup) Simplified Timescale installation process
7
+
4
8
  ## [2.0.0] - 2020-02-12
5
9
  ### Added
6
10
  - (encrypt/decrypt) Allow for external KMS (BREAKING!!!)
package/README.md CHANGED
@@ -12,26 +12,27 @@ npm install -g @leverege/build-tools
12
12
 
13
13
  ## Tool Descriptions
14
14
 
15
+ ### General Tools:
15
16
  * **circleate**: bootstrap .circleci config repo
16
17
  * **decrypt-secrets**: decrypts secrets (env, service accounts)
17
18
  * **dockreate**: bootstrap docker repo
18
19
  * **encrypt-secrets**: encrypts secrets (env, service accounts)
19
20
  * **packleate**: DESCRIPTION
20
21
 
21
- Helm Helpers:
22
- * **overwhelm**: DESCRIPTION
22
+ ### Helm Helpers:
23
+ * **overwhelm**: A k8s context helper and yaml replacer *OVH:<REPLACE_ME>*
23
24
  * **helmify**: DESCRIPTION
24
- * **helmup**: DESCRIPTION
25
- * **helmdn**: DESCRIPTION
25
+ * **helmup**: A context safe helm deployment tool.
26
+ * **helmdn**: A destroyer of helm deplotments (danger zone).
26
27
 
27
- Kubernetes Helpers:
28
- * **k8x**: DESCRIPTION
28
+ ### Kubernetes Helpers:
29
+ * **k8x**: A script to help run commands on active pods in a k8s cluster.
29
30
 
30
- Git Helpers:
31
- * **git-tar**: DESCRIPTION
32
- * **dirty-git**: DESCRIPTION
33
- * **prune-git**: DESCRIPTION
34
- * **pull-git**: DESCRIPTION
31
+ ### Git Helpers:
32
+ * **git-tar**: A git safety net which is described [here on github](https://github.com/jphelps413/git-tar)
33
+ * **dirty-git**: Feed it a list of directories and it will show which are locally modified or stashed.
34
+ * **prune-git**: Performs maintenance on a list of git repositories.
35
+ * **pull-git**: Walks a list of git repos, pulling each if they are clean.
35
36
 
36
37
  ## Authors
37
38
 
@@ -47,7 +47,9 @@ var path = require('path');
47
47
  var _require = require('util'),
48
48
  promisify = _require.promisify;
49
49
 
50
- var CloudflareAPI = /*#__PURE__*/function () {
50
+ var CloudflareAPI =
51
+ /*#__PURE__*/
52
+ function () {
51
53
  function CloudflareAPI(options) {
52
54
  _classCallCheck(this, CloudflareAPI);
53
55
 
@@ -69,7 +71,9 @@ var CloudflareAPI = /*#__PURE__*/function () {
69
71
  _createClass(CloudflareAPI, [{
70
72
  key: "decrypt",
71
73
  value: function () {
72
- var _decrypt = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
74
+ var _decrypt = _asyncToGenerator(
75
+ /*#__PURE__*/
76
+ regeneratorRuntime.mark(function _callee() {
73
77
  var projectId,
74
78
  keyRingId,
75
79
  cryptoKeyId,
@@ -159,7 +163,9 @@ var CloudflareAPI = /*#__PURE__*/function () {
159
163
  }, {
160
164
  key: "deleteSecrets",
161
165
  value: function () {
162
- var _deleteSecrets = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
166
+ var _deleteSecrets = _asyncToGenerator(
167
+ /*#__PURE__*/
168
+ regeneratorRuntime.mark(function _callee2() {
163
169
  var deleteFile;
164
170
  return regeneratorRuntime.wrap(function _callee2$(_context2) {
165
171
  while (1) {
@@ -186,7 +192,9 @@ var CloudflareAPI = /*#__PURE__*/function () {
186
192
  }, {
187
193
  key: "createDNSRecord",
188
194
  value: function () {
189
- var _createDNSRecord = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
195
+ var _createDNSRecord = _asyncToGenerator(
196
+ /*#__PURE__*/
197
+ regeneratorRuntime.mark(function _callee3() {
190
198
  return regeneratorRuntime.wrap(function _callee3$(_context3) {
191
199
  while (1) {
192
200
  switch (_context3.prev = _context3.next) {
@@ -5,8 +5,6 @@ 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
-
10
8
  require("core-js/modules/es.object.get-own-property-descriptor");
11
9
 
12
10
  require("core-js/modules/es.object.get-own-property-descriptors");
@@ -23,7 +21,7 @@ require("regenerator-runtime/runtime");
23
21
 
24
22
  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; }
25
23
 
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; }
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; }
27
25
 
28
26
  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; }
29
27
 
@@ -97,7 +95,9 @@ function main() {
97
95
  }
98
96
 
99
97
  function _main() {
100
- _main = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
98
+ _main = _asyncToGenerator(
99
+ /*#__PURE__*/
100
+ regeneratorRuntime.mark(function _callee() {
101
101
  var CF;
102
102
  return regeneratorRuntime.wrap(function _callee$(_context) {
103
103
  while (1) {
@@ -6,8 +6,6 @@ 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
-
11
9
  require("core-js/modules/es.array.index-of");
12
10
 
13
11
  require("core-js/modules/es.array.iterator");
@@ -48,7 +46,7 @@ function _asyncToGenerator(fn) { return function () { var self = this, args = ar
48
46
 
49
47
  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; }
50
48
 
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; }
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; }
52
50
 
53
51
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
54
52
 
@@ -74,7 +72,9 @@ var tar = require('tar');
74
72
 
75
73
  var semver = require('semver');
76
74
 
77
- var Packleator = /*#__PURE__*/function () {
75
+ var Packleator =
76
+ /*#__PURE__*/
77
+ function () {
78
78
  function Packleator(options) {
79
79
  _classCallCheck(this, Packleator);
80
80
 
@@ -97,7 +97,9 @@ var Packleator = /*#__PURE__*/function () {
97
97
  _createClass(Packleator, [{
98
98
  key: "run",
99
99
  value: function () {
100
- var _run = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
100
+ var _run = _asyncToGenerator(
101
+ /*#__PURE__*/
102
+ regeneratorRuntime.mark(function _callee2() {
101
103
  var _this = this;
102
104
 
103
105
  var deps;
@@ -147,8 +149,12 @@ var Packleator = /*#__PURE__*/function () {
147
149
  callback();
148
150
  });
149
151
  });
150
- }, /*#__PURE__*/function () {
151
- var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(err) {
152
+ },
153
+ /*#__PURE__*/
154
+ function () {
155
+ var _ref = _asyncToGenerator(
156
+ /*#__PURE__*/
157
+ regeneratorRuntime.mark(function _callee(err) {
152
158
  var _this$outputPackageJs, name, version, fileName;
153
159
 
154
160
  return regeneratorRuntime.wrap(function _callee$(_context) {
@@ -233,7 +239,9 @@ var Packleator = /*#__PURE__*/function () {
233
239
  }, {
234
240
  key: "rebuildPackageJson",
235
241
  value: function () {
236
- var _rebuildPackageJson = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
242
+ var _rebuildPackageJson = _asyncToGenerator(
243
+ /*#__PURE__*/
244
+ regeneratorRuntime.mark(function _callee3() {
237
245
  var _this2 = this;
238
246
 
239
247
  var packageJson, tarredPackages, _packageJson$dependen, dependencies, _packageJson$devDepen, devDependencies;
@@ -280,7 +288,9 @@ var Packleator = /*#__PURE__*/function () {
280
288
  }, {
281
289
  key: "rebuildPackageLockJson",
282
290
  value: function () {
283
- var _rebuildPackageLockJson = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {
291
+ var _rebuildPackageLockJson = _asyncToGenerator(
292
+ /*#__PURE__*/
293
+ regeneratorRuntime.mark(function _callee4() {
284
294
  var packageLockJson, tarredPackages, recurseDeps;
285
295
  return regeneratorRuntime.wrap(function _callee4$(_context4) {
286
296
  while (1) {
@@ -329,7 +339,9 @@ var Packleator = /*#__PURE__*/function () {
329
339
  }, {
330
340
  key: "copyFiles",
331
341
  value: function () {
332
- var _copyFiles = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5() {
342
+ var _copyFiles = _asyncToGenerator(
343
+ /*#__PURE__*/
344
+ regeneratorRuntime.mark(function _callee5() {
333
345
  var _this3 = this;
334
346
 
335
347
  var startsWith, endsWith;
@@ -389,7 +401,9 @@ var Packleator = /*#__PURE__*/function () {
389
401
  }, {
390
402
  key: "pack",
391
403
  value: function () {
392
- var _pack = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee6(name, version, dir) {
404
+ var _pack = _asyncToGenerator(
405
+ /*#__PURE__*/
406
+ regeneratorRuntime.mark(function _callee6(name, version, dir) {
393
407
  var fileName;
394
408
  return regeneratorRuntime.wrap(function _callee6$(_context6) {
395
409
  while (1) {
@@ -440,7 +454,9 @@ var Packleator = /*#__PURE__*/function () {
440
454
  }, {
441
455
  key: "cleanup",
442
456
  value: function () {
443
- var _cleanup = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee7() {
457
+ var _cleanup = _asyncToGenerator(
458
+ /*#__PURE__*/
459
+ regeneratorRuntime.mark(function _callee7() {
444
460
  return regeneratorRuntime.wrap(function _callee7$(_context7) {
445
461
  while (1) {
446
462
  switch (_context7.prev = _context7.next) {
@@ -472,7 +488,9 @@ var Packleator = /*#__PURE__*/function () {
472
488
  }, {
473
489
  key: "npmInstall",
474
490
  value: function () {
475
- var _npmInstall = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee8() {
491
+ var _npmInstall = _asyncToGenerator(
492
+ /*#__PURE__*/
493
+ regeneratorRuntime.mark(function _callee8() {
476
494
  var _this4 = this;
477
495
 
478
496
  var dir,
@@ -526,7 +544,9 @@ var Packleator = /*#__PURE__*/function () {
526
544
  }, {
527
545
  key: "getPrivateDeps",
528
546
  value: function () {
529
- var _getPrivateDeps = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee9(depth) {
547
+ var _getPrivateDeps = _asyncToGenerator(
548
+ /*#__PURE__*/
549
+ regeneratorRuntime.mark(function _callee9(depth) {
530
550
  var _this5 = this;
531
551
 
532
552
  return regeneratorRuntime.wrap(function _callee9$(_context9) {
@@ -571,7 +591,9 @@ var Packleator = /*#__PURE__*/function () {
571
591
  }, {
572
592
  key: "getPackageJson",
573
593
  value: function () {
574
- var _getPackageJson = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee10() {
594
+ var _getPackageJson = _asyncToGenerator(
595
+ /*#__PURE__*/
596
+ regeneratorRuntime.mark(function _callee10() {
575
597
  var dir,
576
598
  lock,
577
599
  lockModifier,
@@ -5,8 +5,6 @@ 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
-
10
8
  require("core-js/modules/es.object.get-own-property-descriptor");
11
9
 
12
10
  require("core-js/modules/es.object.get-own-property-descriptors");
@@ -23,7 +21,7 @@ require("regenerator-runtime/runtime");
23
21
 
24
22
  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; }
25
23
 
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; }
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; }
27
25
 
28
26
  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; }
29
27
 
@@ -109,7 +107,9 @@ function main() {
109
107
  }
110
108
 
111
109
  function _main() {
112
- _main = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
110
+ _main = _asyncToGenerator(
111
+ /*#__PURE__*/
112
+ 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,7 +1,7 @@
1
1
  {
2
2
  "name": "@leverege/build-tools",
3
- "version": "2.1.3",
4
- "description": "A package containing leverege developer tool support",
3
+ "version": "2.1.5",
4
+ "description": "A collection of build / support tools for Leverege developers",
5
5
  "main": "index.js",
6
6
  "scripts": {
7
7
  "build": "npm run compile",
package/src/helmup CHANGED
@@ -52,6 +52,35 @@ function setOrUnset() {
52
52
  echo "$setting"
53
53
  }
54
54
 
55
+ function checkTimescalePassword(){
56
+ if [ -f values-databases.yaml ] || [ -d timescale-db ];
57
+ then
58
+ printf "\n\n`color r '*** Deleting old timescale files ***'`\n\n"
59
+ rm -rf values-databases.yaml timescale-db
60
+ git add -A
61
+ fi
62
+
63
+ kubectl get secret postgresql-password
64
+ if [[ $? -eq 1 ]]; then
65
+ printf "\n*** Autogenerating Timescale password ***\n\n"
66
+ local psql_pw="$(generatePassword)"
67
+ local psql_rep_pw="$(generatePassword)"
68
+
69
+ kubectl create secret generic postgresql-password \
70
+ --from-literal=postgresql-password=${psql_pw} \
71
+ --from-literal=postgresql-replication-password=${psql_rep_pw}
72
+
73
+ printf "\n\n`color y '*** Save Timescale creds to Keeweb ***'`\n\n"
74
+ printf "`color g "postgresql-password / ${psql_pw}"`\n"
75
+ printf "`color g "postgresql-replication-password / ${psql_rep_pw}"`\n\n"
76
+ fi
77
+ }
78
+
79
+ function generatePassword(){
80
+ RANDOMPW=`openssl rand -base64 12`
81
+ echo $RANDOMPW
82
+ }
83
+
55
84
  function checkMonitoringNS(){
56
85
  kubectl get namespace monitoring
57
86
  if [[ $? -eq 1 ]]; then
@@ -162,7 +191,7 @@ function monitoringHelp(){
162
191
  `color g "Proxy to Grafana (the charts you're looking for):"`
163
192
  export GRAFANA_POD=\$(kubectl --namespace monitoring get pods -l 'app.kubernetes.io/instance=grafana' -o jsonpath='{.items[0].metadata.name}')
164
193
  kubectl --namespace monitoring port-forward \$GRAFANA_POD 3000 &
165
- sleep 2; open http://localhost:3000/d/stackdriver/stackdriver?orgId=1
194
+ sleep 2; open http://localhost:3000
166
195
 
167
196
  `color toast "Save monitoring login to Keeweb"` => `color r "admin / $MONPASS"`
168
197
 
@@ -382,7 +411,8 @@ function doInstall() {
382
411
  ;;
383
412
 
384
413
  "timescale-db")
385
- helm dep up ./timescale-db && helm upgrade --install timescale-db ./timescale-db
414
+ checkTimescalePassword
415
+ helm upgrade --install timescale-db leverege/timescale-db
386
416
  ;;
387
417
 
388
418
  "ingress")