@rockcarver/frodo-cli 0.10.4 → 0.11.1-2
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 +13 -1
- package/README.md +3 -3
- package/package.json +17 -15
- package/src/app.js +7 -6
- package/src/cli/_template/cmd-delete.js +9 -8
- package/src/cli/_template/cmd-describe.js +9 -8
- package/src/cli/_template/cmd-export.js +9 -8
- package/src/cli/_template/cmd-import.js +9 -8
- package/src/cli/_template/cmd-list.js +9 -8
- package/src/cli/_template/cmd-sub1-delete.js +9 -8
- package/src/cli/_template/cmd-sub1-describe.js +9 -8
- package/src/cli/_template/cmd-sub1-export.js +9 -8
- package/src/cli/_template/cmd-sub1-import.js +9 -8
- package/src/cli/_template/cmd-sub1-list.js +9 -8
- package/src/cli/_template/cmd-sub2-delete.js +9 -8
- package/src/cli/_template/cmd-sub2-describe.js +9 -8
- package/src/cli/_template/cmd-sub2-export.js +9 -8
- package/src/cli/_template/cmd-sub2-import.js +9 -8
- package/src/cli/_template/cmd-sub2-list.js +9 -8
- package/src/cli/admin/admin-add-autoid-static-user-mapping.js +12 -12
- package/src/cli/admin/admin-create-oauth2-client-with-admin-privileges.js +15 -18
- package/src/cli/admin/admin-get-access-token.js +12 -12
- package/src/cli/admin/admin-grant-oauth2-client-admin-privileges.js +13 -13
- package/src/cli/admin/admin-hide-generic-extension-attributes.js +13 -13
- package/src/cli/admin/admin-list-oauth2-clients-with-admin-privileges.js +13 -13
- package/src/cli/admin/admin-list-oauth2-clients-with-custom-privileges.js +14 -13
- package/src/cli/admin/admin-list-static-user-mappings.js +12 -12
- package/src/cli/admin/admin-remove-static-user-mapping.js +12 -12
- package/src/cli/admin/admin-repair-org-model.js +13 -13
- package/src/cli/admin/admin-revoke-oauth2-client-admin-privileges.js +13 -13
- package/src/cli/admin/admin-show-generic-extension-attributes.js +13 -13
- package/src/cli/app/app-delete.js +9 -8
- package/src/cli/app/app-describe.js +9 -8
- package/src/cli/app/app-export.js +15 -15
- package/src/cli/app/app-import.js +11 -11
- package/src/cli/app/app-list.js +11 -12
- package/src/cli/conn/conn-add.js +11 -11
- package/src/cli/conn/conn-delete.js +3 -1
- package/src/cli/conn/conn-describe.js +3 -1
- package/src/cli/conn/conn-list.js +3 -4
- package/src/cli/email/email-template-export.js +16 -16
- package/src/cli/email/email-template-import.js +16 -16
- package/src/cli/email/email-template-list.js +11 -11
- package/src/cli/esv/esv-apply.js +12 -12
- package/src/cli/esv/esv-secret-create.js +11 -11
- package/src/cli/esv/esv-secret-delete.js +13 -13
- package/src/cli/esv/esv-secret-describe.js +11 -11
- package/src/cli/esv/esv-secret-export.js +9 -8
- package/src/cli/esv/esv-secret-import.js +9 -8
- package/src/cli/esv/esv-secret-list.js +11 -11
- package/src/cli/esv/esv-secret-set.js +11 -11
- package/src/cli/esv/esv-secret-version-activate.js +12 -12
- package/src/cli/esv/esv-secret-version-create.js +11 -11
- package/src/cli/esv/esv-secret-version-deactivate.js +12 -12
- package/src/cli/esv/esv-secret-version-delete.js +13 -13
- package/src/cli/esv/esv-secret-version-list.js +11 -11
- package/src/cli/esv/esv-variable-create.js +11 -11
- package/src/cli/esv/esv-variable-delete.js +13 -16
- package/src/cli/esv/esv-variable-describe.js +11 -11
- package/src/cli/esv/esv-variable-export.js +9 -8
- package/src/cli/esv/esv-variable-import.js +9 -8
- package/src/cli/esv/esv-variable-list.js +11 -11
- package/src/cli/esv/esv-variable-set.js +13 -16
- package/src/cli/idm/idm-count.js +11 -11
- package/src/cli/idm/idm-export.js +16 -16
- package/src/cli/idm/idm-list.js +11 -11
- package/src/cli/idp/idp-export.js +15 -19
- package/src/cli/idp/idp-import.js +18 -18
- package/src/cli/idp/idp-list.js +12 -12
- package/src/cli/info/info.js +23 -19
- package/src/cli/journey/journey-delete.js +14 -14
- package/src/cli/journey/journey-describe.js +26 -35
- package/src/cli/journey/journey-export.js +18 -21
- package/src/cli/journey/journey-import.js +17 -17
- package/src/cli/journey/journey-list.js +12 -12
- package/src/cli/journey/journey-prune.js +12 -12
- package/src/cli/logging/logs-list.js +33 -28
- package/src/cli/logging/logs-tail.js +26 -22
- package/src/cli/realm/realm-add-custom-domain.js +13 -13
- package/src/cli/realm/realm-describe.js +14 -14
- package/src/cli/realm/realm-list.js +11 -11
- package/src/cli/realm/realm-remove-custom-domain.js +16 -13
- package/src/cli/saml/saml-cot-export.js +16 -16
- package/src/cli/saml/saml-cot-import.js +18 -18
- package/src/cli/saml/saml-cot-list.js +12 -12
- package/src/cli/saml/saml-describe.js +12 -12
- package/src/cli/saml/saml-export.js +16 -19
- package/src/cli/saml/saml-import.js +19 -18
- package/src/cli/saml/saml-list.js +12 -12
- package/src/cli/saml/saml-metadata-export.js +15 -19
- package/src/cli/script/script-delete.js +9 -8
- package/src/cli/script/script-describe.js +9 -8
- package/src/cli/script/script-export.js +18 -20
- package/src/cli/script/script-import.js +13 -12
- package/src/cli/script/script-list.js +12 -12
- package/src/cli/theme/theme-delete.js +17 -21
- package/src/cli/theme/theme-export.js +19 -18
- package/src/cli/theme/theme-import.js +21 -20
- package/src/cli/theme/theme-list.js +12 -12
- package/.eslintrc +0 -29
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
- package/.github/README.md +0 -273
- package/.github/workflows/pipeline.yml +0 -487
- package/.prettierrc +0 -6
- package/CODE_OF_CONDUCT.md +0 -128
- package/docs/BINARIES.md +0 -22
- package/docs/CONTRIBUTE.md +0 -96
- package/docs/PIPELINE.md +0 -169
- package/docs/images/macos_warn1.png +0 -0
- package/docs/images/macos_warn2.png +0 -0
- package/docs/images/macos_warn3.png +0 -0
- package/docs/images/npm_versioning_guidelines.png +0 -0
- package/docs/images/release_pipeline.png +0 -0
- package/gulpfile.js +0 -49
- package/jsconfig.json +0 -6
- package/resources/sampleEntitiesFile.json +0 -8
- package/resources/sampleEnvFile.env +0 -2
- package/src/api/AuthenticateApi.js +0 -33
- package/src/api/BaseApi.js +0 -242
- package/src/api/CirclesOfTrustApi.js +0 -87
- package/src/api/EmailTemplateApi.js +0 -37
- package/src/api/IdmConfigApi.js +0 -88
- package/src/api/LogApi.js +0 -45
- package/src/api/ManagedObjectApi.js +0 -62
- package/src/api/OAuth2ClientApi.js +0 -69
- package/src/api/OAuth2OIDCApi.js +0 -73
- package/src/api/OAuth2ProviderApi.js +0 -32
- package/src/api/RealmApi.js +0 -99
- package/src/api/Saml2Api.js +0 -176
- package/src/api/ScriptApi.js +0 -84
- package/src/api/SecretsApi.js +0 -151
- package/src/api/ServerInfoApi.js +0 -41
- package/src/api/SocialIdentityProvidersApi.js +0 -114
- package/src/api/StartupApi.js +0 -45
- package/src/api/ThemeApi.js +0 -181
- package/src/api/TreeApi.js +0 -207
- package/src/api/VariablesApi.js +0 -104
- package/src/api/utils/ApiUtils.js +0 -77
- package/src/api/utils/Base64.js +0 -62
- package/src/cli/journey/journey-delete.e2e.test.js +0 -380
- package/src/cli/journey/journey-list.e2e.test.js +0 -141
- package/src/cli/theme/theme-delete.e2e.test.js +0 -178
- package/src/cli/theme/theme-list.e2e.test.js +0 -119
- package/src/ops/AdminOps.js +0 -901
- package/src/ops/AuthenticateOps.js +0 -342
- package/src/ops/CirclesOfTrustOps.js +0 -350
- package/src/ops/ConnectionProfileOps.js +0 -254
- package/src/ops/EmailTemplateOps.js +0 -326
- package/src/ops/IdmOps.js +0 -227
- package/src/ops/IdpOps.js +0 -342
- package/src/ops/JourneyOps.js +0 -2026
- package/src/ops/LogOps.js +0 -357
- package/src/ops/ManagedObjectOps.js +0 -34
- package/src/ops/OAuth2ClientOps.js +0 -151
- package/src/ops/OrganizationOps.js +0 -85
- package/src/ops/RealmOps.js +0 -139
- package/src/ops/SamlOps.js +0 -541
- package/src/ops/ScriptOps.js +0 -211
- package/src/ops/SecretsOps.js +0 -288
- package/src/ops/StartupOps.js +0 -114
- package/src/ops/ThemeOps.js +0 -379
- package/src/ops/VariablesOps.js +0 -185
- package/src/ops/templates/OAuth2ClientTemplate.json +0 -270
- package/src/ops/templates/OrgModelUserAttributesTemplate.json +0 -149
- package/src/ops/templates/cloud/GenericExtensionAttributesTemplate.json +0 -392
- package/src/ops/templates/cloud/managed.json +0 -4119
- package/src/ops/utils/Console.js +0 -434
- package/src/ops/utils/DataProtection.js +0 -92
- package/src/ops/utils/ExportImportUtils.js +0 -146
- package/src/ops/utils/OpsUtils.js +0 -76
- package/src/ops/utils/Wordwrap.js +0 -11
- package/src/storage/SessionStorage.js +0 -45
- package/test/client_cli/en/connections.test.js +0 -62
- package/test/client_cli/en/connections_add.test.js +0 -34
- package/test/client_cli/en/connections_delete.test.js +0 -34
- package/test/client_cli/en/connections_list.test.js +0 -34
- package/test/client_cli/en/email_templates.test.js +0 -77
- package/test/client_cli/en/email_templates_export.test.js +0 -196
- package/test/client_cli/en/email_templates_import.test.js +0 -145
- package/test/client_cli/en/email_templates_list.test.js +0 -130
- package/test/client_cli/en/idm.test.js +0 -111
- package/test/client_cli/en/idm_count.test.js +0 -121
- package/test/client_cli/en/idm_export.test.js +0 -136
- package/test/client_cli/en/idm_exportAll.test.js +0 -156
- package/test/client_cli/en/idm_exportAllRaw.test.js +0 -120
- package/test/client_cli/en/idm_import.test_.js +0 -103
- package/test/client_cli/en/idm_importAll.test_.js +0 -103
- package/test/client_cli/en/idm_list.test.js +0 -103
- package/test/client_cli/en/info.test.js +0 -125
- package/test/client_cli/en/journey.test.js +0 -127
- package/test/client_cli/en/journey_describe.test.js +0 -196
- package/test/client_cli/en/journey_export.test.js +0 -213
- package/test/client_cli/en/journey_import.test.js +0 -195
- package/test/client_cli/en/journey_importAll.test.js +0 -180
- package/test/client_cli/en/journey_list.test.js +0 -162
- package/test/client_cli/en/journey_prune.test.js +0 -148
- package/test/client_cli/en/logs.test.js +0 -79
- package/test/client_cli/en/logs_list.test.js +0 -83
- package/test/client_cli/en/logs_tail.test.js +0 -118
- package/test/client_cli/en/root.test.js +0 -91
- package/test/client_cli/en/script.test.js +0 -77
- package/test/client_cli/en/script_export.test.js +0 -213
- package/test/client_cli/en/script_import.test.js +0 -163
- package/test/client_cli/en/script_list.test.js +0 -148
- package/test/client_cli/utils/utils.js +0 -32
- package/test/e2e/journey/baseline/ForgottenUsername.journey.json +0 -216
- package/test/e2e/journey/baseline/Login.journey.json +0 -205
- package/test/e2e/journey/baseline/PasswordGrant.journey.json +0 -139
- package/test/e2e/journey/baseline/ProgressiveProfile.journey.json +0 -198
- package/test/e2e/journey/baseline/Registration.journey.json +0 -249
- package/test/e2e/journey/baseline/ResetPassword.journey.json +0 -268
- package/test/e2e/journey/baseline/UpdatePassword.journey.json +0 -323
- package/test/e2e/journey/baseline/allAlphaJourneys.journeys.json +0 -1520
- package/test/e2e/journey/delete/ForgottenUsername.journey.json +0 -216
- package/test/e2e/journey/delete/Login.journey.json +0 -205
- package/test/e2e/journey/delete/PasswordGrant.journey.json +0 -139
- package/test/e2e/journey/delete/ProgressiveProfile.journey.json +0 -198
- package/test/e2e/journey/delete/Registration.journey.json +0 -249
- package/test/e2e/journey/delete/ResetPassword.journey.json +0 -268
- package/test/e2e/journey/delete/UpdatePassword.journey.json +0 -323
- package/test/e2e/journey/delete/deleteMe.journey.json +0 -230
- package/test/e2e/journey/list/Disabled.journey.json +0 -43
- package/test/e2e/journey/list/ForgottenUsername.journey.json +0 -216
- package/test/e2e/journey/list/Login.journey.json +0 -205
- package/test/e2e/journey/list/PasswordGrant.journey.json +0 -139
- package/test/e2e/journey/list/ProgressiveProfile.journey.json +0 -198
- package/test/e2e/journey/list/Registration.journey.json +0 -249
- package/test/e2e/journey/list/ResetPassword.journey.json +0 -268
- package/test/e2e/journey/list/UpdatePassword.journey.json +0 -323
- package/test/e2e/setup.js +0 -98
- package/test/e2e/theme/baseline/Contrast.theme.json +0 -95
- package/test/e2e/theme/baseline/Highlander.theme.json +0 -95
- package/test/e2e/theme/baseline/Robroy.theme.json +0 -95
- package/test/e2e/theme/baseline/Starter-Theme.theme.json +0 -94
- package/test/e2e/theme/baseline/Zardoz.theme.json +0 -95
- package/test/e2e/theme/import/Contrast.theme.json +0 -95
- package/test/e2e/theme/import/Highlander.theme.json +0 -95
- package/test/e2e/theme/import/Robroy.theme.json +0 -95
- package/test/e2e/theme/import/Starter-Theme.theme.json +0 -94
- package/test/e2e/theme/import/Zardoz.default.theme.json +0 -95
- package/test/fs_tmp/.gitkeep +0 -2
- package/test/global/setup.js +0 -65
- package/test/lib_api/unit_tests/ApiUtils.test.js +0 -186
- package/test/lib_api/unit_tests/Base64URL.test.js +0 -22
- package/test/lib_api/unit_tests/DataProtection.test.js +0 -25
- package/test/lib_api/unit_tests/ExportImportUtils.test.js +0 -121
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import {
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
const {
|
|
7
7
|
importCircleOfTrust,
|
|
8
8
|
importCirclesOfTrustFromFile,
|
|
9
9
|
importCirclesOfTrustFromFiles,
|
|
10
10
|
importFirstCircleOfTrust,
|
|
11
|
-
}
|
|
11
|
+
} = CirclesOfTrust;
|
|
12
12
|
|
|
13
13
|
const program = new Command('frodo saml cot import');
|
|
14
14
|
|
|
@@ -49,48 +49,48 @@ program
|
|
|
49
49
|
.action(
|
|
50
50
|
// implement program logic inside action handler
|
|
51
51
|
async (host, realm, user, password, options) => {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
state.default.session.setTenant(host);
|
|
53
|
+
state.default.session.setRealm(realm);
|
|
54
|
+
state.default.session.setUsername(user);
|
|
55
|
+
state.default.session.setPassword(password);
|
|
56
|
+
state.default.session.setDeploymentType(options.type);
|
|
57
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
58
58
|
if (await getTokens()) {
|
|
59
59
|
// import by id
|
|
60
60
|
if (options.file && options.cotId) {
|
|
61
|
-
|
|
61
|
+
console.log(
|
|
62
62
|
`Importing circle of trust "${
|
|
63
63
|
options.cotId
|
|
64
|
-
}" into realm "${
|
|
64
|
+
}" into realm "${state.default.session.getRealm()}"...`
|
|
65
65
|
);
|
|
66
66
|
importCircleOfTrust(options.cotId, options.file);
|
|
67
67
|
}
|
|
68
68
|
// --all -a
|
|
69
69
|
else if (options.all && options.file) {
|
|
70
|
-
|
|
70
|
+
console.log(
|
|
71
71
|
`Importing all circles of trust from a single file (${options.file})...`
|
|
72
72
|
);
|
|
73
73
|
importCirclesOfTrustFromFile(options.file);
|
|
74
74
|
}
|
|
75
75
|
// --all-separate -A
|
|
76
76
|
else if (options.allSeparate && !options.file) {
|
|
77
|
-
|
|
77
|
+
console.log(
|
|
78
78
|
'Importing all circles of trust from separate files (*.saml.json) in current directory...'
|
|
79
79
|
);
|
|
80
80
|
importCirclesOfTrustFromFiles();
|
|
81
81
|
}
|
|
82
82
|
// import first provider from file
|
|
83
83
|
else if (options.file) {
|
|
84
|
-
|
|
84
|
+
console.log(
|
|
85
85
|
`Importing first circle of trust from file "${
|
|
86
86
|
options.file
|
|
87
|
-
}" into realm "${
|
|
87
|
+
}" into realm "${state.default.session.getRealm()}"...`
|
|
88
88
|
);
|
|
89
89
|
importFirstCircleOfTrust(options.file);
|
|
90
90
|
}
|
|
91
91
|
// unrecognized combination of options or no options
|
|
92
92
|
else {
|
|
93
|
-
|
|
93
|
+
console.log('Unrecognized combination of options or no options...');
|
|
94
94
|
program.help();
|
|
95
95
|
}
|
|
96
96
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, CirclesOfTrust, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { listCirclesOfTrust } from '../../ops/CirclesOfTrustOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
const { listCirclesOfTrust } = CirclesOfTrust;
|
|
7
7
|
|
|
8
8
|
const program = new Command('frodo saml cot list');
|
|
9
9
|
|
|
@@ -23,15 +23,15 @@ program
|
|
|
23
23
|
.action(
|
|
24
24
|
// implement command logic inside action handler
|
|
25
25
|
async (host, realm, user, password, options) => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
state.default.session.setTenant(host);
|
|
27
|
+
state.default.session.setRealm(realm);
|
|
28
|
+
state.default.session.setUsername(user);
|
|
29
|
+
state.default.session.setPassword(password);
|
|
30
|
+
state.default.session.setDeploymentType(options.type);
|
|
31
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
32
32
|
if (await getTokens()) {
|
|
33
|
-
|
|
34
|
-
`Listing SAML circles of trust in realm "${
|
|
33
|
+
console.log(
|
|
34
|
+
`Listing SAML circles of trust in realm "${state.default.session.getRealm()}"...`
|
|
35
35
|
);
|
|
36
36
|
listCirclesOfTrust(options.long);
|
|
37
37
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Saml, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { describeProvider } from '../../ops/SamlOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
const { describeProvider } = Saml;
|
|
7
7
|
|
|
8
8
|
const program = new Command('frodo saml describe');
|
|
9
9
|
|
|
@@ -21,17 +21,17 @@ program
|
|
|
21
21
|
.action(
|
|
22
22
|
// implement command logic inside action handler
|
|
23
23
|
async (host, realm, user, password, options) => {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
24
|
+
state.default.session.setTenant(host);
|
|
25
|
+
state.default.session.setRealm(realm);
|
|
26
|
+
state.default.session.setUsername(user);
|
|
27
|
+
state.default.session.setPassword(password);
|
|
28
|
+
state.default.session.setDeploymentType(options.type);
|
|
29
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
30
30
|
if (await getTokens()) {
|
|
31
|
-
|
|
31
|
+
console.log(
|
|
32
32
|
`Describing SAML entity provider ${
|
|
33
33
|
options.entityId
|
|
34
|
-
} in realm "${
|
|
34
|
+
} in realm "${state.default.session.getRealm()}"...`
|
|
35
35
|
);
|
|
36
36
|
describeProvider(options.entityId);
|
|
37
37
|
}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Saml, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exportProvider,
|
|
8
|
-
exportProvidersToFile,
|
|
9
|
-
exportProvidersToFiles,
|
|
10
|
-
} from '../../ops/SamlOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
|
|
7
|
+
const { exportProvider, exportProvidersToFile, exportProvidersToFiles } = Saml;
|
|
11
8
|
|
|
12
9
|
const program = new Command('frodo saml export');
|
|
13
10
|
|
|
@@ -48,35 +45,35 @@ program
|
|
|
48
45
|
.action(
|
|
49
46
|
// implement command logic inside action handler
|
|
50
47
|
async (host, realm, user, password, options) => {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
48
|
+
state.default.session.setTenant(host);
|
|
49
|
+
state.default.session.setRealm(realm);
|
|
50
|
+
state.default.session.setUsername(user);
|
|
51
|
+
state.default.session.setPassword(password);
|
|
52
|
+
state.default.session.setDeploymentType(options.type);
|
|
53
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
57
54
|
if (await getTokens()) {
|
|
58
55
|
// export by id/name
|
|
59
56
|
if (options.entityId) {
|
|
60
|
-
|
|
57
|
+
console.log(
|
|
61
58
|
`Exporting provider "${
|
|
62
59
|
options.entityId
|
|
63
|
-
}" from realm "${
|
|
60
|
+
}" from realm "${state.default.session.getRealm()}"...`
|
|
64
61
|
);
|
|
65
62
|
exportProvider(options.entityId, options.file);
|
|
66
63
|
}
|
|
67
64
|
// --all -a
|
|
68
65
|
else if (options.all) {
|
|
69
|
-
|
|
66
|
+
console.log('Exporting all providers to a single file...');
|
|
70
67
|
exportProvidersToFile(options.file);
|
|
71
68
|
}
|
|
72
69
|
// --all-separate -A
|
|
73
70
|
else if (options.allSeparate) {
|
|
74
|
-
|
|
71
|
+
console.log('Exporting all providers to separate files...');
|
|
75
72
|
exportProvidersToFiles();
|
|
76
73
|
}
|
|
77
74
|
// unrecognized combination of options or no options
|
|
78
75
|
else {
|
|
79
|
-
|
|
76
|
+
console.log(
|
|
80
77
|
'Unrecognized combination of options or no options...',
|
|
81
78
|
'error'
|
|
82
79
|
);
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Saml, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
|
|
7
|
+
const {
|
|
7
8
|
importProvider,
|
|
8
9
|
importProvidersFromFile,
|
|
9
10
|
importProvidersFromFiles,
|
|
10
11
|
importFirstProvider,
|
|
11
|
-
}
|
|
12
|
+
} = Saml;
|
|
12
13
|
|
|
13
14
|
const program = new Command('frodo saml import');
|
|
14
15
|
|
|
@@ -49,48 +50,48 @@ program
|
|
|
49
50
|
.action(
|
|
50
51
|
// implement program logic inside action handler
|
|
51
52
|
async (host, realm, user, password, options) => {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
state.default.session.setTenant(host);
|
|
54
|
+
state.default.session.setRealm(realm);
|
|
55
|
+
state.default.session.setUsername(user);
|
|
56
|
+
state.default.session.setPassword(password);
|
|
57
|
+
state.default.session.setDeploymentType(options.type);
|
|
58
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
58
59
|
if (await getTokens()) {
|
|
59
60
|
// import by id
|
|
60
61
|
if (options.file && options.entityId) {
|
|
61
|
-
|
|
62
|
+
console.log(
|
|
62
63
|
`Importing provider "${
|
|
63
64
|
options.entityId
|
|
64
|
-
}" into realm "${
|
|
65
|
+
}" into realm "${state.default.session.getRealm()}"...`
|
|
65
66
|
);
|
|
66
67
|
importProvider(options.entityId, options.file);
|
|
67
68
|
}
|
|
68
69
|
// --all -a
|
|
69
70
|
else if (options.all && options.file) {
|
|
70
|
-
|
|
71
|
+
console.log(
|
|
71
72
|
`Importing all providers from a single file (${options.file})...`
|
|
72
73
|
);
|
|
73
74
|
importProvidersFromFile(options.file);
|
|
74
75
|
}
|
|
75
76
|
// --all-separate -A
|
|
76
77
|
else if (options.allSeparate && !options.file) {
|
|
77
|
-
|
|
78
|
+
console.log(
|
|
78
79
|
'Importing all providers from separate files (*.saml.json) in current directory...'
|
|
79
80
|
);
|
|
80
81
|
importProvidersFromFiles();
|
|
81
82
|
}
|
|
82
83
|
// import first provider from file
|
|
83
84
|
else if (options.file) {
|
|
84
|
-
|
|
85
|
+
console.log(
|
|
85
86
|
`Importing first provider from file "${
|
|
86
87
|
options.file
|
|
87
|
-
}" into realm "${
|
|
88
|
+
}" into realm "${state.default.session.getRealm()}"...`
|
|
88
89
|
);
|
|
89
90
|
importFirstProvider(options.file);
|
|
90
91
|
}
|
|
91
92
|
// unrecognized combination of options or no options
|
|
92
93
|
else {
|
|
93
|
-
|
|
94
|
+
console.log('Unrecognized combination of options or no options...');
|
|
94
95
|
program.help();
|
|
95
96
|
}
|
|
96
97
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Saml, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { listProviders } from '../../ops/SamlOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
const { listProviders } = Saml;
|
|
7
7
|
|
|
8
8
|
const program = new Command('frodo saml list');
|
|
9
9
|
|
|
@@ -23,15 +23,15 @@ program
|
|
|
23
23
|
.action(
|
|
24
24
|
// implement command logic inside action handler
|
|
25
25
|
async (host, realm, user, password, options) => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
state.default.session.setTenant(host);
|
|
27
|
+
state.default.session.setRealm(realm);
|
|
28
|
+
state.default.session.setUsername(user);
|
|
29
|
+
state.default.session.setPassword(password);
|
|
30
|
+
state.default.session.setDeploymentType(options.type);
|
|
31
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
32
32
|
if (await getTokens()) {
|
|
33
|
-
|
|
34
|
-
`Listing SAML entity providers in realm "${
|
|
33
|
+
console.log(
|
|
34
|
+
`Listing SAML entity providers in realm "${state.default.session.getRealm()}"...`
|
|
35
35
|
);
|
|
36
36
|
listProviders(options.long);
|
|
37
37
|
}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Saml, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exportCircleOfTrust,
|
|
8
|
-
exportCirclesOfTrustToFile,
|
|
9
|
-
exportCirclesOfTrustToFiles,
|
|
10
|
-
} from '../../ops/CirclesOfTrustOps.js';
|
|
11
|
-
import { exportMetadata } from '../../ops/SamlOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
|
|
7
|
+
const { exportMetadata } = Saml;
|
|
12
8
|
|
|
13
9
|
const program = new Command('frodo saml metadata export');
|
|
14
10
|
|
|
@@ -43,30 +39,30 @@ program
|
|
|
43
39
|
.action(
|
|
44
40
|
// implement command logic inside action handler
|
|
45
41
|
async (host, realm, user, password, options) => {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
42
|
+
state.default.session.setTenant(host);
|
|
43
|
+
state.default.session.setRealm(realm);
|
|
44
|
+
state.default.session.setUsername(user);
|
|
45
|
+
state.default.session.setPassword(password);
|
|
46
|
+
state.default.session.setDeploymentType(options.type);
|
|
47
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
52
48
|
if (await getTokens()) {
|
|
53
49
|
// export by id/name
|
|
54
50
|
if (options.entityId) {
|
|
55
|
-
|
|
51
|
+
console.log(
|
|
56
52
|
`Exporting metadata for provider "${
|
|
57
53
|
options.entityId
|
|
58
|
-
}" from realm "${
|
|
54
|
+
}" from realm "${state.default.session.getRealm()}"...`
|
|
59
55
|
);
|
|
60
56
|
exportMetadata(options.entityId, options.file);
|
|
61
57
|
}
|
|
62
58
|
// // --all-separate -A
|
|
63
59
|
// else if (options.allSeparate) {
|
|
64
|
-
//
|
|
60
|
+
// console.log('Exporting all providers to separate files...');
|
|
65
61
|
// exportProvidersToFiles();
|
|
66
62
|
// }
|
|
67
63
|
// unrecognized combination of options or no options
|
|
68
64
|
else {
|
|
69
|
-
|
|
65
|
+
console.log(
|
|
70
66
|
'Unrecognized combination of options or no options...',
|
|
71
67
|
'error'
|
|
72
68
|
);
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
5
6
|
|
|
6
7
|
const program = new Command('frodo cmd delete');
|
|
7
8
|
|
|
@@ -39,12 +40,12 @@ program
|
|
|
39
40
|
.action(
|
|
40
41
|
// implement command logic inside action handler
|
|
41
42
|
async (host, realm, user, password, options) => {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
state.default.session.setTenant(host);
|
|
44
|
+
state.default.session.setRealm(realm);
|
|
45
|
+
state.default.session.setUsername(user);
|
|
46
|
+
state.default.session.setPassword(password);
|
|
47
|
+
state.default.session.setDeploymentType(options.type);
|
|
48
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
48
49
|
if (await getTokens()) {
|
|
49
50
|
// code goes here
|
|
50
51
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
5
6
|
|
|
6
7
|
const program = new Command('frodo cmd describe');
|
|
7
8
|
|
|
@@ -19,12 +20,12 @@ program
|
|
|
19
20
|
.action(
|
|
20
21
|
// implement command logic inside action handler
|
|
21
22
|
async (host, realm, user, password, options) => {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
state.default.session.setTenant(host);
|
|
24
|
+
state.default.session.setRealm(realm);
|
|
25
|
+
state.default.session.setUsername(user);
|
|
26
|
+
state.default.session.setPassword(password);
|
|
27
|
+
state.default.session.setDeploymentType(options.type);
|
|
28
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
28
29
|
if (await getTokens()) {
|
|
29
30
|
// code goes here
|
|
30
31
|
}
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Script, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
exportScriptsToFile,
|
|
9
|
-
exportScriptsToFiles,
|
|
10
|
-
} from '../../ops/ScriptOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
const { exportScriptByName } = Script;
|
|
7
|
+
const { exportScriptsToFile } = Script;
|
|
8
|
+
const { exportScriptsToFiles } = Script;
|
|
11
9
|
|
|
12
10
|
const program = new Command('frodo script export');
|
|
13
11
|
|
|
@@ -37,13 +35,13 @@ program
|
|
|
37
35
|
.addOption(
|
|
38
36
|
new Option(
|
|
39
37
|
'-a, --all',
|
|
40
|
-
'Export all
|
|
38
|
+
'Export all scripts to a single file. Ignored with -i.'
|
|
41
39
|
)
|
|
42
40
|
)
|
|
43
41
|
.addOption(
|
|
44
42
|
new Option(
|
|
45
43
|
'-A, --all-separate',
|
|
46
|
-
'Export all
|
|
44
|
+
'Export all scripts to separate files (*.script.json) in the current directory. Ignored with -i or -a.'
|
|
47
45
|
)
|
|
48
46
|
)
|
|
49
47
|
// deprecated option
|
|
@@ -56,16 +54,16 @@ program
|
|
|
56
54
|
.action(
|
|
57
55
|
// implement command logic inside action handler
|
|
58
56
|
async (host, realm, user, password, options) => {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
57
|
+
state.default.session.setTenant(host);
|
|
58
|
+
state.default.session.setRealm(realm);
|
|
59
|
+
state.default.session.setUsername(user);
|
|
60
|
+
state.default.session.setPassword(password);
|
|
61
|
+
state.default.session.setDeploymentType(options.type);
|
|
62
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
65
63
|
if (await getTokens()) {
|
|
66
64
|
// export by name
|
|
67
65
|
if (options.scriptName || options.script) {
|
|
68
|
-
|
|
66
|
+
console.log('Exporting script...');
|
|
69
67
|
exportScriptByName(
|
|
70
68
|
options.scriptName || options.script,
|
|
71
69
|
options.file
|
|
@@ -73,17 +71,17 @@ program
|
|
|
73
71
|
}
|
|
74
72
|
// -a / --all
|
|
75
73
|
else if (options.all) {
|
|
76
|
-
|
|
74
|
+
console.log('Exporting all scripts to a single file...');
|
|
77
75
|
exportScriptsToFile(options.file);
|
|
78
76
|
}
|
|
79
77
|
// -A / --all-separate
|
|
80
78
|
else if (options.allSeparate) {
|
|
81
|
-
|
|
79
|
+
console.log('Exporting all scripts to separate files...');
|
|
82
80
|
exportScriptsToFiles();
|
|
83
81
|
}
|
|
84
82
|
// unrecognized combination of options or no options
|
|
85
83
|
else {
|
|
86
|
-
|
|
84
|
+
console.log(
|
|
87
85
|
'Unrecognized combination of options or no options...',
|
|
88
86
|
'error'
|
|
89
87
|
);
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Script, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
|
|
7
|
+
const { importScriptsFromFile } = Script;
|
|
7
8
|
|
|
8
9
|
const program = new Command('frodo script import');
|
|
9
10
|
|
|
@@ -40,15 +41,15 @@ program
|
|
|
40
41
|
.action(
|
|
41
42
|
// implement command logic inside action handler
|
|
42
43
|
async (host, realm, user, password, options) => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
state.default.session.setTenant(host);
|
|
45
|
+
state.default.session.setRealm(realm);
|
|
46
|
+
state.default.session.setUsername(user);
|
|
47
|
+
state.default.session.setPassword(password);
|
|
48
|
+
state.default.session.setDeploymentType(options.type);
|
|
49
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
49
50
|
if (await getTokens()) {
|
|
50
|
-
|
|
51
|
-
`Importing script(s) into realm "${
|
|
51
|
+
console.log(
|
|
52
|
+
`Importing script(s) into realm "${state.default.session.getRealm()}"...`
|
|
52
53
|
);
|
|
53
54
|
importScriptsFromFile(
|
|
54
55
|
options.scriptName || options.script,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Command, Option } from 'commander';
|
|
2
|
+
import { Authenticate, Script, state } from '@rockcarver/frodo-lib';
|
|
2
3
|
import * as common from '../cmd_common.js';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { listScripts } from '../../ops/ScriptOps.js';
|
|
4
|
+
|
|
5
|
+
const { getTokens } = Authenticate;
|
|
6
|
+
const { listScripts } = Script;
|
|
7
7
|
|
|
8
8
|
const program = new Command('frodo script list');
|
|
9
9
|
|
|
@@ -23,15 +23,15 @@ program
|
|
|
23
23
|
.action(
|
|
24
24
|
// implement command logic inside action handler
|
|
25
25
|
async (host, realm, user, password, options) => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
state.default.session.setTenant(host);
|
|
27
|
+
state.default.session.setRealm(realm);
|
|
28
|
+
state.default.session.setUsername(user);
|
|
29
|
+
state.default.session.setPassword(password);
|
|
30
|
+
state.default.session.setDeploymentType(options.type);
|
|
31
|
+
state.default.session.setAllowInsecureConnection(options.insecure);
|
|
32
32
|
if (await getTokens()) {
|
|
33
|
-
|
|
34
|
-
`Listing scripts in realm "${
|
|
33
|
+
console.log(
|
|
34
|
+
`Listing scripts in realm "${state.default.session.getRealm()}"...`
|
|
35
35
|
);
|
|
36
36
|
await listScripts(options.long);
|
|
37
37
|
}
|