@rockcarver/frodo-cli 2.0.0-21 → 2.0.0-23
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 +9 -1
- package/esm/cli/FrodoCommand.js +3 -1
- package/esm/cli/FrodoCommand.js.map +1 -1
- package/esm/cli/agent/agent-web.js +2 -2
- package/esm/cli/agent/agent-web.js.map +1 -1
- package/esm/cli/app/app-import.js +1 -1
- package/esm/cli/app/app-import.js.map +1 -1
- package/esm/cli/idm/idm-export.js +14 -8
- package/esm/cli/idm/idm-export.js.map +1 -1
- package/esm/cli/idm/idm-import.js +14 -8
- package/esm/cli/idm/idm-import.js.map +1 -1
- package/esm/cli/journey/journey-export.js +2 -3
- package/esm/cli/journey/journey-export.js.map +1 -1
- package/esm/cli/oauth/oauth-client-import.js +1 -1
- package/esm/cli/oauth/oauth-client-import.js.map +1 -1
- package/esm/cli/service/service-import.js +2 -3
- package/esm/cli/service/service-import.js.map +1 -1
- package/esm/ops/AdminFederationOps.js +29 -20
- package/esm/ops/AdminFederationOps.js.map +1 -1
- package/esm/ops/AgentOps.js +41 -34
- package/esm/ops/AgentOps.js.map +1 -1
- package/esm/ops/ApplicationOps.js +23 -17
- package/esm/ops/ApplicationOps.js.map +1 -1
- package/esm/ops/CirclesOfTrustOps.js +27 -20
- package/esm/ops/CirclesOfTrustOps.js.map +1 -1
- package/esm/ops/EmailTemplateOps.js +19 -14
- package/esm/ops/EmailTemplateOps.js.map +1 -1
- package/esm/ops/IdmOps.js +14 -22
- package/esm/ops/IdmOps.js.map +1 -1
- package/esm/ops/IdpOps.js +27 -19
- package/esm/ops/IdpOps.js.map +1 -1
- package/esm/ops/JourneyOps.js +18 -51
- package/esm/ops/JourneyOps.js.map +1 -1
- package/esm/ops/OAuth2ClientOps.js +23 -17
- package/esm/ops/OAuth2ClientOps.js.map +1 -1
- package/esm/ops/PolicyOps.js +27 -20
- package/esm/ops/PolicyOps.js.map +1 -1
- package/esm/ops/PolicySetOps.js +23 -17
- package/esm/ops/PolicySetOps.js.map +1 -1
- package/esm/ops/ResourceTypeOps.js +27 -20
- package/esm/ops/ResourceTypeOps.js.map +1 -1
- package/esm/ops/Saml2Ops.js +22 -14
- package/esm/ops/Saml2Ops.js.map +1 -1
- package/esm/ops/ScriptOps.js +22 -15
- package/esm/ops/ScriptOps.js.map +1 -1
- package/esm/ops/ServiceOps.js +21 -16
- package/esm/ops/ServiceOps.js.map +1 -1
- package/esm/ops/ThemeOps.js +21 -15
- package/esm/ops/ThemeOps.js.map +1 -1
- package/package.json +2 -2
|
@@ -10,6 +10,10 @@ const {
|
|
|
10
10
|
importAdminFederationProviders,
|
|
11
11
|
importFirstAdminFederationProvider
|
|
12
12
|
} = frodo.cloud.adminFed;
|
|
13
|
+
const {
|
|
14
|
+
getFilePath,
|
|
15
|
+
getWorkingDirectory
|
|
16
|
+
} = frodo.utils;
|
|
13
17
|
|
|
14
18
|
/**
|
|
15
19
|
* List providers
|
|
@@ -43,12 +47,13 @@ export async function exportAdminFederationProviderToFile(providerId, file = '')
|
|
|
43
47
|
if (!fileName) {
|
|
44
48
|
fileName = getTypedFilename(providerId, 'admin.federation');
|
|
45
49
|
}
|
|
50
|
+
const filePath = getFilePath(fileName, true);
|
|
46
51
|
createProgressBar(1, `Exporting ${providerId}`);
|
|
47
52
|
try {
|
|
48
|
-
updateProgressBar(`Writing file ${
|
|
53
|
+
updateProgressBar(`Writing file ${filePath}`);
|
|
49
54
|
const fileData = await exportAdminFederationProvider(providerId);
|
|
50
|
-
saveJsonToFile(fileData,
|
|
51
|
-
stopProgressBar(`Exported ${providerId['brightCyan']} to ${
|
|
55
|
+
saveJsonToFile(fileData, filePath);
|
|
56
|
+
stopProgressBar(`Exported ${providerId['brightCyan']} to ${filePath['brightCyan']}.`);
|
|
52
57
|
outcome = true;
|
|
53
58
|
} catch (err) {
|
|
54
59
|
stopProgressBar(`${err}`);
|
|
@@ -70,9 +75,10 @@ export async function exportAdminFederationProvidersToFile(file = '') {
|
|
|
70
75
|
if (!fileName) {
|
|
71
76
|
fileName = getTypedFilename(`allProviders`, 'admin.federation');
|
|
72
77
|
}
|
|
78
|
+
const filePath = getFilePath(fileName, true);
|
|
73
79
|
const fileData = await exportAdminFederationProviders();
|
|
74
|
-
saveJsonToFile(fileData,
|
|
75
|
-
succeedSpinner(`Exported all providers to ${
|
|
80
|
+
saveJsonToFile(fileData, filePath);
|
|
81
|
+
succeedSpinner(`Exported all providers to ${filePath}`);
|
|
76
82
|
outcome = true;
|
|
77
83
|
} catch (error) {
|
|
78
84
|
var _error$response;
|
|
@@ -95,7 +101,7 @@ export async function exportAdminFederationProvidersToFiles() {
|
|
|
95
101
|
updateProgressBar(`Writing provider ${idpData._id}`);
|
|
96
102
|
const fileName = getTypedFilename(idpData._id, 'admin.federation');
|
|
97
103
|
const fileData = await exportAdminFederationProvider(idpData._id);
|
|
98
|
-
saveJsonToFile(fileData, fileName);
|
|
104
|
+
saveJsonToFile(fileData, getFilePath(fileName, true));
|
|
99
105
|
}
|
|
100
106
|
stopProgressBar(`${allIdpsData.length} providers exported.`);
|
|
101
107
|
outcome = true;
|
|
@@ -115,16 +121,17 @@ export async function exportAdminFederationProvidersToFiles() {
|
|
|
115
121
|
*/
|
|
116
122
|
export async function importAdminFederationProviderFromFile(providerId, file) {
|
|
117
123
|
let outcome = false;
|
|
118
|
-
|
|
124
|
+
const filePath = getFilePath(file);
|
|
125
|
+
showSpinner(`Importing provider ${providerId} from ${filePath}...`);
|
|
119
126
|
try {
|
|
120
|
-
const data = fs.readFileSync(
|
|
127
|
+
const data = fs.readFileSync(filePath, 'utf8');
|
|
121
128
|
const fileData = JSON.parse(data);
|
|
122
129
|
await importAdminFederationProvider(providerId, fileData);
|
|
123
|
-
succeedSpinner(`Successfully imported provider ${providerId} from ${
|
|
130
|
+
succeedSpinner(`Successfully imported provider ${providerId} from ${filePath}.`);
|
|
124
131
|
outcome = true;
|
|
125
132
|
} catch (error) {
|
|
126
133
|
var _error$response3;
|
|
127
|
-
failSpinner(`Error importing provider ${providerId} from ${
|
|
134
|
+
failSpinner(`Error importing provider ${providerId} from ${filePath}.`);
|
|
128
135
|
printMessage(((_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.data) || error, 'error');
|
|
129
136
|
}
|
|
130
137
|
return outcome;
|
|
@@ -138,16 +145,17 @@ export async function importAdminFederationProviderFromFile(providerId, file) {
|
|
|
138
145
|
export async function importFirstAdminFederationProviderFromFile(file) {
|
|
139
146
|
let outcome = false;
|
|
140
147
|
debugMessage(`cli.AdminFederationOps.importFirstAdminFederationProviderFromFile: begin`);
|
|
141
|
-
|
|
148
|
+
const filePath = getFilePath(file);
|
|
149
|
+
showSpinner(`Importing first provider from ${filePath}...`);
|
|
142
150
|
try {
|
|
143
|
-
const data = fs.readFileSync(
|
|
151
|
+
const data = fs.readFileSync(filePath, 'utf8');
|
|
144
152
|
const fileData = JSON.parse(data);
|
|
145
153
|
await importFirstAdminFederationProvider(fileData);
|
|
146
|
-
succeedSpinner(`Successfully imported first provider from ${
|
|
154
|
+
succeedSpinner(`Successfully imported first provider from ${filePath}.`);
|
|
147
155
|
outcome = true;
|
|
148
156
|
} catch (error) {
|
|
149
157
|
var _error$response4;
|
|
150
|
-
failSpinner(`Error importing first provider from ${
|
|
158
|
+
failSpinner(`Error importing first provider from ${filePath}.`);
|
|
151
159
|
printMessage(((_error$response4 = error.response) === null || _error$response4 === void 0 ? void 0 : _error$response4.data) || error, 'error');
|
|
152
160
|
}
|
|
153
161
|
debugMessage(`cli.AdminFederationOps.importFirstAdminFederationProviderFromFile: end`);
|
|
@@ -162,16 +170,17 @@ export async function importFirstAdminFederationProviderFromFile(file) {
|
|
|
162
170
|
export async function importAdminFederationProvidersFromFile(file) {
|
|
163
171
|
let outcome = false;
|
|
164
172
|
debugMessage(`cli.AdminFederationOps.importAdminFederationProvidersFromFile: begin`);
|
|
165
|
-
|
|
173
|
+
const filePath = getFilePath(file);
|
|
174
|
+
showSpinner(`Importing providers from ${filePath}...`);
|
|
166
175
|
try {
|
|
167
|
-
const data = fs.readFileSync(
|
|
176
|
+
const data = fs.readFileSync(filePath, 'utf8');
|
|
168
177
|
const fileData = JSON.parse(data);
|
|
169
178
|
await importAdminFederationProviders(fileData);
|
|
170
|
-
succeedSpinner(`Imported providers from ${
|
|
179
|
+
succeedSpinner(`Imported providers from ${filePath}.`);
|
|
171
180
|
outcome = true;
|
|
172
181
|
} catch (error) {
|
|
173
182
|
var _error$response5;
|
|
174
|
-
failSpinner(`Error importing ${
|
|
183
|
+
failSpinner(`Error importing ${filePath}.`);
|
|
175
184
|
printMessage(((_error$response5 = error.response) === null || _error$response5 === void 0 ? void 0 : _error$response5.data) || error, 'error');
|
|
176
185
|
}
|
|
177
186
|
debugMessage(`cli.AdminFederationOps.importAdminFederationProvidersFromFile: end`);
|
|
@@ -186,8 +195,8 @@ export async function importAdminFederationProvidersFromFiles() {
|
|
|
186
195
|
const errors = [];
|
|
187
196
|
try {
|
|
188
197
|
debugMessage(`cli.AdminFederationOps.importAdminFederationProvidersFromFiles: begin`);
|
|
189
|
-
const names = fs.readdirSync(
|
|
190
|
-
const files = names.filter(name => name.toLowerCase().endsWith('.admin.federation.json'));
|
|
198
|
+
const names = fs.readdirSync(getWorkingDirectory());
|
|
199
|
+
const files = names.filter(name => name.toLowerCase().endsWith('.admin.federation.json')).map(name => getFilePath(name));
|
|
191
200
|
createProgressBar(files.length, 'Importing providers...');
|
|
192
201
|
let total = 0;
|
|
193
202
|
for (const file of files) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminFederationOps.js","names":["frodo","fs","createProgressBar","debugMessage","failSpinner","printMessage","showSpinner","stopProgressBar","succeedSpinner","updateProgressBar","getTypedFilename","saveJsonToFile","readAdminFederationProviders","exportAdminFederationProvider","exportAdminFederationProviders","importAdminFederationProvider","importAdminFederationProviders","importFirstAdminFederationProvider","cloud","adminFed","listAdminFederationProviders","outcome","providers","sort","a","b","_id","localeCompare","forEach","socialIdentityProvider","err","message","exportAdminFederationProviderToFile","providerId","file","fileName","fileData","exportAdminFederationProvidersToFile","error","_error$response","response","data","exportAdminFederationProvidersToFiles","allIdpsData","length","idpData","_error$response2","importAdminFederationProviderFromFile","readFileSync","JSON","parse","_error$response3","importFirstAdminFederationProviderFromFile","_error$response4","importAdminFederationProvidersFromFile","_error$response5","importAdminFederationProvidersFromFiles","errors","names","readdirSync","files","filter","name","toLowerCase","endsWith","total","count","Object","keys","idp","push"],"sources":["../../src/ops/AdminFederationOps.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport fs from 'fs';\n\nimport {\n createProgressBar,\n debugMessage,\n failSpinner,\n printMessage,\n showSpinner,\n stopProgressBar,\n succeedSpinner,\n updateProgressBar,\n} from '../utils/Console';\nimport { getTypedFilename, saveJsonToFile } from '../utils/ExportImportUtils';\n\nconst {\n readAdminFederationProviders,\n exportAdminFederationProvider,\n exportAdminFederationProviders,\n importAdminFederationProvider,\n importAdminFederationProviders,\n importFirstAdminFederationProvider,\n} = frodo.cloud.adminFed;\n\n/**\n * List providers\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function listAdminFederationProviders(): Promise<boolean> {\n let outcome = false;\n try {\n const providers = await readAdminFederationProviders();\n providers.sort((a, b) => a._id.localeCompare(b._id));\n providers.forEach((socialIdentityProvider) => {\n printMessage(`${socialIdentityProvider._id}`, 'data');\n });\n outcome = true;\n } catch (err) {\n printMessage(`listAdminFederationProviders ERROR: ${err.message}`, 'error');\n printMessage(err, 'error');\n }\n return outcome;\n}\n\n/**\n * Export provider by id\n * @param {string} providerId provider id/name\n * @param {string} file optional export file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function exportAdminFederationProviderToFile(\n providerId: string,\n file = ''\n): Promise<boolean> {\n let outcome = false;\n let fileName = file;\n if (!fileName) {\n fileName = getTypedFilename(providerId, 'admin.federation');\n }\n createProgressBar(1, `Exporting ${providerId}`);\n try {\n updateProgressBar(`Writing file ${fileName}`);\n const fileData = await exportAdminFederationProvider(providerId);\n saveJsonToFile(fileData, fileName);\n stopProgressBar(\n `Exported ${providerId['brightCyan']} to ${fileName['brightCyan']}.`\n );\n outcome = true;\n } catch (err) {\n stopProgressBar(`${err}`);\n printMessage(`${err}`, 'error');\n }\n return outcome;\n}\n\n/**\n * Export all providers\n * @param {string} file optional export file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function exportAdminFederationProvidersToFile(\n file = ''\n): Promise<boolean> {\n let outcome = false;\n showSpinner(`Exporting all providers...`);\n try {\n let fileName = file;\n if (!fileName) {\n fileName = getTypedFilename(`allProviders`, 'admin.federation');\n }\n const fileData = await exportAdminFederationProviders();\n saveJsonToFile(fileData, fileName);\n succeedSpinner(`Exported all providers to ${fileName}`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error exporting all providers.`);\n printMessage(error.response?.data || error, 'error');\n }\n return outcome;\n}\n\n/**\n * Export all providers to individual files\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function exportAdminFederationProvidersToFiles(): Promise<boolean> {\n let outcome = false;\n try {\n const allIdpsData = await readAdminFederationProviders();\n createProgressBar(allIdpsData.length, 'Exporting providers');\n for (const idpData of allIdpsData) {\n updateProgressBar(`Writing provider ${idpData._id}`);\n const fileName = getTypedFilename(idpData._id, 'admin.federation');\n const fileData = await exportAdminFederationProvider(idpData._id);\n saveJsonToFile(fileData, fileName);\n }\n stopProgressBar(`${allIdpsData.length} providers exported.`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error exporting all providers.`);\n printMessage(error.response?.data || error, 'error');\n }\n return outcome;\n}\n\n/**\n * Import provider by id/name\n * @param {string} providerId provider id/name\n * @param {string} file import file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importAdminFederationProviderFromFile(\n providerId: string,\n file: string\n): Promise<boolean> {\n let outcome = false;\n showSpinner(`Importing provider ${providerId} from ${file}...`);\n try {\n const data = fs.readFileSync(file, 'utf8');\n const fileData = JSON.parse(data);\n await importAdminFederationProvider(providerId, fileData);\n succeedSpinner(\n `Successfully imported provider ${providerId} from ${file}.`\n );\n outcome = true;\n } catch (error) {\n failSpinner(`Error importing provider ${providerId} from ${file}.`);\n printMessage(error.response?.data || error, 'error');\n }\n return outcome;\n}\n\n/**\n * Import first provider from file\n * @param {String} file import file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importFirstAdminFederationProviderFromFile(\n file: string\n): Promise<boolean> {\n let outcome = false;\n debugMessage(\n `cli.AdminFederationOps.importFirstAdminFederationProviderFromFile: begin`\n );\n showSpinner(`Importing first provider from ${file}...`);\n try {\n const data = fs.readFileSync(file, 'utf8');\n const fileData = JSON.parse(data);\n await importFirstAdminFederationProvider(fileData);\n succeedSpinner(`Successfully imported first provider from ${file}.`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error importing first provider from ${file}.`);\n printMessage(error.response?.data || error, 'error');\n }\n debugMessage(\n `cli.AdminFederationOps.importFirstAdminFederationProviderFromFile: end`\n );\n return outcome;\n}\n\n/**\n * Import all providers from file\n * @param {string} file import file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importAdminFederationProvidersFromFile(\n file: string\n): Promise<boolean> {\n let outcome = false;\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFile: begin`\n );\n showSpinner(`Importing providers from ${file}...`);\n try {\n const data = fs.readFileSync(file, 'utf8');\n const fileData = JSON.parse(data);\n await importAdminFederationProviders(fileData);\n succeedSpinner(`Imported providers from ${file}.`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error importing ${file}.`);\n printMessage(error.response?.data || error, 'error');\n }\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFile: end`\n );\n return outcome;\n}\n\n/**\n * Import providers from *.idp.json files in current working directory\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importAdminFederationProvidersFromFiles(): Promise<boolean> {\n const errors = [];\n try {\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFiles: begin`\n );\n const names = fs.readdirSync('.');\n const files = names.filter((name) =>\n name.toLowerCase().endsWith('.admin.federation.json')\n );\n createProgressBar(files.length, 'Importing providers...');\n let total = 0;\n for (const file of files) {\n try {\n const data = fs.readFileSync(file, 'utf8');\n const fileData = JSON.parse(data);\n const count = Object.keys(fileData.idp).length;\n total += count;\n await importAdminFederationProviders(fileData);\n updateProgressBar(`Imported ${count} provider(s) from ${file}`);\n } catch (error) {\n errors.push(error);\n updateProgressBar(`Error importing provider(s) from ${file}`);\n printMessage(error, 'error');\n }\n }\n stopProgressBar(\n `Finished importing ${total} provider(s) from ${files.length} file(s).`\n );\n } catch (error) {\n errors.push(error);\n stopProgressBar(`Error importing provider(s) from file(s).`);\n printMessage(error, 'error');\n }\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFiles: end`\n );\n return 0 === errors.length;\n}\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,OAAOC,EAAE,MAAM,IAAI;AAEnB,SACEC,iBAAiB,EACjBC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,WAAW,EACXC,eAAe,EACfC,cAAc,EACdC,iBAAiB,QACZ,kBAAkB;AACzB,SAASC,gBAAgB,EAAEC,cAAc,QAAQ,4BAA4B;AAE7E,MAAM;EACJC,4BAA4B;EAC5BC,6BAA6B;EAC7BC,8BAA8B;EAC9BC,6BAA6B;EAC7BC,8BAA8B;EAC9BC;AACF,CAAC,GAAGjB,KAAK,CAACkB,KAAK,CAACC,QAAQ;;AAExB;AACA;AACA;AACA;AACA,OAAO,eAAeC,4BAA4BA,CAAA,EAAqB;EACrE,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAI;IACF,MAAMC,SAAS,GAAG,MAAMV,4BAA4B,CAAC,CAAC;IACtDU,SAAS,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,GAAG,CAACC,aAAa,CAACF,CAAC,CAACC,GAAG,CAAC,CAAC;IACpDJ,SAAS,CAACM,OAAO,CAAEC,sBAAsB,IAAK;MAC5CxB,YAAY,CAAE,GAAEwB,sBAAsB,CAACH,GAAI,EAAC,EAAE,MAAM,CAAC;IACvD,CAAC,CAAC;IACFL,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOS,GAAG,EAAE;IACZzB,YAAY,CAAE,uCAAsCyB,GAAG,CAACC,OAAQ,EAAC,EAAE,OAAO,CAAC;IAC3E1B,YAAY,CAACyB,GAAG,EAAE,OAAO,CAAC;EAC5B;EACA,OAAOT,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeW,mCAAmCA,CACvDC,UAAkB,EAClBC,IAAI,GAAG,EAAE,EACS;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnB,IAAIc,QAAQ,GAAGD,IAAI;EACnB,IAAI,CAACC,QAAQ,EAAE;IACbA,QAAQ,GAAGzB,gBAAgB,CAACuB,UAAU,EAAE,kBAAkB,CAAC;EAC7D;EACA/B,iBAAiB,CAAC,CAAC,EAAG,aAAY+B,UAAW,EAAC,CAAC;EAC/C,IAAI;IACFxB,iBAAiB,CAAE,gBAAe0B,QAAS,EAAC,CAAC;IAC7C,MAAMC,QAAQ,GAAG,MAAMvB,6BAA6B,CAACoB,UAAU,CAAC;IAChEtB,cAAc,CAACyB,QAAQ,EAAED,QAAQ,CAAC;IAClC5B,eAAe,CACZ,YAAW0B,UAAU,CAAC,YAAY,CAAE,OAAME,QAAQ,CAAC,YAAY,CAAE,GACpE,CAAC;IACDd,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOS,GAAG,EAAE;IACZvB,eAAe,CAAE,GAAEuB,GAAI,EAAC,CAAC;IACzBzB,YAAY,CAAE,GAAEyB,GAAI,EAAC,EAAE,OAAO,CAAC;EACjC;EACA,OAAOT,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAegB,oCAAoCA,CACxDH,IAAI,GAAG,EAAE,EACS;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBf,WAAW,CAAE,4BAA2B,CAAC;EACzC,IAAI;IACF,IAAI6B,QAAQ,GAAGD,IAAI;IACnB,IAAI,CAACC,QAAQ,EAAE;MACbA,QAAQ,GAAGzB,gBAAgB,CAAE,cAAa,EAAE,kBAAkB,CAAC;IACjE;IACA,MAAM0B,QAAQ,GAAG,MAAMtB,8BAA8B,CAAC,CAAC;IACvDH,cAAc,CAACyB,QAAQ,EAAED,QAAQ,CAAC;IAClC3B,cAAc,CAAE,6BAA4B2B,QAAS,EAAC,CAAC;IACvDd,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOiB,KAAK,EAAE;IAAA,IAAAC,eAAA;IACdnC,WAAW,CAAE,gCAA+B,CAAC;IAC7CC,YAAY,CAAC,EAAAkC,eAAA,GAAAD,KAAK,CAACE,QAAQ,cAAAD,eAAA,uBAAdA,eAAA,CAAgBE,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACA,OAAOjB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA,OAAO,eAAeqB,qCAAqCA,CAAA,EAAqB;EAC9E,IAAIrB,OAAO,GAAG,KAAK;EACnB,IAAI;IACF,MAAMsB,WAAW,GAAG,MAAM/B,4BAA4B,CAAC,CAAC;IACxDV,iBAAiB,CAACyC,WAAW,CAACC,MAAM,EAAE,qBAAqB,CAAC;IAC5D,KAAK,MAAMC,OAAO,IAAIF,WAAW,EAAE;MACjClC,iBAAiB,CAAE,oBAAmBoC,OAAO,CAACnB,GAAI,EAAC,CAAC;MACpD,MAAMS,QAAQ,GAAGzB,gBAAgB,CAACmC,OAAO,CAACnB,GAAG,EAAE,kBAAkB,CAAC;MAClE,MAAMU,QAAQ,GAAG,MAAMvB,6BAA6B,CAACgC,OAAO,CAACnB,GAAG,CAAC;MACjEf,cAAc,CAACyB,QAAQ,EAAED,QAAQ,CAAC;IACpC;IACA5B,eAAe,CAAE,GAAEoC,WAAW,CAACC,MAAO,sBAAqB,CAAC;IAC5DvB,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOiB,KAAK,EAAE;IAAA,IAAAQ,gBAAA;IACd1C,WAAW,CAAE,gCAA+B,CAAC;IAC7CC,YAAY,CAAC,EAAAyC,gBAAA,GAAAR,KAAK,CAACE,QAAQ,cAAAM,gBAAA,uBAAdA,gBAAA,CAAgBL,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACA,OAAOjB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAe0B,qCAAqCA,CACzDd,UAAkB,EAClBC,IAAY,EACM;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBf,WAAW,CAAE,sBAAqB2B,UAAW,SAAQC,IAAK,KAAI,CAAC;EAC/D,IAAI;IACF,MAAMO,IAAI,GAAGxC,EAAE,CAAC+C,YAAY,CAACd,IAAI,EAAE,MAAM,CAAC;IAC1C,MAAME,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACjC,MAAM1B,6BAA6B,CAACkB,UAAU,EAAEG,QAAQ,CAAC;IACzD5B,cAAc,CACX,kCAAiCyB,UAAW,SAAQC,IAAK,GAC5D,CAAC;IACDb,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOiB,KAAK,EAAE;IAAA,IAAAa,gBAAA;IACd/C,WAAW,CAAE,4BAA2B6B,UAAW,SAAQC,IAAK,GAAE,CAAC;IACnE7B,YAAY,CAAC,EAAA8C,gBAAA,GAAAb,KAAK,CAACE,QAAQ,cAAAW,gBAAA,uBAAdA,gBAAA,CAAgBV,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACA,OAAOjB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAe+B,0CAA0CA,CAC9DlB,IAAY,EACM;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBlB,YAAY,CACT,0EACH,CAAC;EACDG,WAAW,CAAE,iCAAgC4B,IAAK,KAAI,CAAC;EACvD,IAAI;IACF,MAAMO,IAAI,GAAGxC,EAAE,CAAC+C,YAAY,CAACd,IAAI,EAAE,MAAM,CAAC;IAC1C,MAAME,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACjC,MAAMxB,kCAAkC,CAACmB,QAAQ,CAAC;IAClD5B,cAAc,CAAE,6CAA4C0B,IAAK,GAAE,CAAC;IACpEb,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOiB,KAAK,EAAE;IAAA,IAAAe,gBAAA;IACdjD,WAAW,CAAE,uCAAsC8B,IAAK,GAAE,CAAC;IAC3D7B,YAAY,CAAC,EAAAgD,gBAAA,GAAAf,KAAK,CAACE,QAAQ,cAAAa,gBAAA,uBAAdA,gBAAA,CAAgBZ,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACAnC,YAAY,CACT,wEACH,CAAC;EACD,OAAOkB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeiC,sCAAsCA,CAC1DpB,IAAY,EACM;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBlB,YAAY,CACT,sEACH,CAAC;EACDG,WAAW,CAAE,4BAA2B4B,IAAK,KAAI,CAAC;EAClD,IAAI;IACF,MAAMO,IAAI,GAAGxC,EAAE,CAAC+C,YAAY,CAACd,IAAI,EAAE,MAAM,CAAC;IAC1C,MAAME,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACjC,MAAMzB,8BAA8B,CAACoB,QAAQ,CAAC;IAC9C5B,cAAc,CAAE,2BAA0B0B,IAAK,GAAE,CAAC;IAClDb,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOiB,KAAK,EAAE;IAAA,IAAAiB,gBAAA;IACdnD,WAAW,CAAE,mBAAkB8B,IAAK,GAAE,CAAC;IACvC7B,YAAY,CAAC,EAAAkD,gBAAA,GAAAjB,KAAK,CAACE,QAAQ,cAAAe,gBAAA,uBAAdA,gBAAA,CAAgBd,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACAnC,YAAY,CACT,oEACH,CAAC;EACD,OAAOkB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA,OAAO,eAAemC,uCAAuCA,CAAA,EAAqB;EAChF,MAAMC,MAAM,GAAG,EAAE;EACjB,IAAI;IACFtD,YAAY,CACT,uEACH,CAAC;IACD,MAAMuD,KAAK,GAAGzD,EAAE,CAAC0D,WAAW,CAAC,GAAG,CAAC;IACjC,MAAMC,KAAK,GAAGF,KAAK,CAACG,MAAM,CAAEC,IAAI,IAC9BA,IAAI,CAACC,WAAW,CAAC,CAAC,CAACC,QAAQ,CAAC,wBAAwB,CACtD,CAAC;IACD9D,iBAAiB,CAAC0D,KAAK,CAAChB,MAAM,EAAE,wBAAwB,CAAC;IACzD,IAAIqB,KAAK,GAAG,CAAC;IACb,KAAK,MAAM/B,IAAI,IAAI0B,KAAK,EAAE;MACxB,IAAI;QACF,MAAMnB,IAAI,GAAGxC,EAAE,CAAC+C,YAAY,CAACd,IAAI,EAAE,MAAM,CAAC;QAC1C,MAAME,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;QACjC,MAAMyB,KAAK,GAAGC,MAAM,CAACC,IAAI,CAAChC,QAAQ,CAACiC,GAAG,CAAC,CAACzB,MAAM;QAC9CqB,KAAK,IAAIC,KAAK;QACd,MAAMlD,8BAA8B,CAACoB,QAAQ,CAAC;QAC9C3B,iBAAiB,CAAE,YAAWyD,KAAM,qBAAoBhC,IAAK,EAAC,CAAC;MACjE,CAAC,CAAC,OAAOI,KAAK,EAAE;QACdmB,MAAM,CAACa,IAAI,CAAChC,KAAK,CAAC;QAClB7B,iBAAiB,CAAE,oCAAmCyB,IAAK,EAAC,CAAC;QAC7D7B,YAAY,CAACiC,KAAK,EAAE,OAAO,CAAC;MAC9B;IACF;IACA/B,eAAe,CACZ,sBAAqB0D,KAAM,qBAAoBL,KAAK,CAAChB,MAAO,WAC/D,CAAC;EACH,CAAC,CAAC,OAAON,KAAK,EAAE;IACdmB,MAAM,CAACa,IAAI,CAAChC,KAAK,CAAC;IAClB/B,eAAe,CAAE,2CAA0C,CAAC;IAC5DF,YAAY,CAACiC,KAAK,EAAE,OAAO,CAAC;EAC9B;EACAnC,YAAY,CACT,qEACH,CAAC;EACD,OAAO,CAAC,KAAKsD,MAAM,CAACb,MAAM;AAC5B"}
|
|
1
|
+
{"version":3,"file":"AdminFederationOps.js","names":["frodo","fs","createProgressBar","debugMessage","failSpinner","printMessage","showSpinner","stopProgressBar","succeedSpinner","updateProgressBar","getTypedFilename","saveJsonToFile","readAdminFederationProviders","exportAdminFederationProvider","exportAdminFederationProviders","importAdminFederationProvider","importAdminFederationProviders","importFirstAdminFederationProvider","cloud","adminFed","getFilePath","getWorkingDirectory","utils","listAdminFederationProviders","outcome","providers","sort","a","b","_id","localeCompare","forEach","socialIdentityProvider","err","message","exportAdminFederationProviderToFile","providerId","file","fileName","filePath","fileData","exportAdminFederationProvidersToFile","error","_error$response","response","data","exportAdminFederationProvidersToFiles","allIdpsData","length","idpData","_error$response2","importAdminFederationProviderFromFile","readFileSync","JSON","parse","_error$response3","importFirstAdminFederationProviderFromFile","_error$response4","importAdminFederationProvidersFromFile","_error$response5","importAdminFederationProvidersFromFiles","errors","names","readdirSync","files","filter","name","toLowerCase","endsWith","map","total","count","Object","keys","idp","push"],"sources":["../../src/ops/AdminFederationOps.ts"],"sourcesContent":["import { frodo } from '@rockcarver/frodo-lib';\nimport fs from 'fs';\n\nimport {\n createProgressBar,\n debugMessage,\n failSpinner,\n printMessage,\n showSpinner,\n stopProgressBar,\n succeedSpinner,\n updateProgressBar,\n} from '../utils/Console';\nimport { getTypedFilename, saveJsonToFile } from '../utils/ExportImportUtils';\n\nconst {\n readAdminFederationProviders,\n exportAdminFederationProvider,\n exportAdminFederationProviders,\n importAdminFederationProvider,\n importAdminFederationProviders,\n importFirstAdminFederationProvider,\n} = frodo.cloud.adminFed;\n\nconst { getFilePath, getWorkingDirectory } = frodo.utils;\n\n/**\n * List providers\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function listAdminFederationProviders(): Promise<boolean> {\n let outcome = false;\n try {\n const providers = await readAdminFederationProviders();\n providers.sort((a, b) => a._id.localeCompare(b._id));\n providers.forEach((socialIdentityProvider) => {\n printMessage(`${socialIdentityProvider._id}`, 'data');\n });\n outcome = true;\n } catch (err) {\n printMessage(`listAdminFederationProviders ERROR: ${err.message}`, 'error');\n printMessage(err, 'error');\n }\n return outcome;\n}\n\n/**\n * Export provider by id\n * @param {string} providerId provider id/name\n * @param {string} file optional export file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function exportAdminFederationProviderToFile(\n providerId: string,\n file = ''\n): Promise<boolean> {\n let outcome = false;\n let fileName = file;\n if (!fileName) {\n fileName = getTypedFilename(providerId, 'admin.federation');\n }\n const filePath = getFilePath(fileName, true);\n createProgressBar(1, `Exporting ${providerId}`);\n try {\n updateProgressBar(`Writing file ${filePath}`);\n const fileData = await exportAdminFederationProvider(providerId);\n saveJsonToFile(fileData, filePath);\n stopProgressBar(\n `Exported ${providerId['brightCyan']} to ${filePath['brightCyan']}.`\n );\n outcome = true;\n } catch (err) {\n stopProgressBar(`${err}`);\n printMessage(`${err}`, 'error');\n }\n return outcome;\n}\n\n/**\n * Export all providers\n * @param {string} file optional export file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function exportAdminFederationProvidersToFile(\n file = ''\n): Promise<boolean> {\n let outcome = false;\n showSpinner(`Exporting all providers...`);\n try {\n let fileName = file;\n if (!fileName) {\n fileName = getTypedFilename(`allProviders`, 'admin.federation');\n }\n const filePath = getFilePath(fileName, true);\n const fileData = await exportAdminFederationProviders();\n saveJsonToFile(fileData, filePath);\n succeedSpinner(`Exported all providers to ${filePath}`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error exporting all providers.`);\n printMessage(error.response?.data || error, 'error');\n }\n return outcome;\n}\n\n/**\n * Export all providers to individual files\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function exportAdminFederationProvidersToFiles(): Promise<boolean> {\n let outcome = false;\n try {\n const allIdpsData = await readAdminFederationProviders();\n createProgressBar(allIdpsData.length, 'Exporting providers');\n for (const idpData of allIdpsData) {\n updateProgressBar(`Writing provider ${idpData._id}`);\n const fileName = getTypedFilename(idpData._id, 'admin.federation');\n const fileData = await exportAdminFederationProvider(idpData._id);\n saveJsonToFile(fileData, getFilePath(fileName, true));\n }\n stopProgressBar(`${allIdpsData.length} providers exported.`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error exporting all providers.`);\n printMessage(error.response?.data || error, 'error');\n }\n return outcome;\n}\n\n/**\n * Import provider by id/name\n * @param {string} providerId provider id/name\n * @param {string} file import file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importAdminFederationProviderFromFile(\n providerId: string,\n file: string\n): Promise<boolean> {\n let outcome = false;\n const filePath = getFilePath(file);\n showSpinner(`Importing provider ${providerId} from ${filePath}...`);\n try {\n const data = fs.readFileSync(filePath, 'utf8');\n const fileData = JSON.parse(data);\n await importAdminFederationProvider(providerId, fileData);\n succeedSpinner(\n `Successfully imported provider ${providerId} from ${filePath}.`\n );\n outcome = true;\n } catch (error) {\n failSpinner(`Error importing provider ${providerId} from ${filePath}.`);\n printMessage(error.response?.data || error, 'error');\n }\n return outcome;\n}\n\n/**\n * Import first provider from file\n * @param {String} file import file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importFirstAdminFederationProviderFromFile(\n file: string\n): Promise<boolean> {\n let outcome = false;\n debugMessage(\n `cli.AdminFederationOps.importFirstAdminFederationProviderFromFile: begin`\n );\n const filePath = getFilePath(file);\n showSpinner(`Importing first provider from ${filePath}...`);\n try {\n const data = fs.readFileSync(filePath, 'utf8');\n const fileData = JSON.parse(data);\n await importFirstAdminFederationProvider(fileData);\n succeedSpinner(`Successfully imported first provider from ${filePath}.`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error importing first provider from ${filePath}.`);\n printMessage(error.response?.data || error, 'error');\n }\n debugMessage(\n `cli.AdminFederationOps.importFirstAdminFederationProviderFromFile: end`\n );\n return outcome;\n}\n\n/**\n * Import all providers from file\n * @param {string} file import file name\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importAdminFederationProvidersFromFile(\n file: string\n): Promise<boolean> {\n let outcome = false;\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFile: begin`\n );\n const filePath = getFilePath(file);\n showSpinner(`Importing providers from ${filePath}...`);\n try {\n const data = fs.readFileSync(filePath, 'utf8');\n const fileData = JSON.parse(data);\n await importAdminFederationProviders(fileData);\n succeedSpinner(`Imported providers from ${filePath}.`);\n outcome = true;\n } catch (error) {\n failSpinner(`Error importing ${filePath}.`);\n printMessage(error.response?.data || error, 'error');\n }\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFile: end`\n );\n return outcome;\n}\n\n/**\n * Import providers from *.idp.json files in current working directory\n * @returns {Promise<boolean>} true if successful, false otherwise\n */\nexport async function importAdminFederationProvidersFromFiles(): Promise<boolean> {\n const errors = [];\n try {\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFiles: begin`\n );\n const names = fs.readdirSync(getWorkingDirectory());\n const files = names\n .filter((name) => name.toLowerCase().endsWith('.admin.federation.json'))\n .map((name) => getFilePath(name));\n createProgressBar(files.length, 'Importing providers...');\n let total = 0;\n for (const file of files) {\n try {\n const data = fs.readFileSync(file, 'utf8');\n const fileData = JSON.parse(data);\n const count = Object.keys(fileData.idp).length;\n total += count;\n await importAdminFederationProviders(fileData);\n updateProgressBar(`Imported ${count} provider(s) from ${file}`);\n } catch (error) {\n errors.push(error);\n updateProgressBar(`Error importing provider(s) from ${file}`);\n printMessage(error, 'error');\n }\n }\n stopProgressBar(\n `Finished importing ${total} provider(s) from ${files.length} file(s).`\n );\n } catch (error) {\n errors.push(error);\n stopProgressBar(`Error importing provider(s) from file(s).`);\n printMessage(error, 'error');\n }\n debugMessage(\n `cli.AdminFederationOps.importAdminFederationProvidersFromFiles: end`\n );\n return 0 === errors.length;\n}\n"],"mappings":"AAAA,SAASA,KAAK,QAAQ,uBAAuB;AAC7C,OAAOC,EAAE,MAAM,IAAI;AAEnB,SACEC,iBAAiB,EACjBC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,WAAW,EACXC,eAAe,EACfC,cAAc,EACdC,iBAAiB,QACZ,kBAAkB;AACzB,SAASC,gBAAgB,EAAEC,cAAc,QAAQ,4BAA4B;AAE7E,MAAM;EACJC,4BAA4B;EAC5BC,6BAA6B;EAC7BC,8BAA8B;EAC9BC,6BAA6B;EAC7BC,8BAA8B;EAC9BC;AACF,CAAC,GAAGjB,KAAK,CAACkB,KAAK,CAACC,QAAQ;AAExB,MAAM;EAAEC,WAAW;EAAEC;AAAoB,CAAC,GAAGrB,KAAK,CAACsB,KAAK;;AAExD;AACA;AACA;AACA;AACA,OAAO,eAAeC,4BAA4BA,CAAA,EAAqB;EACrE,IAAIC,OAAO,GAAG,KAAK;EACnB,IAAI;IACF,MAAMC,SAAS,GAAG,MAAMb,4BAA4B,CAAC,CAAC;IACtDa,SAAS,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,GAAG,CAACC,aAAa,CAACF,CAAC,CAACC,GAAG,CAAC,CAAC;IACpDJ,SAAS,CAACM,OAAO,CAAEC,sBAAsB,IAAK;MAC5C3B,YAAY,CAAE,GAAE2B,sBAAsB,CAACH,GAAI,EAAC,EAAE,MAAM,CAAC;IACvD,CAAC,CAAC;IACFL,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOS,GAAG,EAAE;IACZ5B,YAAY,CAAE,uCAAsC4B,GAAG,CAACC,OAAQ,EAAC,EAAE,OAAO,CAAC;IAC3E7B,YAAY,CAAC4B,GAAG,EAAE,OAAO,CAAC;EAC5B;EACA,OAAOT,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeW,mCAAmCA,CACvDC,UAAkB,EAClBC,IAAI,GAAG,EAAE,EACS;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnB,IAAIc,QAAQ,GAAGD,IAAI;EACnB,IAAI,CAACC,QAAQ,EAAE;IACbA,QAAQ,GAAG5B,gBAAgB,CAAC0B,UAAU,EAAE,kBAAkB,CAAC;EAC7D;EACA,MAAMG,QAAQ,GAAGnB,WAAW,CAACkB,QAAQ,EAAE,IAAI,CAAC;EAC5CpC,iBAAiB,CAAC,CAAC,EAAG,aAAYkC,UAAW,EAAC,CAAC;EAC/C,IAAI;IACF3B,iBAAiB,CAAE,gBAAe8B,QAAS,EAAC,CAAC;IAC7C,MAAMC,QAAQ,GAAG,MAAM3B,6BAA6B,CAACuB,UAAU,CAAC;IAChEzB,cAAc,CAAC6B,QAAQ,EAAED,QAAQ,CAAC;IAClChC,eAAe,CACZ,YAAW6B,UAAU,CAAC,YAAY,CAAE,OAAMG,QAAQ,CAAC,YAAY,CAAE,GACpE,CAAC;IACDf,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOS,GAAG,EAAE;IACZ1B,eAAe,CAAE,GAAE0B,GAAI,EAAC,CAAC;IACzB5B,YAAY,CAAE,GAAE4B,GAAI,EAAC,EAAE,OAAO,CAAC;EACjC;EACA,OAAOT,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeiB,oCAAoCA,CACxDJ,IAAI,GAAG,EAAE,EACS;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBlB,WAAW,CAAE,4BAA2B,CAAC;EACzC,IAAI;IACF,IAAIgC,QAAQ,GAAGD,IAAI;IACnB,IAAI,CAACC,QAAQ,EAAE;MACbA,QAAQ,GAAG5B,gBAAgB,CAAE,cAAa,EAAE,kBAAkB,CAAC;IACjE;IACA,MAAM6B,QAAQ,GAAGnB,WAAW,CAACkB,QAAQ,EAAE,IAAI,CAAC;IAC5C,MAAME,QAAQ,GAAG,MAAM1B,8BAA8B,CAAC,CAAC;IACvDH,cAAc,CAAC6B,QAAQ,EAAED,QAAQ,CAAC;IAClC/B,cAAc,CAAE,6BAA4B+B,QAAS,EAAC,CAAC;IACvDf,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOkB,KAAK,EAAE;IAAA,IAAAC,eAAA;IACdvC,WAAW,CAAE,gCAA+B,CAAC;IAC7CC,YAAY,CAAC,EAAAsC,eAAA,GAAAD,KAAK,CAACE,QAAQ,cAAAD,eAAA,uBAAdA,eAAA,CAAgBE,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACA,OAAOlB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA,OAAO,eAAesB,qCAAqCA,CAAA,EAAqB;EAC9E,IAAItB,OAAO,GAAG,KAAK;EACnB,IAAI;IACF,MAAMuB,WAAW,GAAG,MAAMnC,4BAA4B,CAAC,CAAC;IACxDV,iBAAiB,CAAC6C,WAAW,CAACC,MAAM,EAAE,qBAAqB,CAAC;IAC5D,KAAK,MAAMC,OAAO,IAAIF,WAAW,EAAE;MACjCtC,iBAAiB,CAAE,oBAAmBwC,OAAO,CAACpB,GAAI,EAAC,CAAC;MACpD,MAAMS,QAAQ,GAAG5B,gBAAgB,CAACuC,OAAO,CAACpB,GAAG,EAAE,kBAAkB,CAAC;MAClE,MAAMW,QAAQ,GAAG,MAAM3B,6BAA6B,CAACoC,OAAO,CAACpB,GAAG,CAAC;MACjElB,cAAc,CAAC6B,QAAQ,EAAEpB,WAAW,CAACkB,QAAQ,EAAE,IAAI,CAAC,CAAC;IACvD;IACA/B,eAAe,CAAE,GAAEwC,WAAW,CAACC,MAAO,sBAAqB,CAAC;IAC5DxB,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOkB,KAAK,EAAE;IAAA,IAAAQ,gBAAA;IACd9C,WAAW,CAAE,gCAA+B,CAAC;IAC7CC,YAAY,CAAC,EAAA6C,gBAAA,GAAAR,KAAK,CAACE,QAAQ,cAAAM,gBAAA,uBAAdA,gBAAA,CAAgBL,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACA,OAAOlB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAe2B,qCAAqCA,CACzDf,UAAkB,EAClBC,IAAY,EACM;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnB,MAAMe,QAAQ,GAAGnB,WAAW,CAACiB,IAAI,CAAC;EAClC/B,WAAW,CAAE,sBAAqB8B,UAAW,SAAQG,QAAS,KAAI,CAAC;EACnE,IAAI;IACF,MAAMM,IAAI,GAAG5C,EAAE,CAACmD,YAAY,CAACb,QAAQ,EAAE,MAAM,CAAC;IAC9C,MAAMC,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACjC,MAAM9B,6BAA6B,CAACqB,UAAU,EAAEI,QAAQ,CAAC;IACzDhC,cAAc,CACX,kCAAiC4B,UAAW,SAAQG,QAAS,GAChE,CAAC;IACDf,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOkB,KAAK,EAAE;IAAA,IAAAa,gBAAA;IACdnD,WAAW,CAAE,4BAA2BgC,UAAW,SAAQG,QAAS,GAAE,CAAC;IACvElC,YAAY,CAAC,EAAAkD,gBAAA,GAAAb,KAAK,CAACE,QAAQ,cAAAW,gBAAA,uBAAdA,gBAAA,CAAgBV,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACA,OAAOlB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAegC,0CAA0CA,CAC9DnB,IAAY,EACM;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBrB,YAAY,CACT,0EACH,CAAC;EACD,MAAMoC,QAAQ,GAAGnB,WAAW,CAACiB,IAAI,CAAC;EAClC/B,WAAW,CAAE,iCAAgCiC,QAAS,KAAI,CAAC;EAC3D,IAAI;IACF,MAAMM,IAAI,GAAG5C,EAAE,CAACmD,YAAY,CAACb,QAAQ,EAAE,MAAM,CAAC;IAC9C,MAAMC,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACjC,MAAM5B,kCAAkC,CAACuB,QAAQ,CAAC;IAClDhC,cAAc,CAAE,6CAA4C+B,QAAS,GAAE,CAAC;IACxEf,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOkB,KAAK,EAAE;IAAA,IAAAe,gBAAA;IACdrD,WAAW,CAAE,uCAAsCmC,QAAS,GAAE,CAAC;IAC/DlC,YAAY,CAAC,EAAAoD,gBAAA,GAAAf,KAAK,CAACE,QAAQ,cAAAa,gBAAA,uBAAdA,gBAAA,CAAgBZ,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACAvC,YAAY,CACT,wEACH,CAAC;EACD,OAAOqB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA,OAAO,eAAekC,sCAAsCA,CAC1DrB,IAAY,EACM;EAClB,IAAIb,OAAO,GAAG,KAAK;EACnBrB,YAAY,CACT,sEACH,CAAC;EACD,MAAMoC,QAAQ,GAAGnB,WAAW,CAACiB,IAAI,CAAC;EAClC/B,WAAW,CAAE,4BAA2BiC,QAAS,KAAI,CAAC;EACtD,IAAI;IACF,MAAMM,IAAI,GAAG5C,EAAE,CAACmD,YAAY,CAACb,QAAQ,EAAE,MAAM,CAAC;IAC9C,MAAMC,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACjC,MAAM7B,8BAA8B,CAACwB,QAAQ,CAAC;IAC9ChC,cAAc,CAAE,2BAA0B+B,QAAS,GAAE,CAAC;IACtDf,OAAO,GAAG,IAAI;EAChB,CAAC,CAAC,OAAOkB,KAAK,EAAE;IAAA,IAAAiB,gBAAA;IACdvD,WAAW,CAAE,mBAAkBmC,QAAS,GAAE,CAAC;IAC3ClC,YAAY,CAAC,EAAAsD,gBAAA,GAAAjB,KAAK,CAACE,QAAQ,cAAAe,gBAAA,uBAAdA,gBAAA,CAAgBd,IAAI,KAAIH,KAAK,EAAE,OAAO,CAAC;EACtD;EACAvC,YAAY,CACT,oEACH,CAAC;EACD,OAAOqB,OAAO;AAChB;;AAEA;AACA;AACA;AACA;AACA,OAAO,eAAeoC,uCAAuCA,CAAA,EAAqB;EAChF,MAAMC,MAAM,GAAG,EAAE;EACjB,IAAI;IACF1D,YAAY,CACT,uEACH,CAAC;IACD,MAAM2D,KAAK,GAAG7D,EAAE,CAAC8D,WAAW,CAAC1C,mBAAmB,CAAC,CAAC,CAAC;IACnD,MAAM2C,KAAK,GAAGF,KAAK,CAChBG,MAAM,CAAEC,IAAI,IAAKA,IAAI,CAACC,WAAW,CAAC,CAAC,CAACC,QAAQ,CAAC,wBAAwB,CAAC,CAAC,CACvEC,GAAG,CAAEH,IAAI,IAAK9C,WAAW,CAAC8C,IAAI,CAAC,CAAC;IACnChE,iBAAiB,CAAC8D,KAAK,CAAChB,MAAM,EAAE,wBAAwB,CAAC;IACzD,IAAIsB,KAAK,GAAG,CAAC;IACb,KAAK,MAAMjC,IAAI,IAAI2B,KAAK,EAAE;MACxB,IAAI;QACF,MAAMnB,IAAI,GAAG5C,EAAE,CAACmD,YAAY,CAACf,IAAI,EAAE,MAAM,CAAC;QAC1C,MAAMG,QAAQ,GAAGa,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;QACjC,MAAM0B,KAAK,GAAGC,MAAM,CAACC,IAAI,CAACjC,QAAQ,CAACkC,GAAG,CAAC,CAAC1B,MAAM;QAC9CsB,KAAK,IAAIC,KAAK;QACd,MAAMvD,8BAA8B,CAACwB,QAAQ,CAAC;QAC9C/B,iBAAiB,CAAE,YAAW8D,KAAM,qBAAoBlC,IAAK,EAAC,CAAC;MACjE,CAAC,CAAC,OAAOK,KAAK,EAAE;QACdmB,MAAM,CAACc,IAAI,CAACjC,KAAK,CAAC;QAClBjC,iBAAiB,CAAE,oCAAmC4B,IAAK,EAAC,CAAC;QAC7DhC,YAAY,CAACqC,KAAK,EAAE,OAAO,CAAC;MAC9B;IACF;IACAnC,eAAe,CACZ,sBAAqB+D,KAAM,qBAAoBN,KAAK,CAAChB,MAAO,WAC/D,CAAC;EACH,CAAC,CAAC,OAAON,KAAK,EAAE;IACdmB,MAAM,CAACc,IAAI,CAACjC,KAAK,CAAC;IAClBnC,eAAe,CAAE,2CAA0C,CAAC;IAC5DF,YAAY,CAACqC,KAAK,EAAE,OAAO,CAAC;EAC9B;EACAvC,YAAY,CACT,qEACH,CAAC;EACD,OAAO,CAAC,KAAK0D,MAAM,CAACb,MAAM;AAC5B"}
|
package/esm/ops/AgentOps.js
CHANGED
|
@@ -3,7 +3,9 @@ import fs from 'fs';
|
|
|
3
3
|
import { createTable, debugMessage, failSpinner, printMessage, showSpinner, succeedSpinner } from '../utils/Console';
|
|
4
4
|
import { getTypedFilename, saveJsonToFile, titleCase } from '../utils/ExportImportUtils';
|
|
5
5
|
const {
|
|
6
|
-
getRealmName
|
|
6
|
+
getRealmName,
|
|
7
|
+
getFilePath,
|
|
8
|
+
getWorkingDirectory
|
|
7
9
|
} = frodo.utils;
|
|
8
10
|
const {
|
|
9
11
|
createAgentExportTemplate,
|
|
@@ -148,7 +150,7 @@ export async function exportAgentsToFile(file) {
|
|
|
148
150
|
if (file) {
|
|
149
151
|
fileName = file;
|
|
150
152
|
}
|
|
151
|
-
saveJsonToFile(exportData, fileName);
|
|
153
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
152
154
|
}
|
|
153
155
|
|
|
154
156
|
/**
|
|
@@ -161,7 +163,7 @@ export async function exportIdentityGatewayAgentsToFile(file) {
|
|
|
161
163
|
if (file) {
|
|
162
164
|
fileName = file;
|
|
163
165
|
}
|
|
164
|
-
saveJsonToFile(exportData, fileName);
|
|
166
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
165
167
|
}
|
|
166
168
|
|
|
167
169
|
/**
|
|
@@ -174,7 +176,7 @@ export async function exportJavaAgentsToFile(file) {
|
|
|
174
176
|
if (file) {
|
|
175
177
|
fileName = file;
|
|
176
178
|
}
|
|
177
|
-
saveJsonToFile(exportData, fileName);
|
|
179
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
178
180
|
}
|
|
179
181
|
|
|
180
182
|
/**
|
|
@@ -187,7 +189,7 @@ export async function exportWebAgentsToFile(file) {
|
|
|
187
189
|
if (file) {
|
|
188
190
|
fileName = file;
|
|
189
191
|
}
|
|
190
|
-
saveJsonToFile(exportData, fileName);
|
|
192
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
191
193
|
}
|
|
192
194
|
|
|
193
195
|
/**
|
|
@@ -201,7 +203,7 @@ export async function exportAgentToFile(agentId, file) {
|
|
|
201
203
|
if (file) {
|
|
202
204
|
fileName = file;
|
|
203
205
|
}
|
|
204
|
-
saveJsonToFile(exportData, fileName);
|
|
206
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
205
207
|
}
|
|
206
208
|
|
|
207
209
|
/**
|
|
@@ -215,7 +217,7 @@ export async function exportIdentityGatewayAgentToFile(agentId, file) {
|
|
|
215
217
|
if (file) {
|
|
216
218
|
fileName = file;
|
|
217
219
|
}
|
|
218
|
-
saveJsonToFile(exportData, fileName);
|
|
220
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
219
221
|
}
|
|
220
222
|
|
|
221
223
|
/**
|
|
@@ -229,7 +231,7 @@ export async function exportJavaAgentToFile(agentId, file) {
|
|
|
229
231
|
if (file) {
|
|
230
232
|
fileName = file;
|
|
231
233
|
}
|
|
232
|
-
saveJsonToFile(exportData, fileName);
|
|
234
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
233
235
|
}
|
|
234
236
|
|
|
235
237
|
/**
|
|
@@ -243,7 +245,7 @@ export async function exportWebAgentToFile(agentId, file) {
|
|
|
243
245
|
if (file) {
|
|
244
246
|
fileName = file;
|
|
245
247
|
}
|
|
246
|
-
saveJsonToFile(exportData, fileName);
|
|
248
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
247
249
|
}
|
|
248
250
|
|
|
249
251
|
/**
|
|
@@ -254,10 +256,11 @@ export async function exportAgentsToFiles() {
|
|
|
254
256
|
debugMessage(`exportAgentsToFiles: ${agents.length} agents`);
|
|
255
257
|
for (const agent of agents) {
|
|
256
258
|
const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
|
|
259
|
+
const filePath = getFilePath(fileName, true);
|
|
257
260
|
const exportData = createAgentExportTemplate();
|
|
258
261
|
exportData.agents[agent._id] = agent;
|
|
259
|
-
debugMessage(`exportAgentsToFiles: exporting ${agent._id} to ${
|
|
260
|
-
saveJsonToFile(exportData,
|
|
262
|
+
debugMessage(`exportAgentsToFiles: exporting ${agent._id} to ${filePath}`);
|
|
263
|
+
saveJsonToFile(exportData, filePath);
|
|
261
264
|
}
|
|
262
265
|
debugMessage(`exportAgentsToFiles: done.`);
|
|
263
266
|
}
|
|
@@ -271,7 +274,7 @@ export async function exportIdentityGatewayAgentsToFiles() {
|
|
|
271
274
|
const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
|
|
272
275
|
const exportData = createAgentExportTemplate();
|
|
273
276
|
exportData.agents[agent._id] = agent;
|
|
274
|
-
saveJsonToFile(exportData, fileName);
|
|
277
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
275
278
|
}
|
|
276
279
|
}
|
|
277
280
|
|
|
@@ -284,7 +287,7 @@ export async function exportJavaAgentsToFiles() {
|
|
|
284
287
|
const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
|
|
285
288
|
const exportData = createAgentExportTemplate();
|
|
286
289
|
exportData.agents[agent._id] = agent;
|
|
287
|
-
saveJsonToFile(exportData, fileName);
|
|
290
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
288
291
|
}
|
|
289
292
|
}
|
|
290
293
|
|
|
@@ -297,7 +300,7 @@ export async function exportWebAgentsToFiles() {
|
|
|
297
300
|
const fileName = getTypedFilename(agent._id, agentTypeToFileIdMap[agent._type._id]);
|
|
298
301
|
const exportData = createAgentExportTemplate();
|
|
299
302
|
exportData.agents[agent._id] = agent;
|
|
300
|
-
saveJsonToFile(exportData, fileName);
|
|
303
|
+
saveJsonToFile(exportData, getFilePath(fileName, true));
|
|
301
304
|
}
|
|
302
305
|
}
|
|
303
306
|
|
|
@@ -308,7 +311,7 @@ export async function exportWebAgentsToFiles() {
|
|
|
308
311
|
*/
|
|
309
312
|
export async function importAgentFromFile(agentId, file) {
|
|
310
313
|
const verbose = state.getVerbose();
|
|
311
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
314
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
312
315
|
if (err) throw err;
|
|
313
316
|
const importData = JSON.parse(data);
|
|
314
317
|
// check if this is a file with multiple agents and get agent by id
|
|
@@ -343,7 +346,7 @@ export async function importAgentFromFile(agentId, file) {
|
|
|
343
346
|
*/
|
|
344
347
|
export async function importFirstAgentFromFile(file) {
|
|
345
348
|
const verbose = state.getVerbose();
|
|
346
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
349
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
347
350
|
if (err) throw err;
|
|
348
351
|
const importData = JSON.parse(data);
|
|
349
352
|
if (Object.keys(importData.agents).length > 0) {
|
|
@@ -372,9 +375,10 @@ export async function importFirstAgentFromFile(file) {
|
|
|
372
375
|
*/
|
|
373
376
|
export async function importAgentsFromFile(file) {
|
|
374
377
|
debugMessage(`importAgentsFromFile: start`);
|
|
375
|
-
|
|
378
|
+
const filePath = getFilePath(file);
|
|
379
|
+
fs.readFile(filePath, 'utf8', async (err, data) => {
|
|
376
380
|
if (err) throw err;
|
|
377
|
-
debugMessage(`importAgentsFromFile: importing ${
|
|
381
|
+
debugMessage(`importAgentsFromFile: importing ${filePath}`);
|
|
378
382
|
const importData = JSON.parse(data);
|
|
379
383
|
try {
|
|
380
384
|
await importAgents(importData);
|
|
@@ -390,7 +394,7 @@ export async function importAgentsFromFile(file) {
|
|
|
390
394
|
* Import all agents from separate files
|
|
391
395
|
*/
|
|
392
396
|
export async function importAgentsFromFiles() {
|
|
393
|
-
const names = fs.readdirSync(
|
|
397
|
+
const names = fs.readdirSync(getWorkingDirectory());
|
|
394
398
|
const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
|
|
395
399
|
for (const file of agentFiles) {
|
|
396
400
|
await importAgentsFromFile(file);
|
|
@@ -405,7 +409,7 @@ export async function importAgentsFromFiles() {
|
|
|
405
409
|
export async function importIdentityGatewayAgentFromFile(agentId, file) {
|
|
406
410
|
debugMessage(`cli.AgentOps.importIdentityGatewayAgentFromFile: start`);
|
|
407
411
|
const verbose = state.getVerbose();
|
|
408
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
412
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
409
413
|
if (err) throw err;
|
|
410
414
|
const importData = JSON.parse(data);
|
|
411
415
|
// check if this is a file with multiple agents and get agent by id
|
|
@@ -441,7 +445,7 @@ export async function importIdentityGatewayAgentFromFile(agentId, file) {
|
|
|
441
445
|
export async function importFirstIdentityGatewayAgentFromFile(file) {
|
|
442
446
|
debugMessage(`cli.AgentOps.importFirstIdentityGatewayAgentFromFile: start`);
|
|
443
447
|
const verbose = state.getVerbose();
|
|
444
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
448
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
445
449
|
if (err) throw err;
|
|
446
450
|
const importData = JSON.parse(data);
|
|
447
451
|
if (Object.keys(importData.agents).length > 0) {
|
|
@@ -470,9 +474,10 @@ export async function importFirstIdentityGatewayAgentFromFile(file) {
|
|
|
470
474
|
*/
|
|
471
475
|
export async function importIdentityGatewayAgentsFromFile(file) {
|
|
472
476
|
debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFile: start`);
|
|
473
|
-
|
|
477
|
+
const filePath = getFilePath(file);
|
|
478
|
+
fs.readFile(filePath, 'utf8', async (err, data) => {
|
|
474
479
|
if (err) throw err;
|
|
475
|
-
debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFile: importing ${
|
|
480
|
+
debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFile: importing ${filePath}`);
|
|
476
481
|
const importData = JSON.parse(data);
|
|
477
482
|
try {
|
|
478
483
|
await importIdentityGatewayAgents(importData);
|
|
@@ -489,7 +494,7 @@ export async function importIdentityGatewayAgentsFromFile(file) {
|
|
|
489
494
|
*/
|
|
490
495
|
export async function importIdentityGatewayAgentsFromFiles() {
|
|
491
496
|
debugMessage(`cli.AgentOps.importIdentityGatewayAgentsFromFiles: start`);
|
|
492
|
-
const names = fs.readdirSync(
|
|
497
|
+
const names = fs.readdirSync(getWorkingDirectory());
|
|
493
498
|
const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
|
|
494
499
|
for (const file of agentFiles) {
|
|
495
500
|
await importIdentityGatewayAgentsFromFile(file);
|
|
@@ -505,7 +510,7 @@ export async function importIdentityGatewayAgentsFromFiles() {
|
|
|
505
510
|
export async function importJavaAgentFromFile(agentId, file) {
|
|
506
511
|
debugMessage(`cli.AgentOps.importJavaAgentFromFile: start`);
|
|
507
512
|
const verbose = state.getVerbose();
|
|
508
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
513
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
509
514
|
if (err) throw err;
|
|
510
515
|
const importData = JSON.parse(data);
|
|
511
516
|
// check if this is a file with multiple agents and get agent by id
|
|
@@ -541,7 +546,7 @@ export async function importJavaAgentFromFile(agentId, file) {
|
|
|
541
546
|
export async function importFirstJavaAgentFromFile(file) {
|
|
542
547
|
debugMessage(`cli.AgentOps.importFirstJavaAgentFromFile: start`);
|
|
543
548
|
const verbose = state.getVerbose();
|
|
544
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
549
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
545
550
|
if (err) throw err;
|
|
546
551
|
const importData = JSON.parse(data);
|
|
547
552
|
if (Object.keys(importData.agents).length > 0) {
|
|
@@ -570,9 +575,10 @@ export async function importFirstJavaAgentFromFile(file) {
|
|
|
570
575
|
*/
|
|
571
576
|
export async function importJavaAgentsFromFile(file) {
|
|
572
577
|
debugMessage(`cli.AgentOps.importJavaAgentsFromFile: start`);
|
|
573
|
-
|
|
578
|
+
const filePath = getFilePath(file);
|
|
579
|
+
fs.readFile(filePath, 'utf8', async (err, data) => {
|
|
574
580
|
if (err) throw err;
|
|
575
|
-
debugMessage(`cli.AgentOps.importJavaAgentsFromFile: importing ${
|
|
581
|
+
debugMessage(`cli.AgentOps.importJavaAgentsFromFile: importing ${filePath}`);
|
|
576
582
|
const importData = JSON.parse(data);
|
|
577
583
|
try {
|
|
578
584
|
await importJavaAgents(importData);
|
|
@@ -589,7 +595,7 @@ export async function importJavaAgentsFromFile(file) {
|
|
|
589
595
|
*/
|
|
590
596
|
export async function importJavaAgentsFromFiles() {
|
|
591
597
|
debugMessage(`cli.AgentOps.importJavaAgentsFromFiles: start`);
|
|
592
|
-
const names = fs.readdirSync(
|
|
598
|
+
const names = fs.readdirSync(getWorkingDirectory());
|
|
593
599
|
const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
|
|
594
600
|
for (const file of agentFiles) {
|
|
595
601
|
await importJavaAgentsFromFile(file);
|
|
@@ -605,7 +611,7 @@ export async function importJavaAgentsFromFiles() {
|
|
|
605
611
|
export async function importWebAgentFromFile(agentId, file) {
|
|
606
612
|
debugMessage(`cli.AgentOps.importWebAgentFromFile: start`);
|
|
607
613
|
const verbose = state.getVerbose();
|
|
608
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
614
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
609
615
|
if (err) throw err;
|
|
610
616
|
const importData = JSON.parse(data);
|
|
611
617
|
// check if this is a file with multiple agents and get agent by id
|
|
@@ -641,7 +647,7 @@ export async function importWebAgentFromFile(agentId, file) {
|
|
|
641
647
|
export async function importFirstWebAgentFromFile(file) {
|
|
642
648
|
debugMessage(`cli.AgentOps.importFirstWebAgentFromFile: start`);
|
|
643
649
|
const verbose = state.getVerbose();
|
|
644
|
-
fs.readFile(file, 'utf8', async (err, data) => {
|
|
650
|
+
fs.readFile(getFilePath(file), 'utf8', async (err, data) => {
|
|
645
651
|
if (err) throw err;
|
|
646
652
|
const importData = JSON.parse(data);
|
|
647
653
|
if (Object.keys(importData.agents).length > 0) {
|
|
@@ -670,9 +676,10 @@ export async function importFirstWebAgentFromFile(file) {
|
|
|
670
676
|
*/
|
|
671
677
|
export async function importWebAgentsFromFile(file) {
|
|
672
678
|
debugMessage(`cli.AgentOps.importWebAgentsFromFile: start`);
|
|
673
|
-
|
|
679
|
+
const filePath = getFilePath(file);
|
|
680
|
+
fs.readFile(filePath, 'utf8', async (err, data) => {
|
|
674
681
|
if (err) throw err;
|
|
675
|
-
debugMessage(`cli.AgentOps.importWebAgentsFromFile: importing ${
|
|
682
|
+
debugMessage(`cli.AgentOps.importWebAgentsFromFile: importing ${filePath}`);
|
|
676
683
|
const importData = JSON.parse(data);
|
|
677
684
|
try {
|
|
678
685
|
await importWebAgents(importData);
|
|
@@ -689,7 +696,7 @@ export async function importWebAgentsFromFile(file) {
|
|
|
689
696
|
*/
|
|
690
697
|
export async function importWebAgentsFromFiles() {
|
|
691
698
|
debugMessage(`cli.AgentOps.importWebAgentsFromFiles: start`);
|
|
692
|
-
const names = fs.readdirSync(
|
|
699
|
+
const names = fs.readdirSync(getWorkingDirectory());
|
|
693
700
|
const agentFiles = names.filter(name => name.toLowerCase().endsWith('.agent.json'));
|
|
694
701
|
for (const file of agentFiles) {
|
|
695
702
|
await importWebAgentsFromFile(file);
|