@automattic/vip 2.12.0 → 2.14.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.
Files changed (109) hide show
  1. package/README.md +27 -3
  2. package/dist/bin/vip-cache-purge-url.js +93 -0
  3. package/{package/dist/bin/vip-config.js → dist/bin/vip-cache.js} +6 -3
  4. package/dist/bin/vip-dev-env-exec.js +9 -2
  5. package/dist/bin/vip-dev-env-import-sql.js +8 -1
  6. package/dist/bin/vip-dev-env-start.js +2 -1
  7. package/dist/bin/vip-dev-env-update.js +1 -0
  8. package/dist/bin/vip.js +1 -1
  9. package/dist/lib/api/cache-purge.js +76 -0
  10. package/dist/lib/dev-environment/dev-environment-cli.js +2 -2
  11. package/dist/lib/dev-environment/dev-environment-core.js +3 -3
  12. package/dist/lib/dev-environment/dev-environment-lando.js +38 -7
  13. package/dist/lib/envvar/read-file.js +2 -18
  14. package/{package/dist/lib/envvar → dist/lib}/read-file.js +3 -6
  15. package/dist/lib/validations/sql.js +175 -53
  16. package/npm-shrinkwrap.json +82 -82
  17. package/package.json +5 -3
  18. package/.circleci/config.yml +0 -67
  19. package/package/dist/bin/vip-app-list.js +0 -73
  20. package/package/dist/bin/vip-app.js +0 -76
  21. package/package/dist/bin/vip-config-envvar-delete.js +0 -97
  22. package/package/dist/bin/vip-config-envvar-get-all.js +0 -94
  23. package/package/dist/bin/vip-config-envvar-get.js +0 -79
  24. package/package/dist/bin/vip-config-envvar-list.js +0 -91
  25. package/package/dist/bin/vip-config-envvar-set.js +0 -123
  26. package/package/dist/bin/vip-config-envvar.js +0 -23
  27. package/package/dist/bin/vip-dev-env-create.js +0 -105
  28. package/package/dist/bin/vip-dev-env-destroy.js +0 -56
  29. package/package/dist/bin/vip-dev-env-exec.js +0 -67
  30. package/package/dist/bin/vip-dev-env-import-media.js +0 -51
  31. package/package/dist/bin/vip-dev-env-import-sql.js +0 -83
  32. package/package/dist/bin/vip-dev-env-import.js +0 -32
  33. package/package/dist/bin/vip-dev-env-info.js +0 -61
  34. package/package/dist/bin/vip-dev-env-list.js +0 -46
  35. package/package/dist/bin/vip-dev-env-start.js +0 -77
  36. package/package/dist/bin/vip-dev-env-stop.js +0 -52
  37. package/package/dist/bin/vip-dev-env-update.js +0 -89
  38. package/package/dist/bin/vip-dev-env.js +0 -23
  39. package/package/dist/bin/vip-import-media-abort.js +0 -132
  40. package/package/dist/bin/vip-import-media-status.js +0 -84
  41. package/package/dist/bin/vip-import-media.js +0 -168
  42. package/package/dist/bin/vip-import-sql-status.js +0 -83
  43. package/package/dist/bin/vip-import-sql.js +0 -580
  44. package/package/dist/bin/vip-import-validate-files.js +0 -191
  45. package/package/dist/bin/vip-import-validate-sql.js +0 -34
  46. package/package/dist/bin/vip-import.js +0 -20
  47. package/package/dist/bin/vip-logs.js +0 -232
  48. package/package/dist/bin/vip-search-replace.js +0 -71
  49. package/package/dist/bin/vip-sync.js +0 -191
  50. package/package/dist/bin/vip-whoami.js +0 -67
  51. package/package/dist/bin/vip-wp.js +0 -555
  52. package/package/dist/bin/vip.js +0 -149
  53. package/package/dist/lib/analytics/clients/client.js +0 -1
  54. package/package/dist/lib/analytics/clients/pendo.js +0 -92
  55. package/package/dist/lib/analytics/clients/stub.js +0 -19
  56. package/package/dist/lib/analytics/clients/tracks.js +0 -128
  57. package/package/dist/lib/analytics/index.js +0 -45
  58. package/package/dist/lib/api/app.js +0 -70
  59. package/package/dist/lib/api/feature-flags.js +0 -39
  60. package/package/dist/lib/api/user.js +0 -58
  61. package/package/dist/lib/api.js +0 -136
  62. package/package/dist/lib/app-logs/app-logs.js +0 -70
  63. package/package/dist/lib/cli/apiConfig.js +0 -90
  64. package/package/dist/lib/cli/command.js +0 -606
  65. package/package/dist/lib/cli/envAlias.js +0 -60
  66. package/package/dist/lib/cli/exit.js +0 -33
  67. package/package/dist/lib/cli/format.js +0 -213
  68. package/package/dist/lib/cli/pager.js +0 -52
  69. package/package/dist/lib/cli/progress.js +0 -208
  70. package/package/dist/lib/cli/prompt.js +0 -37
  71. package/package/dist/lib/cli/repo.js +0 -77
  72. package/package/dist/lib/client-file-uploader.js +0 -602
  73. package/package/dist/lib/constants/dev-environment.js +0 -42
  74. package/package/dist/lib/constants/file-size.js +0 -14
  75. package/package/dist/lib/dev-environment/dev-environment-cli.js +0 -508
  76. package/package/dist/lib/dev-environment/dev-environment-core.js +0 -620
  77. package/package/dist/lib/dev-environment/dev-environment-lando.js +0 -330
  78. package/package/dist/lib/dev-environment/types.js +0 -1
  79. package/package/dist/lib/env.js +0 -36
  80. package/package/dist/lib/envvar/api-delete.js +0 -56
  81. package/package/dist/lib/envvar/api-get-all.js +0 -59
  82. package/package/dist/lib/envvar/api-get.js +0 -24
  83. package/package/dist/lib/envvar/api-list.js +0 -60
  84. package/package/dist/lib/envvar/api-set.js +0 -58
  85. package/package/dist/lib/envvar/api.js +0 -104
  86. package/package/dist/lib/envvar/input.js +0 -55
  87. package/package/dist/lib/envvar/logging.js +0 -33
  88. package/package/dist/lib/http/socks-proxy-agent.js +0 -25
  89. package/package/dist/lib/keychain/browser.js +0 -35
  90. package/package/dist/lib/keychain/insecure.js +0 -63
  91. package/package/dist/lib/keychain/keychain.js +0 -1
  92. package/package/dist/lib/keychain/secure.js +0 -36
  93. package/package/dist/lib/keychain.js +0 -36
  94. package/package/dist/lib/media-import/media-file-import.js +0 -34
  95. package/package/dist/lib/media-import/progress.js +0 -86
  96. package/package/dist/lib/media-import/status.js +0 -335
  97. package/package/dist/lib/rollbar.js +0 -35
  98. package/package/dist/lib/search-and-replace.js +0 -203
  99. package/package/dist/lib/site-import/db-file-import.js +0 -46
  100. package/package/dist/lib/site-import/status.js +0 -444
  101. package/package/dist/lib/token.js +0 -132
  102. package/package/dist/lib/tracker.js +0 -96
  103. package/package/dist/lib/validations/is-multi-site-sql-dump.js +0 -59
  104. package/package/dist/lib/validations/is-multi-site.js +0 -99
  105. package/package/dist/lib/validations/line-by-line.js +0 -92
  106. package/package/dist/lib/validations/site-type.js +0 -66
  107. package/package/dist/lib/validations/sql.js +0 -371
  108. package/package/dist/lib/vip-import-validate-files.js +0 -548
  109. package/package/vip.iml +0 -11
