@drunk-pulumi/azure 0.0.42 → 0.0.44

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 (197) hide show
  1. package/Aks/Helper.js +25 -2
  2. package/Aks/Identity.js +5 -2
  3. package/Aks/VmSetAutoScale/index.js +25 -2
  4. package/Aks/VmSetMonitor/index.js +26 -3
  5. package/Aks/index.d.ts +2 -2
  6. package/Aks/index.js +35 -6
  7. package/Apim/ApiProduct/SwaggerHelper.d.ts +0 -5
  8. package/Apim/ApiProduct/SwaggerHelper.js +7 -12
  9. package/Apim/Helpers.d.ts +2 -0
  10. package/Apim/Helpers.js +17 -1
  11. package/Apps/LogicApp.d.ts +4 -11
  12. package/Apps/LogicApp.js +33 -11
  13. package/Automation/index.js +29 -3
  14. package/AzAd/B2C.js +25 -2
  15. package/AzAd/EnvRoles.Consts.d.ts +1 -1
  16. package/AzAd/EnvRoles.Consts.js +38 -35
  17. package/AzAd/EnvRoles.js +5 -2
  18. package/AzAd/Group.d.ts +1 -1
  19. package/AzAd/Group.js +25 -2
  20. package/AzAd/Identities/AzDevOpsIdentity.js +5 -2
  21. package/AzAd/Identities/AzDevOpsManagedIdentity.js +5 -2
  22. package/AzAd/Identities/AzUserAdRevertSync.js +5 -2
  23. package/AzAd/Identities/index.js +7 -4
  24. package/AzAd/Identity.js +26 -3
  25. package/AzAd/Role.js +5 -2
  26. package/AzAd/RoleAssignment.d.ts +1 -1
  27. package/AzAd/RoleAssignment.js +40 -32
  28. package/AzAd/RoleDefinitions/JustInTimeRequestRole.js +25 -2
  29. package/AzAd/UserAssignedIdentity.js +25 -2
  30. package/Builder/AksBuilder.js +6 -3
  31. package/Builder/ApimApiBuilder.d.ts +22 -0
  32. package/Builder/ApimApiBuilder.js +198 -0
  33. package/Builder/ApimBuilder.d.ts +3 -0
  34. package/Builder/ApimBuilder.js +329 -0
  35. package/Builder/ApimPolicyBuilder.d.ts +51 -0
  36. package/Builder/ApimPolicyBuilder.js +384 -0
  37. package/Builder/ApimProductBuilder.d.ts +21 -0
  38. package/Builder/ApimProductBuilder.js +153 -0
  39. package/Builder/ApimRootBuilder.d.ts +9 -0
  40. package/Builder/ApimRootBuilder.js +26 -0
  41. package/Builder/ApimWorkspaceBuilder.d.ts +10 -0
  42. package/Builder/ApimWorkspaceBuilder.js +57 -0
  43. package/Builder/CdnBuilder.d.ts +13 -0
  44. package/Builder/CdnBuilder.js +39 -0
  45. package/Builder/DnsZoneBuilder.js +37 -16
  46. package/Builder/PrivateDnsZoneBuilder.js +48 -24
  47. package/Builder/ResourceBuilder.js +20 -6
  48. package/Builder/SqlBuilder.js +5 -6
  49. package/Builder/StorageBuilder.d.ts +3 -0
  50. package/Builder/StorageBuilder.js +101 -0
  51. package/Builder/VaultBuilder.js +25 -3
  52. package/Builder/VmBuilder.js +16 -3
  53. package/Builder/VnetBuilder.js +44 -33
  54. package/Builder/index.d.ts +4 -0
  55. package/Builder/index.js +21 -10
  56. package/Builder/types/apimBuilder.d.ts +70 -0
  57. package/Builder/types/apimBuilder.js +3 -0
  58. package/Builder/types/apimPolicyBuilder.d.ts +84 -0
  59. package/Builder/types/apimPolicyBuilder.js +11 -0
  60. package/Builder/types/apimProductBuilder.d.ts +56 -0
  61. package/Builder/types/apimProductBuilder.js +3 -0
  62. package/Builder/types/apimWorkspaceBuilder.d.ts +2 -0
  63. package/Builder/types/apimWorkspaceBuilder.js +3 -0
  64. package/Builder/types/askBuilder.d.ts +2 -6
  65. package/Builder/types/cdnBuilder.d.ts +7 -0
  66. package/Builder/types/cdnBuilder.js +3 -0
  67. package/Builder/types/genericBuilder.d.ts +5 -5
  68. package/Builder/types/genericBuilder.js +1 -1
  69. package/Builder/types/index.d.ts +6 -0
  70. package/Builder/types/index.js +7 -1
  71. package/Builder/types/resourceBuilder.d.ts +3 -1
  72. package/Builder/types/storageBuilder.d.ts +24 -0
  73. package/Builder/types/storageBuilder.js +3 -0
  74. package/Builder/types/vmBuilder.d.ts +4 -2
  75. package/Builder/types/vnetBuilder.d.ts +4 -1
  76. package/Cdn/CdnEndpoint.d.ts +13 -0
  77. package/Cdn/CdnEndpoint.js +94 -0
  78. package/{Storage → Cdn}/CdnRules.d.ts +2 -2
  79. package/Cdn/CdnRules.js +133 -0
  80. package/Cdn/index.d.ts +7 -6
  81. package/Cdn/index.js +45 -33
  82. package/Certificate/index.js +27 -4
  83. package/Certificate/p12.js +25 -2
  84. package/Common/AzureEnv.d.ts +1 -2
  85. package/Common/AzureEnv.js +25 -2
  86. package/Common/ConfigHelper.js +25 -2
  87. package/Common/GlobalEnv.d.ts +2 -7
  88. package/Common/GlobalEnv.js +12 -5
  89. package/Common/Helpers.d.ts +13 -0
  90. package/Common/Helpers.js +43 -5
  91. package/Common/Naming/index.d.ts +3 -2
  92. package/Common/Naming/index.js +10 -7
  93. package/Common/ResourceEnv.d.ts +1 -11
  94. package/Common/ResourceEnv.js +24 -20
  95. package/Common/StackEnv.js +25 -2
  96. package/Common/index.js +29 -6
  97. package/ContainerRegistry/Helper.js +29 -3
  98. package/ContainerRegistry/index.d.ts +2 -2
  99. package/ContainerRegistry/index.js +37 -12
  100. package/Core/Locker.js +25 -2
  101. package/Core/Random.js +25 -2
  102. package/Core/ResourceCreator.js +5 -2
  103. package/Core/ResourceGroup.js +5 -2
  104. package/CosmosDb/index.js +29 -3
  105. package/CustomRoles/index.js +25 -2
  106. package/IOT/Hub/index.js +25 -2
  107. package/KeyVault/Helper.js +25 -2
  108. package/KeyVault/index.d.ts +5 -9
  109. package/KeyVault/index.js +40 -12
  110. package/Logs/AppInsight.d.ts +4 -4
  111. package/Logs/AppInsight.js +35 -9
  112. package/Logs/Helpers.d.ts +12 -9
  113. package/Logs/Helpers.js +57 -14
  114. package/Logs/LogAnalytics.js +25 -2
  115. package/Logs/WebTest.d.ts +1 -1
  116. package/Logs/WebTest.js +35 -12
  117. package/Logs/index.d.ts +1 -10
  118. package/Logs/index.js +36 -8
  119. package/MySql/index.d.ts +2 -9
  120. package/MySql/index.js +43 -13
  121. package/Postgresql/index.d.ts +2 -9
  122. package/Postgresql/index.js +42 -13
  123. package/RedisCache/index.d.ts +9 -5
  124. package/RedisCache/index.js +66 -32
  125. package/ServiceBus/index.d.ts +2 -6
  126. package/ServiceBus/index.js +39 -15
  127. package/SignalR/index.d.ts +2 -2
  128. package/SignalR/index.js +49 -29
  129. package/Sql/SqlDb.js +25 -2
  130. package/Sql/index.d.ts +3 -8
  131. package/Sql/index.js +57 -30
  132. package/Storage/Helper.js +25 -2
  133. package/Storage/ManagementRules.js +25 -2
  134. package/Storage/index.d.ts +37 -39
  135. package/Storage/index.js +69 -97
  136. package/VM/AzureDevOpsExtension.js +5 -2
  137. package/VM/Extension.js +25 -2
  138. package/VM/GlobalSchedule.js +25 -2
  139. package/VM/index.d.ts +7 -6
  140. package/VM/index.js +32 -6
  141. package/VNet/Bastion.js +29 -3
  142. package/VNet/Firewall.js +31 -5
  143. package/VNet/FirewallPolicies/index.js +8 -5
  144. package/VNet/FirewallPolicy.js +25 -2
  145. package/VNet/GlobalNetworkPeering.js +25 -2
  146. package/VNet/Helper.d.ts +2 -2
  147. package/VNet/Helper.js +32 -12
  148. package/VNet/IpAddress.js +30 -4
  149. package/VNet/IpAddressPrefix.js +30 -4
  150. package/VNet/NSGRules/ApimSecurityRule.d.ts +7 -0
  151. package/VNet/NSGRules/ApimSecurityRule.js +34 -0
  152. package/VNet/NSGRules/AzADSecurityRule.d.ts +2 -2
  153. package/VNet/NSGRules/AzADSecurityRule.js +2 -2
  154. package/VNet/NSGRules/BastionSecurityRule.d.ts +1 -2
  155. package/VNet/NSGRules/BastionSecurityRule.js +2 -2
  156. package/VNet/NSGRules/index.d.ts +4 -0
  157. package/VNet/NSGRules/index.js +15 -0
  158. package/VNet/NatGateway.js +25 -2
  159. package/VNet/NetworkPeering.js +25 -2
  160. package/VNet/PrivateEndpoint.d.ts +6 -6
  161. package/VNet/PrivateEndpoint.js +34 -10
  162. package/VNet/RouteTable.js +25 -2
  163. package/VNet/SecurityGroup.js +25 -2
  164. package/VNet/Subnet.js +25 -2
  165. package/VNet/VPNGateway.js +29 -3
  166. package/VNet/VirtualWAN.js +29 -3
  167. package/VNet/Vnet.d.ts +2 -2
  168. package/VNet/Vnet.js +35 -6
  169. package/VNet/index.d.ts +3 -0
  170. package/VNet/index.js +34 -8
  171. package/Web/AppCertOrder.js +29 -3
  172. package/Web/AppConfig.d.ts +9 -12
  173. package/Web/AppConfig.js +51 -35
  174. package/Web/AppGateway.js +29 -3
  175. package/Web/FuncApp.js +25 -2
  176. package/Web/Helpers.js +25 -2
  177. package/Web/WebAppPlan.js +25 -2
  178. package/index.d.ts +1 -0
  179. package/index.js +18 -0
  180. package/package.json +5 -4
  181. package/types.d.ts +19 -16
  182. package/z_tests/_tools/Mocks.js +25 -2
  183. package/Apim/ApiProduct/Api.d.ts +0 -35
  184. package/Apim/ApiProduct/Api.js +0 -131
  185. package/Apim/ApiProduct/PolicyBuilder.d.ts +0 -79
  186. package/Apim/ApiProduct/PolicyBuilder.js +0 -359
  187. package/Apim/ApiProduct/Product.d.ts +0 -8
  188. package/Apim/ApiProduct/Product.js +0 -63
  189. package/Apim/ApiProduct/index.d.ts +0 -9
  190. package/Apim/ApiProduct/index.js +0 -21
  191. package/Apim/HookProxy/index.d.ts +0 -20
  192. package/Apim/HookProxy/index.js +0 -27
  193. package/Apim/index.d.ts +0 -22
  194. package/Apim/index.js +0 -115
  195. package/Storage/CdnEndpoint.d.ts +0 -12
  196. package/Storage/CdnEndpoint.js +0 -61
  197. package/Storage/CdnRules.js +0 -134
