@drunk-pulumi/azure 1.0.22 → 1.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/Aks/Identity.d.ts +1 -1
  2. package/Aks/Identity.js +1 -1
  3. package/Aks/index.d.ts +2 -3
  4. package/Aks/index.js +2 -2
  5. package/AzAd/EnvRoles.Consts.d.ts +6 -5
  6. package/AzAd/EnvRoles.Consts.js +48 -42
  7. package/AzAd/Helper.js +7 -1
  8. package/AzAd/Identities/AzDevOpsIdentity.d.ts +1 -1
  9. package/AzAd/Identities/AzDevOpsIdentity.js +1 -1
  10. package/AzAd/Identities/AzUserAdRevertSync.d.ts +1 -1
  11. package/AzAd/Identity.d.ts +2 -11
  12. package/AzAd/Identity.js +2 -2
  13. package/AzAd/UserAssignedIdentity.js +6 -1
  14. package/Builder/AcrBuilder.d.ts +8 -0
  15. package/Builder/AcrBuilder.js +176 -0
  16. package/Builder/AksBuilder.d.ts +5 -0
  17. package/Builder/AksBuilder.js +90 -6
  18. package/Builder/ApimApiBuilder.js +2 -3
  19. package/Builder/ApimBuilder.js +3 -7
  20. package/Builder/ApimPolicyBuilder.js +1 -1
  21. package/Builder/ApimProductBuilder.d.ts +6 -5
  22. package/Builder/ApimProductBuilder.js +53 -27
  23. package/Builder/AppCertBuilder.d.ts +3 -0
  24. package/Builder/AppCertBuilder.js +75 -0
  25. package/Builder/AppConfigBuilder.d.ts +3 -0
  26. package/Builder/AppConfigBuilder.js +148 -0
  27. package/Builder/AutomationBuilder.d.ts +3 -0
  28. package/Builder/AutomationBuilder.js +106 -0
  29. package/Builder/IotHubBuilder.d.ts +3 -0
  30. package/Builder/IotHubBuilder.js +240 -0
  31. package/Builder/LogicAppBuilder.d.ts +3 -0
  32. package/Builder/LogicAppBuilder.js +69 -0
  33. package/Builder/MySqlBuilder.d.ts +3 -0
  34. package/Builder/MySqlBuilder.js +225 -0
  35. package/Builder/PostgreSqlBuilder.d.ts +3 -0
  36. package/Builder/PostgreSqlBuilder.js +231 -0
  37. package/Builder/RedisCacheBuilder.d.ts +3 -0
  38. package/Builder/RedisCacheBuilder.js +144 -0
  39. package/Builder/ResourceBuilder.js +14 -4
  40. package/Builder/ServiceBusBuilder.js +4 -11
  41. package/Builder/SignalRBuilder.d.ts +3 -0
  42. package/Builder/SignalRBuilder.js +172 -0
  43. package/Builder/VaultBuilder.js +7 -26
  44. package/Builder/index.d.ts +10 -0
  45. package/Builder/index.js +22 -2
  46. package/Builder/types/acrBuilder.d.ts +54 -0
  47. package/Builder/types/acrBuilder.js +3 -0
  48. package/Builder/types/apimBuilder.d.ts +109 -5
  49. package/Builder/types/apimPolicyBuilder.d.ts +129 -7
  50. package/Builder/types/apimPolicyBuilder.js +4 -1
  51. package/Builder/types/apimProductBuilder.d.ts +152 -5
  52. package/Builder/types/appCertBuilder.d.ts +31 -0
  53. package/Builder/types/appCertBuilder.js +3 -0
  54. package/Builder/types/appConfigBuilder.d.ts +37 -0
  55. package/Builder/types/appConfigBuilder.js +3 -0
  56. package/Builder/types/askBuilder.d.ts +79 -1
  57. package/Builder/types/automationBuilder.d.ts +28 -0
  58. package/Builder/types/automationBuilder.js +3 -0
  59. package/Builder/types/cdnBuilder.d.ts +11 -0
  60. package/Builder/types/dnsZoneBuilder.d.ts +20 -0
  61. package/Builder/types/envRoleBuilder.d.ts +28 -0
  62. package/Builder/types/genericBuilder.d.ts +78 -0
  63. package/Builder/types/genericBuilder.js +9 -1
  64. package/Builder/types/index.d.ts +11 -0
  65. package/Builder/types/index.js +12 -1
  66. package/Builder/types/iotHubBuilder.d.ts +64 -0
  67. package/Builder/types/iotHubBuilder.js +3 -0
  68. package/Builder/types/logicAppBuilder.d.ts +27 -0
  69. package/Builder/types/logicAppBuilder.js +3 -0
  70. package/Builder/types/mySqlBuilder.d.ts +98 -0
  71. package/Builder/types/mySqlBuilder.js +3 -0
  72. package/Builder/types/posgreSqlBuilder.d.ts +107 -0
  73. package/Builder/types/posgreSqlBuilder.js +3 -0
  74. package/Builder/types/privateDnsZoneBuilder.d.ts +26 -0
  75. package/Builder/types/redisCacheBuilder.d.ts +46 -0
  76. package/Builder/types/redisCacheBuilder.js +3 -0
  77. package/Builder/types/resourceBuilder.d.ts +173 -7
  78. package/Builder/types/serviceBusBuilder.d.ts +55 -0
  79. package/Builder/types/signalRBuilder.d.ts +97 -0
  80. package/Builder/types/signalRBuilder.js +3 -0
  81. package/Builder/types/sqlBuilder.d.ts +88 -1
  82. package/Builder/types/storageBuilder.d.ts +63 -0
  83. package/Builder/types/vaultBuilder.d.ts +43 -1
  84. package/Builder/types/vdiBuilder.d.ts +41 -2
  85. package/Builder/types/vmBuilder.d.ts +83 -1
  86. package/Builder/types/vnetBuilder.d.ts +107 -0
  87. package/Common/OpenApi/index.js +37 -0
  88. package/{Web → Common/OpenApi}/types.js +1 -1
  89. package/Common/index.d.ts +1 -0
  90. package/Common/index.js +3 -2
  91. package/CustomRoles/index.js +4 -4
  92. package/KeyVault/Helper.d.ts +1 -0
  93. package/KeyVault/Helper.js +2 -1
  94. package/KeyVault/index.d.ts +1 -11
  95. package/KeyVault/index.js +3 -21
  96. package/Sql/index.js +3 -6
  97. package/Storage/index.js +4 -8
  98. package/VNet/PrivateEndpoint.d.ts +10 -3
  99. package/VNet/PrivateEndpoint.js +62 -2
  100. package/VNet/index.d.ts +11 -0
  101. package/VNet/index.js +18 -2
  102. package/package.json +1 -1
  103. package/types.d.ts +173 -6
  104. package/Apim/ApiProduct/OpenApi.js +0 -3
  105. package/Apim/ApiProduct/SwaggerHelper.js +0 -37
  106. package/Apps/LogicApp.d.ts +0 -5
  107. package/Apps/LogicApp.js +0 -38
  108. package/Automation/index.d.ts +0 -6
  109. package/Automation/index.js +0 -78
  110. package/ContainerRegistry/Helper.d.ts +0 -15
  111. package/ContainerRegistry/Helper.js +0 -77
  112. package/ContainerRegistry/index.d.ts +0 -15
  113. package/ContainerRegistry/index.js +0 -93
  114. package/CosmosDb/index.d.ts +0 -28
  115. package/CosmosDb/index.js +0 -142
  116. package/IOT/Hub/index.d.ts +0 -26
  117. package/IOT/Hub/index.js +0 -191
  118. package/MySql/index.d.ts +0 -16
  119. package/MySql/index.js +0 -185
  120. package/Postgresql/index.d.ts +0 -16
  121. package/Postgresql/index.js +0 -157
  122. package/RedisCache/index.d.ts +0 -15
  123. package/RedisCache/index.js +0 -111
  124. package/SignalR/index.d.ts +0 -19
  125. package/SignalR/index.js +0 -128
  126. package/Sql/Auditing.d.ts +0 -0
  127. package/Sql/Auditing.js +0 -2
  128. package/Sql/Helper.d.ts +0 -9
  129. package/Sql/Helper.js +0 -11
  130. package/VNet/GlobalNetworkPeering.d.ts +0 -9
  131. package/VNet/GlobalNetworkPeering.js +0 -40
  132. package/Web/AppCertOrder.d.ts +0 -8
  133. package/Web/AppCertOrder.js +0 -52
  134. package/Web/AppConfig.d.ts +0 -10
  135. package/Web/AppConfig.js +0 -93
  136. package/Web/AppGateway.d.ts +0 -15
  137. package/Web/AppGateway.js +0 -58
  138. package/Web/types.d.ts +0 -37
  139. /package/{Apim/ApiProduct/SwaggerHelper.d.ts → Common/OpenApi/index.d.ts} +0 -0
  140. /package/{Apim/ApiProduct/OpenApi.d.ts → Common/OpenApi/types.d.ts} +0 -0
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getImportConfig = void 0;
4
- const Common_1 = require("../../Common");
5
- const removeVersion = (data, version) => {
6
- if (!data?.paths) {
7
- console.error(`APIM-removeVersion: There is no paths found in`, data);
8
- return data;
9
- }
10
- const newPaths = {};
11
- //Replace version from path
12
- Object.keys(data.paths).forEach((k) => {
13
- const newKey = (0, Common_1.replaceAll)(k, `/${version}`, '');
14
- newPaths[newKey] = data.paths[k];
15
- });
16
- data.paths = newPaths;
17
- return data;
18
- };
19
- const downloadSpecFile = async (fileUrl) => {
20
- //Get specs json from URL
21
- return await fetch(fileUrl, { method: 'GET' })
22
- .then((rs) => rs.json())
23
- .catch((error) => {
24
- console.error(`Not able to get spec file from: ${fileUrl}`, error);
25
- return undefined;
26
- });
27
- };
28
- const getImportConfig = async (specUrl, version) => {
29
- const spec = await downloadSpecFile(specUrl);
30
- if (!spec)
31
- return undefined;
32
- //Remove Version
33
- const data = removeVersion(spec, version);
34
- return JSON.stringify(data);
35
- };
36
- exports.getImportConfig = getImportConfig;
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3dhZ2dlckhlbHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9BcGltL0FwaVByb2R1Y3QvU3dhZ2dlckhlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5Q0FBMEM7QUFHMUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxJQUFjLEVBQUUsT0FBZSxFQUFZLEVBQUU7SUFDbEUsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLGdEQUFnRCxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sUUFBUSxHQUFHLEVBQVMsQ0FBQztJQUUzQiwyQkFBMkI7SUFDM0IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQkFBVSxFQUFDLENBQUMsRUFBRSxJQUFJLE9BQU8sRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25DLENBQUMsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7SUFDdEIsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRixNQUFNLGdCQUFnQixHQUFHLEtBQUssRUFDNUIsT0FBZSxFQUNnQixFQUFFO0lBQ2pDLHlCQUF5QjtJQUN6QixPQUFPLE1BQU0sS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQztTQUMzQyxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQXlCLENBQUM7U0FDOUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLG1DQUFtQyxPQUFPLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRSxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQztBQUVLLE1BQU0sZUFBZSxHQUFHLEtBQUssRUFDbEMsT0FBZSxFQUNmLE9BQWUsRUFDYyxFQUFFO0lBQy9CLE1BQU0sSUFBSSxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUU1QixnQkFBZ0I7SUFDaEIsTUFBTSxJQUFJLEdBQUcsYUFBYSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMxQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBVlcsUUFBQSxlQUFlLG1CQVUxQiJ9
@@ -1,5 +0,0 @@
1
- import * as logic from '@pulumi/azure-native/logic';
2
- import { BasicResourceArgs } from '../types';
3
- export type WorkflowProps = BasicResourceArgs & Pick<logic.WorkflowArgs, 'accessControl'>;
4
- declare const _default: ({ name, group, dependsOn, ignoreChanges, importUri, ...others }: WorkflowProps) => import("@pulumi/azure-native/logic/workflow").Workflow;
5
- export default _default;
package/Apps/LogicApp.js DELETED
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- const logic = __importStar(require("@pulumi/azure-native/logic"));
27
- const Common_1 = require("../Common");
28
- exports.default = ({ name, group, dependsOn, ignoreChanges, importUri, ...others }) => {
29
- const n = Common_1.naming.getWorkflowName(name);
30
- return new logic.Workflow(name, {
31
- workflowName: n,
32
- ...group,
33
- ...others,
34
- identity: { type: logic.ManagedServiceIdentityType.SystemAssigned },
35
- accessControl: { actions: {} },
36
- }, { dependsOn, ignoreChanges, import: importUri });
37
- };
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9naWNBcHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQXBwcy9Mb2dpY0FwcC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsa0VBQW9EO0FBRXBELHNDQUFtQztBQUtuQyxrQkFBZSxDQUFDLEVBQ2QsSUFBSSxFQUNKLEtBQUssRUFDTCxTQUFTLEVBQ1QsYUFBYSxFQUNiLFNBQVMsRUFDVCxHQUFHLE1BQU0sRUFDSyxFQUFFLEVBQUU7SUFDbEIsTUFBTSxDQUFDLEdBQUcsZUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2QyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FDdkIsSUFBSSxFQUNKO1FBQ0UsWUFBWSxFQUFFLENBQUM7UUFDZixHQUFHLEtBQUs7UUFDUixHQUFHLE1BQU07UUFDVCxRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLDBCQUEwQixDQUFDLGNBQWMsRUFBRTtRQUNuRSxhQUFhLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO0tBQy9CLEVBQ0QsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FDaEQsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
@@ -1,6 +0,0 @@
1
- import { BasicEncryptResourceArgs, ResourceInfoWithInstance } from '../types';
2
- import * as automation from '@pulumi/azure-native/automation';
3
- interface Props extends BasicEncryptResourceArgs {
4
- }
5
- declare const _default: ({ name, group, enableEncryption, vaultInfo, envRoles, dependsOn, ignoreChanges, }: Props) => ResourceInfoWithInstance<automation.AutomationAccount>;
6
- export default _default;
@@ -1,78 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const automation = __importStar(require("@pulumi/azure-native/automation"));
30
- const Common_1 = require("../Common");
31
- const Helper_1 = require("../KeyVault/Helper");
32
- const UserAssignedIdentity_1 = __importDefault(require("../AzAd/UserAssignedIdentity"));
33
- exports.default = ({ name, group, enableEncryption, vaultInfo, envRoles, dependsOn, ignoreChanges, }) => {
34
- name = Common_1.naming.getAutomationAccountName(name);
35
- const identity = (0, UserAssignedIdentity_1.default)({
36
- name,
37
- group,
38
- dependsOn,
39
- });
40
- //grant permission
41
- envRoles?.addMember('contributor', identity.principalId);
42
- const encryption = enableEncryption && vaultInfo ? (0, Helper_1.addEncryptKey)(name, vaultInfo) : undefined;
43
- const auto = new automation.AutomationAccount(name, {
44
- automationAccountName: name,
45
- ...group,
46
- publicNetworkAccess: false,
47
- identity: {
48
- type: automation.ResourceIdentityType.SystemAssigned_UserAssigned,
49
- userAssignedIdentities: [identity.id],
50
- },
51
- disableLocalAuth: true,
52
- encryption: {
53
- keySource: encryption ? 'Microsoft.Keyvault' : 'Microsoft.Automation',
54
- identity: encryption
55
- ? { userAssignedIdentity: identity.id }
56
- : undefined,
57
- keyVaultProperties: encryption
58
- ? {
59
- keyName: encryption.keyName,
60
- keyvaultUri: encryption.keyVaultUri,
61
- keyVersion: encryption.keyVersion,
62
- }
63
- : undefined,
64
- },
65
- sku: {
66
- name: 'Basic',
67
- },
68
- }, { dependsOn: identity.instance, ignoreChanges });
69
- //grant permission
70
- envRoles?.addIdentity('contributor', auto.identity);
71
- return {
72
- name,
73
- group,
74
- id: auto.id,
75
- instance: auto,
76
- };
77
- };
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQXV0b21hdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsNEVBQThEO0FBQzlELHNDQUFtQztBQUNuQywrQ0FBbUQ7QUFDbkQsd0ZBQWdFO0FBSWhFLGtCQUFlLENBQUMsRUFDZCxJQUFJLEVBQ0osS0FBSyxFQUNMLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsUUFBUSxFQUNSLFNBQVMsRUFDVCxhQUFhLEdBQ1AsRUFBMEQsRUFBRTtJQUNsRSxJQUFJLEdBQUcsZUFBTSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBRTdDLE1BQU0sUUFBUSxHQUFHLElBQUEsOEJBQW9CLEVBQUM7UUFDcEMsSUFBSTtRQUNKLEtBQUs7UUFDTCxTQUFTO0tBQ1YsQ0FBQyxDQUFDO0lBQ0gsa0JBQWtCO0lBQ2xCLFFBQVEsRUFBRSxTQUFTLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUV6RCxNQUFNLFVBQVUsR0FDZCxnQkFBZ0IsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUEsc0JBQWEsRUFBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUU3RSxNQUFNLElBQUksR0FBRyxJQUFJLFVBQVUsQ0FBQyxpQkFBaUIsQ0FDM0MsSUFBSSxFQUNKO1FBQ0UscUJBQXFCLEVBQUUsSUFBSTtRQUMzQixHQUFHLEtBQUs7UUFFUixtQkFBbUIsRUFBRSxLQUFLO1FBQzFCLFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSxVQUFVLENBQUMsb0JBQW9CLENBQUMsMkJBQTJCO1lBQ2pFLHNCQUFzQixFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztTQUN0QztRQUNELGdCQUFnQixFQUFFLElBQUk7UUFFdEIsVUFBVSxFQUFFO1lBQ1YsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLHNCQUFzQjtZQUNyRSxRQUFRLEVBQUUsVUFBVTtnQkFDbEIsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRTtnQkFDdkMsQ0FBQyxDQUFDLFNBQVM7WUFDYixrQkFBa0IsRUFBRSxVQUFVO2dCQUM1QixDQUFDLENBQUM7b0JBQ0UsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPO29CQUMzQixXQUFXLEVBQUUsVUFBVSxDQUFDLFdBQVc7b0JBQ25DLFVBQVUsRUFBRSxVQUFVLENBQUMsVUFBVTtpQkFDbEM7Z0JBQ0gsQ0FBQyxDQUFDLFNBQVM7U0FDZDtRQUNELEdBQUcsRUFBRTtZQUNILElBQUksRUFBRSxPQUFPO1NBQ2Q7S0FDRixFQUNELEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLENBQ2hELENBQUM7SUFDRixrQkFBa0I7SUFDbEIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXBELE9BQU87UUFDTCxJQUFJO1FBQ0osS0FBSztRQUNMLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtRQUNYLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
@@ -1,15 +0,0 @@
1
- import { WithNamedType } from '../types';
2
- export interface ImageInfo {
3
- registry: string;
4
- imageName: string;
5
- tags: Tag[];
6
- }
7
- export interface Tag extends WithNamedType {
8
- signed: boolean;
9
- }
10
- /**Get ACR credentials from Global Resource Group*/
11
- export declare const getAcrCredentials: (name: string) => Promise<{
12
- username: string;
13
- password: string;
14
- url: string;
15
- }>;
@@ -1,77 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.getAcrCredentials = void 0;
27
- const native = __importStar(require("@pulumi/azure-native"));
28
- const Common_1 = require("../Common");
29
- /**Get ACR credentials from Global Resource Group*/
30
- const getAcrCredentials = async (name) => {
31
- const n = Common_1.naming.getAcrName(name);
32
- const credentials = await native.containerregistry.listRegistryCredentials({
33
- registryName: n,
34
- ...Common_1.global.groupInfo,
35
- });
36
- return {
37
- username: credentials.username,
38
- password: credentials.passwords[0].value,
39
- url: `https://${n}.azurecr.io`,
40
- };
41
- };
42
- exports.getAcrCredentials = getAcrCredentials;
43
- // export const getLastAcrImage = async ({
44
- // acrName,
45
- // repository,
46
- // group,
47
- // }: LatestAcrImageProps) => {
48
- // const credentials = await native.containerregistry.listRegistryCredentials({
49
- // registryName: acrName,
50
- // ...group,
51
- // });
52
- //
53
- // if (credentials == undefined) return;
54
- //
55
- // const token = Buffer.from(
56
- // `${credentials.username!}:${credentials.passwords![0].value!}`,
57
- // ).toString('base64');
58
- //
59
- // const url = `https://${acrName}.azurecr.io/acr/v1/${repository}/_tags?last=1&n=1&orderby=timedesc`;
60
- // const rs = await axios
61
- // .get<ImageInfo>(url, {
62
- // headers: { Authorization: `Basic ${token}` },
63
- // } as AxiosRequestConfig)
64
- // .then((rs) => rs.data)
65
- // .catch((err: AxiosError) => {
66
- // console.log(`getLastAcrImage: "${url}" Error`, err.response?.data);
67
- // return undefined;
68
- // });
69
- //
70
- // const latestImage = rs
71
- // ? `${rs.registry}/${rs.imageName}:${rs.tags[0].name}`
72
- // : `${acrName}.azurecr.io/${repository}:latest`;
73
- //
74
- // console.log(`getLastAcrImage: ${acrName}`, latestImage);
75
- // return latestImage;
76
- // };
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0NvbnRhaW5lclJlZ2lzdHJ5L0hlbHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZEQUErQztBQUUvQyxzQ0FBMkM7QUFrQjNDLG1EQUFtRDtBQUM1QyxNQUFNLGlCQUFpQixHQUFHLEtBQUssRUFBRSxJQUFZLEVBQUUsRUFBRTtJQUN0RCxNQUFNLENBQUMsR0FBRyxlQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLE1BQU0sV0FBVyxHQUFHLE1BQU0sTUFBTSxDQUFDLGlCQUFpQixDQUFDLHVCQUF1QixDQUFDO1FBQ3pFLFlBQVksRUFBRSxDQUFDO1FBQ2YsR0FBRyxlQUFNLENBQUMsU0FBUztLQUNwQixDQUFDLENBQUM7SUFFSCxPQUFPO1FBQ0wsUUFBUSxFQUFFLFdBQVcsQ0FBQyxRQUFTO1FBQy9CLFFBQVEsRUFBRSxXQUFXLENBQUMsU0FBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQU07UUFDMUMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxhQUFhO0tBQy9CLENBQUM7QUFDSixDQUFDLENBQUM7QUFaVyxRQUFBLGlCQUFpQixxQkFZNUI7QUFFRiwwQ0FBMEM7QUFDMUMsYUFBYTtBQUNiLGdCQUFnQjtBQUNoQixXQUFXO0FBQ1gsK0JBQStCO0FBQy9CLGlGQUFpRjtBQUNqRiw2QkFBNkI7QUFDN0IsZ0JBQWdCO0FBQ2hCLFFBQVE7QUFDUixFQUFFO0FBQ0YsMENBQTBDO0FBQzFDLEVBQUU7QUFDRiwrQkFBK0I7QUFDL0Isc0VBQXNFO0FBQ3RFLDBCQUEwQjtBQUMxQixFQUFFO0FBQ0Ysd0dBQXdHO0FBQ3hHLDJCQUEyQjtBQUMzQiw2QkFBNkI7QUFDN0Isc0RBQXNEO0FBQ3RELCtCQUErQjtBQUMvQiw2QkFBNkI7QUFDN0Isb0NBQW9DO0FBQ3BDLDRFQUE0RTtBQUM1RSwwQkFBMEI7QUFDMUIsVUFBVTtBQUNWLEVBQUU7QUFDRiwyQkFBMkI7QUFDM0IsNERBQTREO0FBQzVELHNEQUFzRDtBQUN0RCxFQUFFO0FBQ0YsNkRBQTZEO0FBQzdELHdCQUF3QjtBQUN4QixLQUFLIn0=
@@ -1,15 +0,0 @@
1
- import * as registry from '@pulumi/azure-native/containerregistry';
2
- import { NetworkPropsType, ResourceInfoWithInstance, BasicResourceArgs } from '../types';
3
- interface Props extends BasicResourceArgs {
4
- sku?: registry.SkuName | string;
5
- policies?: {
6
- retentionDay: number;
7
- };
8
- /**Only support Premium sku*/
9
- network?: Omit<NetworkPropsType, 'subnetId'>;
10
- }
11
- /** The Azure Container Registry will be created at the GLobal Group.
12
- * Follow ReadMe file to setup the cleaning tasks for this Registry
13
- */
14
- declare const _default: ({ name, group, sku, policies, network, dependsOn, ignoreChanges, }: Props) => ResourceInfoWithInstance<registry.Registry>;
15
- export default _default;
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const registry = __importStar(require("@pulumi/azure-native/containerregistry"));
30
- const global = __importStar(require("../Common/GlobalEnv"));
31
- const Common_1 = require("../Common");
32
- const PrivateEndpoint_1 = __importDefault(require("../VNet/PrivateEndpoint"));
33
- /** The Azure Container Registry will be created at the GLobal Group.
34
- * Follow ReadMe file to setup the cleaning tasks for this Registry
35
- */
36
- exports.default = ({ name, group = global.groupInfo, sku = registry.SkuName.Basic,
37
- //vaultInfo,
38
- policies, network, dependsOn, ignoreChanges, }) => {
39
- name = Common_1.naming.getAcrName(name);
40
- const resource = new registry.Registry(name, {
41
- registryName: name,
42
- ...group,
43
- sku: { name: sku },
44
- //This is for encryption
45
- identity: { type: registry.ResourceIdentityType.SystemAssigned },
46
- adminUserEnabled: false,
47
- dataEndpointEnabled: false,
48
- policies: sku === 'Premium'
49
- ? {
50
- exportPolicy: {
51
- status: registry.ExportPolicyStatus.Disabled,
52
- },
53
- quarantinePolicy: { status: registry.PolicyStatus.Enabled },
54
- retentionPolicy: {
55
- days: policies?.retentionDay ?? 90,
56
- status: registry.PolicyStatus.Enabled,
57
- },
58
- trustPolicy: {
59
- status: registry.PolicyStatus.Enabled,
60
- type: registry.TrustPolicyType.Notary,
61
- },
62
- }
63
- : undefined,
64
- publicNetworkAccess: network?.privateLink ? 'Disabled' : 'Enabled',
65
- networkRuleBypassOptions: network?.privateLink ? 'None' : 'AzureServices',
66
- zoneRedundancy: sku === 'Premium' ? 'Enabled' : 'Disabled',
67
- networkRuleSet: sku === 'Premium' && network
68
- ? {
69
- defaultAction: registry.DefaultAction.Allow,
70
- ipRules: network.ipAddresses
71
- ? network.ipAddresses.map((ip) => ({ iPAddressOrRange: ip }))
72
- : undefined,
73
- }
74
- : undefined,
75
- }, { dependsOn, ignoreChanges });
76
- if (sku === 'Premium' && network?.privateLink) {
77
- (0, PrivateEndpoint_1.default)({
78
- ...network.privateLink,
79
- resourceInfo: { name, group, id: resource.id },
80
- privateDnsZoneName: 'privatelink.azurecr.io',
81
- linkServiceGroupIds: network.privateLink.type
82
- ? [network.privateLink.type]
83
- : ['azurecr'],
84
- });
85
- }
86
- return {
87
- name,
88
- group,
89
- id: resource.id,
90
- instance: resource,
91
- };
92
- };
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQ29udGFpbmVyUmVnaXN0cnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlGQUFtRTtBQU1uRSw0REFBOEM7QUFDOUMsc0NBQW1DO0FBQ25DLDhFQUFzRDtBQVV0RDs7R0FFRztBQUNILGtCQUFlLENBQUMsRUFDZCxJQUFJLEVBQ0osS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFTLEVBQ3hCLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUs7QUFDNUIsWUFBWTtBQUNaLFFBQVEsRUFDUixPQUFPLEVBQ1AsU0FBUyxFQUNULGFBQWEsR0FDUCxFQUErQyxFQUFFO0lBQ3ZELElBQUksR0FBRyxlQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRS9CLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FDcEMsSUFBSSxFQUNKO1FBQ0UsWUFBWSxFQUFFLElBQUk7UUFDbEIsR0FBRyxLQUFLO1FBRVIsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRTtRQUNsQix3QkFBd0I7UUFDeEIsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxjQUFjLEVBQUU7UUFFaEUsZ0JBQWdCLEVBQUUsS0FBSztRQUN2QixtQkFBbUIsRUFBRSxLQUFLO1FBQzFCLFFBQVEsRUFDTixHQUFHLEtBQUssU0FBUztZQUNmLENBQUMsQ0FBQztnQkFDRSxZQUFZLEVBQUU7b0JBQ1osTUFBTSxFQUFFLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRO2lCQUM3QztnQkFDRCxnQkFBZ0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRTtnQkFDM0QsZUFBZSxFQUFFO29CQUNmLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxJQUFJLEVBQUU7b0JBQ2xDLE1BQU0sRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDLE9BQU87aUJBQ3RDO2dCQUNELFdBQVcsRUFBRTtvQkFDWCxNQUFNLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQyxPQUFPO29CQUNyQyxJQUFJLEVBQUUsUUFBUSxDQUFDLGVBQWUsQ0FBQyxNQUFNO2lCQUN0QzthQUNGO1lBQ0gsQ0FBQyxDQUFDLFNBQVM7UUFFZixtQkFBbUIsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDbEUsd0JBQXdCLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxlQUFlO1FBQ3pFLGNBQWMsRUFBRSxHQUFHLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFVBQVU7UUFFMUQsY0FBYyxFQUNaLEdBQUcsS0FBSyxTQUFTLElBQUksT0FBTztZQUMxQixDQUFDLENBQUM7Z0JBQ0UsYUFBYSxFQUFFLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSztnQkFFM0MsT0FBTyxFQUFFLE9BQU8sQ0FBQyxXQUFXO29CQUMxQixDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO29CQUM3RCxDQUFDLENBQUMsU0FBUzthQUNkO1lBQ0gsQ0FBQyxDQUFDLFNBQVM7S0FDaEIsRUFDRCxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsQ0FDN0IsQ0FBQztJQUVGLElBQUksR0FBRyxLQUFLLFNBQVMsSUFBSSxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDOUMsSUFBQSx5QkFBZSxFQUFDO1lBQ2QsR0FBRyxPQUFPLENBQUMsV0FBVztZQUN0QixZQUFZLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFO1lBQzlDLGtCQUFrQixFQUFFLHdCQUF3QjtZQUM1QyxtQkFBbUIsRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUk7Z0JBQzNDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO2dCQUM1QixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJO1FBQ0osS0FBSztRQUNMLEVBQUUsRUFBRSxRQUFRLENBQUMsRUFBRTtRQUNmLFFBQVEsRUFBRSxRQUE2QjtLQUN4QyxDQUFDO0FBQ0osQ0FBQyxDQUFDIn0=
@@ -1,28 +0,0 @@
1
- import * as documentdb from '@pulumi/azure-native/documentdb';
2
- import { WithNamedType, ResourceWithVaultArgs } from '../types';
3
- import { Input } from '@pulumi/pulumi';
4
- interface CosmosDbProps extends ResourceWithVaultArgs {
5
- locations?: Array<Input<string>>;
6
- enableMultipleWriteLocations?: boolean;
7
- capabilities?: Array<'EnableCassandra' | 'EnableTable' | 'EnableGremlin'>;
8
- kind?: documentdb.DatabaseAccountKind;
9
- enableThreatProtection?: boolean;
10
- network?: {
11
- publicNetworkAccess?: boolean;
12
- allowAzureServicesAccess?: boolean;
13
- subnetIds?: Input<string>[];
14
- ipAddresses?: Input<string>[];
15
- };
16
- sqlDbs?: Array<WithNamedType & {
17
- containers?: Array<WithNamedType & {
18
- partitionKeyPath: string;
19
- /** auto expired items in seconds*/
20
- ttl?: number;
21
- }>;
22
- }>;
23
- }
24
- declare const _default: ({ name, group, vaultInfo, locations, capabilities, enableMultipleWriteLocations, enableThreatProtection, network, sqlDbs, kind, }: CosmosDbProps) => import("@pulumi/pulumi").CustomResource & {
25
- id: import("@pulumi/pulumi").Output<string>;
26
- urn: import("@pulumi/pulumi").Output<string>;
27
- };
28
- export default _default;
package/CosmosDb/index.js DELETED
@@ -1,142 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- const documentdb = __importStar(require("@pulumi/azure-native/documentdb"));
30
- const Common_1 = require("../Common");
31
- const ResourceCreator_1 = __importDefault(require("../Core/ResourceCreator"));
32
- const Common_2 = require("../Common");
33
- const Helpers_1 = require("../Logs/Helpers");
34
- exports.default = ({ name, group, vaultInfo, locations, capabilities, enableMultipleWriteLocations, enableThreatProtection, network, sqlDbs, kind = documentdb.DatabaseAccountKind.GlobalDocumentDB, }) => {
35
- name = Common_1.naming.getCosmosDbName(name);
36
- const { resource } = (0, ResourceCreator_1.default)(documentdb.DatabaseAccount, {
37
- accountName: name,
38
- ...group,
39
- databaseAccountOfferType: documentdb.DatabaseAccountOfferType.Standard,
40
- kind,
41
- identity: { type: 'SystemAssigned' },
42
- capabilities: capabilities
43
- ? capabilities.map((n) => ({ name: n }))
44
- : undefined,
45
- locations: locations
46
- ? locations.map((n) => ({ locationName: n }))
47
- : [{ locationName: group.location }],
48
- backupPolicy: Common_2.isPrd
49
- ? {
50
- type: 'Periodic',
51
- periodicModeProperties: {
52
- backupIntervalInMinutes: 30,
53
- backupRetentionIntervalInHours: 4,
54
- },
55
- }
56
- : undefined,
57
- enableAutomaticFailover: Common_2.isPrd,
58
- enableAnalyticalStorage: false,
59
- enableFreeTier: true,
60
- enableMultipleWriteLocations,
61
- consistencyPolicy: {
62
- defaultConsistencyLevel: documentdb.DefaultConsistencyLevel.BoundedStaleness,
63
- maxIntervalInSeconds: 60 * 60, //1 hours
64
- maxStalenessPrefix: 100000,
65
- },
66
- publicNetworkAccess: network?.publicNetworkAccess === true
67
- ? documentdb.PublicNetworkAccess.Enabled
68
- : documentdb.PublicNetworkAccess.Disabled,
69
- isVirtualNetworkFilterEnabled: !network?.publicNetworkAccess,
70
- networkAclBypass: network?.allowAzureServicesAccess === true
71
- ? documentdb.NetworkAclBypass.AzureServices
72
- : documentdb.NetworkAclBypass.None,
73
- virtualNetworkRules: network?.subnetIds
74
- ? network.subnetIds.map((s) => ({
75
- id: s,
76
- ignoreMissingVNetServiceEndpoint: true,
77
- }))
78
- : undefined,
79
- ipRules: network?.ipAddresses
80
- ? network.ipAddresses.map((i) => ({ ipAddressOrRange: i }))
81
- : undefined,
82
- //keyVaultKeyId: encryptKey?.properties.id,
83
- // monitoring: {
84
- // logsCategories: [
85
- // 'CassandraRequests',
86
- // 'PartitionKeyStatistics',
87
- // 'ControlPlaneRequests',
88
- // 'MongoRequests',
89
- // 'QueryRuntimeStatistics',
90
- // 'GremlinRequests',
91
- // 'PartitionKeyRUConsumption',
92
- // 'DataPlaneRequests',
93
- // ],
94
- // metricsCategories: ['Requests'],
95
- // },
96
- });
97
- if (enableThreatProtection &&
98
- kind !== documentdb.DatabaseAccountKind.MongoDB) {
99
- //Thread Protection
100
- (0, Helpers_1.createThreatProtection)({
101
- name,
102
- targetResourceId: resource.id,
103
- });
104
- }
105
- //Vault variables
106
- if (vaultInfo) {
107
- resource.id.apply(async (id) => {
108
- if (!id)
109
- return undefined;
110
- return await documentdb.listDatabaseAccountKeys({
111
- accountName: name,
112
- ...group,
113
- });
114
- });
115
- }
116
- //Database and Containers
117
- if (sqlDbs) {
118
- sqlDbs.forEach((db) => {
119
- new documentdb.SqlResourceSqlDatabase(db.name, {
120
- databaseName: db.name,
121
- accountName: name,
122
- resource: { id: db.name },
123
- ...group,
124
- }, { dependsOn: resource });
125
- if (db.containers) {
126
- db.containers.forEach((c) => new documentdb.SqlResourceSqlContainer(`${db.name}-${c.name}`, {
127
- accountName: name,
128
- ...group,
129
- databaseName: db.name,
130
- containerName: c.name,
131
- resource: {
132
- id: c.name,
133
- defaultTtl: c.ttl,
134
- partitionKey: { paths: [c.partitionKeyPath || '/id'] },
135
- },
136
- }));
137
- }
138
- });
139
- }
140
- return resource;
141
- };
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQ29zbW9zRGIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDRFQUE4RDtBQUM5RCxzQ0FBbUM7QUFFbkMsOEVBQXNEO0FBQ3RELHNDQUFrQztBQUNsQyw2Q0FBeUQ7QUFnQ3pELGtCQUFlLENBQUMsRUFDZCxJQUFJLEVBQ0osS0FBSyxFQUNMLFNBQVMsRUFDVCxTQUFTLEVBQ1QsWUFBWSxFQUNaLDRCQUE0QixFQUM1QixzQkFBc0IsRUFDdEIsT0FBTyxFQUNQLE1BQU0sRUFDTixJQUFJLEdBQUcsVUFBVSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixHQUN4QyxFQUFFLEVBQUU7SUFDbEIsSUFBSSxHQUFHLGVBQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFcEMsTUFBTSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUEseUJBQWUsRUFBQyxVQUFVLENBQUMsZUFBZSxFQUFFO1FBQy9ELFdBQVcsRUFBRSxJQUFJO1FBQ2pCLEdBQUcsS0FBSztRQUNSLHdCQUF3QixFQUFFLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRO1FBQ3RFLElBQUk7UUFDSixRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7UUFFcEMsWUFBWSxFQUFFLFlBQVk7WUFDeEIsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN4QyxDQUFDLENBQUMsU0FBUztRQUViLFNBQVMsRUFBRSxTQUFTO1lBQ2xCLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDN0Ms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
@@ -1,26 +0,0 @@
1
- import { BasicResourceWithVaultArgs } from '../../types';
2
- import * as devices from '@pulumi/azure-native/devices';
3
- import { Input } from '@pulumi/pulumi';
4
- interface Props extends BasicResourceWithVaultArgs {
5
- sku: {
6
- name: devices.IotHubSku;
7
- capacity?: number;
8
- };
9
- serviceBus?: {
10
- /** provide the queue connection string to enable message to be pushing to service bus queue */
11
- queueMessageConnectionString?: Input<string>;
12
- /** provide the topic connection string to enable message to be pushing to service bus topic */
13
- topicMessageConnectionString?: Input<string>;
14
- };
15
- storage?: {
16
- connectionString: Input<string>;
17
- /** provide the file container name to enable file to be upload in IOT hub*/
18
- fileContainerName?: Input<string>;
19
- /** provide the message container name to enable message to be pushing to storage */
20
- messageContainerName?: Input<string>;
21
- /** provide the event container name to enable events to be pushing to storage */
22
- eventContainerName?: Input<string>;
23
- };
24
- }
25
- declare const _default: ({ name, group, sku, storage, serviceBus, dependsOn, vaultInfo, }: Props) => import("@pulumi/azure-native/devices/iotHubResource").IotHubResource;
26
- export default _default;