package/package.json CHANGED
@@ -1,12 +1,14 @@
1
1
  {
2
2
  "name": "@automattic/vip",
3
- "version": "2.12.0",
3
+ "version": "2.14.0",
4
4
  "description": "The VIP Javascript library & CLI",
5
5
  "main": "index.js",
6
6
  "bin": {
7
7
  "vip": "dist/bin/vip.js",
8
8
  "vip-app": "dist/bin/vip-app.js",
9
9
  "vip-app-list": "dist/bin/vip-app-list.js",
10
+ "vip-cache": "dist/bin/vip-cache.js",
11
+ "vip-cache-purge-url": "dist/bin/vip-cache-purge-url.js",
10
12
  "vip-config": "dist/bin/vip-config.js",
11
13
  "vip-config-envvar": "dist/bin/vip-config-envvar.js",
12
14
  "vip-config-envvar-delete": "dist/bin/vip-config-envvar-delete.js",
@@ -70,7 +72,7 @@
70
72
  "license": "MIT",
71
73
  "engines": {
72
74
  "node": ">=14.14.0",
73
- "npm": "^6 "
75
+ "npm": ">=6"
74
76
  },
75
77
  "bugs": {
76
78
  "url": "https://github.com/Automattic/vip/issues"
@@ -122,7 +124,7 @@
122
124
  "ini": "2.0.0",
123
125
  "json2csv": "5.0.6",
124
126
  "jwt-decode": "2.2.0",
125
- "lando": "git+https://github.com/Automattic/lando-cli.git#v3.5.2-patch2022_05_13",
127
+ "lando": "git+https://github.com/Automattic/lando-cli.git#v3.5.2-patch2022_06_20",
126
128
  "node-fetch": "^2.6.1",
127
129
  "opn": "5.5.0",
128
130
  "proxy-from-env": "^1.1.0",
@@ -1,67 +0,0 @@
1
- version: 2.1
2
-
3
- workflows:
4
- build:
5
- jobs:
6
- - lint
7
- - flow
8
- - test:
9
- version: 14-stretch
10
- name: 14-stretch
11
- requires:
12
- - lint
13
- - flow
14
- - test:
15
- version: lts-stretch
16
- name: lts-stretch
17
- requires:
18
- - lint
19
- - flow
20
- - test:
21
- version: current-stretch
22
- name: current-stretch
23
- requires:
24
- - lint
25
- - flow
26
-
27
- jobs:
28
- lint:
29
- docker:
30
- - image: circleci/node:current-stretch
31
-
32
- working_directory: ~/repo
33
-
34
- steps:
35
- - checkout
36
- - run: npm ci
37
- - run:
38
- name: Run lint
39
- command: npm run lint
40
-
41
- flow:
42
- docker:
43
- - image: circleci/node:current-stretch
44
-
45
- working_directory: ~/repo
46
-
47
- steps:
48
- - checkout
49
- - run: npm ci
50
- - run:
51
- name: Run flow
52
- command: npm run flow
53
-
54
- test:
55
- parameters:
56
- version:
57
- type: string
58
-
59
- docker:
60
- - image: circleci/node:<< parameters.version >>
61
-
62
- working_directory: ~/repo
63
-
64
- steps:
65
- - checkout
66
- - run: npm ci
67
- - run: npm run jest
@@ -1,73 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * External dependencies
5
- */
6
- "use strict";
7
-
8
- var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
9
-
10
- var _command = _interopRequireDefault(require("../lib/cli/command"));
11
-
12
- var _api = _interopRequireDefault(require("../lib/api"));
13
-
14
- var _tracker = require("../lib/tracker");
15
-
16
- var _rollbar = require("../lib/rollbar");
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- /**
21
- * Internal dependencies
22
- */
23
- (0, _command.default)({
24
- format: true
25
- }).argv(process.argv, async () => {
26
- const api = await (0, _api.default)();
27
- await (0, _tracker.trackEvent)('app_list_command_execute');
28
- let response;
29
-
30
- try {
31
- response = await api.query({
32
- // $FlowFixMe: gql template is not supported by flow
33
- query: (0, _graphqlTag.default)`query Apps( $first: Int, $after: String ) {
34
- apps( first: $first, after: $after ) {
35
- total,
36
- nextCursor
37
- edges {
38
- id,
39
- name,
40
- repo
41
- }
42
- }
43
- }`,
44
- variables: {
45
- first: 100,
46
- after: null // TODO make dynamic
47
-
48
- }
49
- });
50
- } catch (err) {
51
- const message = err.toString();
52
- await (0, _tracker.trackEvent)('app_list_command_fetch_error', {
53
- error: message
54
- });
55
-
56
- _rollbar.rollbar.error(err);
57
-
58
- console.log('Failed to fetch apps: %s', message);
59
- return;
60
- }
61
-
62
- if (!response || !response.data || !response.data.apps || !response.data.apps.edges || !response.data.apps.edges.length) {
63
- const message = 'No apps found';
64
- await (0, _tracker.trackEvent)('app_list_command_fetch_error', {
65
- error: message
66
- });
67
- console.log(message);
68
- return;
69
- }
70
-
71
- await (0, _tracker.trackEvent)('app_list_command_success');
72
- return response.data.apps.edges;
73
- });
@@ -1,76 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * External dependencies
5
- */
6
- "use strict";
7
-
8
- var _chalk = _interopRequireDefault(require("chalk"));
9
-
10
- var _command = _interopRequireWildcard(require("../lib/cli/command"));
11
-
12
- var _app = _interopRequireDefault(require("../lib/api/app"));
13
-
14
- var _tracker = require("../lib/tracker");
15
-
16
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
-
18
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
20
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
-
22
- /**
23
- * Internal dependencies
24
- */
25
- (0, _command.default)({
26
- requiredArgs: 1,
27
- format: true
28
- }).example('vip app <app>', 'Pass an app name or ID to get details about that app').example('vip app 123', 'Get details about the app with ID 123').example('vip app vip-test', 'Get details about the app named vip-test').command('list', 'List your VIP applications').argv(process.argv, async arg => {
29
- await (0, _tracker.trackEvent)('app_command_execute');
30
- let res;
31
-
32
- try {
33
- res = await (0, _app.default)(arg[0], 'id,repo,name,environments{id,appId,name,type,branch,currentCommit,primaryDomain{name},launched}');
34
- } catch (err) {
35
- await (0, _tracker.trackEvent)('app_command_fetch_error', {
36
- error: `App ${arg[0]} does not exist`
37
- });
38
- console.log(`App ${_chalk.default.blueBright(arg[0])} does not exist`);
39
- return;
40
- }
41
-
42
- if (!res || !res.environments) {
43
- await (0, _tracker.trackEvent)('app_command_fetch_error', {
44
- error: `App ${arg[0]} does not exist`
45
- });
46
- console.log(`App ${_chalk.default.blueBright(arg[0])} does not exist`);
47
- return;
48
- }
49
-
50
- await (0, _tracker.trackEvent)('app_command_success'); // Clone the read-only response object so we can modify it
51
-
52
- const clonedResponse = Object.assign({}, res);
53
- const header = [{
54
- key: 'id',
55
- value: res.id
56
- }, {
57
- key: 'name',
58
- value: res.name
59
- }, {
60
- key: 'repo',
61
- value: res.repo
62
- }];
63
- clonedResponse.environments = clonedResponse.environments.map(env => {
64
- const clonedEnv = Object.assign({}, env);
65
- clonedEnv.name = (0, _command.getEnvIdentifier)(env); // Use the short version of git commit hash
66
-
67
- clonedEnv.currentCommit = clonedEnv.currentCommit.substring(0, 7); // Flatten object
68
-
69
- clonedEnv.primaryDomain = clonedEnv.primaryDomain.name;
70
- return clonedEnv;
71
- });
72
- return {
73
- header,
74
- data: clonedResponse.environments
75
- };
76
- });
@@ -1,97 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- *
5
- * @format
6
- */
7
-
8
- /**
9
- * External dependencies
10
- */
11
- "use strict";
12
-
13
- Object.defineProperty(exports, "__esModule", {
14
- value: true
15
- });
16
- exports.deleteEnvVarCommand = deleteEnvVarCommand;
17
-
18
- var _chalk = _interopRequireDefault(require("chalk"));
19
-
20
- var _command = _interopRequireDefault(require("../lib/cli/command"));
21
-
22
- var _api = require("../lib/envvar/api");
23
-
24
- var _input = require("../lib/envvar/input");
25
-
26
- var _logging = require("../lib/envvar/logging");
27
-
28
- var _rollbar = require("../lib/rollbar");
29
-
30
- var _tracker = require("../lib/tracker");
31
-
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
-
34
- /**
35
- * Internal dependencies
36
- */
37
- const baseUsage = 'vip config envvar delete'; // Command examples
38
-
39
- const examples = [{
40
- usage: `${baseUsage} MY_VARIABLE`,
41
- description: 'Permanently deletes the environment variable "MY_VARIABLE"'
42
- }];
43
-
44
- async function deleteEnvVarCommand(arg, opt) {
45
- // Help the user by uppercasing input.
46
- const name = arg[0].trim().toUpperCase();
47
- const trackingParams = {
48
- app_id: opt.app.id,
49
- command: `${baseUsage} ${name}`,
50
- env_id: opt.env.id,
51
- org_id: opt.app.organization.id,
52
- skip_confirm: !!opt.skipConfirmation,
53
- variable_name: name
54
- };
55
- (0, _logging.debug)(`Request: Delete environment variable ${JSON.stringify(name)} for ${(0, _logging.getEnvContext)(opt.app, opt.env)}`);
56
- await (0, _tracker.trackEvent)('envvar_delete_command_execute', trackingParams);
57
-
58
- if (!(0, _api.validateNameWithMessage)(name)) {
59
- await (0, _tracker.trackEvent)('envvar_delete_invalid_name', trackingParams);
60
- process.exit(1);
61
- }
62
-
63
- if (!opt.skipConfirmation) {
64
- await (0, _input.promptForValue)(`Type ${name} to confirm deletion:`, name).catch(async () => {
65
- await (0, _tracker.trackEvent)('envvar_delete_user_cancelled_input', trackingParams);
66
- (0, _input.cancel)();
67
- });
68
-
69
- if (!(await (0, _input.confirm)(`Are you sure? ${_chalk.default.bold.red('Deletion is permanent')} (y/N)`))) {
70
- await (0, _tracker.trackEvent)('envvar_delete_user_cancelled_confirmation', trackingParams);
71
- (0, _input.cancel)();
72
- }
73
- }
74
-
75
- await (0, _api.deleteEnvVar)(opt.app.id, opt.env.id, name).catch(async err => {
76
- _rollbar.rollbar.error(err);
77
-
78
- await (0, _tracker.trackEvent)('envvar_delete_mutation_error', { ...trackingParams,
79
- error: err.message
80
- });
81
- throw err;
82
- });
83
- await (0, _tracker.trackEvent)('envvar_delete_command_success', trackingParams);
84
- console.log(_chalk.default.green(`Successfully deleted environment variable ${JSON.stringify(name)}`));
85
-
86
- if (!opt.skipConfirmation) {
87
- console.log(_chalk.default.bgYellow(_chalk.default.bold('Important:')), 'Updates to environment variables will not be available until the application’s next deploy.');
88
- }
89
- }
90
-
91
- (0, _command.default)({
92
- appContext: true,
93
- appQuery: _api.appQuery,
94
- envContext: true,
95
- requiredArgs: 1,
96
- usage: `${baseUsage} <VARIABLE_NAME>`
97
- }).examples(examples).option('skip-confirmation', 'Skip manual confirmation of input (USE WITH CAUTION)', false).argv(process.argv, deleteEnvVarCommand);
@@ -1,94 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- *
5
- * @format
6
- */
7
-
8
- /**
9
- * External dependencies
10
- */
11
- "use strict";
12
-
13
- Object.defineProperty(exports, "__esModule", {
14
- value: true
15
- });
16
- exports.getAllEnvVarsCommand = getAllEnvVarsCommand;
17
-
18
- var _chalk = _interopRequireDefault(require("chalk"));
19
-
20
- var _command = _interopRequireDefault(require("../lib/cli/command"));
21
-
22
- var _format = require("../lib/cli/format");
23
-
24
- var _api = require("../lib/envvar/api");
25
-
26
- var _logging = require("../lib/envvar/logging");
27
-
28
- var _rollbar = require("../lib/rollbar");
29
-
30
- var _tracker = require("../lib/tracker");
31
-
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
-
34
- /**
35
- * Internal dependencies
36
- */
37
- const usage = 'vip config envvar get-all'; // Command examples
38
-
39
- const examples = [{
40
- usage,
41
- description: 'Get the values of all environment variables'
42
- }];
43
-
44
- async function getAllEnvVarsCommand(arg, opt) {
45
- const trackingParams = {
46
- app_id: opt.app.id,
47
- command: usage,
48
- env_id: opt.env.id,
49
- format: opt.format,
50
- org_id: opt.app.organization.id
51
- };
52
- (0, _logging.debug)(`Request: Get all environment variables for ${(0, _logging.getEnvContext)(opt.app, opt.env)}`);
53
- await (0, _tracker.trackEvent)('envvar_get_all_command_execute', trackingParams);
54
- const envvars = await (0, _api.getEnvVars)(opt.app.id, opt.env.id).catch(async err => {
55
- _rollbar.rollbar.error(err);
56
-
57
- await (0, _tracker.trackEvent)('envvar_get_all_query_error', { ...trackingParams,
58
- error: err.message
59
- });
60
- throw err;
61
- });
62
- await (0, _tracker.trackEvent)('envvar_get_all_command_success', trackingParams);
63
-
64
- if (0 === envvars.length) {
65
- console.log(_chalk.default.yellow('There are no environment variables'));
66
- process.exit();
67
- } // Vary data by expected format.
68
-
69
-
70
- let key = 'name';
71
-
72
- if ('keyValue' === opt.format) {
73
- key = 'key';
74
- } else if ('ids' === opt.format) {
75
- key = 'id';
76
- }
77
-
78
- const envvarsObject = envvars.map(({
79
- name: envvarName,
80
- value
81
- }) => ({
82
- [key]: envvarName,
83
- value
84
- }));
85
- console.log((0, _format.formatData)(envvarsObject, opt.format));
86
- }
87
-
88
- (0, _command.default)({
89
- appContext: true,
90
- appQuery: _api.appQuery,
91
- envContext: true,
92
- format: true,
93
- usage
94
- }).examples(examples).argv(process.argv, getAllEnvVarsCommand);
@@ -1,79 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- *
5
- * @format
6
- */
7
-
8
- /**
9
- * External dependencies
10
- */
11
- "use strict";
12
-
13
- Object.defineProperty(exports, "__esModule", {
14
- value: true
15
- });
16
- exports.getEnvVarCommand = getEnvVarCommand;
17
-
18
- var _chalk = _interopRequireDefault(require("chalk"));
19
-
20
- var _command = _interopRequireDefault(require("../lib/cli/command"));
21
-
22
- var _api = require("../lib/envvar/api");
23
-
24
- var _logging = require("../lib/envvar/logging");
25
-
26
- var _rollbar = require("../lib/rollbar");
27
-
28
- var _tracker = require("../lib/tracker");
29
-
30
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
-
32
- /**
33
- * Internal dependencies
34
- */
35
- const baseUsage = 'vip config envvar get'; // Command examples
36
-
37
- const examples = [{
38
- usage: `${baseUsage} MY_VARIABLE`,
39
- description: 'Get the value of the environment variable "MY_VARIABLE"'
40
- }];
41
-
42
- async function getEnvVarCommand(arg, opt) {
43
- // Help the user by uppercasing input.
44
- const name = arg[0].trim().toUpperCase();
45
- const trackingParams = {
46
- app_id: opt.app.id,
47
- command: `${baseUsage} ${name}`,
48
- env_id: opt.env.id,
49
- org_id: opt.app.organization.id,
50
- variable_name: name
51
- };
52
- (0, _logging.debug)(`Request: Get environment variable ${JSON.stringify(name)} for ${(0, _logging.getEnvContext)(opt.app, opt.env)}`);
53
- await (0, _tracker.trackEvent)('envvar_get_command_execute', trackingParams);
54
- const envvar = await (0, _api.getEnvVar)(opt.app.id, opt.env.id, name).catch(async err => {
55
- _rollbar.rollbar.error(err);
56
-
57
- await (0, _tracker.trackEvent)('envvar_get_query_error', { ...trackingParams,
58
- error: err.message
59
- });
60
- throw err;
61
- });
62
- await (0, _tracker.trackEvent)('envvar_get_command_success', trackingParams);
63
-
64
- if (!envvar) {
65
- const message = `The environment variable ${JSON.stringify(name)} does not exist`;
66
- console.log(_chalk.default.yellow(message));
67
- process.exit();
68
- }
69
-
70
- console.log(envvar.value);
71
- }
72
-
73
- (0, _command.default)({
74
- appContext: true,
75
- appQuery: _api.appQuery,
76
- envContext: true,
77
- requiredArgs: 1,
78
- usage: `${baseUsage} <VARIABLE_NAME>`
79
- }).examples(examples).argv(process.argv, getEnvVarCommand);
@@ -1,91 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- *
5
- * @format
6
- */
7
-
8
- /**
9
- * External dependencies
10
- */
11
- "use strict";
12
-
13
- Object.defineProperty(exports, "__esModule", {
14
- value: true
15
- });
16
- exports.listEnvVarsCommand = listEnvVarsCommand;
17
-
18
- var _chalk = _interopRequireDefault(require("chalk"));
19
-
20
- var _command = _interopRequireDefault(require("../lib/cli/command"));
21
-
22
- var _format = require("../lib/cli/format");
23
-
24
- var _api = require("../lib/envvar/api");
25
-
26
- var _logging = require("../lib/envvar/logging");
27
-
28
- var _rollbar = require("../lib/rollbar");
29
-
30
- var _tracker = require("../lib/tracker");
31
-
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
-
34
- /**
35
- * Internal dependencies
36
- */
37
- const usage = 'vip config envvar list'; // Command examples
38
-
39
- const examples = [{
40
- usage,
41
- description: 'Lists all environment variables (names only)'
42
- }];
43
-
44
- async function listEnvVarsCommand(arg, opt) {
45
- const trackingParams = {
46
- app_id: opt.app.id,
47
- command: usage,
48
- env_id: opt.env.id,
49
- format: opt.format,
50
- org_id: opt.app.organization.id
51
- };
52
- (0, _logging.debug)(`Request: list environment variables for ${(0, _logging.getEnvContext)(opt.app, opt.env)}`);
53
- await (0, _tracker.trackEvent)('envvar_list_command_execute', trackingParams);
54
- const envvars = await (0, _api.listEnvVars)(opt.app.id, opt.env.id).catch(async err => {
55
- _rollbar.rollbar.error(err);
56
-
57
- await (0, _tracker.trackEvent)('envvar_list_query_error', { ...trackingParams,
58
- error: err.message
59
- });
60
- throw err;
61
- });
62
- await (0, _tracker.trackEvent)('envvar_list_command_success', trackingParams);
63
-
64
- if (0 === envvars.length) {
65
- console.log(_chalk.default.yellow('There are no environment variables'));
66
- process.exit();
67
- } // Vary data by expected format.
68
-
69
-
70
- let key = 'name';
71
-
72
- if ('keyValue' === opt.format) {
73
- key = 'key';
74
- } else if ('ids' === opt.format) {
75
- key = 'id';
76
- } // Format as an object for formatData.
77
-
78
-
79
- const envvarsObject = envvars.map(name => ({
80
- [key]: name
81
- }));
82
- console.log((0, _format.formatData)(envvarsObject, opt.format));
83
- }
84
-
85
- (0, _command.default)({
86
- appContext: true,
87
- appQuery: _api.appQuery,
88
- envContext: true,
89
- format: true,
90
- usage
91
- }).examples(examples).argv(process.argv, listEnvVarsCommand);