@rockcarver/frodo-lib 2.0.0-3 → 2.0.0-4
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/AgentApi.js +64 -16
- package/cjs/api/AgentApi.js.map +1 -1
- package/cjs/api/ApiTypes.js +0 -55
- package/cjs/api/ApiTypes.js.map +1 -1
- package/cjs/api/BaseApi.js +21 -11
- package/cjs/api/BaseApi.js.map +1 -1
- package/cjs/api/cloud/SecretsApi.js +7 -14
- package/cjs/api/cloud/SecretsApi.js.map +1 -1
- package/cjs/api/cloud/SecretsApi.test.js.map +1 -1
- package/cjs/ops/AdminOps.js +254 -60
- package/cjs/ops/AdminOps.js.map +1 -1
- package/cjs/ops/AgentOps.js +352 -108
- package/cjs/ops/AgentOps.js.map +1 -1
- package/cjs/ops/AuthenticateOps.js +253 -60
- package/cjs/ops/AuthenticateOps.js.map +1 -1
- package/cjs/ops/CirclesOfTrustOps.js +16 -4
- package/cjs/ops/CirclesOfTrustOps.js.map +1 -1
- package/cjs/ops/ConnectionProfileOps.js +163 -40
- package/cjs/ops/ConnectionProfileOps.js.map +1 -1
- package/cjs/ops/EmailTemplateOps.js +7 -1
- package/cjs/ops/EmailTemplateOps.js.map +1 -1
- package/cjs/ops/IdpOps.js +55 -12
- package/cjs/ops/IdpOps.js.map +1 -1
- package/cjs/ops/JourneyOps.js +645 -136
- package/cjs/ops/JourneyOps.js.map +1 -1
- package/cjs/ops/NodeOps.js +96 -24
- package/cjs/ops/NodeOps.js.map +1 -1
- package/cjs/ops/OAuth2ClientOps.js +45 -11
- package/cjs/ops/OAuth2ClientOps.js.map +1 -1
- package/cjs/ops/OpsTypes.js +0 -23
- package/cjs/ops/OpsTypes.js.map +1 -1
- package/cjs/ops/OrganizationOps.js +44 -10
- package/cjs/ops/OrganizationOps.js.map +1 -1
- package/cjs/ops/PolicyOps.js +86 -24
- package/cjs/ops/PolicyOps.js.map +1 -1
- package/cjs/ops/PolicySetOps.js +72 -18
- package/cjs/ops/PolicySetOps.js.map +1 -1
- package/cjs/ops/ResourceTypeOps.js +24 -6
- package/cjs/ops/ResourceTypeOps.js.map +1 -1
- package/cjs/ops/Saml2Ops.js +120 -33
- package/cjs/ops/Saml2Ops.js.map +1 -1
- package/cjs/ops/Saml2Ops.test.js.map +1 -1
- package/cjs/ops/ScriptOps.js +73 -17
- package/cjs/ops/ScriptOps.js.map +1 -1
- package/cjs/ops/ServiceOps.js +152 -35
- package/cjs/ops/ServiceOps.js.map +1 -1
- package/cjs/ops/ThemeOps.js +20 -5
- package/cjs/ops/ThemeOps.js.map +1 -1
- package/cjs/ops/cloud/FeatureOps.js +4 -1
- package/cjs/ops/cloud/FeatureOps.js.map +1 -1
- package/cjs/ops/cloud/SecretsOps.js.map +1 -1
- package/cjs/ops/cloud/ServiceAccountOps.js +24 -6
- package/cjs/ops/cloud/ServiceAccountOps.js.map +1 -1
- package/cjs/ops/cloud/StartupOps.js +55 -11
- package/cjs/ops/cloud/StartupOps.js.map +1 -1
- package/cjs/ops/utils/Console.js +47 -22
- package/cjs/ops/utils/Console.js.map +1 -1
- package/cjs/ops/utils/DataProtection.js +12 -5
- package/cjs/ops/utils/DataProtection.js.map +1 -1
- package/cjs/ops/utils/DataProtection.test.js.map +1 -1
- package/cjs/ops/utils/ExportImportUtils.js +15 -8
- package/cjs/ops/utils/ExportImportUtils.js.map +1 -1
- package/cjs/ops/utils/ScriptValidationUtils.js +33 -8
- package/cjs/ops/utils/ScriptValidationUtils.js.map +1 -1
- package/cjs/ops/utils/ScriptValidationUtils.test.js.map +1 -1
- package/cjs/utils/SetupPollyForFrodoLib.js +67 -19
- package/cjs/utils/SetupPollyForFrodoLib.js.map +1 -1
- package/esm/api/AgentApi.mjs +64 -16
- package/esm/api/ApiTypes.mjs +1 -50
- package/esm/api/BaseApi.mjs +21 -11
- package/esm/api/cloud/SecretsApi.mjs +0 -5
- package/esm/api/cloud/SecretsApi.test.mjs +3 -3
- package/esm/ops/AdminOps.mjs +254 -60
- package/esm/ops/AgentOps.mjs +352 -104
- package/esm/ops/AuthenticateOps.mjs +253 -60
- package/esm/ops/CirclesOfTrustOps.mjs +16 -4
- package/esm/ops/ConnectionProfileOps.mjs +163 -40
- package/esm/ops/EmailTemplateOps.mjs +5 -0
- package/esm/ops/IdpOps.mjs +55 -12
- package/esm/ops/JourneyOps.mjs +639 -132
- package/esm/ops/NodeOps.mjs +90 -19
- package/esm/ops/OAuth2ClientOps.mjs +45 -11
- package/esm/ops/OpsTypes.mjs +1 -22
- package/esm/ops/OrganizationOps.mjs +44 -10
- package/esm/ops/PolicyOps.mjs +86 -24
- package/esm/ops/PolicySetOps.mjs +72 -18
- package/esm/ops/ResourceTypeOps.mjs +24 -6
- package/esm/ops/Saml2Ops.mjs +120 -33
- package/esm/ops/Saml2Ops.test.mjs +10 -11
- package/esm/ops/ScriptOps.mjs +73 -17
- package/esm/ops/ServiceOps.mjs +152 -35
- package/esm/ops/ThemeOps.mjs +20 -5
- package/esm/ops/cloud/FeatureOps.mjs +4 -1
- package/esm/ops/cloud/ServiceAccountOps.mjs +24 -6
- package/esm/ops/cloud/StartupOps.mjs +55 -11
- package/esm/ops/utils/Console.mjs +33 -9
- package/esm/ops/utils/DataProtection.mjs +9 -2
- package/esm/ops/utils/DataProtection.test.mjs +8 -2
- package/esm/ops/utils/ExportImportUtils.mjs +15 -8
- package/esm/ops/utils/ScriptValidationUtils.mjs +30 -8
- package/esm/ops/utils/ScriptValidationUtils.test.mjs +14 -3
- package/esm/utils/SetupPollyForFrodoLib.mjs +64 -18
- package/package.json +1 -1
- package/types/api/AgentApi.d.ts +6 -6
- package/types/api/AgentApi.d.ts.map +1 -1
- package/types/api/ApiTypes.d.ts +12 -49
- package/types/api/ApiTypes.d.ts.map +1 -1
- package/types/api/BaseApi.d.ts.map +1 -1
- package/types/api/cloud/SecretsApi.d.ts +1 -4
- package/types/api/cloud/SecretsApi.d.ts.map +1 -1
- package/types/ops/AdminOps.d.ts.map +1 -1
- package/types/ops/AgentOps.d.ts +3 -6
- package/types/ops/AgentOps.d.ts.map +1 -1
- package/types/ops/AuthenticateOps.d.ts.map +1 -1
- package/types/ops/CirclesOfTrustOps.d.ts.map +1 -1
- package/types/ops/ConnectionProfileOps.d.ts.map +1 -1
- package/types/ops/EmailTemplateOps.d.ts +4 -0
- package/types/ops/EmailTemplateOps.d.ts.map +1 -1
- package/types/ops/IdpOps.d.ts.map +1 -1
- package/types/ops/JourneyOps.d.ts +10 -4
- package/types/ops/JourneyOps.d.ts.map +1 -1
- package/types/ops/NodeOps.d.ts +10 -4
- package/types/ops/NodeOps.d.ts.map +1 -1
- package/types/ops/OAuth2ClientOps.d.ts.map +1 -1
- package/types/ops/OpsTypes.d.ts +2 -12
- package/types/ops/OpsTypes.d.ts.map +1 -1
- package/types/ops/OrganizationOps.d.ts.map +1 -1
- package/types/ops/PolicyOps.d.ts.map +1 -1
- package/types/ops/PolicySetOps.d.ts.map +1 -1
- package/types/ops/ResourceTypeOps.d.ts.map +1 -1
- package/types/ops/Saml2Ops.d.ts.map +1 -1
- package/types/ops/ScriptOps.d.ts.map +1 -1
- package/types/ops/ServiceOps.d.ts.map +1 -1
- package/types/ops/ThemeOps.d.ts.map +1 -1
- package/types/ops/cloud/FeatureOps.d.ts.map +1 -1
- package/types/ops/cloud/SecretsOps.d.ts +1 -1
- package/types/ops/cloud/SecretsOps.d.ts.map +1 -1
- package/types/ops/cloud/ServiceAccountOps.d.ts.map +1 -1
- package/types/ops/cloud/StartupOps.d.ts.map +1 -1
- package/types/ops/utils/Console.d.ts +34 -7
- package/types/ops/utils/Console.d.ts.map +1 -1
- package/types/ops/utils/DataProtection.d.ts +5 -1
- package/types/ops/utils/DataProtection.d.ts.map +1 -1
- package/types/ops/utils/ExportImportUtils.d.ts.map +1 -1
- package/types/ops/utils/ScriptValidationUtils.d.ts +14 -4
- package/types/ops/utils/ScriptValidationUtils.d.ts.map +1 -1
- package/types/utils/SetupPollyForFrodoLib.d.ts +5 -1
- package/types/utils/SetupPollyForFrodoLib.d.ts.map +1 -1
package/cjs/ops/PolicyOps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PolicyOps.js","names":["_PoliciesApi","require","_ScriptOps","_ExportImportUtils","_ApiTypes","_Console","_ResourceTypesApi","_PolicySetOps","_ResourceTypeOps","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","PolicyOps","constructor","state","getPolicies","_this","getPoliciesByPolicySet","policySetId","_this2","getPolicy","policyId","_this3","putPolicy","policyData","_this4","deletePolicy","_this5","exportPolicy","_arguments","_this6","options","length","deps","prereqs","useStringArrays","exportPolicies","_arguments2","_this7","exportPoliciesByPolicySet","policySetName","_arguments3","_this8","importPolicy","importData","_arguments4","_this9","importFirstPolicy","_arguments5","_this10","importPolicies","_arguments6","_this11","exports","default","createPolicyExportTemplate","_ref","meta","getMetadata","script","policy","resourcetype","policyset","_x","_getPolicies2","_ref2","result","_getPolicies","_x2","_getPoliciesByPolicySet2","_ref3","data","_getPoliciesByPolicySet","findScriptUuids","condition","scriptUuids","type","PolicyConditionType","AND","toString","OR","NOT","push","conditions","cond","Script","scriptId","Set","getScripts","_x3","_getScripts","_ref4","debugMessage","concat","errors","scripts","scriptUuid","getScript","message","errorMessages","map","join","Error","exportPolicyPrerequisites","_x4","_exportPolicyPrerequisites","_ref5","exportData","resourceTypeUuid","resourceType","getResourceType","applicationName","policySet","getPolicySet","exportPolicyDependencies","_x5","_exportPolicyDependencies","_ref6","scriptData","convertBase64TextToArray","_id","_x6","_exportPolicy","_ref7","_x7","_exportPolicies","_ref8","policies","_x8","_exportPoliciesByPolicySet","_ref9","importPolicyPrerequisites","_x9","_importPolicyPrerequisites","_ref10","createResourceType","resourceTypeData","_error$response","response","status","updateResourceType","createPolicySet","policySetData","_error$response2","updatePolicySet","_error$response3","_error$response3$data","_error$response4","_error$response4$data","importPolicyDependencies","_x10","_importPolicyDependencies","_ref11","putScript","_error$response5","_error$response6","_error$response6$data","_error$response7","_error$response7$data","_error$response8","_error$response8$data","_x11","_importPolicy","_ref12","imported","id","Object","keys","_rev","_error$response9","_error$response9$data","_x12","_importFirstPolicy","_ref13","_error$response10","_error$response10$dat","_x13","_importPolicies","_ref14","_error$response11","_error$response11$dat"],"sources":["ops/PolicyOps.ts"],"sourcesContent":["import {\n getPolicies as _getPolicies,\n getPoliciesByPolicySet as _getPoliciesByPolicySet,\n getPolicy,\n putPolicy,\n deletePolicy,\n} from '../api/PoliciesApi';\nimport { getScript, putScript } from './ScriptOps';\nimport { convertBase64TextToArray } from './utils/ExportImportUtils';\nimport { ExportMetaData } from './OpsTypes';\nimport {\n PolicyCondition,\n PolicyConditionType,\n PolicySetSkeleton,\n PolicySkeleton,\n ResourceTypeSkeleton,\n ScriptSkeleton,\n} from '../api/ApiTypes';\nimport { getMetadata } from './utils/ExportImportUtils';\nimport { debugMessage } from './utils/Console';\nimport { getResourceType } from '../api/ResourceTypesApi';\nimport { createPolicySet, getPolicySet, updatePolicySet } from './PolicySetOps';\nimport { createResourceType, updateResourceType } from './ResourceTypeOps';\nimport State from '../shared/State';\n\nexport default class PolicyOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n /**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\n async getPolicies(): Promise<PolicySkeleton[]> {\n return getPolicies({ state: this.state });\n }\n\n /**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\n async getPoliciesByPolicySet(policySetId: string): Promise<PolicySkeleton[]> {\n return getPoliciesByPolicySet({ policySetId, state: this.state });\n }\n\n async getPolicy(policyId: string) {\n return getPolicy({ policyId, state: this.state });\n }\n\n async putPolicy(policyId: string, policyData: PolicySkeleton) {\n return putPolicy({ policyId, policyData, state: this.state });\n }\n\n async deletePolicy(policyId: string) {\n return deletePolicy({ policyId, state: this.state });\n }\n\n /**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\n async exportPolicy(\n policyId: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicy({ policyId, options, state: this.state });\n }\n\n /**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPolicies(\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicies({ options, state: this.state });\n }\n\n /**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPoliciesByPolicySet(\n policySetName: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPoliciesByPolicySet({\n policySetName,\n options,\n state: this.state,\n });\n }\n\n /**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importPolicy(\n policyId: string,\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importPolicy({ policyId, importData, options, state: this.state });\n }\n\n /**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importFirstPolicy(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importFirstPolicy({ importData, options, state: this.state });\n }\n\n /**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\n async importPolicies(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton[]> {\n return importPolicies({ importData, options, state: this.state });\n }\n}\n\nexport interface PolicyExportInterface {\n meta?: ExportMetaData;\n script: Record<string, ScriptSkeleton>;\n resourcetype: Record<string, ResourceTypeSkeleton>;\n policy: Record<string, PolicySkeleton>;\n policyset: Record<string, PolicySetSkeleton>;\n}\n\n/**\n * Policy export options\n */\nexport interface PolicyExportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Use string arrays to store multi-line text in scripts.\n */\n useStringArrays: boolean;\n}\n\n/**\n * Policy import options\n */\nexport interface PolicyImportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Import policies into different policy set\n */\n policySetName?: string;\n}\n\n/**\n * Create an empty export template\n * @returns {PolicyExportInterface} an empty export template\n */\nfunction createPolicyExportTemplate({\n state,\n}: {\n state: State;\n}): PolicyExportInterface {\n return {\n meta: getMetadata({ state }),\n script: {},\n policy: {},\n resourcetype: {},\n policyset: {},\n } as PolicyExportInterface;\n}\n\n/**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\nexport async function getPolicies({\n state,\n}: {\n state: State;\n}): Promise<PolicySkeleton[]> {\n const { result } = await _getPolicies({ state });\n return result;\n}\n\n/**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\nexport async function getPoliciesByPolicySet({\n policySetId,\n state,\n}: {\n policySetId: string;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const data = await _getPoliciesByPolicySet({ policySetId, state });\n return data.result;\n}\n\nexport { getPolicy, putPolicy, deletePolicy };\n\n/**\n * Find all script references in a deeply-nested policy condition object\n * @param {PolicyCondition} condition condition object\n * @returns {string[]} array of script UUIDs\n * \n * Sample condition block:\n * \n \"condition\": {\n \"type\": \"AND\",\n \"conditions\": [\n {\n \"type\": \"Script\",\n \"scriptId\": \"62f18ede-e5e7-4a7b-8b73-1b02fcbd241a\"\n },\n {\n \"type\": \"AuthenticateToService\",\n \"authenticateToService\": \"TxAuthz\"\n },\n {\n \"type\": \"OR\",\n \"conditions\": [\n {\n \"type\": \"Session\",\n \"maxSessionTime\": 5,\n \"terminateSession\": false\n },\n {\n \"type\": \"OAuth2Scope\",\n \"requiredScopes\": [\n \"openid\"\n ]\n },\n {\n \"type\": \"NOT\",\n \"condition\": {\n \"type\": \"Script\",\n \"scriptId\": \"729ee140-a4e9-43af-b358-d60eeda13cc3\"\n }\n }\n ]\n }\n ]\n },\n*/\nexport function findScriptUuids(condition: PolicyCondition): string[] {\n let scriptUuids: string[] = [];\n if (!condition) return scriptUuids;\n if (\n condition.type === PolicyConditionType.AND.toString() ||\n condition.type === PolicyConditionType.OR.toString() ||\n condition.type === PolicyConditionType.NOT.toString()\n ) {\n // single condition\n if (condition.condition) {\n scriptUuids.push(...findScriptUuids(condition.condition));\n }\n // array of conditions\n if (condition.conditions) {\n for (const cond of condition.conditions) {\n scriptUuids.push(...findScriptUuids(cond));\n }\n }\n } else if (condition.type === PolicyConditionType.Script.toString()) {\n scriptUuids.push(condition.scriptId as string);\n }\n // de-duplicate\n scriptUuids = [...new Set(scriptUuids)];\n return scriptUuids;\n}\n\n/**\n * Get scripts for a policy object\n * @param {PolicySkeleton} policyData policy object\n * @returns {Promise<ScriptSkeleton[]>} a promise that resolves to an array of script objects\n */\nexport async function getScripts({\n policyData,\n state,\n}: {\n policyData: PolicySkeleton;\n state: State;\n}): Promise<ScriptSkeleton[]> {\n debugMessage(`PolicyOps.getScripts: start [policy=${policyData['name']}]`);\n const errors = [];\n const scripts = [];\n try {\n const scriptUuids = findScriptUuids(policyData.condition);\n debugMessage(`found scripts: ${scriptUuids}`);\n for (const scriptUuid of scriptUuids) {\n try {\n const script = await getScript({ scriptId: scriptUuid, state });\n scripts.push(script);\n } catch (error) {\n error.message = `Error retrieving script ${scriptUuid} referenced in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error finding scripts in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`PolicySetOps.getScripts: end`);\n return scripts;\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {PolicySkeleton} policyData policy set data\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.exportPolicyPrerequisites: start [policy=${policyData['name']}]`\n );\n // resource types\n if (policyData.resourceTypeUuid) {\n const resourceType = await getResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n state,\n });\n exportData.resourcetype[policyData.resourceTypeUuid] = resourceType;\n }\n // policy set\n if (policyData.applicationName) {\n const policySet = await getPolicySet({\n policySetName: policyData.applicationName,\n state,\n });\n exportData.policyset[policyData.applicationName] = policySet;\n }\n debugMessage(`PolicySetOps.exportPolicyPrerequisites: end`);\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {unknown} policyData policy set data\n * @param {PolicyExportOptions} options export options\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n options: PolicyExportOptions;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.exportPolicyDependencies: start [policy=${policyData['name']}]`\n );\n // scripts\n const scripts = await getScripts({ policyData, state });\n for (const scriptData of scripts) {\n if (options.useStringArrays) {\n scriptData.script = convertBase64TextToArray(scriptData.script as string);\n }\n exportData.script[scriptData._id] = scriptData;\n }\n debugMessage(`PolicySetOps.exportPolicySetDependencies: end`);\n}\n\n/**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\nexport async function exportPolicy({\n policyId,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policyId: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage(`PolicyOps.exportPolicy: start`);\n const policyData = await getPolicy({ policyId, state });\n const exportData = createPolicyExportTemplate({ state });\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n }\n if (options.deps) {\n await exportPolicyDependencies({ policyData, options, exportData, state });\n }\n debugMessage(`PolicyOps.exportPolicy: end`);\n return exportData;\n}\n\n/**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPolicies({\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage(`PolicyOps.exportPolicies: start`);\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPolicies({ state });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.exportPolicies: end`);\n return exportData;\n}\n\n/**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPoliciesByPolicySet({\n policySetName,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policySetName: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage(`PolicyOps.exportPolicies: start`);\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPoliciesByPolicySet({\n policySetId: policySetName,\n state,\n });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.exportPolicies: end`);\n return exportData;\n}\n\n/**\n * Helper function to import hard dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.importPolicyHardDependencies: start [policy=${policyData._id}]`\n );\n const errors = [];\n try {\n // resource type\n if (exportData.resourcetype[policyData.resourceTypeUuid]) {\n try {\n debugMessage(`Importing resource type ${policyData.resourceTypeUuid}`);\n await createResourceType({\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updateResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n else throw error;\n }\n }\n // policy set\n if (exportData.policyset[policyData.applicationName]) {\n try {\n debugMessage(`Importing policy set ${policyData.applicationName}`);\n await createPolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updatePolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n else throw error;\n }\n }\n } catch (error) {\n error.message = `Error importing hard dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import hard dependencies error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.importPolicyHardDependencies: end`);\n}\n\n/**\n * Helper function to import soft dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyDependencies({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage(\n `PolicyOps.importPolicySoftDependencies: start [policy=${policyData._id}]`\n );\n const errors = [];\n try {\n // scripts\n const scriptUuids = findScriptUuids(policyData.condition);\n for (const scriptUuid of scriptUuids) {\n try {\n const scriptData = exportData.script[scriptUuid];\n debugMessage(`Importing script ${scriptUuid}`);\n await putScript({ scriptId: scriptUuid, scriptData, state });\n } catch (error) {\n debugMessage(error.response?.data);\n error.message = `Error importing script ${scriptUuid} for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error importing soft dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import soft dependencies error:\\n${errorMessages}`);\n }\n debugMessage(`PolicyOps.importPolicySoftDependencies: end`);\n}\n\n/**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importPolicy({\n policyId,\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n policyId: string;\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n if (id === policyId) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\n${policyId} not found in import data!`);\n }\n return response;\n}\n\n/**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importFirstPolicy({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n break;\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policy found in import data!`);\n }\n return response;\n}\n\n/**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\nexport async function importPolicies({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const response = [];\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response.push(\n await putPolicy({ policyId: policyData._id, policyData, state })\n );\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policies found in import data!`);\n }\n return response;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PolicyOps.js","names":["_PoliciesApi","require","_ScriptOps","_ExportImportUtils","_Console","_ResourceTypesApi","_PolicySetOps","_ResourceTypeOps","asyncGeneratorStep","gen","resolve","reject","_next","_throw","key","arg","info","value","error","done","Promise","then","_asyncToGenerator","fn","self","args","arguments","apply","err","undefined","PolicyOps","constructor","state","getPolicies","_this","getPoliciesByPolicySet","policySetId","_this2","getPolicy","policyId","_this3","putPolicy","policyData","_this4","deletePolicy","_this5","exportPolicy","_arguments","_this6","options","length","deps","prereqs","useStringArrays","exportPolicies","_arguments2","_this7","exportPoliciesByPolicySet","policySetName","_arguments3","_this8","importPolicy","importData","_arguments4","_this9","importFirstPolicy","_arguments5","_this10","importPolicies","_arguments6","_this11","exports","default","createPolicyExportTemplate","_ref","meta","getMetadata","script","policy","resourcetype","policyset","_x","_getPolicies2","_ref2","result","_getPolicies","_x2","_getPoliciesByPolicySet2","_ref3","data","_getPoliciesByPolicySet","findScriptUuids","condition","scriptUuids","type","push","conditions","cond","scriptId","Set","getScripts","_x3","_getScripts","_ref4","debugMessage","message","concat","errors","scripts","scriptUuid","getScript","errorMessages","map","join","Error","exportPolicyPrerequisites","_x4","_exportPolicyPrerequisites","_ref5","exportData","resourceTypeUuid","resourceType","getResourceType","applicationName","policySet","getPolicySet","exportPolicyDependencies","_x5","_exportPolicyDependencies","_ref6","scriptData","convertBase64TextToArray","_id","_x6","_exportPolicy","_ref7","_x7","_exportPolicies","_ref8","policies","_x8","_exportPoliciesByPolicySet","_ref9","importPolicyPrerequisites","_x9","_importPolicyPrerequisites","_ref10","createResourceType","resourceTypeData","_error$response","response","status","updateResourceType","createPolicySet","policySetData","_error$response2","updatePolicySet","_error$response3","_error$response3$data","_error$response4","_error$response4$data","importPolicyDependencies","_x10","_importPolicyDependencies","_ref11","putScript","_error$response5","_error$response6","_error$response6$data","_error$response7","_error$response7$data","_error$response8","_error$response8$data","_x11","_importPolicy","_ref12","imported","id","Object","keys","_rev","_error$response9","_error$response9$data","_x12","_importFirstPolicy","_ref13","_error$response10","_error$response10$dat","_x13","_importPolicies","_ref14","_error$response11","_error$response11$dat"],"sources":["ops/PolicyOps.ts"],"sourcesContent":["import {\n getPolicies as _getPolicies,\n getPoliciesByPolicySet as _getPoliciesByPolicySet,\n getPolicy,\n putPolicy,\n deletePolicy,\n} from '../api/PoliciesApi';\nimport { getScript, putScript } from './ScriptOps';\nimport { convertBase64TextToArray } from './utils/ExportImportUtils';\nimport { ExportMetaData } from './OpsTypes';\nimport {\n PolicyCondition,\n PolicySetSkeleton,\n PolicySkeleton,\n ResourceTypeSkeleton,\n ScriptSkeleton,\n} from '../api/ApiTypes';\nimport { getMetadata } from './utils/ExportImportUtils';\nimport { debugMessage } from './utils/Console';\nimport { getResourceType } from '../api/ResourceTypesApi';\nimport { createPolicySet, getPolicySet, updatePolicySet } from './PolicySetOps';\nimport { createResourceType, updateResourceType } from './ResourceTypeOps';\nimport State from '../shared/State';\n\nexport default class PolicyOps {\n state: State;\n constructor(state: State) {\n this.state = state;\n }\n\n /**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\n async getPolicies(): Promise<PolicySkeleton[]> {\n return getPolicies({ state: this.state });\n }\n\n /**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\n async getPoliciesByPolicySet(policySetId: string): Promise<PolicySkeleton[]> {\n return getPoliciesByPolicySet({ policySetId, state: this.state });\n }\n\n async getPolicy(policyId: string) {\n return getPolicy({ policyId, state: this.state });\n }\n\n async putPolicy(policyId: string, policyData: PolicySkeleton) {\n return putPolicy({ policyId, policyData, state: this.state });\n }\n\n async deletePolicy(policyId: string) {\n return deletePolicy({ policyId, state: this.state });\n }\n\n /**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\n async exportPolicy(\n policyId: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicy({ policyId, options, state: this.state });\n }\n\n /**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPolicies(\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPolicies({ options, state: this.state });\n }\n\n /**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\n async exportPoliciesByPolicySet(\n policySetName: string,\n options: PolicyExportOptions = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n }\n ): Promise<PolicyExportInterface> {\n return exportPoliciesByPolicySet({\n policySetName,\n options,\n state: this.state,\n });\n }\n\n /**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importPolicy(\n policyId: string,\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importPolicy({ policyId, importData, options, state: this.state });\n }\n\n /**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\n async importFirstPolicy(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton> {\n return importFirstPolicy({ importData, options, state: this.state });\n }\n\n /**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\n async importPolicies(\n importData: PolicyExportInterface,\n options: PolicyImportOptions = { deps: true, prereqs: false }\n ): Promise<PolicySkeleton[]> {\n return importPolicies({ importData, options, state: this.state });\n }\n}\n\nexport interface PolicyExportInterface {\n meta?: ExportMetaData;\n script: Record<string, ScriptSkeleton>;\n resourcetype: Record<string, ResourceTypeSkeleton>;\n policy: Record<string, PolicySkeleton>;\n policyset: Record<string, PolicySetSkeleton>;\n}\n\n/**\n * Policy export options\n */\nexport interface PolicyExportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Use string arrays to store multi-line text in scripts.\n */\n useStringArrays: boolean;\n}\n\n/**\n * Policy import options\n */\nexport interface PolicyImportOptions {\n /**\n * Include any dependencies (scripts).\n */\n deps: boolean;\n /**\n * Include any prerequisites (policy sets, resource types).\n */\n prereqs: boolean;\n /**\n * Import policies into different policy set\n */\n policySetName?: string;\n}\n\n/**\n * Create an empty export template\n * @returns {PolicyExportInterface} an empty export template\n */\nfunction createPolicyExportTemplate({\n state,\n}: {\n state: State;\n}): PolicyExportInterface {\n return {\n meta: getMetadata({ state }),\n script: {},\n policy: {},\n resourcetype: {},\n policyset: {},\n } as PolicyExportInterface;\n}\n\n/**\n * Get all policies\n * @returns {Promise<PolicySkeleton>} a promise that resolves to an array of policy set objects\n */\nexport async function getPolicies({\n state,\n}: {\n state: State;\n}): Promise<PolicySkeleton[]> {\n const { result } = await _getPolicies({ state });\n return result;\n}\n\n/**\n * Get policies by policy set\n * @param {string} policySetId policy set id/name\n * @returns {Promise<PolicySkeleton[]>} a promise resolving to an array of policy objects\n */\nexport async function getPoliciesByPolicySet({\n policySetId,\n state,\n}: {\n policySetId: string;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const data = await _getPoliciesByPolicySet({ policySetId, state });\n return data.result;\n}\n\nexport { getPolicy, putPolicy, deletePolicy };\n\n/**\n * Find all script references in a deeply-nested policy condition object\n * @param {PolicyCondition} condition condition object\n * @returns {string[]} array of script UUIDs\n * \n * Sample condition block:\n * \n \"condition\": {\n \"type\": \"AND\",\n \"conditions\": [\n {\n \"type\": \"Script\",\n \"scriptId\": \"62f18ede-e5e7-4a7b-8b73-1b02fcbd241a\"\n },\n {\n \"type\": \"AuthenticateToService\",\n \"authenticateToService\": \"TxAuthz\"\n },\n {\n \"type\": \"OR\",\n \"conditions\": [\n {\n \"type\": \"Session\",\n \"maxSessionTime\": 5,\n \"terminateSession\": false\n },\n {\n \"type\": \"OAuth2Scope\",\n \"requiredScopes\": [\n \"openid\"\n ]\n },\n {\n \"type\": \"NOT\",\n \"condition\": {\n \"type\": \"Script\",\n \"scriptId\": \"729ee140-a4e9-43af-b358-d60eeda13cc3\"\n }\n }\n ]\n }\n ]\n },\n*/\nexport function findScriptUuids(condition: PolicyCondition): string[] {\n let scriptUuids: string[] = [];\n if (!condition) return scriptUuids;\n if (\n condition.type === 'AND' ||\n condition.type === 'OR' ||\n condition.type === 'NOT'\n ) {\n // single condition\n if (condition.condition) {\n scriptUuids.push(...findScriptUuids(condition.condition));\n }\n // array of conditions\n if (condition.conditions) {\n for (const cond of condition.conditions) {\n scriptUuids.push(...findScriptUuids(cond));\n }\n }\n } else if (condition.type === 'Script') {\n scriptUuids.push(condition.scriptId as string);\n }\n // de-duplicate\n scriptUuids = [...new Set(scriptUuids)];\n return scriptUuids;\n}\n\n/**\n * Get scripts for a policy object\n * @param {PolicySkeleton} policyData policy object\n * @returns {Promise<ScriptSkeleton[]>} a promise that resolves to an array of script objects\n */\nexport async function getScripts({\n policyData,\n state,\n}: {\n policyData: PolicySkeleton;\n state: State;\n}): Promise<ScriptSkeleton[]> {\n debugMessage({\n message: `PolicyOps.getScripts: start [policy=${policyData['name']}]`,\n state,\n });\n const errors = [];\n const scripts = [];\n try {\n const scriptUuids = findScriptUuids(policyData.condition);\n debugMessage({ message: `found scripts: ${scriptUuids}`, state });\n for (const scriptUuid of scriptUuids) {\n try {\n const script = await getScript({ scriptId: scriptUuid, state });\n scripts.push(script);\n } catch (error) {\n error.message = `Error retrieving script ${scriptUuid} referenced in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error finding scripts in policy ${policyData['name']}: ${error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage({ message: `PolicySetOps.getScripts: end`, state });\n return scripts;\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {PolicySkeleton} policyData policy set data\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.exportPolicyPrerequisites: start [policy=${policyData['name']}]`,\n state,\n });\n // resource types\n if (policyData.resourceTypeUuid) {\n const resourceType = await getResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n state,\n });\n exportData.resourcetype[policyData.resourceTypeUuid] = resourceType;\n }\n // policy set\n if (policyData.applicationName) {\n const policySet = await getPolicySet({\n policySetName: policyData.applicationName,\n state,\n });\n exportData.policyset[policyData.applicationName] = policySet;\n }\n debugMessage({\n message: `PolicySetOps.exportPolicyPrerequisites: end`,\n state,\n });\n}\n\n/**\n * Helper function to export dependencies of a policy set\n * @param {unknown} policyData policy set data\n * @param {PolicyExportOptions} options export options\n * @param {PolicyExportInterface} exportData export data\n */\nasync function exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n options: PolicyExportOptions;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.exportPolicyDependencies: start [policy=${policyData['name']}]`,\n state,\n });\n // scripts\n const scripts = await getScripts({ policyData, state });\n for (const scriptData of scripts) {\n if (options.useStringArrays) {\n scriptData.script = convertBase64TextToArray(scriptData.script as string);\n }\n exportData.script[scriptData._id] = scriptData;\n }\n debugMessage({\n message: `PolicySetOps.exportPolicySetDependencies: end`,\n state,\n });\n}\n\n/**\n * Export policy\n * @param {string} policyId policy id/name\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to a PolicyExportInterface object\n */\nexport async function exportPolicy({\n policyId,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policyId: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage({ message: `PolicyOps.exportPolicy: start`, state });\n const policyData = await getPolicy({ policyId, state });\n const exportData = createPolicyExportTemplate({ state });\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n }\n if (options.deps) {\n await exportPolicyDependencies({ policyData, options, exportData, state });\n }\n debugMessage({ message: `PolicyOps.exportPolicy: end`, state });\n return exportData;\n}\n\n/**\n * Export policies\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPolicies({\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage({ message: `PolicyOps.exportPolicies: start`, state });\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPolicies({ state });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage({ message: `PolicyOps.exportPolicies: end`, state });\n return exportData;\n}\n\n/**\n * Export policies by policy set\n * @param {string} policySetName policy set id/name\n * @param {PolicyExportOptions} options export options\n * @returns {Promise<PolicyExportInterface>} a promise that resolves to an PolicyExportInterface object\n */\nexport async function exportPoliciesByPolicySet({\n policySetName,\n options = {\n deps: true,\n prereqs: false,\n useStringArrays: true,\n },\n state,\n}: {\n policySetName: string;\n options?: PolicyExportOptions;\n state: State;\n}): Promise<PolicyExportInterface> {\n debugMessage({ message: `PolicyOps.exportPolicies: start`, state });\n const exportData = createPolicyExportTemplate({ state });\n const errors = [];\n try {\n const policies = await getPoliciesByPolicySet({\n policySetId: policySetName,\n state,\n });\n for (const policyData of policies) {\n exportData.policy[policyData._id] = policyData;\n if (options.prereqs) {\n try {\n await exportPolicyPrerequisites({ policyData, exportData, state });\n } catch (error) {\n errors.push(error);\n }\n }\n if (options.deps) {\n try {\n await exportPolicyDependencies({\n policyData,\n options,\n exportData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n }\n } catch (error) {\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors.map((error) => error.message).join('\\n');\n throw new Error(`Export error:\\n${errorMessages}`);\n }\n debugMessage({ message: `PolicyOps.exportPolicies: end`, state });\n return exportData;\n}\n\n/**\n * Helper function to import hard dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyPrerequisites({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.importPolicyHardDependencies: start [policy=${policyData._id}]`,\n state,\n });\n const errors = [];\n try {\n // resource type\n if (exportData.resourcetype[policyData.resourceTypeUuid]) {\n try {\n debugMessage({\n message: `Importing resource type ${policyData.resourceTypeUuid}`,\n state,\n });\n await createResourceType({\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updateResourceType({\n resourceTypeUuid: policyData.resourceTypeUuid,\n resourceTypeData:\n exportData.resourcetype[policyData.resourceTypeUuid],\n state,\n });\n else throw error;\n }\n }\n // policy set\n if (exportData.policyset[policyData.applicationName]) {\n try {\n debugMessage({\n message: `Importing policy set ${policyData.applicationName}`,\n state,\n });\n await createPolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n } catch (error) {\n if (error.response?.status === 409)\n await updatePolicySet({\n policySetData: exportData.policyset[policyData.applicationName],\n state,\n });\n else throw error;\n }\n }\n } catch (error) {\n error.message = `Error importing hard dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import hard dependencies error:\\n${errorMessages}`);\n }\n debugMessage({\n message: `PolicyOps.importPolicyHardDependencies: end`,\n state,\n });\n}\n\n/**\n * Helper function to import soft dependencies of a policy\n * @param {PolicySkeleton} policyData policy object\n * @param {PolicyExportInterface} exportData export data\n */\nasync function importPolicyDependencies({\n policyData,\n exportData,\n state,\n}: {\n policyData: PolicySkeleton;\n exportData: PolicyExportInterface;\n state: State;\n}) {\n debugMessage({\n message: `PolicyOps.importPolicySoftDependencies: start [policy=${policyData._id}]`,\n state,\n });\n const errors = [];\n try {\n // scripts\n const scriptUuids = findScriptUuids(policyData.condition);\n for (const scriptUuid of scriptUuids) {\n try {\n const scriptData = exportData.script[scriptUuid];\n debugMessage({ message: `Importing script ${scriptUuid}`, state });\n await putScript({ scriptId: scriptUuid, scriptData, state });\n } catch (error) {\n debugMessage({ message: error.response?.data, state });\n error.message = `Error importing script ${scriptUuid} for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n }\n } catch (error) {\n error.message = `Error importing soft dependencies for policy ${\n policyData._id\n }: ${error.response?.data?.message || error.message}`;\n errors.push(error);\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import soft dependencies error:\\n${errorMessages}`);\n }\n debugMessage({\n message: `PolicyOps.importPolicySoftDependencies: end`,\n state,\n });\n}\n\n/**\n * Import policy by id\n * @param {string} policyId policy id\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importPolicy({\n policyId,\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n policyId: string;\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n if (id === policyId) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\n${policyId} not found in import data!`);\n }\n return response;\n}\n\n/**\n * Import first policy\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton>} imported policy object\n */\nexport async function importFirstPolicy({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton> {\n let response = null;\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response = await putPolicy({\n policyId: policyData._id,\n policyData,\n state,\n });\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n break;\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policy found in import data!`);\n }\n return response;\n}\n\n/**\n * Import policies\n * @param {PolicyExportInterface} importData import data\n * @param {PolicyImportOptions} options import options\n * @returns {Promise<PolicySkeleton[]>} array of imported policy objects\n */\nexport async function importPolicies({\n importData,\n options = { deps: true, prereqs: false },\n state,\n}: {\n importData: PolicyExportInterface;\n options?: PolicyImportOptions;\n state: State;\n}): Promise<PolicySkeleton[]> {\n const response = [];\n const errors = [];\n const imported = [];\n for (const id of Object.keys(importData.policy)) {\n try {\n const policyData = importData.policy[id];\n delete policyData._rev;\n if (options.policySetName) {\n policyData.applicationName = options.policySetName;\n }\n if (options.prereqs) {\n try {\n await importPolicyPrerequisites({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n try {\n response.push(\n await putPolicy({ policyId: policyData._id, policyData, state })\n );\n imported.push(id);\n } catch (error) {\n errors.push(error);\n }\n if (options.deps) {\n try {\n await importPolicyDependencies({\n policyData,\n exportData: importData,\n state,\n });\n } catch (error) {\n errors.push(error);\n }\n }\n } catch (error) {\n errors.push(error);\n }\n }\n if (errors.length) {\n const errorMessages = errors\n .map((error) => error.response?.data?.message || error.message)\n .join('\\n');\n throw new Error(`Import error:\\n${errorMessages}`);\n }\n if (0 === imported.length) {\n throw new Error(`Import error:\\nNo policies found in import data!`);\n }\n return response;\n}\n"],"mappings":"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"}
|
package/cjs/ops/PolicySetOps.js
CHANGED
|
@@ -275,7 +275,10 @@ function _exportPolicySetPrerequisites() {
|
|
|
275
275
|
exportData,
|
|
276
276
|
state
|
|
277
277
|
} = _ref3;
|
|
278
|
-
(0, _Console.debugMessage)(
|
|
278
|
+
(0, _Console.debugMessage)({
|
|
279
|
+
message: "PolicySetOps.exportPolicySetPrerequisites: start [policySet=".concat(policySetData['name'], "]"),
|
|
280
|
+
state
|
|
281
|
+
});
|
|
279
282
|
var errors = [];
|
|
280
283
|
// resource types
|
|
281
284
|
for (var resourceTypeUuid of policySetData.resourceTypeUuids) {
|
|
@@ -294,7 +297,10 @@ function _exportPolicySetPrerequisites() {
|
|
|
294
297
|
var errorMessages = errors.map(error => error.message).join('\n');
|
|
295
298
|
throw new Error("Export dependencies error:\n".concat(errorMessages));
|
|
296
299
|
}
|
|
297
|
-
(0, _Console.debugMessage)(
|
|
300
|
+
(0, _Console.debugMessage)({
|
|
301
|
+
message: "PolicySetOps.exportPolicySetPrerequisites: end",
|
|
302
|
+
state
|
|
303
|
+
});
|
|
298
304
|
});
|
|
299
305
|
return _exportPolicySetPrerequisites.apply(this, arguments);
|
|
300
306
|
}
|
|
@@ -315,7 +321,10 @@ function _exportPolicySetDependencies() {
|
|
|
315
321
|
exportData,
|
|
316
322
|
state
|
|
317
323
|
} = _ref4;
|
|
318
|
-
(0, _Console.debugMessage)(
|
|
324
|
+
(0, _Console.debugMessage)({
|
|
325
|
+
message: "PolicySetOps.exportPolicySetDependencies: start [policySet=".concat(policySetData['name'], "]"),
|
|
326
|
+
state
|
|
327
|
+
});
|
|
319
328
|
var errors = [];
|
|
320
329
|
// policies
|
|
321
330
|
try {
|
|
@@ -349,7 +358,10 @@ function _exportPolicySetDependencies() {
|
|
|
349
358
|
var errorMessages = errors.map(error => error.message).join('\n');
|
|
350
359
|
throw new Error("Export dependencies error:\n".concat(errorMessages));
|
|
351
360
|
}
|
|
352
|
-
(0, _Console.debugMessage)(
|
|
361
|
+
(0, _Console.debugMessage)({
|
|
362
|
+
message: "PolicySetOps.exportPolicySetDependencies: end",
|
|
363
|
+
state
|
|
364
|
+
});
|
|
353
365
|
});
|
|
354
366
|
return _exportPolicySetDependencies.apply(this, arguments);
|
|
355
367
|
}
|
|
@@ -372,7 +384,10 @@ function _exportPolicySet() {
|
|
|
372
384
|
},
|
|
373
385
|
state
|
|
374
386
|
} = _ref5;
|
|
375
|
-
(0, _Console.debugMessage)(
|
|
387
|
+
(0, _Console.debugMessage)({
|
|
388
|
+
message: "PolicySetOps.exportPolicySet: start",
|
|
389
|
+
state
|
|
390
|
+
});
|
|
376
391
|
var exportData = createPolicySetExportTemplate({
|
|
377
392
|
state
|
|
378
393
|
});
|
|
@@ -413,7 +428,10 @@ function _exportPolicySet() {
|
|
|
413
428
|
var errorMessages = errors.map(error => error.message).join('\n');
|
|
414
429
|
throw new Error("Export error:\n".concat(errorMessages));
|
|
415
430
|
}
|
|
416
|
-
(0, _Console.debugMessage)(
|
|
431
|
+
(0, _Console.debugMessage)({
|
|
432
|
+
message: "PolicySetOps.exportPolicySet: end",
|
|
433
|
+
state
|
|
434
|
+
});
|
|
417
435
|
return exportData;
|
|
418
436
|
});
|
|
419
437
|
return _exportPolicySet.apply(this, arguments);
|
|
@@ -436,7 +454,10 @@ function _exportPolicySets() {
|
|
|
436
454
|
},
|
|
437
455
|
state
|
|
438
456
|
} = _ref6;
|
|
439
|
-
(0, _Console.debugMessage)(
|
|
457
|
+
(0, _Console.debugMessage)({
|
|
458
|
+
message: "PolicySetOps.exportPolicySet: start",
|
|
459
|
+
state
|
|
460
|
+
});
|
|
440
461
|
var exportData = createPolicySetExportTemplate({
|
|
441
462
|
state
|
|
442
463
|
});
|
|
@@ -478,7 +499,10 @@ function _exportPolicySets() {
|
|
|
478
499
|
var errorMessages = errors.map(error => error.message).join('\n');
|
|
479
500
|
throw new Error("Export error:\n".concat(errorMessages));
|
|
480
501
|
}
|
|
481
|
-
(0, _Console.debugMessage)(
|
|
502
|
+
(0, _Console.debugMessage)({
|
|
503
|
+
message: "PolicySetOps.exportPolicySet: end",
|
|
504
|
+
state
|
|
505
|
+
});
|
|
482
506
|
return exportData;
|
|
483
507
|
});
|
|
484
508
|
return _exportPolicySets.apply(this, arguments);
|
|
@@ -498,14 +522,20 @@ function _importPolicySetPrerequisites() {
|
|
|
498
522
|
exportData,
|
|
499
523
|
state
|
|
500
524
|
} = _ref7;
|
|
501
|
-
(0, _Console.debugMessage)(
|
|
525
|
+
(0, _Console.debugMessage)({
|
|
526
|
+
message: "PolicySetOps.importPolicySetHardDependencies: start [policySet=".concat(policySetData['name'], "]"),
|
|
527
|
+
state
|
|
528
|
+
});
|
|
502
529
|
var errors = [];
|
|
503
530
|
try {
|
|
504
531
|
// resource types
|
|
505
532
|
for (var resourceTypeUuid of policySetData.resourceTypeUuids) {
|
|
506
533
|
if (exportData.resourcetype[resourceTypeUuid]) {
|
|
507
534
|
try {
|
|
508
|
-
(0, _Console.debugMessage)(
|
|
535
|
+
(0, _Console.debugMessage)({
|
|
536
|
+
message: "Importing resource type ".concat(resourceTypeUuid),
|
|
537
|
+
state
|
|
538
|
+
});
|
|
509
539
|
yield (0, _ResourceTypesApi.putResourceType)({
|
|
510
540
|
resourceTypeUuid,
|
|
511
541
|
resourceTypeData: exportData.resourcetype[resourceTypeUuid],
|
|
@@ -513,7 +543,10 @@ function _importPolicySetPrerequisites() {
|
|
|
513
543
|
});
|
|
514
544
|
} catch (error) {
|
|
515
545
|
var _error$response;
|
|
516
|
-
(0, _Console.debugMessage)(
|
|
546
|
+
(0, _Console.debugMessage)({
|
|
547
|
+
message: (_error$response = error.response) === null || _error$response === void 0 ? void 0 : _error$response.data,
|
|
548
|
+
state
|
|
549
|
+
});
|
|
517
550
|
errors.push(error);
|
|
518
551
|
}
|
|
519
552
|
} else {
|
|
@@ -528,7 +561,10 @@ function _importPolicySetPrerequisites() {
|
|
|
528
561
|
var errorMessages = errors.map(error => error.message).join('\n');
|
|
529
562
|
throw new Error("Import hard dependencies error:\n".concat(errorMessages));
|
|
530
563
|
}
|
|
531
|
-
(0, _Console.debugMessage)(
|
|
564
|
+
(0, _Console.debugMessage)({
|
|
565
|
+
message: "PolicySetOps.importPolicySetHardDependencies: end",
|
|
566
|
+
state
|
|
567
|
+
});
|
|
532
568
|
});
|
|
533
569
|
return _importPolicySetPrerequisites.apply(this, arguments);
|
|
534
570
|
}
|
|
@@ -548,7 +584,10 @@ function _importPolicySetDependencies() {
|
|
|
548
584
|
exportData,
|
|
549
585
|
state
|
|
550
586
|
} = _ref8;
|
|
551
|
-
(0, _Console.debugMessage)(
|
|
587
|
+
(0, _Console.debugMessage)({
|
|
588
|
+
message: "PolicySetOps.importPolicySetSoftDependencies: start [policySet=".concat(policySetData['name'], "]"),
|
|
589
|
+
state
|
|
590
|
+
});
|
|
552
591
|
var errors = [];
|
|
553
592
|
try {
|
|
554
593
|
// policies
|
|
@@ -556,7 +595,10 @@ function _importPolicySetDependencies() {
|
|
|
556
595
|
var policies = Object.values(exportData.policy).filter(policy => policy.applicationName === policySetData.name);
|
|
557
596
|
for (var policyData of policies) {
|
|
558
597
|
try {
|
|
559
|
-
(0, _Console.debugMessage)(
|
|
598
|
+
(0, _Console.debugMessage)({
|
|
599
|
+
message: "Importing policy ".concat(policyData._id),
|
|
600
|
+
state
|
|
601
|
+
});
|
|
560
602
|
yield (0, _PolicyOps.putPolicy)({
|
|
561
603
|
policyId: policyData._id,
|
|
562
604
|
policyData,
|
|
@@ -564,7 +606,10 @@ function _importPolicySetDependencies() {
|
|
|
564
606
|
});
|
|
565
607
|
} catch (error) {
|
|
566
608
|
var _error$response2;
|
|
567
|
-
(0, _Console.debugMessage)(
|
|
609
|
+
(0, _Console.debugMessage)({
|
|
610
|
+
message: (_error$response2 = error.response) === null || _error$response2 === void 0 ? void 0 : _error$response2.data,
|
|
611
|
+
state
|
|
612
|
+
});
|
|
568
613
|
error.message = "Error importing policy ".concat(policyData._id, " in policy set ").concat(policySetData.name, ": ").concat(error.message);
|
|
569
614
|
errors.push(error);
|
|
570
615
|
}
|
|
@@ -573,7 +618,10 @@ function _importPolicySetDependencies() {
|
|
|
573
618
|
for (var scriptUuid of scriptUuids) {
|
|
574
619
|
try {
|
|
575
620
|
var scriptData = exportData.script[scriptUuid];
|
|
576
|
-
(0, _Console.debugMessage)(
|
|
621
|
+
(0, _Console.debugMessage)({
|
|
622
|
+
message: "Importing script ".concat(scriptUuid),
|
|
623
|
+
state
|
|
624
|
+
});
|
|
577
625
|
yield (0, _ScriptOps.putScript)({
|
|
578
626
|
scriptId: scriptUuid,
|
|
579
627
|
scriptData,
|
|
@@ -581,7 +629,10 @@ function _importPolicySetDependencies() {
|
|
|
581
629
|
});
|
|
582
630
|
} catch (error) {
|
|
583
631
|
var _error$response3;
|
|
584
|
-
(0, _Console.debugMessage)(
|
|
632
|
+
(0, _Console.debugMessage)({
|
|
633
|
+
message: (_error$response3 = error.response) === null || _error$response3 === void 0 ? void 0 : _error$response3.data,
|
|
634
|
+
state
|
|
635
|
+
});
|
|
585
636
|
error.message = "Error importing script ".concat(scriptUuid, " for policy ").concat(policyData._id, " in policy set ").concat(policySetData.name, ": ").concat(error.message);
|
|
586
637
|
errors.push(error);
|
|
587
638
|
}
|
|
@@ -599,7 +650,10 @@ function _importPolicySetDependencies() {
|
|
|
599
650
|
var errorMessages = errors.map(error => error.message).join('\n');
|
|
600
651
|
throw new Error("Import soft dependencies error:\n".concat(errorMessages));
|
|
601
652
|
}
|
|
602
|
-
(0, _Console.debugMessage)(
|
|
653
|
+
(0, _Console.debugMessage)({
|
|
654
|
+
message: "PolicySetOps.importPolicySetSoftDependencies: end",
|
|
655
|
+
state
|
|
656
|
+
});
|
|
603
657
|
});
|
|
604
658
|
return _importPolicySetDependencies.apply(this, arguments);
|
|
605
659
|
}
|