@@ -1,8 +1,11 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  const types_1 = require("./types");
4
7
  const Random_1 = require("../Core/Random");
5
- const VM_1 = require("../VM");
8
+ const VM_1 = __importDefault(require("../VM"));
6
9
  class VmBuilder extends types_1.Builder {
7
10
  _subnetProps = undefined;
8
11
  _tagsProps = undefined;
@@ -11,10 +14,15 @@ class VmBuilder extends types_1.Builder {
11
14
  _vmSize = undefined;
12
15
  _windowImage = undefined;
13
16
  _linuxImage = undefined;
17
+ _schedule = undefined;
14
18
  _vmInstance = undefined;
15
19
  constructor(props) {
16
20
  super(props);
17
21
  }
22
+ withSchedule(props) {
23
+ this._schedule = props;
24
+ return this;
25
+ }
18
26
  withSubnetId(props) {
19
27
  this._subnetProps = props;
20
28
  return this;
@@ -70,14 +78,19 @@ class VmBuilder extends types_1.Builder {
70
78
  userName: this._loginProps.adminLogin,
71
79
  password: this._loginProps.password,
72
80
  },
81
+ schedule: this._schedule,
73
82
  tags: this._tagsProps,
74
83
  });
75
84
  }
76
85
  build() {
77
86
  this.buildLogin();
78
87
  this.buildVm();
79
- return this._vmInstance;
88
+ return {
89
+ resourceName: this.commonProps.name,
90
+ group: this.commonProps.group,
91
+ id: this._vmInstance.id,
92
+ };
80
93
  }
81
94
  }
