@rockcarver/frodo-lib 0.12.2-2 → 0.12.2-3
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 +5 -1
- package/cjs/api/SecretsApi.js +79 -1
- package/cjs/api/SecretsApi.js.map +1 -1
- package/cjs/api/SecretsApi.test.js.map +1 -0
- package/cjs/index.js +5 -1
- package/cjs/index.js.map +1 -1
- package/cjs/ops/SecretsOps.js +4 -4
- package/cjs/ops/SecretsOps.js.map +1 -1
- package/cjs/ops/StartupOps.js +1 -1
- package/cjs/ops/StartupOps.js.map +1 -1
- package/esm/api/SecretsApi.mjs +76 -1
- package/esm/api/SecretsApi.test.mjs +283 -0
- package/esm/index.mjs +2 -1
- package/esm/ops/SecretsOps.mjs +5 -5
- package/esm/ops/StartupOps.mjs +1 -1
- package/package.json +1 -1
- package/types/api/SecretsApi.d.ts +64 -1
- package/types/api/SecretsApi.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/ops/SecretsOps.d.ts.map +1 -1
- package/types/ops/StartupOps.d.ts.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.12.2-3] - 2022-09-09
|
|
11
|
+
|
|
10
12
|
## [0.12.2-2] - 2022-09-09
|
|
11
13
|
|
|
12
14
|
## [0.12.2-1] - 2022-09-08
|
|
@@ -457,7 +459,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
457
459
|
- Fixed problem with adding connection profiles
|
|
458
460
|
- Miscellaneous bug fixes
|
|
459
461
|
|
|
460
|
-
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-
|
|
462
|
+
[Unreleased]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-3...HEAD
|
|
463
|
+
|
|
464
|
+
[0.12.2-3]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-2...v0.12.2-3
|
|
461
465
|
|
|
462
466
|
[0.12.2-2]: https://github.com/rockcarver/frodo-lib/compare/v0.12.2-1...v0.12.2-2
|
|
463
467
|
|
package/cjs/api/SecretsApi.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.VersionOfSecretStatus = void 0;
|
|
6
7
|
exports.createNewVersionOfSecret = createNewVersionOfSecret;
|
|
7
8
|
exports.deleteSecret = deleteSecret;
|
|
8
9
|
exports.deleteVersionOfSecret = deleteVersionOfSecret;
|
|
@@ -43,10 +44,21 @@ var getApiConfig = () => ({
|
|
|
43
44
|
path: "/environment/secrets",
|
|
44
45
|
apiVersion
|
|
45
46
|
});
|
|
47
|
+
/**
|
|
48
|
+
* Get all secrets
|
|
49
|
+
* @returns {Promise<unknown[]>} a promise that resolves to an array of secrets
|
|
50
|
+
*/
|
|
51
|
+
|
|
46
52
|
|
|
47
53
|
function getSecrets() {
|
|
48
54
|
return _getSecrets.apply(this, arguments);
|
|
49
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Get secret
|
|
58
|
+
* @param secretId secret id/name
|
|
59
|
+
* @returns {Promise<unknown>} a promise that resolves to a secret
|
|
60
|
+
*/
|
|
61
|
+
|
|
50
62
|
|
|
51
63
|
function _getSecrets() {
|
|
52
64
|
_getSecrets = _asyncToGenerator(function* () {
|
|
@@ -57,7 +69,7 @@ function _getSecrets() {
|
|
|
57
69
|
} = yield (0, _BaseApi.generateESVApi)(getApiConfig()).get(urlString, {
|
|
58
70
|
withCredentials: true
|
|
59
71
|
});
|
|
60
|
-
return data
|
|
72
|
+
return data;
|
|
61
73
|
});
|
|
62
74
|
return _getSecrets.apply(this, arguments);
|
|
63
75
|
}
|
|
@@ -65,6 +77,16 @@ function _getSecrets() {
|
|
|
65
77
|
function getSecret(_x) {
|
|
66
78
|
return _getSecret.apply(this, arguments);
|
|
67
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* Create secret
|
|
82
|
+
* @param {string} secretId secret id/name
|
|
83
|
+
* @param {string} value secret value
|
|
84
|
+
* @param {string} description secret description
|
|
85
|
+
* @param {string} encoding secret encoding (only `generic` is supported)
|
|
86
|
+
* @param {boolean} useInPlaceholders flag indicating if the secret can be used in placeholders
|
|
87
|
+
* @returns {Promise<unknown>} a promise that resolves to a secret
|
|
88
|
+
*/
|
|
89
|
+
|
|
68
90
|
|
|
69
91
|
function _getSecret() {
|
|
70
92
|
_getSecret = _asyncToGenerator(function* (secretId) {
|
|
@@ -83,6 +105,13 @@ function _getSecret() {
|
|
|
83
105
|
function putSecret(_x2, _x3, _x4) {
|
|
84
106
|
return _putSecret.apply(this, arguments);
|
|
85
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Set secret description
|
|
110
|
+
* @param {string} secretId secret id/name
|
|
111
|
+
* @param {string} description secret description
|
|
112
|
+
* @returns {Promise<unknown>} a promise that resolves to a status object
|
|
113
|
+
*/
|
|
114
|
+
|
|
86
115
|
|
|
87
116
|
function _putSecret() {
|
|
88
117
|
_putSecret = _asyncToGenerator(function* (secretId, value, description) {
|
|
@@ -111,6 +140,12 @@ function _putSecret() {
|
|
|
111
140
|
function setSecretDescription(_x5, _x6) {
|
|
112
141
|
return _setSecretDescription.apply(this, arguments);
|
|
113
142
|
}
|
|
143
|
+
/**
|
|
144
|
+
* Delete secret
|
|
145
|
+
* @param {string} secretId secret id/name
|
|
146
|
+
* @returns {Promise<unknown>} a promise that resolves to a secret object
|
|
147
|
+
*/
|
|
148
|
+
|
|
114
149
|
|
|
115
150
|
function _setSecretDescription() {
|
|
116
151
|
_setSecretDescription = _asyncToGenerator(function* (secretId, description) {
|
|
@@ -131,6 +166,12 @@ function _setSecretDescription() {
|
|
|
131
166
|
function deleteSecret(_x7) {
|
|
132
167
|
return _deleteSecret.apply(this, arguments);
|
|
133
168
|
}
|
|
169
|
+
/**
|
|
170
|
+
* Get secret versions
|
|
171
|
+
* @param {string} secretId secret id/name
|
|
172
|
+
* @returns {Promise<unknown>} a promise that resolves to an array of secret versions
|
|
173
|
+
*/
|
|
174
|
+
|
|
134
175
|
|
|
135
176
|
function _deleteSecret() {
|
|
136
177
|
_deleteSecret = _asyncToGenerator(function* (secretId) {
|
|
@@ -149,6 +190,13 @@ function _deleteSecret() {
|
|
|
149
190
|
function getSecretVersions(_x8) {
|
|
150
191
|
return _getSecretVersions.apply(this, arguments);
|
|
151
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Create new secret version
|
|
195
|
+
* @param {string} secretId secret id/name
|
|
196
|
+
* @param {string} value secret value
|
|
197
|
+
* @returns {Promise<unknown>} a promise that resolves to a version object
|
|
198
|
+
*/
|
|
199
|
+
|
|
152
200
|
|
|
153
201
|
function _getSecretVersions() {
|
|
154
202
|
_getSecretVersions = _asyncToGenerator(function* (secretId) {
|
|
@@ -167,6 +215,13 @@ function _getSecretVersions() {
|
|
|
167
215
|
function createNewVersionOfSecret(_x9, _x10) {
|
|
168
216
|
return _createNewVersionOfSecret.apply(this, arguments);
|
|
169
217
|
}
|
|
218
|
+
/**
|
|
219
|
+
* Get version of secret
|
|
220
|
+
* @param {string} secretId secret id/name
|
|
221
|
+
* @param {string} version secret version
|
|
222
|
+
* @returns {Promise<unknown>} a promise that resolves to a version object
|
|
223
|
+
*/
|
|
224
|
+
|
|
170
225
|
|
|
171
226
|
function _createNewVersionOfSecret() {
|
|
172
227
|
_createNewVersionOfSecret = _asyncToGenerator(function* (secretId, value) {
|
|
@@ -202,9 +257,32 @@ function _getVersionOfSecret() {
|
|
|
202
257
|
return _getVersionOfSecret.apply(this, arguments);
|
|
203
258
|
}
|
|
204
259
|
|
|
260
|
+
var VersionOfSecretStatus;
|
|
261
|
+
/**
|
|
262
|
+
* Update the status of a version of a secret
|
|
263
|
+
* @param {string} secretId secret id/name
|
|
264
|
+
* @param {string} version secret version
|
|
265
|
+
* @param {VersionOfSecretStatus} status status
|
|
266
|
+
* @returns {Promise<unknown>} a promise that resolves to a status object
|
|
267
|
+
*/
|
|
268
|
+
|
|
269
|
+
exports.VersionOfSecretStatus = VersionOfSecretStatus;
|
|
270
|
+
|
|
271
|
+
(function (VersionOfSecretStatus) {
|
|
272
|
+
VersionOfSecretStatus["DISABLED"] = "DISABLED";
|
|
273
|
+
VersionOfSecretStatus["ENABLED"] = "ENABLED";
|
|
274
|
+
})(VersionOfSecretStatus || (exports.VersionOfSecretStatus = VersionOfSecretStatus = {}));
|
|
275
|
+
|
|
205
276
|
function setStatusOfVersionOfSecret(_x13, _x14, _x15) {
|
|
206
277
|
return _setStatusOfVersionOfSecret.apply(this, arguments);
|
|
207
278
|
}
|
|
279
|
+
/**
|
|
280
|
+
* Delete version of secret
|
|
281
|
+
* @param {string} secretId secret id/name
|
|
282
|
+
* @param {string} version secret version
|
|
283
|
+
* @returns {Promise<unknown>} a promise that resolves to a version object
|
|
284
|
+
*/
|
|
285
|
+
|
|
208
286
|
|
|
209
287
|
function _setStatusOfVersionOfSecret() {
|
|
210
288
|
_setStatusOfVersionOfSecret = _asyncToGenerator(function* (secretId, version, status) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecretsApi.js","names":["secretsListURLTemplate","secretListVersionsURLTemplate","secretCreateNewVersionURLTemplate","secretGetVersionURLTemplate","secretVersionStatusURLTemplate","secretURLTemplate","secretSetDescriptionURLTemplate","apiVersion","getApiConfig","path","getSecrets","urlString","util","format","getTenantURL","storage","session","getTenant","data","generateESVApi","get","withCredentials","result","getSecret","secretId","putSecret","value","description","encoding","useInPlaceholders","Error","secretData","valueBase64","encode","put","setSecretDescription","post","deleteSecret","delete","getSecretVersions","createNewVersionOfSecret","getVersionOfSecret","version","setStatusOfVersionOfSecret","status","deleteVersionOfSecret"],"sources":["api/SecretsApi.ts"],"sourcesContent":["import util from 'util';\nimport { encode } from './utils/Base64';\nimport { getTenantURL } from './utils/ApiUtils';\nimport { generateESVApi } from './BaseApi';\nimport storage from '../storage/SessionStorage';\n\nconst secretsListURLTemplate = '%s/environment/secrets';\nconst secretListVersionsURLTemplate = '%s/environment/secrets/%s/versions';\nconst secretCreateNewVersionURLTemplate = `${secretListVersionsURLTemplate}?_action=create`;\nconst secretGetVersionURLTemplate = `${secretListVersionsURLTemplate}/%s`;\nconst secretVersionStatusURLTemplate = `${secretGetVersionURLTemplate}?_action=changestatus`;\nconst secretURLTemplate = '%s/environment/secrets/%s';\nconst secretSetDescriptionURLTemplate = `${secretURLTemplate}?_action=setDescription`;\n\nconst apiVersion = 'protocol=1.0,resource=1.0';\nconst getApiConfig = () => ({\n path: `/environment/secrets`,\n apiVersion,\n});\n\nexport async function getSecrets() {\n const urlString = util.format(\n secretsListURLTemplate,\n getTenantURL(storage.session.getTenant())\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data.result;\n}\n\nexport async function getSecret(secretId) {\n const urlString = util.format(\n secretURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\nexport async function putSecret(\n secretId,\n value,\n description,\n encoding = 'generic',\n useInPlaceholders = true\n) {\n if (encoding !== 'generic')\n throw new Error(`Unsupported encoding: ${encoding}`);\n const secretData = {\n valueBase64: encode(value),\n description,\n encoding,\n useInPlaceholders,\n };\n const urlString = util.format(\n secretURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).put(\n urlString,\n secretData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\nexport async function setSecretDescription(secretId, description) {\n const urlString = util.format(\n secretSetDescriptionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).post(\n urlString,\n { description },\n { withCredentials: true }\n );\n return data;\n}\n\nexport async function deleteSecret(secretId) {\n const urlString = util.format(\n secretURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\nexport async function getSecretVersions(secretId) {\n const urlString = util.format(\n secretListVersionsURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\nexport async function createNewVersionOfSecret(secretId, value) {\n const urlString = util.format(\n secretCreateNewVersionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).post(\n urlString,\n { valueBase64: encode(value) },\n { withCredentials: true }\n );\n return data;\n}\n\nexport async function getVersionOfSecret(secretId, version) {\n const urlString = util.format(\n secretGetVersionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId,\n version\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\nexport async function setStatusOfVersionOfSecret(secretId, version, status) {\n const urlString = util.format(\n secretVersionStatusURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId,\n version\n );\n const { data } = await generateESVApi(getApiConfig()).post(\n urlString,\n { status },\n { withCredentials: true }\n );\n return data;\n}\n\nexport async function deleteVersionOfSecret(secretId, version) {\n const urlString = util.format(\n secretGetVersionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId,\n version\n );\n const { data } = await generateESVApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SecretsApi.js","names":["secretsListURLTemplate","secretListVersionsURLTemplate","secretCreateNewVersionURLTemplate","secretGetVersionURLTemplate","secretVersionStatusURLTemplate","secretURLTemplate","secretSetDescriptionURLTemplate","apiVersion","getApiConfig","path","getSecrets","urlString","util","format","getTenantURL","storage","session","getTenant","data","generateESVApi","get","withCredentials","getSecret","secretId","putSecret","value","description","encoding","useInPlaceholders","Error","secretData","valueBase64","encode","put","setSecretDescription","post","deleteSecret","delete","getSecretVersions","createNewVersionOfSecret","getVersionOfSecret","version","VersionOfSecretStatus","setStatusOfVersionOfSecret","status","deleteVersionOfSecret"],"sources":["api/SecretsApi.ts"],"sourcesContent":["import util from 'util';\nimport { encode } from './utils/Base64';\nimport { getTenantURL } from './utils/ApiUtils';\nimport { generateESVApi } from './BaseApi';\nimport storage from '../storage/SessionStorage';\n\nconst secretsListURLTemplate = '%s/environment/secrets';\nconst secretListVersionsURLTemplate = '%s/environment/secrets/%s/versions';\nconst secretCreateNewVersionURLTemplate = `${secretListVersionsURLTemplate}?_action=create`;\nconst secretGetVersionURLTemplate = `${secretListVersionsURLTemplate}/%s`;\nconst secretVersionStatusURLTemplate = `${secretGetVersionURLTemplate}?_action=changestatus`;\nconst secretURLTemplate = '%s/environment/secrets/%s';\nconst secretSetDescriptionURLTemplate = `${secretURLTemplate}?_action=setDescription`;\n\nconst apiVersion = 'protocol=1.0,resource=1.0';\nconst getApiConfig = () => ({\n path: `/environment/secrets`,\n apiVersion,\n});\n\n/**\n * Get all secrets\n * @returns {Promise<unknown[]>} a promise that resolves to an array of secrets\n */\nexport async function getSecrets() {\n const urlString = util.format(\n secretsListURLTemplate,\n getTenantURL(storage.session.getTenant())\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get secret\n * @param secretId secret id/name\n * @returns {Promise<unknown>} a promise that resolves to a secret\n */\nexport async function getSecret(secretId) {\n const urlString = util.format(\n secretURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Create secret\n * @param {string} secretId secret id/name\n * @param {string} value secret value\n * @param {string} description secret description\n * @param {string} encoding secret encoding (only `generic` is supported)\n * @param {boolean} useInPlaceholders flag indicating if the secret can be used in placeholders\n * @returns {Promise<unknown>} a promise that resolves to a secret\n */\nexport async function putSecret(\n secretId,\n value,\n description,\n encoding = 'generic',\n useInPlaceholders = true\n) {\n if (encoding !== 'generic')\n throw new Error(`Unsupported encoding: ${encoding}`);\n const secretData = {\n valueBase64: encode(value),\n description,\n encoding,\n useInPlaceholders,\n };\n const urlString = util.format(\n secretURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).put(\n urlString,\n secretData,\n {\n withCredentials: true,\n }\n );\n return data;\n}\n\n/**\n * Set secret description\n * @param {string} secretId secret id/name\n * @param {string} description secret description\n * @returns {Promise<unknown>} a promise that resolves to a status object\n */\nexport async function setSecretDescription(secretId, description) {\n const urlString = util.format(\n secretSetDescriptionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).post(\n urlString,\n { description },\n { withCredentials: true }\n );\n return data;\n}\n\n/**\n * Delete secret\n * @param {string} secretId secret id/name\n * @returns {Promise<unknown>} a promise that resolves to a secret object\n */\nexport async function deleteSecret(secretId) {\n const urlString = util.format(\n secretURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Get secret versions\n * @param {string} secretId secret id/name\n * @returns {Promise<unknown>} a promise that resolves to an array of secret versions\n */\nexport async function getSecretVersions(secretId) {\n const urlString = util.format(\n secretListVersionsURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\n/**\n * Create new secret version\n * @param {string} secretId secret id/name\n * @param {string} value secret value\n * @returns {Promise<unknown>} a promise that resolves to a version object\n */\nexport async function createNewVersionOfSecret(secretId, value) {\n const urlString = util.format(\n secretCreateNewVersionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId\n );\n const { data } = await generateESVApi(getApiConfig()).post(\n urlString,\n { valueBase64: encode(value) },\n { withCredentials: true }\n );\n return data;\n}\n\n/**\n * Get version of secret\n * @param {string} secretId secret id/name\n * @param {string} version secret version\n * @returns {Promise<unknown>} a promise that resolves to a version object\n */\nexport async function getVersionOfSecret(secretId, version) {\n const urlString = util.format(\n secretGetVersionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId,\n version\n );\n const { data } = await generateESVApi(getApiConfig()).get(urlString, {\n withCredentials: true,\n });\n return data;\n}\n\nexport enum VersionOfSecretStatus {\n DISABLED = 'DISABLED',\n ENABLED = 'ENABLED',\n}\n\n/**\n * Update the status of a version of a secret\n * @param {string} secretId secret id/name\n * @param {string} version secret version\n * @param {VersionOfSecretStatus} status status\n * @returns {Promise<unknown>} a promise that resolves to a status object\n */\nexport async function setStatusOfVersionOfSecret(\n secretId: string,\n version: string,\n status: VersionOfSecretStatus\n) {\n const urlString = util.format(\n secretVersionStatusURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId,\n version\n );\n const { data } = await generateESVApi(getApiConfig()).post(\n urlString,\n { status },\n { withCredentials: true }\n );\n return data;\n}\n\n/**\n * Delete version of secret\n * @param {string} secretId secret id/name\n * @param {string} version secret version\n * @returns {Promise<unknown>} a promise that resolves to a version object\n */\nexport async function deleteVersionOfSecret(secretId, version) {\n const urlString = util.format(\n secretGetVersionURLTemplate,\n getTenantURL(storage.session.getTenant()),\n secretId,\n version\n );\n const { data } = await generateESVApi(getApiConfig()).delete(urlString, {\n withCredentials: true,\n });\n return data;\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SecretsApi.test.js","names":["__dirname","path","dirname","fileURLToPath","mock","MockAdapter","axios","state","default","session","setTenant","setRealm","setCookieName","setCookieValue","describe","test","mockResponse","JSON","parse","fs","readFileSync","resolve","onGet","reply","response","SecretsRaw","getSecrets","expect","toBeTruthy","toMatchObject","assertions","error","status","toBe","data","code","message","getSecret","onPut","putSecret","onPost","setSecretDescription","onDelete","deleteSecret","getSecretVersions","createNewVersionOfSecret","getVersionOfSecret","setStatusOfVersionOfSecret","VersionOfSecretStatus","DISABLED","deleteVersionOfSecret"],"sources":["api/SecretsApi.test.ts"],"sourcesContent":["import axios from 'axios';\nimport MockAdapter from 'axios-mock-adapter';\nimport { SecretsRaw, state } from '../index';\nimport fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst mock = new MockAdapter(axios);\n\nstate.default.session.setTenant('https://openam-frodo-dev.forgeblocks.com/am');\nstate.default.session.setRealm('alpha');\nstate.default.session.setCookieName('cookieName');\nstate.default.session.setCookieValue('cookieValue');\n\ndescribe('SecretsApi - getSecrets()', () => {\n test('getSecrets() 1: Get all secrets - success', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getSecrets/secrets.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet('https://openam-frodo-dev.forgeblocks.com/environment/secrets')\n .reply(200, mockResponse);\n const response = await SecretsRaw.getSecrets();\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('getSecrets() 2: Get all secrets - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getSecrets/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet('https://openam-frodo-dev.forgeblocks.com/environment/secrets')\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.getSecrets();\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n});\n\ndescribe('SecretsApi - getSecret()', () => {\n test('getSecret() 1: Get existing secret: esv-volkerstestsecret1', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getSecret/esv-volkerstestsecret1.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.getSecret('esv-volkerstestsecret1');\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('getSecret() 2: Get non-existing secret: esv-does-not-exist', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getSecret/esv-does-not-exist.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-does-not-exist'\n )\n .reply(404, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.getSecret('esv-does-not-exist');\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(404);\n expect(error.response.data.code).toBe(404);\n expect(error.response.data.message).toBe(\n 'The secret does not exist or does not have a version'\n );\n }\n });\n});\n\ndescribe('SecretsApi - putSecret()', () => {\n test('putSecret() 1: Create secret: esv-volkerstestsecret1 - success', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/putSecret/esv-volkerstestsecret1.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.putSecret(\n 'esv-volkerstestsecret1',\n \"Volker's Test Secret Value\",\n \"Volker's Test Secret Description\",\n 'generic',\n true\n );\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('putSecret() 2: Create secret: esv-volkerstestsecret1 - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/putSecret/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPut(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.putSecret(\n 'esv-volkerstestsecret1',\n \"Volker's Test Secret Value\",\n \"Volker's Test Secret Description\",\n 'generic',\n true\n );\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n});\n\ndescribe('SecretsApi - setSecretDescription()', () => {\n test('setSecretDescription() 1: Set secret description: esv-volkerstestsecret1 - success', async () => {\n const mockResponse = '';\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1?_action=setDescription'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.setSecretDescription(\n 'esv-volkerstestsecret1',\n \"Volker's Updated Test Secret Description\"\n );\n expect(response).toBe('');\n });\n\n test('setSecretDescription() 2: Set secret description: esv-volkerstestsecret1 - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/setSecretDescription/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1?_action=setDescription'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.setSecretDescription(\n 'esv-volkerstestsecret1',\n \"Volker's Updated Test Secret Description\"\n );\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n});\n\ndescribe('SecretsApi - deleteSecret()', () => {\n test('deleteSecret() 1: Delete secret: esv-volkerstestsecret1 - success', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/deleteSecret/esv-volkerstestsecret1.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.deleteSecret('esv-volkerstestsecret1');\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('deleteSecret() 2: Delete secret: esv-volkerstestsecret1 - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/deleteSecret/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.deleteSecret('esv-volkerstestsecret1');\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n});\n\ndescribe('SecretsApi - getSecretVersions()', () => {\n test('getSecretVersions() 1: Get versions of existing secret: esv-volkerstestsecret1', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getSecretVersions/esv-volkerstestsecret1.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.getSecretVersions(\n 'esv-volkerstestsecret1'\n );\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('getSecretVersions() 2: Get versions of non-existing secret: esv-does-not-exist', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getSecretVersions/esv-does-not-exist.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-does-not-exist/versions'\n )\n .reply(404, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.getSecretVersions('esv-does-not-exist');\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(404);\n expect(error.response.data.code).toBe(404);\n expect(error.response.data.message).toBe(\n 'The secret does not exist or does not have a version'\n );\n }\n });\n});\n\ndescribe('SecretsApi - createNewVersionOfSecret()', () => {\n test('createNewVersionOfSecret() 1: Create new version of existing secret: esv-volkerstestsecret1 - success', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/createNewVersionOfSecret/esv-volkerstestsecret1.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions?_action=create'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.createNewVersionOfSecret(\n 'esv-volkerstestsecret1',\n \"Volker's Test Secret Value\"\n );\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('createNewVersionOfSecret() 2: Create new version of existing secret: esv-volkerstestsecret1 - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/createNewVersionOfSecret/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions?_action=create'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.createNewVersionOfSecret(\n 'esv-volkerstestsecret1',\n \"Volker's Test Secret Value\"\n );\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n\n test('createNewVersionOfSecret() 3: Create new version of non-existing secret: esv-does-not-exist - error', async () => {\n const mockResponse = fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/createNewVersionOfSecret/esv-does-not-exist.txt'\n ),\n 'utf8'\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions?_action=create'\n )\n .reply(500, mockResponse);\n expect.assertions(3);\n try {\n await SecretsRaw.createNewVersionOfSecret(\n 'esv-volkerstestsecret1',\n \"Volker's Test Secret Value\"\n );\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data).toBe(mockResponse);\n }\n });\n});\n\ndescribe('SecretsApi - getVersionOfSecret()', () => {\n test('getVersionOfSecret() 1: Get version 2 of existing secret: esv-volkerstestsecret1', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getVersionOfSecret/esv-volkerstestsecret1_v2.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions/2'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.getVersionOfSecret(\n 'esv-volkerstestsecret1',\n '2'\n );\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('getVersionOfSecret() 2: Get version 2 of non-existing secret: esv-does-not-exist', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/getVersionOfSecret/esv-does-not-exist_v2.json'\n ),\n 'utf8'\n )\n );\n mock\n .onGet(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-does-not-exist/versions/2'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.getVersionOfSecret('esv-does-not-exist', '2');\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe(\n 'Failed to update secret version'\n );\n }\n });\n});\n\ndescribe('SecretsApi - setStatusOfVersionOfSecret()', () => {\n test('setStatusOfVersionOfSecret() 1: Disable version 2 of existing secret: esv-volkerstestsecret1 - success', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/setStatusOfVersionOfSecret/esv-volkerstestsecret1_v2_DISABLED.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions/2?_action=changestatus'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.setStatusOfVersionOfSecret(\n 'esv-volkerstestsecret1',\n '2',\n SecretsRaw.VersionOfSecretStatus.DISABLED\n );\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('setStatusOfVersionOfSecret() 2: Disable version 2 of existing secret: esv-volkerstestsecret1 - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/setStatusOfVersionOfSecret/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions/2?_action=changestatus'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.setStatusOfVersionOfSecret(\n 'esv-volkerstestsecret1',\n '2',\n SecretsRaw.VersionOfSecretStatus.DISABLED\n );\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n\n test('setStatusOfVersionOfSecret() 3: Disable version 2 of non-existing secret: esv-does-not-exist - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/setStatusOfVersionOfSecret/esv-does-not-exist_v2_DISABLED.json'\n ),\n 'utf8'\n )\n );\n mock\n .onPost(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-does-not-exist/versions/2?_action=changestatus'\n )\n .reply(404, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.setStatusOfVersionOfSecret(\n 'esv-does-not-exist',\n '2',\n SecretsRaw.VersionOfSecretStatus.DISABLED\n );\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(404);\n expect(error.response.data.code).toBe(404);\n expect(error.response.data.message).toBe(\n 'The secret does not exist or does not have a version'\n );\n }\n });\n});\n\ndescribe('SecretsApi - deleteVersionOfSecret()', () => {\n test('deleteVersionOfSecret() 1: Delete version 2 of secret: esv-volkerstestsecret1 - success', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/deleteVersionOfSecret/esv-volkerstestsecret1_v2.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions/2'\n )\n .reply(200, mockResponse);\n const response = await SecretsRaw.deleteVersionOfSecret(\n 'esv-volkerstestsecret1',\n '2'\n );\n expect(response).toBeTruthy();\n expect(response).toMatchObject(mockResponse);\n });\n\n test('deleteVersionOfSecret() 2: Delete version 2 of secret: esv-volkerstestsecret1 - error', async () => {\n const mockResponse = JSON.parse(\n fs.readFileSync(\n path.resolve(\n __dirname,\n '../../test/mocks/SecretsApi/deleteVersionOfSecret/error.json'\n ),\n 'utf8'\n )\n );\n mock\n .onDelete(\n 'https://openam-frodo-dev.forgeblocks.com/environment/secrets/esv-volkerstestsecret1/versions/2'\n )\n .reply(500, mockResponse);\n expect.assertions(4);\n try {\n await SecretsRaw.deleteVersionOfSecret('esv-volkerstestsecret1', '2');\n } catch (error) {\n // console.dir(error);\n expect(error).toBeTruthy();\n expect(error.response.status).toBe(500);\n expect(error.response.data.code).toBe(500);\n expect(error.response.data.message).toBe('Server Error');\n }\n });\n});\n"],"mappings":"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"}
|
package/cjs/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.Variables = exports.Utils = exports.TreeRaw = exports.Theme = exports.StartupRaw = exports.Startup = exports.Secrets = exports.Script = exports.Saml = exports.Realm = exports.Organization = exports.OAuth2OIDCApi = exports.OAuth2Client = exports.NodeRaw = exports.ManagedObject = exports.Log = exports.Journey = exports.Idp = exports.Idm = exports.EmailTemplate = exports.ConnectionProfile = exports.CirclesOfTrust = exports.Authenticate = exports.Admin = void 0;
|
|
6
|
+
exports.Variables = exports.Utils = exports.TreeRaw = exports.Theme = exports.StartupRaw = exports.Startup = exports.SecretsRaw = exports.Secrets = exports.Script = exports.Saml = exports.Realm = exports.Organization = exports.OAuth2OIDCApi = exports.OAuth2Client = exports.NodeRaw = exports.ManagedObject = exports.Log = exports.Journey = exports.Idp = exports.Idm = exports.EmailTemplate = exports.ConnectionProfile = exports.CirclesOfTrust = exports.Authenticate = exports.Admin = void 0;
|
|
7
7
|
exports.getVersion = getVersion;
|
|
8
8
|
exports.state = void 0;
|
|
9
9
|
|
|
@@ -25,6 +25,10 @@ var _StartupRaw = _interopRequireWildcard(require("./api/StartupApi"));
|
|
|
25
25
|
|
|
26
26
|
exports.StartupRaw = _StartupRaw;
|
|
27
27
|
|
|
28
|
+
var _SecretsRaw = _interopRequireWildcard(require("./api/SecretsApi"));
|
|
29
|
+
|
|
30
|
+
exports.SecretsRaw = _SecretsRaw;
|
|
31
|
+
|
|
28
32
|
var _Admin = _interopRequireWildcard(require("./ops/AdminOps"));
|
|
29
33
|
|
|
30
34
|
exports.Admin = _Admin;
|
package/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","getVersion","version"],"sources":["index.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../package.json'), 'utf8')\n);\n\nexport function getVersion() {\n return `v${pkg.version}`;\n}\n\n// Api Layer\nexport * as NodeRaw from './api/NodeApi';\nexport * as TreeRaw from './api/TreeApi';\nexport * as StartupRaw from './api/StartupApi';\n\n// Ops Layer\nexport * as Admin from './ops/AdminOps';\nexport * as Authenticate from './ops/AuthenticateOps';\nexport * as CirclesOfTrust from './ops/CirclesOfTrustOps';\nexport * as ConnectionProfile from './ops/ConnectionProfileOps';\nexport * as EmailTemplate from './ops/EmailTemplateOps';\nexport * as Idm from './ops/IdmOps';\nexport * as Idp from './ops/IdmOps';\nexport * as Journey from './ops/JourneyOps';\nexport * as Log from './ops/LogOps';\nexport * as ManagedObject from './ops/ManagedObjectOps';\nexport * as OAuth2Client from './ops/OAuth2ClientOps';\nexport * as Organization from './ops/OrganizationOps';\nexport * as Realm from './ops/RealmOps';\nexport * as Saml from './ops/SamlOps';\nexport * as Script from './ops/ScriptOps';\nexport * as Secrets from './ops/SecretsOps';\nexport * as Startup from './ops/StartupOps';\nexport * as Theme from './ops/ThemeOps';\nexport * as Variables from './ops/VariablesOps';\n// TODO: revisit if there are better ways\nexport * as Utils from './ops/utils/OpsUtils';\n// TODO: reconsider the aproach to pass in state from client\n// lib should be stateless, an aplication should own its state\nexport * as state from './storage/SessionStorage';\n// TODO: need to figure out if this is the right approach or if we should even\n// use a public oauth2/oidc library. might be ok for now since there is only\n// one place where the cli needs to execute an oauth flow.\nexport * as OAuth2OIDCApi from './api/OAuth2OIDCApi';\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA
|
|
1
|
+
{"version":3,"file":"index.js","names":["__dirname","path","dirname","fileURLToPath","pkg","JSON","parse","fs","readFileSync","resolve","getVersion","version"],"sources":["index.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { fileURLToPath } from 'url';\n\nconst __dirname = path.dirname(fileURLToPath(import.meta.url));\n\nconst pkg = JSON.parse(\n fs.readFileSync(path.resolve(__dirname, '../package.json'), 'utf8')\n);\n\nexport function getVersion() {\n return `v${pkg.version}`;\n}\n\n// Api Layer\nexport * as NodeRaw from './api/NodeApi';\nexport * as TreeRaw from './api/TreeApi';\nexport * as StartupRaw from './api/StartupApi';\nexport * as SecretsRaw from './api/SecretsApi';\n\n// Ops Layer\nexport * as Admin from './ops/AdminOps';\nexport * as Authenticate from './ops/AuthenticateOps';\nexport * as CirclesOfTrust from './ops/CirclesOfTrustOps';\nexport * as ConnectionProfile from './ops/ConnectionProfileOps';\nexport * as EmailTemplate from './ops/EmailTemplateOps';\nexport * as Idm from './ops/IdmOps';\nexport * as Idp from './ops/IdmOps';\nexport * as Journey from './ops/JourneyOps';\nexport * as Log from './ops/LogOps';\nexport * as ManagedObject from './ops/ManagedObjectOps';\nexport * as OAuth2Client from './ops/OAuth2ClientOps';\nexport * as Organization from './ops/OrganizationOps';\nexport * as Realm from './ops/RealmOps';\nexport * as Saml from './ops/SamlOps';\nexport * as Script from './ops/ScriptOps';\nexport * as Secrets from './ops/SecretsOps';\nexport * as Startup from './ops/StartupOps';\nexport * as Theme from './ops/ThemeOps';\nexport * as Variables from './ops/VariablesOps';\n// TODO: revisit if there are better ways\nexport * as Utils from './ops/utils/OpsUtils';\n// TODO: reconsider the aproach to pass in state from client\n// lib should be stateless, an aplication should own its state\nexport * as state from './storage/SessionStorage';\n// TODO: need to figure out if this is the right approach or if we should even\n// use a public oauth2/oidc library. might be ok for now since there is only\n// one place where the cli needs to execute an oauth flow.\nexport * as OAuth2OIDCApi from './api/OAuth2OIDCApi';\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,QAAS,GAAGC,aAAA,CAAKC,OAAL,CAAa,IAAAC,kBAAA,sDAAb,CAAlB;;AAEA,IAAMC,GAAG,GAAGC,IAAI,CAACC,KAAL,CACVC,WAAA,CAAGC,YAAH,CAAgBP,aAAA,CAAKQ,OAAL,CAAaT,QAAb,EAAwB,iBAAxB,CAAhB,EAA4D,MAA5D,CADU,CAAZ;;AAIO,SAASU,UAAT,GAAsB;EAC3B,kBAAWN,GAAG,CAACO,OAAf;AACD,C,CAED"}
|
package/cjs/ops/SecretsOps.js
CHANGED
|
@@ -51,7 +51,7 @@ function _listSecrets() {
|
|
|
51
51
|
var secrets = [];
|
|
52
52
|
|
|
53
53
|
try {
|
|
54
|
-
secrets = yield (0, _SecretsApi.getSecrets)();
|
|
54
|
+
secrets = (yield (0, _SecretsApi.getSecrets)()).results;
|
|
55
55
|
} catch (error) {
|
|
56
56
|
(0, _Console.printMessage)("".concat(error.message), 'error');
|
|
57
57
|
(0, _Console.printMessage)(error.response.data, 'error');
|
|
@@ -169,7 +169,7 @@ function deleteSecretsCmd() {
|
|
|
169
169
|
function _deleteSecretsCmd() {
|
|
170
170
|
_deleteSecretsCmd = _asyncToGenerator(function* () {
|
|
171
171
|
try {
|
|
172
|
-
var secrets = yield (0, _SecretsApi.getSecrets)();
|
|
172
|
+
var secrets = (yield (0, _SecretsApi.getSecrets)()).results;
|
|
173
173
|
(0, _Console.createProgressIndicator)(secrets.length, "Deleting secrets...");
|
|
174
174
|
|
|
175
175
|
for (var secret of secrets) {
|
|
@@ -303,7 +303,7 @@ function _activateVersionOfSecret() {
|
|
|
303
303
|
(0, _Console.createProgressIndicator)(undefined, "Activating version ".concat(version, " of secret ").concat(secretId, "..."), 'indeterminate');
|
|
304
304
|
|
|
305
305
|
try {
|
|
306
|
-
yield (0, _SecretsApi.setStatusOfVersionOfSecret)(secretId, version,
|
|
306
|
+
yield (0, _SecretsApi.setStatusOfVersionOfSecret)(secretId, version, _SecretsApi.VersionOfSecretStatus.ENABLED);
|
|
307
307
|
(0, _Console.stopProgressIndicator)("Activated version ".concat(version, " of secret ").concat(secretId), 'success');
|
|
308
308
|
} catch (error) {
|
|
309
309
|
(0, _Console.stopProgressIndicator)("Error: ".concat(error.response.data.code, " - ").concat(error.response.data.message), 'fail');
|
|
@@ -327,7 +327,7 @@ function _deactivateVersionOfSecret() {
|
|
|
327
327
|
(0, _Console.createProgressIndicator)(undefined, "Deactivating version ".concat(version, " of secret ").concat(secretId, "..."), 'indeterminate');
|
|
328
328
|
|
|
329
329
|
try {
|
|
330
|
-
yield (0, _SecretsApi.setStatusOfVersionOfSecret)(secretId, version,
|
|
330
|
+
yield (0, _SecretsApi.setStatusOfVersionOfSecret)(secretId, version, _SecretsApi.VersionOfSecretStatus.DISABLED);
|
|
331
331
|
(0, _Console.stopProgressIndicator)("Deactivated version ".concat(version, " of secret ").concat(secretId), 'success');
|
|
332
332
|
} catch (error) {
|
|
333
333
|
(0, _Console.stopProgressIndicator)("Error: ".concat(error.response.data.code, " - ").concat(error.response.data.message), 'fail');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecretsOps.js","names":["listSecrets","long","secrets","getSecrets","error","printMessage","message","response","data","table","createTable","hAlign","content","sort","a","b","_id","localeCompare","secret","push","activeVersion","loadedVersion","loaded","wordwrap","description","resolveUserName","lastChangedBy","Date","lastChangeDate","toLocaleString","toString","forEach","createSecret","id","value","encoding","useInPlaceholders","createProgressIndicator","undefined","putSecret","stopProgressIndicator","code","setDescriptionOfSecret","secretId","setSecretDescription","deleteSecretCmd","deleteSecret","deleteSecretsCmd","length","updateProgressIndicator","listSecretVersionsCmd","versions","getSecretVersions","statusMap","ENABLED","DISABLED","DESTROYED","version","status","createDate","describeSecret","getSecret","createKeyValueTable","createNewVersionOfSecretCmd","createNewVersionOfSecret","activateVersionOfSecret","setStatusOfVersionOfSecret","deactivateVersionOfSecret","deleteVersionOfSecretCmd","deleteVersionOfSecret"],"sources":["ops/SecretsOps.ts"],"sourcesContent":["import {\n createKeyValueTable,\n createProgressIndicator,\n createTable,\n printMessage,\n stopProgressIndicator,\n updateProgressIndicator,\n} from './utils/Console';\nimport {\n createNewVersionOfSecret,\n deleteSecret,\n deleteVersionOfSecret,\n getSecret,\n getSecrets,\n getSecretVersions,\n putSecret,\n setSecretDescription,\n setStatusOfVersionOfSecret,\n} from '../api/SecretsApi';\nimport wordwrap from './utils/Wordwrap';\nimport { resolveUserName } from './ManagedObjectOps';\n\n/**\n * List secrets\n * @param {boolean} long Long version, all the fields\n */\nexport async function listSecrets(long) {\n let secrets = [];\n try {\n secrets = await getSecrets();\n } catch (error) {\n printMessage(`${error.message}`, 'error');\n printMessage(error.response.data, 'error');\n }\n if (long) {\n const table = createTable([\n 'Id'['brightCyan'],\n { hAlign: 'right', content: 'Active\\nVersion'['brightCyan'] },\n { hAlign: 'right', content: 'Loaded\\nVersion'['brightCyan'] },\n 'Status'['brightCyan'],\n 'Description'['brightCyan'],\n 'Modifier'['brightCyan'],\n 'Modified'['brightCyan'],\n ]);\n secrets.sort((a, b) => a._id.localeCompare(b._id));\n for (const secret of secrets) {\n table.push([\n secret._id,\n { hAlign: 'right', content: secret.activeVersion },\n { hAlign: 'right', content: secret.loadedVersion },\n secret.loaded ? 'loaded'['brightGreen'] : 'unloaded'['brightRed'],\n wordwrap(secret.description, 40),\n // eslint-disable-next-line no-await-in-loop\n await resolveUserName('teammember', secret.lastChangedBy),\n new Date(secret.lastChangeDate).toLocaleString(),\n ]);\n }\n printMessage(table.toString());\n } else {\n secrets.forEach((secret) => {\n printMessage(secret._id);\n });\n }\n}\n\n/**\n * Create secret\n * @param {String} id secret id\n * @param {String} value secret value\n * @param {String} description secret description\n * @param {String} encoding secret encoding\n * @param {boolean} useInPlaceholders use secret in placeholders\n */\nexport async function createSecret(\n id,\n value,\n description,\n encoding,\n useInPlaceholders\n) {\n createProgressIndicator(\n undefined,\n `Creating secret ${id}...`,\n 'indeterminate'\n );\n try {\n await putSecret(id, value, description, encoding, useInPlaceholders);\n stopProgressIndicator(`Created secret ${id}`, 'success');\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Set description of secret\n * @param {String} secretId secret id\n * @param {String} description secret description\n */\nexport async function setDescriptionOfSecret(secretId, description) {\n createProgressIndicator(\n undefined,\n `Setting description of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await setSecretDescription(secretId, description);\n stopProgressIndicator(`Set description of secret ${secretId}`, 'success');\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Delete a secret\n * @param {String} secretId secret id\n */\nexport async function deleteSecretCmd(secretId) {\n createProgressIndicator(\n undefined,\n `Deleting secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await deleteSecret(secretId);\n stopProgressIndicator(`Deleted secret ${secretId}`, 'success');\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Delete all secrets\n */\nexport async function deleteSecretsCmd() {\n try {\n const secrets = await getSecrets();\n createProgressIndicator(secrets.length, `Deleting secrets...`);\n for (const secret of secrets) {\n try {\n // eslint-disable-next-line no-await-in-loop\n await deleteSecret(secret._id);\n updateProgressIndicator(`Deleted secret ${secret._id}`);\n } catch (error) {\n printMessage(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'error'\n );\n }\n }\n stopProgressIndicator(`Secrets deleted.`);\n } catch (error) {\n printMessage(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'error'\n );\n }\n}\n\n/**\n * List all the versions of the secret\n * @param {String} secretId secret id\n */\nexport async function listSecretVersionsCmd(secretId) {\n let versions = [];\n try {\n versions = await getSecretVersions(secretId);\n } catch (error) {\n printMessage(`${error.message}`, 'error');\n printMessage(error.response.data, 'error');\n }\n const table = createTable([\n { hAlign: 'right', content: 'Version'['brightCyan'] },\n 'Status'['brightCyan'],\n 'Loaded'['brightCyan'],\n 'Created'['brightCyan'],\n ]);\n // versions.sort((a, b) => a._id.localeCompare(b._id));\n const statusMap = {\n ENABLED: 'active'['brightGreen'],\n DISABLED: 'inactive'['brightRed'],\n DESTROYED: 'deleted'['brightRed'],\n };\n for (const version of versions) {\n table.push([\n { hAlign: 'right', content: version.version },\n statusMap[version.status],\n version.loaded ? 'loaded'['brightGreen'] : 'unloaded'['brightRed'],\n new Date(version.createDate).toLocaleString(),\n ]);\n }\n printMessage(table.toString());\n}\n\n/**\n * Describe a secret\n * @param {String} secretId Secret id\n */\nexport async function describeSecret(secretId) {\n const secret = await getSecret(secretId);\n const table = createKeyValueTable();\n table.push(['Name'['brightCyan'], secret._id]);\n table.push(['Active Version'['brightCyan'], secret.activeVersion]);\n table.push(['Loaded Version'['brightCyan'], secret.loadedVersion]);\n table.push([\n 'Status'['brightCyan'],\n secret.loaded ? 'loaded'['brightGreen'] : 'unloaded'['brightRed'],\n ]);\n table.push(['Description'['brightCyan'], wordwrap(secret.description, 60)]);\n table.push([\n 'Modified'['brightCyan'],\n new Date(secret.lastChangeDate).toLocaleString(),\n ]);\n table.push([\n 'Modifier'['brightCyan'],\n await resolveUserName('teammember', secret.lastChangedBy),\n ]);\n table.push(['Modifier UUID'['brightCyan'], secret.lastChangedBy]);\n table.push(['Encoding'['brightCyan'], secret.encoding]);\n table.push(['Use In Placeholders'['brightCyan'], secret.useInPlaceholders]);\n printMessage(table.toString());\n printMessage('\\nSecret Versions:');\n await listSecretVersionsCmd(secretId);\n}\n\n/**\n * Create new version of secret\n * @param {String} secretId secret id\n * @param {String} value secret value\n */\nexport async function createNewVersionOfSecretCmd(secretId, value) {\n createProgressIndicator(\n undefined,\n `Creating new version of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n const version = await createNewVersionOfSecret(secretId, value);\n stopProgressIndicator(\n `Created version ${version.version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Activate a version of a secret\n * @param {String} secretId secret id\n * @param {Number} version version of secret\n */\nexport async function activateVersionOfSecret(secretId, version) {\n createProgressIndicator(\n undefined,\n `Activating version ${version} of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await setStatusOfVersionOfSecret(secretId, version, 'ENABLED');\n stopProgressIndicator(\n `Activated version ${version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Deactivate a version of a secret\n * @param {String} secretId secret id\n * @param {Number} version version of secret\n */\nexport async function deactivateVersionOfSecret(secretId, version) {\n createProgressIndicator(\n undefined,\n `Deactivating version ${version} of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await setStatusOfVersionOfSecret(secretId, version, 'DISABLED');\n stopProgressIndicator(\n `Deactivated version ${version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Delete version of secret\n * @param {String} secretId secret id\n * @param {Number} version version of secret\n */\nexport async function deleteVersionOfSecretCmd(secretId, version) {\n createProgressIndicator(\n undefined,\n `Deleting version ${version} of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await deleteVersionOfSecret(secretId, version);\n stopProgressIndicator(\n `Deleted version ${version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SecretsOps.js","names":["listSecrets","long","secrets","getSecrets","results","error","printMessage","message","response","data","table","createTable","hAlign","content","sort","a","b","_id","localeCompare","secret","push","activeVersion","loadedVersion","loaded","wordwrap","description","resolveUserName","lastChangedBy","Date","lastChangeDate","toLocaleString","toString","forEach","createSecret","id","value","encoding","useInPlaceholders","createProgressIndicator","undefined","putSecret","stopProgressIndicator","code","setDescriptionOfSecret","secretId","setSecretDescription","deleteSecretCmd","deleteSecret","deleteSecretsCmd","length","updateProgressIndicator","listSecretVersionsCmd","versions","getSecretVersions","statusMap","ENABLED","DISABLED","DESTROYED","version","status","createDate","describeSecret","getSecret","createKeyValueTable","createNewVersionOfSecretCmd","createNewVersionOfSecret","activateVersionOfSecret","setStatusOfVersionOfSecret","VersionOfSecretStatus","deactivateVersionOfSecret","deleteVersionOfSecretCmd","deleteVersionOfSecret"],"sources":["ops/SecretsOps.ts"],"sourcesContent":["import {\n createKeyValueTable,\n createProgressIndicator,\n createTable,\n printMessage,\n stopProgressIndicator,\n updateProgressIndicator,\n} from './utils/Console';\nimport {\n createNewVersionOfSecret,\n deleteSecret,\n deleteVersionOfSecret,\n getSecret,\n getSecrets,\n getSecretVersions,\n putSecret,\n setSecretDescription,\n setStatusOfVersionOfSecret,\n VersionOfSecretStatus,\n} from '../api/SecretsApi';\nimport wordwrap from './utils/Wordwrap';\nimport { resolveUserName } from './ManagedObjectOps';\n\n/**\n * List secrets\n * @param {boolean} long Long version, all the fields\n */\nexport async function listSecrets(long) {\n let secrets = [];\n try {\n secrets = (await getSecrets()).results;\n } catch (error) {\n printMessage(`${error.message}`, 'error');\n printMessage(error.response.data, 'error');\n }\n if (long) {\n const table = createTable([\n 'Id'['brightCyan'],\n { hAlign: 'right', content: 'Active\\nVersion'['brightCyan'] },\n { hAlign: 'right', content: 'Loaded\\nVersion'['brightCyan'] },\n 'Status'['brightCyan'],\n 'Description'['brightCyan'],\n 'Modifier'['brightCyan'],\n 'Modified'['brightCyan'],\n ]);\n secrets.sort((a, b) => a._id.localeCompare(b._id));\n for (const secret of secrets) {\n table.push([\n secret._id,\n { hAlign: 'right', content: secret.activeVersion },\n { hAlign: 'right', content: secret.loadedVersion },\n secret.loaded ? 'loaded'['brightGreen'] : 'unloaded'['brightRed'],\n wordwrap(secret.description, 40),\n // eslint-disable-next-line no-await-in-loop\n await resolveUserName('teammember', secret.lastChangedBy),\n new Date(secret.lastChangeDate).toLocaleString(),\n ]);\n }\n printMessage(table.toString());\n } else {\n secrets.forEach((secret) => {\n printMessage(secret._id);\n });\n }\n}\n\n/**\n * Create secret\n * @param {String} id secret id\n * @param {String} value secret value\n * @param {String} description secret description\n * @param {String} encoding secret encoding\n * @param {boolean} useInPlaceholders use secret in placeholders\n */\nexport async function createSecret(\n id,\n value,\n description,\n encoding,\n useInPlaceholders\n) {\n createProgressIndicator(\n undefined,\n `Creating secret ${id}...`,\n 'indeterminate'\n );\n try {\n await putSecret(id, value, description, encoding, useInPlaceholders);\n stopProgressIndicator(`Created secret ${id}`, 'success');\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Set description of secret\n * @param {String} secretId secret id\n * @param {String} description secret description\n */\nexport async function setDescriptionOfSecret(secretId, description) {\n createProgressIndicator(\n undefined,\n `Setting description of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await setSecretDescription(secretId, description);\n stopProgressIndicator(`Set description of secret ${secretId}`, 'success');\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Delete a secret\n * @param {String} secretId secret id\n */\nexport async function deleteSecretCmd(secretId) {\n createProgressIndicator(\n undefined,\n `Deleting secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await deleteSecret(secretId);\n stopProgressIndicator(`Deleted secret ${secretId}`, 'success');\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Delete all secrets\n */\nexport async function deleteSecretsCmd() {\n try {\n const secrets = (await getSecrets()).results;\n createProgressIndicator(secrets.length, `Deleting secrets...`);\n for (const secret of secrets) {\n try {\n // eslint-disable-next-line no-await-in-loop\n await deleteSecret(secret._id);\n updateProgressIndicator(`Deleted secret ${secret._id}`);\n } catch (error) {\n printMessage(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'error'\n );\n }\n }\n stopProgressIndicator(`Secrets deleted.`);\n } catch (error) {\n printMessage(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'error'\n );\n }\n}\n\n/**\n * List all the versions of the secret\n * @param {String} secretId secret id\n */\nexport async function listSecretVersionsCmd(secretId) {\n let versions = [];\n try {\n versions = await getSecretVersions(secretId);\n } catch (error) {\n printMessage(`${error.message}`, 'error');\n printMessage(error.response.data, 'error');\n }\n const table = createTable([\n { hAlign: 'right', content: 'Version'['brightCyan'] },\n 'Status'['brightCyan'],\n 'Loaded'['brightCyan'],\n 'Created'['brightCyan'],\n ]);\n // versions.sort((a, b) => a._id.localeCompare(b._id));\n const statusMap = {\n ENABLED: 'active'['brightGreen'],\n DISABLED: 'inactive'['brightRed'],\n DESTROYED: 'deleted'['brightRed'],\n };\n for (const version of versions) {\n table.push([\n { hAlign: 'right', content: version.version },\n statusMap[version.status],\n version.loaded ? 'loaded'['brightGreen'] : 'unloaded'['brightRed'],\n new Date(version.createDate).toLocaleString(),\n ]);\n }\n printMessage(table.toString());\n}\n\n/**\n * Describe a secret\n * @param {String} secretId Secret id\n */\nexport async function describeSecret(secretId) {\n const secret = await getSecret(secretId);\n const table = createKeyValueTable();\n table.push(['Name'['brightCyan'], secret._id]);\n table.push(['Active Version'['brightCyan'], secret.activeVersion]);\n table.push(['Loaded Version'['brightCyan'], secret.loadedVersion]);\n table.push([\n 'Status'['brightCyan'],\n secret.loaded ? 'loaded'['brightGreen'] : 'unloaded'['brightRed'],\n ]);\n table.push(['Description'['brightCyan'], wordwrap(secret.description, 60)]);\n table.push([\n 'Modified'['brightCyan'],\n new Date(secret.lastChangeDate).toLocaleString(),\n ]);\n table.push([\n 'Modifier'['brightCyan'],\n await resolveUserName('teammember', secret.lastChangedBy),\n ]);\n table.push(['Modifier UUID'['brightCyan'], secret.lastChangedBy]);\n table.push(['Encoding'['brightCyan'], secret.encoding]);\n table.push(['Use In Placeholders'['brightCyan'], secret.useInPlaceholders]);\n printMessage(table.toString());\n printMessage('\\nSecret Versions:');\n await listSecretVersionsCmd(secretId);\n}\n\n/**\n * Create new version of secret\n * @param {String} secretId secret id\n * @param {String} value secret value\n */\nexport async function createNewVersionOfSecretCmd(secretId, value) {\n createProgressIndicator(\n undefined,\n `Creating new version of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n const version = await createNewVersionOfSecret(secretId, value);\n stopProgressIndicator(\n `Created version ${version.version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Activate a version of a secret\n * @param {String} secretId secret id\n * @param {Number} version version of secret\n */\nexport async function activateVersionOfSecret(secretId, version) {\n createProgressIndicator(\n undefined,\n `Activating version ${version} of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await setStatusOfVersionOfSecret(\n secretId,\n version,\n VersionOfSecretStatus.ENABLED\n );\n stopProgressIndicator(\n `Activated version ${version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Deactivate a version of a secret\n * @param {String} secretId secret id\n * @param {Number} version version of secret\n */\nexport async function deactivateVersionOfSecret(secretId, version) {\n createProgressIndicator(\n undefined,\n `Deactivating version ${version} of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await setStatusOfVersionOfSecret(\n secretId,\n version,\n VersionOfSecretStatus.DISABLED\n );\n stopProgressIndicator(\n `Deactivated version ${version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n\n/**\n * Delete version of secret\n * @param {String} secretId secret id\n * @param {Number} version version of secret\n */\nexport async function deleteVersionOfSecretCmd(secretId, version) {\n createProgressIndicator(\n undefined,\n `Deleting version ${version} of secret ${secretId}...`,\n 'indeterminate'\n );\n try {\n await deleteVersionOfSecret(secretId, version);\n stopProgressIndicator(\n `Deleted version ${version} of secret ${secretId}`,\n 'success'\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n}\n"],"mappings":"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"}
|
package/cjs/ops/StartupOps.js
CHANGED
|
@@ -44,7 +44,7 @@ function _checkForUpdates() {
|
|
|
44
44
|
(0, _Console.createProgressIndicator)(undefined, "Checking for updates to apply...", 'indeterminate');
|
|
45
45
|
|
|
46
46
|
try {
|
|
47
|
-
updates.secrets = (yield (0, _SecretsApi.getSecrets)()).filter(secret => !secret.loaded);
|
|
47
|
+
updates.secrets = (yield (0, _SecretsApi.getSecrets)()).results.filter(secret => !secret.loaded);
|
|
48
48
|
updates.variables = (yield (0, _VariablesApi.getVariables)()).filter(variable => !variable.loaded);
|
|
49
49
|
} catch (error) {
|
|
50
50
|
(0, _Console.stopProgressIndicator)("Error: ".concat(error.response.data.code, " - ").concat(error.response.data.message), 'fail');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StartupOps.js","names":["checkForUpdates","updates","secrets","variables","createProgressIndicator","undefined","getSecrets","filter","secret","loaded","getVariables","variable","error","stopProgressIndicator","response","data","code","message","updateCount","length","applyUpdates","wait","timeout","status","initiateRestart","start","Date","getTime","runtime","RestartStatus","ready","Promise","resolve","setTimeout","getStatus","updateProgressIndicator","Math","round"],"sources":["ops/StartupOps.ts"],"sourcesContent":["import {\n createProgressIndicator,\n updateProgressIndicator,\n stopProgressIndicator,\n} from './utils/Console';\nimport { getSecrets } from '../api/SecretsApi';\nimport { getStatus, initiateRestart, RestartStatus } from '../api/StartupApi';\nimport { getVariables } from '../api/VariablesApi';\n\n/**\n * Updates that need to be applied.\n */\nexport interface Updates {\n /**\n * Array of secrets that need applying\n */\n secrets?: unknown[];\n /**\n * Array of variables that need applying\n */\n variables?: unknown[];\n}\n\n/**\n * Check for updates that need applying\n * @returns {Promise<boolean>} true if there are updates that need to be applied, false otherwise\n */\nexport async function checkForUpdates(): Promise<Updates> {\n const updates: Updates = { secrets: [], variables: [] };\n createProgressIndicator(\n undefined,\n `Checking for updates to apply...`,\n 'indeterminate'\n );\n try {\n updates.secrets = (await getSecrets()).filter(\n (secret: { loaded: unknown }) => !secret.loaded\n );\n updates.variables = (await getVariables()).filter(\n (variable: { loaded: unknown }) => !variable.loaded\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n const updateCount = updates.secrets?.length + updates.variables?.length || 0;\n if (updateCount > 0) {\n stopProgressIndicator(\n `${updateCount} update(s) need to be applied`,\n 'success'\n );\n } else {\n stopProgressIndicator(`No updates need to be applied`, 'success');\n }\n return updates;\n}\n\n/**\n * Apply updates\n * @param {boolean} wait wait for the operation to complete or not\n * @param {number} timeout timeout in milliseconds\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function applyUpdates(wait: boolean, timeout = 10 * 60 * 1000) {\n createProgressIndicator(undefined, `Applying updates...`, 'indeterminate');\n try {\n let status = await initiateRestart();\n if (wait) {\n const start = new Date().getTime();\n let runtime = 0;\n while (\n status !== RestartStatus.ready &&\n start + timeout > new Date().getTime()\n ) {\n // eslint-disable-next-line no-await-in-loop, no-promise-executor-return\n await new Promise((resolve) => setTimeout(resolve, 5000));\n // eslint-disable-next-line no-await-in-loop\n status = await getStatus();\n runtime = new Date().getTime() - start;\n updateProgressIndicator(`${status} (${Math.round(runtime / 1000)}s)`);\n }\n if (runtime < timeout) {\n stopProgressIndicator(\n `Updates applied in ${Math.round(\n runtime / 1000\n )}s with final status: ${status}`,\n 'success'\n );\n return true;\n } else {\n stopProgressIndicator(\n `Updates timed out after ${Math.round(\n runtime / 1000\n )}s with final status: ${status}`,\n 'warn'\n );\n return false;\n }\n } else {\n stopProgressIndicator(\n `Updates are being applied. Changes may take up to 10 minutes to propagate, during which time you will not be able to make further updates.`,\n 'success'\n );\n return true;\n }\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response?.data?.code || error} - ${\n error.response?.data?.message\n }`,\n 'fail'\n );\n return false;\n }\n}\n"],"mappings":";;;;;;;;AAAA;;AAKA;;AACA;;AACA;;;;;;AAgBA;AACA;AACA;AACA;SACsBA,e;;;AAgCtB;AACA;AACA;AACA;AACA;AACA;;;;uCArCO,aAAmD;IAAA;;IACxD,IAAMC,OAAgB,GAAG;MAAEC,OAAO,EAAE,EAAX;MAAeC,SAAS,EAAE;IAA1B,CAAzB;IACA,IAAAC,gCAAA,EACEC,SADF,sCAGE,eAHF;;IAKA,IAAI;MACFJ,OAAO,CAACC,OAAR,GAAkB,OAAO,IAAAI,sBAAA,GAAP,EAAqBC,
|
|
1
|
+
{"version":3,"file":"StartupOps.js","names":["checkForUpdates","updates","secrets","variables","createProgressIndicator","undefined","getSecrets","results","filter","secret","loaded","getVariables","variable","error","stopProgressIndicator","response","data","code","message","updateCount","length","applyUpdates","wait","timeout","status","initiateRestart","start","Date","getTime","runtime","RestartStatus","ready","Promise","resolve","setTimeout","getStatus","updateProgressIndicator","Math","round"],"sources":["ops/StartupOps.ts"],"sourcesContent":["import {\n createProgressIndicator,\n updateProgressIndicator,\n stopProgressIndicator,\n} from './utils/Console';\nimport { getSecrets } from '../api/SecretsApi';\nimport { getStatus, initiateRestart, RestartStatus } from '../api/StartupApi';\nimport { getVariables } from '../api/VariablesApi';\n\n/**\n * Updates that need to be applied.\n */\nexport interface Updates {\n /**\n * Array of secrets that need applying\n */\n secrets?: unknown[];\n /**\n * Array of variables that need applying\n */\n variables?: unknown[];\n}\n\n/**\n * Check for updates that need applying\n * @returns {Promise<boolean>} true if there are updates that need to be applied, false otherwise\n */\nexport async function checkForUpdates(): Promise<Updates> {\n const updates: Updates = { secrets: [], variables: [] };\n createProgressIndicator(\n undefined,\n `Checking for updates to apply...`,\n 'indeterminate'\n );\n try {\n updates.secrets = (await getSecrets()).results.filter(\n (secret: { loaded: unknown }) => !secret.loaded\n );\n updates.variables = (await getVariables()).filter(\n (variable: { loaded: unknown }) => !variable.loaded\n );\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response.data.code} - ${error.response.data.message}`,\n 'fail'\n );\n }\n const updateCount = updates.secrets?.length + updates.variables?.length || 0;\n if (updateCount > 0) {\n stopProgressIndicator(\n `${updateCount} update(s) need to be applied`,\n 'success'\n );\n } else {\n stopProgressIndicator(`No updates need to be applied`, 'success');\n }\n return updates;\n}\n\n/**\n * Apply updates\n * @param {boolean} wait wait for the operation to complete or not\n * @param {number} timeout timeout in milliseconds\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function applyUpdates(wait: boolean, timeout = 10 * 60 * 1000) {\n createProgressIndicator(undefined, `Applying updates...`, 'indeterminate');\n try {\n let status = await initiateRestart();\n if (wait) {\n const start = new Date().getTime();\n let runtime = 0;\n while (\n status !== RestartStatus.ready &&\n start + timeout > new Date().getTime()\n ) {\n // eslint-disable-next-line no-await-in-loop, no-promise-executor-return\n await new Promise((resolve) => setTimeout(resolve, 5000));\n // eslint-disable-next-line no-await-in-loop\n status = await getStatus();\n runtime = new Date().getTime() - start;\n updateProgressIndicator(`${status} (${Math.round(runtime / 1000)}s)`);\n }\n if (runtime < timeout) {\n stopProgressIndicator(\n `Updates applied in ${Math.round(\n runtime / 1000\n )}s with final status: ${status}`,\n 'success'\n );\n return true;\n } else {\n stopProgressIndicator(\n `Updates timed out after ${Math.round(\n runtime / 1000\n )}s with final status: ${status}`,\n 'warn'\n );\n return false;\n }\n } else {\n stopProgressIndicator(\n `Updates are being applied. Changes may take up to 10 minutes to propagate, during which time you will not be able to make further updates.`,\n 'success'\n );\n return true;\n }\n } catch (error) {\n stopProgressIndicator(\n `Error: ${error.response?.data?.code || error} - ${\n error.response?.data?.message\n }`,\n 'fail'\n );\n return false;\n }\n}\n"],"mappings":"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"}
|