82
95
  exports.default = (props) => new VmBuilder(props);
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm1CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0J1aWxkZXIvVm1CdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsbUNBWWlCO0FBQ2pCLDJDQUE2QztBQUM3Qyw4QkFBdUI7QUFHdkIsTUFBTSxTQUNKLFNBQVEsZUFBdUI7SUFRdkIsWUFBWSxHQUE4QixTQUFTLENBQUM7SUFDcEQsVUFBVSxHQUE4QyxTQUFTLENBQUM7SUFDbEUsY0FBYyxHQUFZLEtBQUssQ0FBQztJQUNoQyxXQUFXLEdBQWtDLFNBQVMsQ0FBQztJQUN2RCxPQUFPLEdBQTRCLFNBQVMsQ0FBQztJQUM3QyxZQUFZLEdBQXdDLFNBQVMsQ0FBQztJQUM5RCxXQUFXLEdBQXNDLFNBQVMsQ0FBQztJQUUzRCxXQUFXLEdBQStCLFNBQVMsQ0FBQztJQUU1RCxZQUFZLEtBQW1CO1FBQzdCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFTSxZQUFZLENBQUMsS0FBb0I7UUFDdEMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ00sUUFBUSxDQUFDLEtBQW9DO1FBQ2xELElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNNLGFBQWE7UUFDbEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ00sYUFBYSxDQUFDLEtBQXdCO1FBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNNLFFBQVEsQ0FBQyxLQUFrQjtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDTSxnQkFBZ0IsQ0FBQyxLQUE4QjtRQUNwRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUMxQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDTSxjQUFjLENBQUMsS0FBNEI7UUFDaEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7UUFDekIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sVUFBVTtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWM7WUFBRSxPQUFPO1FBRWpDLE1BQU0sS0FBSyxHQUFHLElBQUEsb0JBQVcsRUFBQztZQUN4QixJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJO1lBQzNCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUk7WUFDbEMsaUJBQWlCLEVBQUUsRUFBRTtZQUNyQixlQUFlLEVBQUU7Z0JBQ2YsTUFBTSxFQUFFLEVBQUU7Z0JBQ1YsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUU7YUFDcEU7WUFDRCxTQUFTLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTO1NBQ3RDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxVQUFVLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlFLENBQUM7SUFFTyxPQUFPO1FBQ2IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFBLFlBQUUsRUFBQztZQUNwQixHQUFHLElBQUksQ0FBQyxXQUFXO1lBQ25CLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBYTtZQUM1QixNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQVE7WUFDckIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUztZQUN2RCxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsWUFBYTtZQUM3QyxLQUFLLEVBQUU7Z0JBQ0wsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFZLENBQUMsVUFBVztnQkFDdkMsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFZLENBQUMsUUFBUTthQUNyQztZQUNELElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtTQUN0QixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFZixPQUFPLElBQUksQ0FBQyxXQUFZLENBQUM7SUFDM0IsQ0FBQztDQUNGO0FBRUQsa0JBQWUsQ0FBQyxLQUFtQixFQUFFLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQWlCLENBQUMifQ==
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm1CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0J1aWxkZXIvVm1CdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsbUNBWWlCO0FBQ2pCLDJDQUE2QztBQUM3QywrQ0FBMkM7QUFHM0MsTUFBTSxTQUNKLFNBQVEsZUFBcUI7SUFRckIsWUFBWSxHQUE4QixTQUFTLENBQUM7SUFDcEQsVUFBVSxHQUE4QyxTQUFTLENBQUM7SUFDbEUsY0FBYyxHQUFZLEtBQUssQ0FBQztJQUNoQyxXQUFXLEdBQWtDLFNBQVMsQ0FBQztJQUN2RCxPQUFPLEdBQTRCLFNBQVMsQ0FBQztJQUM3QyxZQUFZLEdBQXdDLFNBQVMsQ0FBQztJQUM5RCxXQUFXLEdBQXNDLFNBQVMsQ0FBQztJQUMzRCxTQUFTLEdBQStCLFNBQVMsQ0FBQztJQUVsRCxXQUFXLEdBQStCLFNBQVMsQ0FBQztJQUU1RCxZQUFZLEtBQW1CO1FBQzdCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFDTSxZQUFZLENBQUMsS0FBcUI7UUFDdkMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ00sWUFBWSxDQUFDLEtBQW9CO1FBQ3RDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNNLFFBQVEsQ0FBQyxLQUFvQztRQUNsRCxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDTSxhQUFhO1FBQ2xCLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQzNCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNNLGFBQWEsQ0FBQyxLQUF3QjtRQUMzQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixPQUFPLElB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
@@ -1,14 +1,18 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const IpAddressPrefix_1 = require("../VNet/IpAddressPrefix");
4
- const Firewall_1 = require("../VNet/Firewall");
5
- const Vnet_1 = require("../VNet/Vnet");
6
- const NatGateway_1 = require("../VNet/NatGateway");
7
- const NetworkPeering_1 = require("../VNet/NetworkPeering");
8
- const VPNGateway_1 = require("../VNet/VPNGateway");
6
+ const IpAddressPrefix_1 = __importDefault(require("../VNet/IpAddressPrefix"));
7
+ const Firewall_1 = __importDefault(require("../VNet/Firewall"));
8
+ const Vnet_1 = __importDefault(require("../VNet/Vnet"));
9
+ const NatGateway_1 = __importDefault(require("../VNet/NatGateway"));
10
+ const NetworkPeering_1 = __importDefault(require("../VNet/NetworkPeering"));
11
+ const VPNGateway_1 = __importDefault(require("../VNet/VPNGateway"));
12
+ const PrivateDnsZoneBuilder_1 = __importDefault(require("./PrivateDnsZoneBuilder"));
9
13
  const types_1 = require("./types");
10
14
  const Helper_1 = require("../VNet/Helper");
11
- const Bastion_1 = require("../VNet/Bastion");
15
+ const Bastion_1 = __importDefault(require("../VNet/Bastion"));
12
16
  const outboundIpName = "outbound";
13
17
  class VnetBuilder extends types_1.Builder {
14
18
  /** The Props */
@@ -18,17 +22,21 @@ class VnetBuilder extends types_1.Builder {
18
22
  _bastionProps = undefined;
19
23
  _natGatewayEnabled = false;
20
24
  _vpnGatewayProps = undefined;
21
- _securityRules = undefined;
22
- _routeRules = undefined;
25
+ _securityRules = [];
26
+ _enableSG = false;
27
+ _routeRules = [];
28
+ _enableRoute = false;
23
29
  _peeringProps = [];
24
30
  _logInfo = undefined;
25
31
  _ipType = "prefix";
32
+ _privateDns = {};
26
33
  /** The Instances */
27
34
  _ipAddressInstance = undefined;
28
35
  _firewallInstance = undefined;
29
36
  _vnetInstance = undefined;
30
37
  _natGatewayInstance = undefined;
31
38
  _vnpGatewayInstance = undefined;
39
+ _privateDnsInstances = {};
32
40
  constructor(commonProps) {
33
41
  super(commonProps);
34
42
  }
@@ -69,17 +77,17 @@ class VnetBuilder extends types_1.Builder {
69
77
  return this;
70
78
  }
71
79
  withSecurityRules(rules) {
72
- if (!this._securityRules)
73
- this._securityRules = rules;
74
- else
75
- this._securityRules.push(...rules);
80
+ this._securityRules.push(...rules);
81
+ this._enableSG = true;
76
82
  return this;
77
83
  }
78
84
  withRouteRules(rules) {
79
- if (!this._routeRules)
80
- this._routeRules = rules;
81
- else
82
- this._routeRules.push(...rules);
85
+ this._routeRules.push(...rules);
86
+ this._enableRoute = true;
87
+ return this;
88
+ }
89
+ withPrivateDns(domain, builder) {
90
+ this._privateDns[domain] = builder;
83
91
  return this;
84
92
  }
85
93
  peeringTo(props) {
@@ -91,19 +99,6 @@ class VnetBuilder extends types_1.Builder {
91
99
  return this;
92
100
  }
93
101
  /** Builders methods */
94
- // private validate() {
95
- // if (this._firewallProps) {
96
- // if (!this._firewallProps.sku)
97
- // this._firewallProps.sku = this._natGatewayEnabled
98
- // ? { tier: "Basic", name: "AZFW_VNet" }
99
- // : { tier: "Basic", name: "AZFW_VNet" };
100
- //
101
- // // if (this._natGatewayEnabled && this._firewallProps.sku.tier === "Basic")
102
- // // throw new Error(
103
- // // 'The Firewall tier "Basic" is not support Nat Gateway.',
104
- // // );
105
- // }
106
- // }
107
102
  buildIpAddress() {
108
103
  const ipNames = [];
109
104
  //No gateway and no firewall then Do nothing
@@ -152,13 +147,13 @@ class VnetBuilder extends types_1.Builder {
152
147
  features: {
153
148
  //Only create Security group when firewall is not there
154
149
  securityGroup: {
155
- enabled: !this._firewallProps,
150
+ enabled: this._enableSG,
156
151
  allowOutboundInternetAccess: !Boolean(this._ipAddressInstance) && !this._natGatewayEnabled,
157
152
  rules: this._securityRules,
158
153
  },
159
154
  //Route tables
160
155
  routeTable: {
161
- enabled: this._routeRules && this._routeRules.length > 0,
156
+ enabled: this._enableRoute,
162
157
  rules: this._routeRules,
163
158
  },
164
159
  //Firewall
@@ -242,6 +237,21 @@ class VnetBuilder extends types_1.Builder {
242
237
  dependsOn: [this._vnetInstance.vnet],
243
238
  });
244
239
  }
240
+ buildPrivateDns() {
241
+ Object.keys(this._privateDns).forEach((k) => {
242
+ const bFunc = this._privateDns[k];
243
+ const builder = (0, PrivateDnsZoneBuilder_1.default)({
244
+ ...this.commonProps,
245
+ name: k,
246
+ }).linkTo({
247
+ vnetIds: [this._vnetInstance.id],
248
+ registrationEnabled: false,
249
+ });
250
+ if (bFunc)
251
+ bFunc(builder);
252
+ this._privateDnsInstances[k] = builder.build();
253
+ });
254
+ }
245
255
  buildPeering() {
246
256
  if (!this._peeringProps || !this._vnetInstance)
247
257
  return;
@@ -272,6 +282,7 @@ class VnetBuilder extends types_1.Builder {
272
282
  this.buildFirewall();
273
283
  this.buildVpnGateway();
274
284
  this.buildBastion();
285
+ this.buildPrivateDns();
275
286
  this.buildPeering();
276
287
  return {
277
288
  ...this._vnetInstance,
@@ -284,4 +295,4 @@ class VnetBuilder extends types_1.Builder {
284
295
  }
285
296
  }
286
297
  exports.default = (props) => new VnetBuilder(props);
287
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm5ldEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQnVpbGRlci9WbmV0QnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZEQUVpQztBQUdqQywrQ0FBNEQ7QUFDNUQsdUNBQWdEO0FBRWhELG1EQUE0QztBQUc1QywyREFBb0Q7QUFFcEQsbURBQTRDO0FBQzVDLG1DQWVpQjtBQUNqQiwyQ0FBa0U7QUFDbEUsNkNBQXNDO0FBRXRDLE1BQU0sY0FBYyxHQUFHLFVBQVUsQ0FBQztBQUVsQyxNQUFNLFdBQ0osU0FBUSxlQUEyQjtJQUduQyxnQkFBZ0I7SUFDUixZQUFZLEdBQW9DLFNBQVMsQ0FBQztJQUMxRCxVQUFVLEdBQThCLEVBQUUsQ0FBQztJQUMzQyxjQUFjLEdBQXNDLFNBQVMsQ0FBQztJQUM5RCxhQUFhLEdBQXFDLFNBQVMsQ0FBQztJQUM1RCxrQkFBa0IsR0FBYSxLQUFLLENBQUM7SUFDckMsZ0JBQWdCLEdBQXdDLFNBQVMsQ0FBQztJQUNsRSxjQUFjLEdBQXlDLFNBQVMsQ0FBQztJQUNqRSxXQUFXLEdBQ2pCLFNBQVMsQ0FBQztJQUNKLGFBQWEsR0FBbUIsRUFBRSxDQUFDO0lBQ25DLFFBQVEsR0FBK0IsU0FBUyxDQUFDO0lBQ2pELE9BQU8sR0FBNEIsUUFBUSxDQUFDO0lBRXBELG9CQUFvQjtJQUNaLGtCQUFrQixHQUN4QixTQUFTLENBQUM7SUFDSixpQkFBaUIsR0FBK0IsU0FBUyxDQUFDO0lBQzFELGFBQWEsR0FBMkIsU0FBUyxDQUFDO0lBQ2xELG1CQUFtQixHQUFtQyxTQUFTLENBQUM7SUFDaEUsbUJBQW1CLEdBQ3pCLFNBQVMsQ0FBQztJQUVaLFlBQVksV0FBeUI7UUFDbkMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFTSxLQUFLLENBQUMsUUFBMEIsRUFBRTtRQUN2QyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDbEMs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
298
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm5ldEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQnVpbGRlci9WbmV0QnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDhFQUVpQztBQUdqQyxnRUFBNEQ7QUFDNUQsd0RBQWdEO0FBRWhELG9FQUE0QztBQUc1Qyw0RUFBb0Q7QUFFcEQsb0VBQTRDO0FBQzVDLG9GQUE0RDtBQUM1RCxtQ0FnQmlCO0FBQ2pCLDJDQUFrRTtBQUNsRSw4REFBc0M7QUFFdEMsTUFBTSxjQUFjLEdBQUcsVUFBVSxDQUFDO0FBRWxDLE1BQU0sV0FDSixTQUFRLGVBQTJCO0lBR25DLGdCQUFnQjtJQUNSLFlBQVksR0FBb0MsU0FBUyxDQUFDO0lBQzFELFVBQVUsR0FBOEIsRUFBRSxDQUFDO0lBQzNDLGNBQWMsR0FBc0MsU0FBUyxDQUFDO0lBQzlELGFBQWEsR0FBcUMsU0FBUyxDQUFDO0lBQzVELGtCQUFrQixHQUFhLEtBQUssQ0FBQztJQUNyQyxnQkFBZ0IsR0FBd0MsU0FBUyxDQUFDO0lBQ2xFLGNBQWMsR0FBNkIsRUFBRSxDQUFDO0lBQzlDLFNBQVMsR0FBWSxLQUFLLENBQUM7SUFDM0IsV0FBVyxHQUE2QyxFQUFFLENBQUM7SUFDM0QsWUFBWSxHQUFZLEtBQUssQ0FBQztJQUM5QixhQUFhLEdBQW1CLEVBQUUsQ0FBQztJQUNuQyxRQUFRLEdBQStCLFNBQVMsQ0FBQztJQUNqRCxPQUFPLEdBQTRCLFFBQVEsQ0FBQztJQUM1QyxXQUFXLEdBQ2pCLEVBQUUsQ0FBQztJQUVMLG9CQUFvQjtJQUNaLGtCQUFrQixHQUN4QixTQUFTLENBQUM7SUFDSixpQkFBaUIsR0FBK0IsU0FBUyxDQUFDO0lBQzFELGFBQWEsR0FBMkIsU0FBUyxDQUFDO0lBQ2xELG1CQUFtQixHQUFtQyxTQUFTLENBQUM7SUFDaEUsbUJBQW1CLEdBQ3pCLFNBQVMsQ0FBQztJQUNKLG9CQUFvQixHQUFpQyxFQUFFLENBQUM7SUFFaEUsWUFBWSxX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
@@ -1,8 +1,12 @@
1
1
  export { default as AksBuilder } from "./AksBuilder";
2
+ export { default as ApimBuilder } from "./ApimBuilder";
3
+ export { default as ApimRootBuilder } from "./ApimRootBuilder";
4
+ export { default as CdnBuilder } from "./CdnBuilder";
2
5
  export { default as DnsZoneBuilder } from "./DnsZoneBuilder";
3
6
  export { default as PrivateDnsZoneBuilder } from "./PrivateDnsZoneBuilder";
4
7
  export { default as ResourceBuilder } from "./ResourceBuilder";
5
8
  export { default as SqlBuilder } from "./SqlBuilder";
9
+ export { default as StorageBuilder } from "./StorageBuilder";
6
10
  export { default as VaultBuilder } from "./VaultBuilder";
7
11
  export { default as VmBuilder } from "./VmBuilder";
8
12
  export { default as VnetBuilder } from "./VnetBuilder";
package/Builder/index.js CHANGED
@@ -13,23 +13,34 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
13
13
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
16
19
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.VnetBuilder = exports.VmBuilder = exports.VaultBuilder = exports.SqlBuilder = exports.ResourceBuilder = exports.PrivateDnsZoneBuilder = exports.DnsZoneBuilder = exports.AksBuilder = void 0;
20
+ exports.VnetBuilder = exports.VmBuilder = exports.VaultBuilder = exports.StorageBuilder = exports.SqlBuilder = exports.ResourceBuilder = exports.PrivateDnsZoneBuilder = exports.DnsZoneBuilder = exports.CdnBuilder = exports.ApimRootBuilder = exports.ApimBuilder = exports.AksBuilder = void 0;
18
21
  var AksBuilder_1 = require("./AksBuilder");
19
- Object.defineProperty(exports, "AksBuilder", { enumerable: true, get: function () { return AksBuilder_1.default; } });
22
+ Object.defineProperty(exports, "AksBuilder", { enumerable: true, get: function () { return __importDefault(AksBuilder_1).default; } });
23
+ var ApimBuilder_1 = require("./ApimBuilder");
24
+ Object.defineProperty(exports, "ApimBuilder", { enumerable: true, get: function () { return __importDefault(ApimBuilder_1).default; } });
25
+ var ApimRootBuilder_1 = require("./ApimRootBuilder");
26
+ Object.defineProperty(exports, "ApimRootBuilder", { enumerable: true, get: function () { return __importDefault(ApimRootBuilder_1).default; } });
27
+ var CdnBuilder_1 = require("./CdnBuilder");
28
+ Object.defineProperty(exports, "CdnBuilder", { enumerable: true, get: function () { return __importDefault(CdnBuilder_1).default; } });
20
29
  var DnsZoneBuilder_1 = require("./DnsZoneBuilder");
21
- Object.defineProperty(exports, "DnsZoneBuilder", { enumerable: true, get: function () { return DnsZoneBuilder_1.default; } });
30
+ Object.defineProperty(exports, "DnsZoneBuilder", { enumerable: true, get: function () { return __importDefault(DnsZoneBuilder_1).default; } });
22
31
  var PrivateDnsZoneBuilder_1 = require("./PrivateDnsZoneBuilder");
23
- Object.defineProperty(exports, "PrivateDnsZoneBuilder", { enumerable: true, get: function () { return PrivateDnsZoneBuilder_1.default; } });
32
+ Object.defineProperty(exports, "PrivateDnsZoneBuilder", { enumerable: true, get: function () { return __importDefault(PrivateDnsZoneBuilder_1).default; } });
24
33
  var ResourceBuilder_1 = require("./ResourceBuilder");
25
- Object.defineProperty(exports, "ResourceBuilder", { enumerable: true, get: function () { return ResourceBuilder_1.default; } });
34
+ Object.defineProperty(exports, "ResourceBuilder", { enumerable: true, get: function () { return __importDefault(ResourceBuilder_1).default; } });
26
35
  var SqlBuilder_1 = require("./SqlBuilder");
27
- Object.defineProperty(exports, "SqlBuilder", { enumerable: true, get: function () { return SqlBuilder_1.default; } });
36
+ Object.defineProperty(exports, "SqlBuilder", { enumerable: true, get: function () { return __importDefault(SqlBuilder_1).default; } });
37
+ var StorageBuilder_1 = require("./StorageBuilder");
38
+ Object.defineProperty(exports, "StorageBuilder", { enumerable: true, get: function () { return __importDefault(StorageBuilder_1).default; } });
28
39
  var VaultBuilder_1 = require("./VaultBuilder");
29
- Object.defineProperty(exports, "VaultBuilder", { enumerable: true, get: function () { return VaultBuilder_1.default; } });
40
+ Object.defineProperty(exports, "VaultBuilder", { enumerable: true, get: function () { return __importDefault(VaultBuilder_1).default; } });
30
41
  var VmBuilder_1 = require("./VmBuilder");
31
- Object.defineProperty(exports, "VmBuilder", { enumerable: true, get: function () { return VmBuilder_1.default; } });
42
+ Object.defineProperty(exports, "VmBuilder", { enumerable: true, get: function () { return __importDefault(VmBuilder_1).default; } });
32
43
  var VnetBuilder_1 = require("./VnetBuilder");
33
- Object.defineProperty(exports, "VnetBuilder", { enumerable: true, get: function () { return VnetBuilder_1.default; } });
44
+ Object.defineProperty(exports, "VnetBuilder", { enumerable: true, get: function () { return __importDefault(VnetBuilder_1).default; } });
34
45
  __exportStar(require("./types"), exports);
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQnVpbGRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUFxRDtBQUE1Qyx3R0FBQSxPQUFPLE9BQWM7QUFDOUIsbURBQTZEO0FBQXBELGdIQUFBLE9BQU8sT0FBa0I7QUFDbEMsaUVBQTJFO0FBQWxFLDhIQUFBLE9BQU8sT0FBeUI7QUFDekMscURBQStEO0FBQXRELGtIQUFBLE9BQU8sT0FBbUI7QUFDbkMsMkNBQXFEO0FBQTVDLHdHQUFBLE9BQU8sT0FBYztBQUM5QiwrQ0FBeUQ7QUFBaEQsNEdBQUEsT0FBTyxPQUFnQjtBQUNoQyx5Q0FBbUQ7QUFBMUMsc0dBQUEsT0FBTyxPQUFhO0FBQzdCLDZDQUF1RDtBQUE5QywwR0FBQSxPQUFPLE9BQWU7QUFFL0IsMENBQXdCIn0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQnVpbGRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUFxRDtBQUE1Qyx5SEFBQSxPQUFPLE9BQWM7QUFDOUIsNkNBQXVEO0FBQTlDLDJIQUFBLE9BQU8sT0FBZTtBQUMvQixxREFBK0Q7QUFBdEQsbUlBQUEsT0FBTyxPQUFtQjtBQUNuQywyQ0FBcUQ7QUFBNUMseUhBQUEsT0FBTyxPQUFjO0FBQzlCLG1EQUE2RDtBQUFwRCxpSUFBQSxPQUFPLE9BQWtCO0FBQ2xDLGlFQUEyRTtBQUFsRSwrSUFBQSxPQUFPLE9BQXlCO0FBQ3pDLHFEQUErRDtBQUF0RCxtSUFBQSxPQUFPLE9BQW1CO0FBQ25DLDJDQUFxRDtBQUE1Qyx5SEFBQSxPQUFPLE9BQWM7QUFDOUIsbURBQTZEO0FBQXBELGlJQUFBLE9BQU8sT0FBa0I7QUFDbEMsK0NBQXlEO0FBQWhELDZIQUFBLE9BQU8sT0FBZ0I7QUFDaEMseUNBQW1EO0FBQTFDLHVIQUFBLE9BQU8sT0FBYTtBQUM3Qiw2Q0FBdUQ7QUFBOUMsMkhBQUEsT0FBTyxPQUFlO0FBRS9CLDBDQUF3QiJ9
@@ -0,0 +1,70 @@
1
+ import { SkuType } from "@pulumi/azure-native/apimanagement";
2
+ import { Input } from "@pulumi/pulumi";
3
+ import { IBuilder } from "./genericBuilder";
4
+ import { PrivateLinkPropsType, ResourceInfo } from "../../types";
5
+ import { AppInsightInfo } from "../../Logs/Helpers";
6
+ export type ApimSkuBuilderType = {
7
+ sku: SkuType;
8
+ capacity?: number;
9
+ };
10
+ export type ApimPublisherBuilderType = {
11
+ publisherEmail: Input<string>;
12
+ /** default is organization name */
13
+ publisherName?: Input<string>;
14
+ /** default is apimgmt-noreply@mail.windowsazure.com */
15
+ notificationSenderEmail?: "apimgmt-noreply@mail.windowsazure.com" | Input<string>;
16
+ };
17
+ export type ApimCertBuilderType = {
18
+ certificate: Input<string>;
19
+ certificatePassword?: Input<string>;
20
+ };
21
+ export type ApimDomainBuilderType = {
22
+ domain: Input<string>;
23
+ } & ApimCertBuilderType;
24
+ export type ApimAdditionalLocationType = {
25
+ disableGateway?: Input<boolean>;
26
+ location: string;
27
+ };
28
+ export type ApimZoneType = ["1", "2"] | ["1", "2", "3"];
29
+ export type ApimVnetType = {
30
+ enableGateway?: Input<boolean>;
31
+ subnetId: Input<string>;
32
+ /**
33
+ * The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network,
34
+ * External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint,
35
+ * and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only.
36
+ * */
37
+ type: "External" | "Internal";
38
+ };
39
+ export type ApimPrivateLinkType = PrivateLinkPropsType & {
40
+ disablePublicAccess?: boolean;
41
+ };
42
+ export type ApimAuthType = {
43
+ clientId: Input<string>;
44
+ clientSecret: Input<string>;
45
+ authority?: Input<string>;
46
+ type: "facebook" | "google" | "microsoft" | "twitter" | "aad" | "aadB2C" | string;
47
+ };
48
+ export interface IApimSkuBuilder {
49
+ withSku(props: ApimSkuBuilderType): IApimPublisherBuilder;
50
+ }
51
+ export interface IApimPublisherBuilder {
52
+ withPublisher(props: ApimPublisherBuilderType): IApimBuilder;
53
+ }
54
+ export interface IApimAuthBuilder {
55
+ withEntraID(): IApimBuilder;
56
+ withAuth(props: ApimAuthType): IApimBuilder;
57
+ disableSignIn(): IApimBuilder;
58
+ }
59
+ export interface IApimBuilder extends IBuilder<ResourceInfo>, IApimAuthBuilder {
60
+ withCACert(props: ApimCertBuilderType): IApimBuilder;
61
+ withRootCert(props: ApimCertBuilderType): IApimBuilder;
62
+ withProxyDomain(props: ApimDomainBuilderType): IApimBuilder;
63
+ withInsightLog(props: AppInsightInfo): IApimBuilder;
64
+ /**Allows multi locations*/
65
+ withAdditionalLocation(props: ApimAdditionalLocationType): IApimBuilder;
66
+ withZones(props: ApimZoneType): IApimBuilder;
67
+ withSubnet(props: ApimVnetType): IApimBuilder;
68
+ withPrivateLink(props: ApimPrivateLinkType): IApimBuilder;
69
+ restoreFomDeleted(): IApimBuilder;
70
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpbUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9hcGltQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -0,0 +1,84 @@
1
+ export declare enum SetHeaderTypes {
2
+ delete = "delete",
3
+ override = "override",
4
+ skip = "skip",
5
+ append = "append"
6
+ }
7
+ export type ApimBaseUrlType = {
8
+ url: string;
9
+ };
10
+ export type ApimSetHeaderType = {
11
+ name: string;
12
+ value?: string;
13
+ type: SetHeaderTypes;
14
+ };
15
+ export type ApimCheckHeaderType = {
16
+ name: string;
17
+ value?: string[];
18
+ };
19
+ export type ApimMockPropsType = {
20
+ code?: number;
21
+ contentType?: string;
22
+ };
23
+ export type ApimRewriteUriType = {
24
+ template?: string;
25
+ };
26
+ export type ApimRateLimitType = {
27
+ /** Number of call */
28
+ calls?: number;
29
+ /** in period (second) */
30
+ inSecond?: number;
31
+ /** only applied to the success condition `@(context.Response.StatusCode >= 200 && context.Response.StatusCode < 300)` */
32
+ successConditionOnly?: boolean;
33
+ };
34
+ export type ApimOutCacheType = {
35
+ duration?: number;
36
+ };
37
+ export type ApimAuthCertType = {
38
+ thumbprint: string;
39
+ };
40
+ export type ApimClientCertType = Partial<ApimAuthCertType> & {
41
+ issuer?: string;
42
+ subject?: string;
43
+ verifyCert?: boolean;
44
+ };
45
+ export type ApimCorsType = {
46
+ origins?: string[];
47
+ };
48
+ export type ApimClientIpHeaderType = {
49
+ /** ex: `x-${organization}-clientIp` */
50
+ headerKey: string;
51
+ };
52
+ export type ApimValidateJwtWhitelistIpType = {
53
+ claimKey: "client_IpWhitelist" | string;
54
+ };
55
+ export type ApimWhitelistIpType = {
56
+ ipAddresses: string[];
57
+ };
58
+ export type ApimFindAndReplaceType = {
59
+ from: string;
60
+ to: string;
61
+ };
62
+ export type ApimCustomPolicyType = {
63
+ policy: string;
64
+ };
65
+ export interface IApimPolicyBuilder {
66
+ setBaseUrl(props: ApimBaseUrlType): IApimPolicyBuilder;
67
+ setHeader(props: ApimSetHeaderType): IApimPolicyBuilder;
68
+ checkHeader(props: ApimCheckHeaderType): IApimPolicyBuilder;
69
+ mockResponse(props: ApimMockPropsType): IApimPolicyBuilder;
70
+ rewriteUri(props: ApimRewriteUriType): IApimPolicyBuilder;
71
+ setRateLimit(props: ApimRateLimitType): IApimPolicyBuilder;
72
+ setCacheOptions(props: ApimOutCacheType): IApimPolicyBuilder;
73
+ setBackendCert(props: ApimAuthCertType): IApimPolicyBuilder;
74
+ verifyClientCert(props: ApimClientCertType): IApimPolicyBuilder;
75
+ setCors(props: ApimCorsType): IApimPolicyBuilder;
76
+ setClientIpHeader(props: ApimClientIpHeaderType): IApimPolicyBuilder;
77
+ /** Filter IP from Bearer Token */
78
+ validateJwtWhitelistIp(props: ApimValidateJwtWhitelistIpType): IApimPolicyBuilder;
79
+ /** IP Address Whitelisting */
80
+ setWhitelistIPs(props: ApimWhitelistIpType): IApimPolicyBuilder;
81
+ /**Replace outbound results */
82
+ setFindAndReplaces(props: ApimFindAndReplaceType): IApimPolicyBuilder;
83
+ build(): string;
84
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SetHeaderTypes = void 0;
4
+ var SetHeaderTypes;
5
+ (function (SetHeaderTypes) {
6
+ SetHeaderTypes["delete"] = "delete";
7
+ SetHeaderTypes["override"] = "override";
8
+ SetHeaderTypes["skip"] = "skip";
9
+ SetHeaderTypes["append"] = "append";
10
+ })(SetHeaderTypes || (exports.SetHeaderTypes = SetHeaderTypes = {}));
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpbVBvbGljeUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9hcGltUG9saWN5QnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFZLGNBS1g7QUFMRCxXQUFZLGNBQWM7SUFDeEIsbUNBQWlCLENBQUE7SUFDakIsdUNBQXFCLENBQUE7SUFDckIsK0JBQWEsQ0FBQTtJQUNiLG1DQUFpQixDQUFBO0FBQ25CLENBQUMsRUFMVyxjQUFjLDhCQUFkLGNBQWMsUUFLekIifQ==
@@ -0,0 +1,56 @@
1
+ import { input as inputs } from "@pulumi/azure-native/types";
2
+ import { Input } from "@pulumi/pulumi";
3
+ import { ResourceInfo } from "../../types";
4
+ import { IApimPolicyBuilder } from "./apimPolicyBuilder";
5
+ import { BuilderProps, IBuilderAsync } from "./genericBuilder";
6
+ export type ApimChildBuilderProps = BuilderProps & {
7
+ name: string;
8
+ apimServiceName: string;
9
+ };
10
+ export type ApimProductSubscriptionBuilderType = {
11
+ approvalRequired: boolean;
12
+ subscriptionsLimit: number;
13
+ };
14
+ export type APimApiBuilderFunction = (builder: IApimApiServiceBuilder) => IApimApiBuilder;
15
+ export type ApimApiServiceUrlType = {
16
+ serviceUrl: Input<string>;
17
+ apiPath: Input<string>;
18
+ };
19
+ export type ApimApiKeysType = {
20
+ header?: Input<string>;
21
+ query?: Input<string>;
22
+ };
23
+ export type ApimApiPolicyType = (builder: IApimPolicyBuilder) => IApimPolicyBuilder;
24
+ export type VersionBuilderFunction = (builder: IApimApiRevisionBuilder) => IApimApiRevisionBuilder;
25
+ export type ApimApiVersionType = "v1" | "v2" | "v3" | "v4" | "v5" | string;
26
+ export type ApimApiOperationType = {
27
+ name: string;
28
+ method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "OPTIONS";
29
+ urlTemplate: Input<string>;
30
+ responses?: Input<Input<inputs.apimanagement.ResponseContractArgs>[]>;
31
+ };
32
+ export type ApimApiRevisionProps = {
33
+ revision: number;
34
+ swaggerUrl: string;
35
+ } | {
36
+ revision: number;
37
+ operations: ApimApiOperationType[];
38
+ };
39
+ export interface IApimApiRevisionBuilder {
40
+ withRevision(props: ApimApiRevisionProps): IApimApiRevisionBuilder;
41
+ }
42
+ export interface IApimApiServiceBuilder {
43
+ withServiceUrl(props: ApimApiServiceUrlType): IApimApiBuilder;
44
+ }
45
+ export interface IApimApiBuilder extends IBuilderAsync<ResourceInfo> {
46
+ withPolicies(props: ApimApiPolicyType): IApimApiBuilder;
47
+ withKeys(props: ApimApiKeysType): IApimApiBuilder;
48
+ withVersion(version: ApimApiVersionType, builder: VersionBuilderFunction): IApimApiBuilder;
49
+ }
50
+ export interface IApimProductBuilder extends IBuilderAsync<ResourceInfo> {
51
+ requiredSubscription(props: ApimProductSubscriptionBuilderType): IApimProductBuilder;
52
+ /** Allows to add multi APIs */
53
+ withApi(props: APimApiBuilderFunction): IApimProductBuilder;
54
+ withPolicies(props: ApimApiPolicyType): IApimProductBuilder;
55
+ published(): IBuilderAsync<ResourceInfo>;
56
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpbVByb2R1Y3RCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL0J1aWxkZXIvdHlwZXMvYXBpbVByb2R1Y3RCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,2 @@
1
+ export interface IApimWorkspaceBuilder {
2
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpbVdvcmtzcGFjZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9hcGltV29ya3NwYWNlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
@@ -1,11 +1,7 @@
1
1
  import * as native from "@pulumi/azure-native";
2
- import { SshGenerationProps, SshResults } from "../../Core/KeyGenetators";
2
+ import { SshGenerationProps } from "../../Core/KeyGenetators";
3
3
  import { IBuilderAsync } from "./genericBuilder";
4
4
  import { AksAccessProps, AksNetworkProps, AksNodePoolProps, AksResults, AskAddonProps, AskFeatureProps, DefaultAksNodePoolProps } from "../../Aks";
5
- export type AskBuilderResults = {
6
- ssh: SshResults;
7
- aks: AksResults;
8
- };
9
5
  export type SshBuilderProps = Omit<SshGenerationProps, "vaultInfo" | "name">;
10
6
  export type AksImportProps = {
11
7
  id: string;
@@ -20,7 +16,7 @@ export interface IAksNetworkBuilder {
20
16
  export interface IAksDefaultNodePoolBuilder {
21
17
  withDefaultNodePool(props: DefaultAksNodePoolProps): IAksBuilder;
22
18
  }
23
- export interface IAksBuilder extends IBuilderAsync<AskBuilderResults> {
19
+ export interface IAksBuilder extends IBuilderAsync<AksResults> {
24
20
  withAuth(props: Omit<AksAccessProps, "envRoles">): IAksBuilder;
25
21
  withNodePool(props: AksNodePoolProps): IAksBuilder;
26
22
  withAddon(props: AskAddonProps): IAksBuilder;
@@ -0,0 +1,7 @@
1
+ import { CdnEndpointProps } from "../../Cdn/CdnEndpoint";
2
+ import { ResourceInfo } from "../../types";
3
+ import { IBuilder } from "./genericBuilder";
4
+ export type CdnBuilderEndpointType = Omit<CdnEndpointProps, "cdnProfileInfo" | "dependsOn" | "ignoreChanges" | "importUri">;
5
+ export interface ICdnBuilder extends IBuilder<ResourceInfo> {
6
+ withEndpoint(props: CdnBuilderEndpointType): ICdnBuilder;
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RuQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9CdWlsZGVyL3R5cGVzL2NkbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -1,5 +1,5 @@
1
1
  import { Input, Resource } from "@pulumi/pulumi";
2
- import { KeyVaultInfo, ResourceGroupInfo } from "../../types";
2
+ import { KeyVaultInfo, ResourceGroupInfo, ResourceInfo } from "../../types";
3
3
  import { EnvRolesResults } from "../../AzAd/EnvRoles";
4
4
  export type BuilderProps = {
5
5
  name: string;
@@ -17,19 +17,19 @@ export interface ILoginBuilder<IReturnInterface> {
17
17
  generateLogin(): IReturnInterface;
18
18
  withLoginInfo(props: LoginBuilderProps): IReturnInterface;
19
19
  }
20
- export interface IBuilder<TResults> {
20
+ export interface IBuilder<TResults extends ResourceInfo> {
21
21
  commonProps: BuilderProps;
22
22
  build(): TResults;
23
23
  }
24
- export declare abstract class Builder<TResults> implements IBuilder<TResults> {
24
+ export declare abstract class Builder<TResults extends ResourceInfo> implements IBuilder<TResults> {
25
25
  commonProps: BuilderProps;
26
26
  protected constructor(commonProps: BuilderProps);
27
27
  abstract build(): TResults;
28
28
  }
29
- export interface IBuilderAsync<TResults> extends Omit<IBuilder<TResults>, "build"> {
29
+ export interface IBuilderAsync<TResults extends ResourceInfo> extends Omit<IBuilder<TResults>, "build"> {
30
30
  build(): Promise<TResults>;
31
31
  }
32
- export declare abstract class BuilderAsync<TResults> implements IBuilderAsync<TResults> {
32
+ export declare abstract class BuilderAsync<TResults extends ResourceInfo> implements IBuilderAsync<TResults> {
33
33
  commonProps: BuilderProps;
34
34
  protected constructor(commonProps: BuilderProps);
35
35
  abstract build(): Promise<TResults>;
@@ -15,4 +15,4 @@ class BuilderAsync {
15
15
  }
16
16
  }
17
17
  exports.BuilderAsync = BuilderAsync;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpY0J1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9nZW5lcmljQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUE2QkEsTUFBc0IsT0FBTztJQUNFO0lBQTdCLFlBQTZCLFdBQXlCO1FBQXpCLGdCQUFXLEdBQVgsV0FBVyxDQUFjO0lBQUcsQ0FBQztDQUUzRDtBQUhELDBCQUdDO0FBUUQsTUFBc0IsWUFBWTtJQUdIO0lBQTdCLFlBQTZCLFdBQXlCO1FBQXpCLGdCQUFXLEdBQVgsV0FBVyxDQUFjO0lBQUcsQ0FBQztDQUUzRDtBQUxELG9DQUtDIn0=
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpY0J1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQnVpbGRlci90eXBlcy9nZW5lcmljQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUE2QkEsTUFBc0IsT0FBTztJQUdFO0lBQTdCLFlBQTZCLFdBQXlCO1FBQXpCLGdCQUFXLEdBQVgsV0FBVyxDQUFjO0lBQUcsQ0FBQztDQUUzRDtBQUxELDBCQUtDO0FBUUQsTUFBc0IsWUFBWTtJQUdIO0lBQTdCLFlBQTZCLFdBQXlCO1FBQXpCLGdCQUFXLEdBQVgsV0FBVyxDQUFjO0lBQUcsQ0FBQztDQUUzRDtBQUxELG9DQUtDIn0=