@drunk-pulumi/azure 0.0.49 → 0.0.51
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/Aks/Helper.d.ts +3 -3
- package/Aks/Helper.js +16 -35
- package/Aks/Identity.d.ts +2 -2
- package/Aks/Identity.js +5 -5
- package/Aks/index.d.ts +19 -6
- package/Aks/index.js +57 -70
- package/Apim/Helpers.d.ts +1 -1
- package/Apim/Helpers.js +2 -2
- package/Apps/LogicApp.d.ts +3 -3
- package/Apps/LogicApp.js +4 -5
- package/AzAd/Identity.d.ts +7 -7
- package/AzAd/Identity.js +49 -43
- package/Builder/AksBuilder.d.ts +1 -1
- package/Builder/AksBuilder.js +5 -1
- package/Builder/ApimApiBuilder.d.ts +3 -3
- package/Builder/ApimApiBuilder.js +11 -11
- package/Builder/ApimBuilder.d.ts +1 -1
- package/Builder/ApimBuilder.js +47 -47
- package/Builder/ApimPolicyBuilder.d.ts +1 -1
- package/Builder/ApimPolicyBuilder.js +21 -21
- package/Builder/ApimProductBuilder.d.ts +2 -2
- package/Builder/ApimProductBuilder.js +27 -25
- package/Builder/ApimRootBuilder.d.ts +3 -3
- package/Builder/ApimRootBuilder.js +3 -3
- package/Builder/ApimWorkspaceBuilder.d.ts +2 -2
- package/Builder/ApimWorkspaceBuilder.js +2 -2
- package/Builder/DnsZoneBuilder.d.ts +2 -2
- package/Builder/DnsZoneBuilder.js +6 -6
- package/Builder/PrivateDnsZoneBuilder.d.ts +2 -2
- package/Builder/PrivateDnsZoneBuilder.js +6 -6
- package/Builder/ResourceBuilder.js +43 -13
- package/Builder/SqlBuilder.d.ts +1 -1
- package/Builder/SqlBuilder.js +2 -2
- package/Builder/StorageBuilder.d.ts +1 -1
- package/Builder/StorageBuilder.js +7 -7
- package/Builder/VaultBuilder.d.ts +7 -4
- package/Builder/VaultBuilder.js +11 -5
- package/Builder/VdiBuilder.d.ts +1 -2
- package/Builder/VdiBuilder.js +7 -7
- package/Builder/VmBuilder.d.ts +1 -1
- package/Builder/VmBuilder.js +4 -4
- package/Builder/types/genericBuilder.d.ts +7 -6
- package/Builder/types/genericBuilder.js +1 -1
- package/Builder/types/resourceBuilder.d.ts +3 -3
- package/Builder/types/vaultBuilder.d.ts +3 -4
- package/Cdn/CdnEndpoint.d.ts +2 -2
- package/Cdn/CdnEndpoint.js +19 -19
- package/Cdn/index.d.ts +4 -6
- package/Cdn/index.js +4 -5
- package/Common/AzureEnv.d.ts +6 -10
- package/Common/AzureEnv.js +16 -16
- package/Common/GlobalEnv.js +2 -2
- package/ContainerRegistry/index.d.ts +6 -16
- package/ContainerRegistry/index.js +25 -34
- package/Core/ResourceCreator.d.ts +5 -4
- package/Core/ResourceCreator.js +4 -5
- package/Core/ResourceGroup.d.ts +3 -3
- package/Core/ResourceGroup.js +3 -4
- package/CosmosDb/index.js +6 -4
- package/KeyVault/Helper.d.ts +3 -3
- package/KeyVault/Helper.js +16 -12
- package/KeyVault/index.d.ts +2 -3
- package/KeyVault/index.js +13 -13
- package/Logs/AppInsight.d.ts +3 -3
- package/Logs/AppInsight.js +10 -10
- package/Logs/Helpers.d.ts +4 -4
- package/Logs/Helpers.js +16 -16
- package/MySql/index.d.ts +5 -5
- package/MySql/index.js +22 -22
- package/Postgresql/index.d.ts +4 -4
- package/Postgresql/index.js +21 -21
- package/RedisCache/index.d.ts +2 -2
- package/RedisCache/index.js +14 -14
- package/ServiceBus/index.d.ts +11 -11
- package/ServiceBus/index.js +20 -18
- package/SignalR/index.d.ts +5 -5
- package/SignalR/index.js +18 -18
- package/Sql/SqlDb.d.ts +5 -5
- package/Sql/SqlDb.js +7 -7
- package/Sql/index.d.ts +10 -10
- package/Sql/index.js +43 -41
- package/Storage/Helper.d.ts +3 -3
- package/Storage/Helper.js +8 -8
- package/Storage/index.d.ts +9 -9
- package/Storage/index.js +26 -24
- package/VM/index.d.ts +11 -11
- package/VM/index.js +15 -15
- package/VNet/Firewall.d.ts +7 -7
- package/VNet/Firewall.js +15 -15
- package/VNet/FirewallPolicy.d.ts +5 -5
- package/VNet/FirewallPolicy.js +8 -8
- package/VNet/Helper.d.ts +5 -5
- package/VNet/Helper.js +19 -19
- package/VNet/PrivateEndpoint.d.ts +2 -2
- package/VNet/PrivateEndpoint.js +4 -4
- package/VNet/VirtualWAN.d.ts +6 -6
- package/VNet/VirtualWAN.js +5 -5
- package/VNet/Vnet.d.ts +8 -8
- package/VNet/Vnet.js +13 -13
- package/VNet/index.d.ts +2 -2
- package/Web/AppCertOrder.d.ts +5 -12
- package/Web/AppCertOrder.js +9 -15
- package/Web/AppConfig.d.ts +2 -2
- package/Web/AppConfig.js +8 -8
- package/Web/AppGateway.d.ts +2 -2
- package/Web/AppGateway.js +3 -3
- package/package.json +7 -7
- package/types.d.ts +45 -57
package/VM/index.js
CHANGED
|
@@ -33,14 +33,14 @@ const Locker_1 = __importDefault(require("../Core/Locker"));
|
|
|
33
33
|
const Helper_1 = require("../KeyVault/Helper");
|
|
34
34
|
const GlobalSchedule_1 = __importDefault(require("./GlobalSchedule"));
|
|
35
35
|
const Extension_1 = __importDefault(require("./Extension"));
|
|
36
|
-
exports.default = ({ name, group, subnetId, osType =
|
|
36
|
+
exports.default = ({ name, group, subnetId, osType = 'Windows', vmSize = 'Standard_B2s', extensions, storageAccountType = compute.StorageAccountTypes.Premium_LRS, osDiskSizeGB = 128, dataDiskSizeGB, enableEncryption, vaultInfo, schedule = { timeZone: 'Singapore Standard Time' }, login, image, lock = true, tags = {}, dependsOn, ...others }) => {
|
|
37
37
|
const vmName = (0, Naming_1.getVMName)(name);
|
|
38
38
|
const nicName = (0, Naming_1.getNICName)(name);
|
|
39
39
|
const nic = new network.NetworkInterface(nicName, {
|
|
40
40
|
networkInterfaceName: nicName,
|
|
41
41
|
...group,
|
|
42
42
|
ipConfigurations: [
|
|
43
|
-
{ name:
|
|
43
|
+
{ name: 'ipconfig', subnet: { id: subnetId }, primary: true },
|
|
44
44
|
],
|
|
45
45
|
nicType: network.NetworkInterfaceNicType.Standard,
|
|
46
46
|
});
|
|
@@ -56,8 +56,8 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
56
56
|
...group,
|
|
57
57
|
...others,
|
|
58
58
|
hardwareProfile: { vmSize },
|
|
59
|
-
identity: { type:
|
|
60
|
-
licenseType:
|
|
59
|
+
identity: { type: 'SystemAssigned' },
|
|
60
|
+
licenseType: 'None',
|
|
61
61
|
networkProfile: {
|
|
62
62
|
networkInterfaces: [{ id: nic.id, primary: true }],
|
|
63
63
|
},
|
|
@@ -68,7 +68,7 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
68
68
|
allowExtensionOperations: true,
|
|
69
69
|
//Need to be enabled at subscription level
|
|
70
70
|
//requireGuestProvisionSignal: true,
|
|
71
|
-
linuxConfiguration: osType ===
|
|
71
|
+
linuxConfiguration: osType === 'Linux'
|
|
72
72
|
? {
|
|
73
73
|
//ssh: { publicKeys: [{ keyData: linux.sshPublicKey! }] },
|
|
74
74
|
disablePasswordAuthentication: false,
|
|
@@ -84,7 +84,7 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
84
84
|
},
|
|
85
85
|
}
|
|
86
86
|
: undefined,
|
|
87
|
-
windowsConfiguration: osType ===
|
|
87
|
+
windowsConfiguration: osType === 'Windows'
|
|
88
88
|
? {
|
|
89
89
|
enableAutomaticUpdates: true,
|
|
90
90
|
provisionVMAgent: true,
|
|
@@ -100,15 +100,15 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
100
100
|
storageProfile: {
|
|
101
101
|
imageReference: {
|
|
102
102
|
...image,
|
|
103
|
-
version:
|
|
103
|
+
version: 'latest',
|
|
104
104
|
},
|
|
105
105
|
osDisk: {
|
|
106
106
|
name: `${name}osdisk`,
|
|
107
107
|
diskSizeGB: osDiskSizeGB,
|
|
108
|
-
caching:
|
|
109
|
-
createOption:
|
|
108
|
+
caching: 'ReadWrite',
|
|
109
|
+
createOption: 'FromImage',
|
|
110
110
|
osType,
|
|
111
|
-
encryptionSettings: enableEncryption
|
|
111
|
+
encryptionSettings: enableEncryption && vaultInfo
|
|
112
112
|
? {
|
|
113
113
|
diskEncryptionKey: diskEncryption
|
|
114
114
|
? {
|
|
@@ -156,9 +156,9 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
156
156
|
}, {
|
|
157
157
|
dependsOn,
|
|
158
158
|
ignoreChanges: [
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
159
|
+
'storageProfile.osDisk.managedDisk.storageAccountType',
|
|
160
|
+
'storageProfile.osDisk.managedDisk.id',
|
|
161
|
+
'osDisk.osType',
|
|
162
162
|
],
|
|
163
163
|
});
|
|
164
164
|
if (extensions) {
|
|
@@ -180,7 +180,7 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
180
180
|
time: schedule.autoShutdownTime,
|
|
181
181
|
timeZone: schedule.timeZone,
|
|
182
182
|
targetResourceId: vm.id,
|
|
183
|
-
task:
|
|
183
|
+
task: 'ComputeVmShutdownTask', //LabVmsShutdownTask,LabVmsStartupTask,LabVmReclamationTask,ComputeVmShutdownTask
|
|
184
184
|
dependsOn: vm,
|
|
185
185
|
});
|
|
186
186
|
}
|
|
@@ -198,4 +198,4 @@ exports.default = ({ name, group, subnetId, osType = "Windows", vmSize = "Standa
|
|
|
198
198
|
// }
|
|
199
199
|
return vm;
|
|
200
200
|
};
|
|
201
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
201
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVk0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHNFQUF3RDtBQUN4RCxzRUFBd0Q7QUFFeEQsNkNBQXlEO0FBQ3pELDREQUFvQztBQUNwQywrQ0FBNEQ7QUFDNUQsc0VBQThDO0FBQzlDLDREQUEwRDtBQTJDMUQsa0JBQWUsQ0FBQyxFQUNkLElBQUksRUFDSixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sR0FBRyxTQUFTLEVBQ2xCLE1BQU0sR0FBRyxjQUFjLEVBQ3ZCLFVBQVUsRUFDVixrQkFBa0IsR0FBRyxPQUFPLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUM1RCxZQUFZLEdBQUcsR0FBRyxFQUNsQixjQUFjLEVBQ2QsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxRQUFRLEdBQUcsRUFBRSxRQUFRLEVBQUUseUJBQXlCLEVBQUUsRUFDbEQsS0FBSyxFQUNMLEtBQUssRUFDTCxJQUFJLEdBQUcsSUFBSSxFQUNYLElBQUksR0FBRyxFQUFFLEVBQ1QsU0FBUyxFQUNULEdBQUcsTUFBTSxFQUNILEVBQUUsRUFBRTtJQUNWLE1BQU0sTUFBTSxHQUFHLElBQUEsa0JBQVMsRUFBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixNQUFNLE9BQU8sR0FBRyxJQUFBLG1CQUFVLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFFakMsTUFBTSxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFO1FBQ2hELG9CQUFvQixFQUFFLE9BQU87UUFDN0IsR0FBRyxLQUFLO1FBQ1IsZ0JBQWdCLEVBQUU7WUFDaEIsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFO1NBQzlEO1FBQ0QsT0FBTyxFQUFFLE9BQU8s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
|
package/VNet/Firewall.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as network from
|
|
2
|
-
import * as pulumi from
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import * as network from '@pulumi/azure-native/network';
|
|
2
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
3
|
+
import { Input } from '@pulumi/pulumi';
|
|
4
|
+
import { BasicMonitorArgs, BasicResourceArgs } from '../types';
|
|
5
|
+
import { FirewallPolicyProps } from './types';
|
|
6
6
|
export interface FwOutboundConfig {
|
|
7
7
|
subnetId: pulumi.Input<string>;
|
|
8
8
|
publicIpAddress?: network.PublicIPAddress;
|
|
@@ -11,7 +11,7 @@ export type FirewallSkus = {
|
|
|
11
11
|
name: network.AzureFirewallSkuName;
|
|
12
12
|
tier: network.AzureFirewallSkuTier;
|
|
13
13
|
};
|
|
14
|
-
export interface FirewallProps extends BasicResourceArgs
|
|
14
|
+
export interface FirewallProps extends BasicResourceArgs {
|
|
15
15
|
/** The public outbound IP address ignores this property if want to enable the Force Tunneling mode */
|
|
16
16
|
outbound: Array<FwOutboundConfig>;
|
|
17
17
|
/** This must be provided if sku is Basic or want to enable the Force Tunneling mode */
|
|
@@ -24,7 +24,7 @@ export interface FirewallProps extends BasicResourceArgs, Omit<DefaultResourceAr
|
|
|
24
24
|
policy: FirewallPolicyProps;
|
|
25
25
|
enableDnsProxy?: boolean;
|
|
26
26
|
sku?: FirewallSkus;
|
|
27
|
-
monitorConfig?: Omit<BasicMonitorArgs,
|
|
27
|
+
monitorConfig?: Omit<BasicMonitorArgs, 'dependsOn'>;
|
|
28
28
|
}
|
|
29
29
|
export type FirewallResult = {
|
|
30
30
|
firewall: network.AzureFirewall;
|
package/VNet/Firewall.js
CHANGED
|
@@ -28,7 +28,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
const network = __importStar(require("@pulumi/azure-native/network"));
|
|
30
30
|
const AzureEnv_1 = require("../Common/AzureEnv");
|
|
31
|
-
const
|
|
31
|
+
const Common_1 = require("../Common");
|
|
32
32
|
const ResourceCreator_1 = __importDefault(require("../Core/ResourceCreator"));
|
|
33
33
|
const FirewallPolicy_1 = __importStar(require("./FirewallPolicy"));
|
|
34
34
|
const IpAddress_1 = __importDefault(require("./IpAddress"));
|
|
@@ -40,11 +40,11 @@ exports.default = ({ name, group, snat, policy, outbound, management, monitorCon
|
|
|
40
40
|
// Validation
|
|
41
41
|
if (!StackEnv_1.isDryRun) {
|
|
42
42
|
if (!outbound && !management)
|
|
43
|
-
throw new Error(
|
|
43
|
+
throw new Error('Management Public Ip Address is required for the Force Tunneling mode.');
|
|
44
44
|
if (sku.tier === network.AzureFirewallSkuTier.Basic && !management)
|
|
45
|
-
throw new Error(
|
|
45
|
+
throw new Error('Management Subnet is required for Firewall Basic tier.');
|
|
46
46
|
}
|
|
47
|
-
const fwName = (0,
|
|
47
|
+
const fwName = (0, Common_1.getFirewallName)(name);
|
|
48
48
|
//Create Public IpAddress for Management
|
|
49
49
|
const manageIpAddress = management
|
|
50
50
|
? management.publicIpAddress ??
|
|
@@ -56,15 +56,15 @@ exports.default = ({ name, group, snat, policy, outbound, management, monitorCon
|
|
|
56
56
|
: undefined;
|
|
57
57
|
const additionalProperties = {};
|
|
58
58
|
if (enableDnsProxy && sku.tier !== network.AzureFirewallSkuTier.Basic) {
|
|
59
|
-
additionalProperties[
|
|
59
|
+
additionalProperties['Network.DNS.EnableProxy'] = 'Enabled';
|
|
60
60
|
}
|
|
61
61
|
if (snat) {
|
|
62
62
|
if (snat.privateRanges)
|
|
63
63
|
additionalProperties.privateRanges = snat.privateRanges;
|
|
64
64
|
if (snat.autoLearnPrivateRanges)
|
|
65
|
-
additionalProperties.autoLearnPrivateRanges =
|
|
65
|
+
additionalProperties.autoLearnPrivateRanges = 'Enabled';
|
|
66
66
|
if (snat.routeServerId)
|
|
67
|
-
additionalProperties[
|
|
67
|
+
additionalProperties['Network.RouteServerInfo.RouteServerID'] =
|
|
68
68
|
snat.routeServerId;
|
|
69
69
|
}
|
|
70
70
|
const fwPolicy = policy
|
|
@@ -73,7 +73,7 @@ exports.default = ({ name, group, snat, policy, outbound, management, monitorCon
|
|
|
73
73
|
group,
|
|
74
74
|
basePolicyId: policy.parentPolicyId,
|
|
75
75
|
sku: sku.tier,
|
|
76
|
-
dnsSettings: sku?.tier !==
|
|
76
|
+
dnsSettings: sku?.tier !== 'Basic'
|
|
77
77
|
? {
|
|
78
78
|
enableProxy: true,
|
|
79
79
|
}
|
|
@@ -85,13 +85,13 @@ exports.default = ({ name, group, snat, policy, outbound, management, monitorCon
|
|
|
85
85
|
...group,
|
|
86
86
|
sku,
|
|
87
87
|
firewallPolicy: fwPolicy ? { id: fwPolicy.id } : undefined,
|
|
88
|
-
zones: AzureEnv_1.isPrd ? [
|
|
89
|
-
threatIntelMode: sku.tier !== network.AzureFirewallSkuTier.Basic && sku.name !==
|
|
88
|
+
zones: AzureEnv_1.isPrd ? ['1', '2', '3'] : undefined,
|
|
89
|
+
threatIntelMode: sku.tier !== network.AzureFirewallSkuTier.Basic && sku.name !== 'AZFW_Hub'
|
|
90
90
|
? network.AzureFirewallThreatIntelMode.Deny
|
|
91
91
|
: undefined,
|
|
92
92
|
managementIpConfiguration: management && manageIpAddress
|
|
93
93
|
? {
|
|
94
|
-
name:
|
|
94
|
+
name: 'management',
|
|
95
95
|
publicIPAddress: { id: manageIpAddress.id },
|
|
96
96
|
subnet: { id: management.subnetId },
|
|
97
97
|
}
|
|
@@ -109,9 +109,9 @@ exports.default = ({ name, group, snat, policy, outbound, management, monitorCon
|
|
|
109
109
|
monitoring: {
|
|
110
110
|
...monitorConfig,
|
|
111
111
|
logsCategories: [
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
112
|
+
'AzureFirewallApplicationRule',
|
|
113
|
+
'AzureFirewallNetworkRule',
|
|
114
|
+
'AzureFirewallDnsProxy',
|
|
115
115
|
],
|
|
116
116
|
},
|
|
117
117
|
...others,
|
|
@@ -128,4 +128,4 @@ exports.default = ({ name, group, snat, policy, outbound, management, monitorCon
|
|
|
128
128
|
}
|
|
129
129
|
return { firewall: resource, policy: fwPolicy };
|
|
130
130
|
};
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmlyZXdhbGwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVk5ldC9GaXJld2FsbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0VBQXdEO0FBR3hELGlEQUEyQztBQUMzQyxzQ0FBNEM7QUFDNUMsOEVBQXNEO0FBRXRELG1FQUFxRTtBQUVyRSw0REFBb0M7QUFDcEMsaURBQThDO0FBbUM5QyxrQkFBZSxDQUFDLEVBQ2QsSUFBSSxFQUNKLEtBQUssRUFDTCxJQUFJLEVBQ0osTUFBTSxFQUNOLFFBQVEsRUFDUixVQUFVLEVBQ1YsYUFBYSxFQUNiLGNBQWMsRUFDZCxHQUFHLEdBQUc7SUFDSixJQUFJLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixDQUFDLFNBQVM7SUFDNUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLO0NBQ3pDLEVBQ0QsR0FBRyxNQUFNLEVBQ0ssRUFBa0IsRUFBRTtJQUNsQyxhQUFhO0lBQ2IsSUFBSSxDQUFDLG1CQUFRLEVBQUUsQ0FBQztRQUNkLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxVQUFVO1lBQzFCLE1BQU0sSUFBSSxLQUFLLENBQ2Isd0VBQXdFLENBQ3pFLENBQUM7UUFFSixJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLG9CQUFvQixDQUFDLEtBQUssSUFBSSxDQUFDLFVBQVU7WUFDaEUsTUFBTSxJQUFJLEtBQUssQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFBLHdCQUFlLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFFckMsd0NBQXdDO0lBQ3hDLE1BQU0sZUFBZSxHQUFHLFVBQVU7UUFDaEMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxlQUFlO1lBQzFCLElBQUEsbUJBQVMsRUFBQztnQkFDUixJQUFJLEVBQUUsR0FBRyxJQUFJLE1BQU07Z0JBQ25CLEtBQUs7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
|
package/VNet/FirewallPolicy.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { enums, input as inputs } from
|
|
2
|
-
import { Input, Resource } from
|
|
3
|
-
import { BasicResourceArgs,
|
|
4
|
-
import { FirewallPolicyResults, FirewallPolicyRuleCollectionResults } from
|
|
1
|
+
import { enums, input as inputs } from '@pulumi/azure-native/types';
|
|
2
|
+
import { Input, Resource } from '@pulumi/pulumi';
|
|
3
|
+
import { BasicResourceArgs, ResourceGroupInfo } from '../types';
|
|
4
|
+
import { FirewallPolicyResults, FirewallPolicyRuleCollectionResults } from './types';
|
|
5
5
|
interface PolicyRulesProps {
|
|
6
6
|
group: ResourceGroupInfo;
|
|
7
7
|
firewallPolicyName: Input<string>;
|
|
@@ -9,7 +9,7 @@ interface PolicyRulesProps {
|
|
|
9
9
|
dependsOn?: Input<Input<Resource>[]> | Input<Resource>;
|
|
10
10
|
}
|
|
11
11
|
export declare const linkRulesToPolicy: ({ firewallPolicyName, group, rules, dependsOn, }: PolicyRulesProps) => import("@pulumi/azure-native/network/firewallPolicyRuleCollectionGroup").FirewallPolicyRuleCollectionGroup[];
|
|
12
|
-
interface Props extends BasicResourceArgs, Omit<
|
|
12
|
+
interface Props extends BasicResourceArgs, Omit<PolicyRulesProps, 'firewallPolicyName' | 'rules'> {
|
|
13
13
|
basePolicyId?: Input<string>;
|
|
14
14
|
dnsSettings?: Input<inputs.network.DnsSettingsArgs>;
|
|
15
15
|
transportSecurityCA?: inputs.network.FirewallPolicyCertificateAuthorityArgs;
|
package/VNet/FirewallPolicy.js
CHANGED
|
@@ -26,7 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
exports.FirewallPolicyGroup = exports.linkRulesToPolicy = void 0;
|
|
27
27
|
const network = __importStar(require("@pulumi/azure-native/network"));
|
|
28
28
|
const types_1 = require("@pulumi/azure-native/types");
|
|
29
|
-
const
|
|
29
|
+
const Common_1 = require("../Common");
|
|
30
30
|
const linkRulesToPolicy = ({ firewallPolicyName, group, rules, dependsOn, }) => rules
|
|
31
31
|
.sort((a, b) => a.priority - b.priority)
|
|
32
32
|
.map((p) => {
|
|
@@ -50,7 +50,7 @@ const FirewallPolicyGroup = ({ policy, priority, action = types_1.enums.network.
|
|
|
50
50
|
action: {
|
|
51
51
|
type: types_1.enums.network.FirewallPolicyNatRuleCollectionActionType.DNAT,
|
|
52
52
|
},
|
|
53
|
-
ruleCollectionType:
|
|
53
|
+
ruleCollectionType: 'FirewallPolicyNatRuleCollection',
|
|
54
54
|
rules: policy.dnatRules,
|
|
55
55
|
});
|
|
56
56
|
}
|
|
@@ -62,7 +62,7 @@ const FirewallPolicyGroup = ({ policy, priority, action = types_1.enums.network.
|
|
|
62
62
|
action: {
|
|
63
63
|
type: action,
|
|
64
64
|
},
|
|
65
|
-
ruleCollectionType:
|
|
65
|
+
ruleCollectionType: 'FirewallPolicyFilterRuleCollection',
|
|
66
66
|
rules: policy.netRules,
|
|
67
67
|
});
|
|
68
68
|
}
|
|
@@ -74,7 +74,7 @@ const FirewallPolicyGroup = ({ policy, priority, action = types_1.enums.network.
|
|
|
74
74
|
action: {
|
|
75
75
|
type: action,
|
|
76
76
|
},
|
|
77
|
-
ruleCollectionType:
|
|
77
|
+
ruleCollectionType: 'FirewallPolicyFilterRuleCollection',
|
|
78
78
|
rules: policy.appRules,
|
|
79
79
|
});
|
|
80
80
|
}
|
|
@@ -86,7 +86,7 @@ const FirewallPolicyGroup = ({ policy, priority, action = types_1.enums.network.
|
|
|
86
86
|
};
|
|
87
87
|
exports.FirewallPolicyGroup = FirewallPolicyGroup;
|
|
88
88
|
exports.default = ({ name, group, basePolicyId, dnsSettings, transportSecurityCA, insights, sku = types_1.enums.network.FirewallPolicySkuTier.Basic, dependsOn, }) => {
|
|
89
|
-
name = (0,
|
|
89
|
+
name = (0, Common_1.getFirewallPolicyName)(name);
|
|
90
90
|
return new network.FirewallPolicy(name, {
|
|
91
91
|
firewallPolicyName: name,
|
|
92
92
|
...group,
|
|
@@ -95,8 +95,8 @@ exports.default = ({ name, group, basePolicyId, dnsSettings, transportSecurityCA
|
|
|
95
95
|
dnsSettings,
|
|
96
96
|
snat: {
|
|
97
97
|
//Auto learn need a Route Server
|
|
98
|
-
autoLearnPrivateRanges:
|
|
99
|
-
privateRanges: [
|
|
98
|
+
autoLearnPrivateRanges: 'Enabled',
|
|
99
|
+
privateRanges: ['IANAPrivateRanges'],
|
|
100
100
|
},
|
|
101
101
|
sql: {
|
|
102
102
|
allowSqlRedirect: true,
|
|
@@ -121,4 +121,4 @@ exports.default = ({ name, group, basePolicyId, dnsSettings, transportSecurityCA
|
|
|
121
121
|
: undefined,
|
|
122
122
|
}, { dependsOn });
|
|
123
123
|
};
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmlyZXdhbGxQb2xpY3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVk5ldC9GaXJld2FsbFBvbGljeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNFQUF3RDtBQUN4RCxzREFBb0U7QUFHcEUsc0NBQWtEO0FBYTNDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxFQUNoQyxrQkFBa0IsRUFDbEIsS0FBSyxFQUNMLEtBQUssRUFDTCxTQUFTLEdBQ1EsRUFBRSxFQUFFLENBQ3JCLEtBQUs7S0FDRixJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUM7S0FDdkMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDVCxNQUFNLEVBQUUsR0FBRyxJQUFJLE9BQU8sQ0FBQyxpQ0FBaUMsQ0FDdEQsQ0FBQyxDQUFDLElBQUksRUFDTjtRQUNFLEdBQUcsS0FBSztRQUNSLEdBQUcsQ0FBQztRQUNKLGtCQUFrQjtLQUNuQixFQUNELEVBQUUsU0FBUyxFQUFFLENBQ2QsQ0FBQztJQUNGLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDZixPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUMsQ0FBQyxDQUFDO0FBcEJNLFFBQUEsaUJBQWlCLHFCQW9CdkI7QUFvQkEsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLEVBQ2xDLE1BQU0sRUFDTixRQUFRLEVBQ1IsTUFBTSxHQUFHLGFBQUssQ0FBQyxPQUFPLENBQUMsNENBQTRDLENBQUMsS0FBSyxHQUsxRSxFQUF1QyxFQUFFO0lBQ3hDLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxLQUFLLEVBS2hDLENBQUM7SUFFSixhQUFhO0lBQ2IsSUFBSSxNQUFNLEdBQUcsUUFBUSxHQUFHLENBQUMsQ0FBQztJQUMxQixJQUFJLE1BQU0sQ0FBQyxTQUFTLElBQUksTUFBTSxD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
|
package/VNet/Helper.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as network from
|
|
2
|
-
import { Input, Output } from
|
|
3
|
-
import * as netmask from
|
|
4
|
-
import { ResourceGroupInfo } from
|
|
5
|
-
import { VnetInfoType } from
|
|
1
|
+
import * as network from '@pulumi/azure-native/network';
|
|
2
|
+
import { Input, Output } from '@pulumi/pulumi';
|
|
3
|
+
import * as netmask from 'netmask';
|
|
4
|
+
import { ResourceGroupInfo } from '../types';
|
|
5
|
+
import { VnetInfoType } from './types';
|
|
6
6
|
export declare const appGatewaySubnetName = "app-gateway";
|
|
7
7
|
export declare const gatewaySubnetName = "GatewaySubnet";
|
|
8
8
|
export declare const azFirewallSubnet = "AzureFirewallSubnet";
|
package/VNet/Helper.js
CHANGED
|
@@ -28,17 +28,17 @@ const network = __importStar(require("@pulumi/azure-native/network"));
|
|
|
28
28
|
const pulumi_1 = require("@pulumi/pulumi");
|
|
29
29
|
const netmask = __importStar(require("netmask"));
|
|
30
30
|
const AzureEnv_1 = require("../Common/AzureEnv");
|
|
31
|
-
const
|
|
32
|
-
exports.appGatewaySubnetName =
|
|
33
|
-
exports.gatewaySubnetName =
|
|
34
|
-
exports.azFirewallSubnet =
|
|
35
|
-
exports.azFirewallManagementSubnet =
|
|
36
|
-
exports.azBastionSubnetName =
|
|
31
|
+
const Common_1 = require("../Common");
|
|
32
|
+
exports.appGatewaySubnetName = 'app-gateway';
|
|
33
|
+
exports.gatewaySubnetName = 'GatewaySubnet';
|
|
34
|
+
exports.azFirewallSubnet = 'AzureFirewallSubnet';
|
|
35
|
+
exports.azFirewallManagementSubnet = 'AzureFirewallManagementSubnet';
|
|
36
|
+
exports.azBastionSubnetName = 'AzureBastionSubnet';
|
|
37
37
|
const getIpsRange = (prefix) => new netmask.Netmask(prefix);
|
|
38
38
|
exports.getIpsRange = getIpsRange;
|
|
39
39
|
/** Convert IP address and IP address group into range */
|
|
40
40
|
const convertToIpRange = (ipAddress) => ipAddress.map((ip) => {
|
|
41
|
-
if (ip.includes(
|
|
41
|
+
if (ip.includes('/')) {
|
|
42
42
|
const range = (0, exports.getIpsRange)(ip);
|
|
43
43
|
return { start: range.base, end: range.broadcast };
|
|
44
44
|
}
|
|
@@ -47,25 +47,25 @@ const convertToIpRange = (ipAddress) => ipAddress.map((ip) => {
|
|
|
47
47
|
exports.convertToIpRange = convertToIpRange;
|
|
48
48
|
const getVnetIdFromSubnetId = (subnetId) => {
|
|
49
49
|
//The sample SubnetId is /subscriptions/63a31b41-eb5d-4160-9fc9-d30fc00286c9/resourceGroups/sg-dev-aks-vnet/providers/Microsoft.Network/virtualNetworks/sg-vnet-trans/subnets/aks-main-nodes
|
|
50
|
-
return subnetId.split(
|
|
50
|
+
return subnetId.split('/subnets')[0];
|
|
51
51
|
};
|
|
52
52
|
exports.getVnetIdFromSubnetId = getVnetIdFromSubnetId;
|
|
53
53
|
/**Get Subnet Id from Naming rules*/
|
|
54
54
|
const getSubnetIdByName = ({ subnetName, vnetAndGroupName, }) => {
|
|
55
|
-
const vnetName = (0,
|
|
56
|
-
const group = (0,
|
|
55
|
+
const vnetName = (0, Common_1.getVnetName)(vnetAndGroupName);
|
|
56
|
+
const group = (0, Common_1.getResourceGroupName)(vnetAndGroupName);
|
|
57
57
|
return (0, pulumi_1.interpolate) `/subscriptions/${AzureEnv_1.subscriptionId}/resourceGroups/${group}/providers/Microsoft.Network/virtualNetworks/${vnetName}/subnets/${subnetName}`;
|
|
58
58
|
};
|
|
59
59
|
exports.getSubnetIdByName = getSubnetIdByName;
|
|
60
60
|
const getIpAddressId = ({ name, groupName, }) => {
|
|
61
|
-
const n = (0,
|
|
62
|
-
const group = (0,
|
|
61
|
+
const n = (0, Common_1.getIpAddressName)(name);
|
|
62
|
+
const group = (0, Common_1.getResourceGroupName)(groupName);
|
|
63
63
|
return (0, pulumi_1.interpolate) `/subscriptions/${AzureEnv_1.subscriptionId}/resourceGroups/${group}/providers/Microsoft.Network/publicIPAddresses/${n}`;
|
|
64
64
|
};
|
|
65
65
|
exports.getIpAddressId = getIpAddressId;
|
|
66
66
|
const getIpAddressResource = ({ name, groupName, }) => {
|
|
67
|
-
const n = (0,
|
|
68
|
-
const group = (0,
|
|
67
|
+
const n = (0, Common_1.getIpAddressName)(name);
|
|
68
|
+
const group = (0, Common_1.getResourceGroupName)(groupName);
|
|
69
69
|
return network.getPublicIPAddress({
|
|
70
70
|
publicIpAddressName: n,
|
|
71
71
|
resourceGroupName: group,
|
|
@@ -73,8 +73,8 @@ const getIpAddressResource = ({ name, groupName, }) => {
|
|
|
73
73
|
};
|
|
74
74
|
exports.getIpAddressResource = getIpAddressResource;
|
|
75
75
|
const getVnetInfo = (groupName, region = AzureEnv_1.currentCountryCode) => {
|
|
76
|
-
const vnetName = (0,
|
|
77
|
-
const rsName = (0,
|
|
76
|
+
const vnetName = (0, Common_1.getVnetName)(groupName, { region });
|
|
77
|
+
const rsName = (0, Common_1.getResourceGroupName)(groupName, { region });
|
|
78
78
|
return {
|
|
79
79
|
vnetName,
|
|
80
80
|
resourceGroupName: rsName,
|
|
@@ -105,9 +105,9 @@ const getFirewallIpAddress = (name, group) => {
|
|
|
105
105
|
};
|
|
106
106
|
exports.getFirewallIpAddress = getFirewallIpAddress;
|
|
107
107
|
const getFirewallIpAddressByGroupName = (groupName) => {
|
|
108
|
-
const fireWallName = (0,
|
|
109
|
-
const rsName = (0,
|
|
108
|
+
const fireWallName = (0, Common_1.getFirewallName)(groupName);
|
|
109
|
+
const rsName = (0, Common_1.getResourceGroupName)(groupName);
|
|
110
110
|
return (0, exports.getFirewallIpAddress)(fireWallName, { resourceGroupName: rsName });
|
|
111
111
|
};
|
|
112
112
|
exports.getFirewallIpAddressByGroupName = getFirewallIpAddressByGroupName;
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1ZOZXQvSGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0VBQXdEO0FBQ3hELDJDQUFvRTtBQUNwRSxpREFBbUM7QUFDbkMsaURBSTRCO0FBQzVCLHNDQUttQjtBQUlOLFFBQUEsb0JBQW9CLEdBQUcsYUFBYSxDQUFDO0FBQ3JDLFFBQUEsaUJBQWlCLEdBQUcsZUFBZSxDQUFDO0FBQ3BDLFFBQUEsZ0JBQWdCLEdBQUcscUJBQXFCLENBQUM7QUFDekMsUUFBQSwwQkFBMEIsR0FBRywrQkFBK0IsQ0FBQztBQUM3RCxRQUFBLG1CQUFtQixHQUFHLG9CQUFvQixDQUFDO0FBRWpELE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBYyxFQUFFLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7QUFBOUQsUUFBQSxXQUFXLGVBQW1EO0FBRTNFLHlEQUF5RDtBQUNsRCxNQUFNLGdCQUFnQixHQUFHLENBQzlCLFNBQW1CLEVBQ29CLEVBQUUsQ0FDekMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFO0lBQ25CLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3JCLE1BQU0sS0FBSyxHQUFHLElBQUEsbUJBQVcsRUFBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0lBQ0QsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxDQUFDO0FBQ2hDLENBQUMsQ0FBQyxDQUFDO0FBVFEsUUFBQSxnQkFBZ0Isb0JBU3hCO0FBRUUsTUFBTSxxQkFBcUIs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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BasicArgs, PrivateLinkPropsType, ResourceInfo } from
|
|
2
|
-
export type PrivateEndpointProps = Pick<PrivateLinkPropsType,
|
|
1
|
+
import { BasicArgs, PrivateLinkPropsType, ResourceInfo } from '../types';
|
|
2
|
+
export type PrivateEndpointProps = Pick<PrivateLinkPropsType, 'subnetIds'> & Pick<BasicArgs, 'dependsOn'> & {
|
|
3
3
|
resourceInfo: ResourceInfo;
|
|
4
4
|
/** check the private link DNS Zone here https://learn.microsoft.com/en-us/azure/private-link/private-endpoint-dns */
|
|
5
5
|
privateDnsZoneName: string;
|
package/VNet/PrivateEndpoint.js
CHANGED
|
@@ -26,10 +26,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
26
26
|
const network = __importStar(require("@pulumi/azure-native/network"));
|
|
27
27
|
const pulumi_1 = require("@pulumi/pulumi");
|
|
28
28
|
const AzureEnv_1 = require("../Common/AzureEnv");
|
|
29
|
-
const
|
|
29
|
+
const Common_1 = require("../Common");
|
|
30
30
|
const Builder_1 = require("../Builder");
|
|
31
31
|
exports.default = ({ resourceInfo, subnetIds, privateDnsZoneName, linkServiceGroupIds, dependsOn, }) => {
|
|
32
|
-
const name = (0,
|
|
32
|
+
const name = (0, Common_1.getPrivateEndpointName)(resourceInfo.name);
|
|
33
33
|
const endpoints = subnetIds.map((s, index) => new network.PrivateEndpoint(`${name}-${index}`, {
|
|
34
34
|
privateEndpointName: `${name}-${index}`,
|
|
35
35
|
...resourceInfo.group,
|
|
@@ -51,10 +51,10 @@ exports.default = ({ resourceInfo, subnetIds, privateDnsZoneName, linkServiceGro
|
|
|
51
51
|
group: resourceInfo.group,
|
|
52
52
|
dependsOn,
|
|
53
53
|
})
|
|
54
|
-
.withARecord({ ipAddresses: ip, recordName:
|
|
54
|
+
.withARecord({ ipAddresses: ip, recordName: '@' })
|
|
55
55
|
.linkTo({ subnetIds, registrationEnabled: false })
|
|
56
56
|
.build();
|
|
57
57
|
});
|
|
58
58
|
return endpoints;
|
|
59
59
|
};
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJpdmF0ZUVuZHBvaW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1ZOZXQvUHJpdmF0ZUVuZHBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzRUFBd0Q7QUFDeEQsMkNBQXdDO0FBRXhDLGlEQUE2RDtBQUM3RCxzQ0FBbUQ7QUFDbkQsd0NBQW1EO0FBVW5ELGtCQUFlLENBQUMsRUFDZCxZQUFZLEVBQ1osU0FBUyxFQUNULGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsU0FBUyxHQUNZLEVBQUUsRUFBRTtJQUN6QixNQUFNLElBQUksR0FBRyxJQUFBLCtCQUFzQixFQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV2RCxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUM3QixDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUNYLElBQUksT0FBTyxDQUFDLGVBQWUsQ0FDekIsR0FBRyxJQUFJLElBQUksS0FBSyxFQUFFLEVBQ2xCO1FBQ0UsbUJBQW1CLEVBQUUsR0FBRyxJQUFJLElBQUksS0FBSyxFQUFFO1FBQ3ZDLEdBQUcsWUFBWSxDQUFDLEtBQUs7UUFDckIsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRTtRQUNqQiw2QkFBNkIsRUFBRTtZQUM3QjtnQkFDRSxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixJQUFJLEVBQUUsR0FBRyxJQUFJLE9BQU87Z0JBQ3BCLG9CQUFvQixFQUFFLFlBQVksQ0FBQyxFQUFFO2FBQ3RDO1NBQ0Y7S0FDRixFQUNELEVBQUUsU0FBUyxFQUFFLENBQ2QsQ0FDSixDQUFDO0lBRUYsa0JBQWtCO0lBQ2xCLE1BQU0sV0FBVyxHQUFHLElBQUEsZUFBTSxFQUN4QixTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDbEIsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVksQ0FBQyxDQUFDLENBQ25FLENBQ0YsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUM7SUFFckMsSUFBQSxlQUFNLEVBQUMsQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUN4RCxNQUFNLFlBQVksR0FBRyxJQUFBLGtDQUF1QixFQUFDLEVBQVksQ0FBQyxDQUFDO1FBQzNELE9BQU8sSUFBQSwrQkFBcUIsRUFBQztZQUMzQixJQUFJLEVBQUUsR0FBRyxZQUFhLENBQUMsSUFBSSxJQUFJLGtCQUFrQixFQUFFO1lBQ25ELEtBQUssRUFBRSxZQUFhLENBQUMsS0FBSztZQUMxQixTQUFTO1NBQ1YsQ0FBQzthQUNDLFdBQVcsQ0FBQyxFQUFFLFdBQVcsRUFBRSxFQUFjLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDO2FBQzdELE1BQU0sQ0FBQyxFQUFFLFNBQVMsRUFBRSxtQkFBbUIsRUFBRSxLQUFLLEVBQUUsQ0FBQzthQUNqRCxLQUFLLEVBQUUsQ0FBQztJQUNiLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyxDQUFDIn0=
|
package/VNet/VirtualWAN.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BasicResourceArgs
|
|
2
|
-
import * as network from
|
|
3
|
-
import { Input } from
|
|
4
|
-
import { input as inputs } from
|
|
5
|
-
import { FirewallPolicyProps } from
|
|
6
|
-
interface Props extends BasicResourceArgs
|
|
1
|
+
import { BasicResourceArgs } from '../types';
|
|
2
|
+
import * as network from '@pulumi/azure-native/network';
|
|
3
|
+
import { Input } from '@pulumi/pulumi';
|
|
4
|
+
import { input as inputs } from '@pulumi/azure-native/types';
|
|
5
|
+
import { FirewallPolicyProps } from './types';
|
|
6
|
+
interface Props extends BasicResourceArgs {
|
|
7
7
|
/** The hub Address space */
|
|
8
8
|
hubAddressPrefix: Input<string>;
|
|
9
9
|
hubRoutes?: Input<Input<inputs.network.VirtualHubRouteTableV2Args>[]>;
|
package/VNet/VirtualWAN.js
CHANGED
|
@@ -27,17 +27,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
const network = __importStar(require("@pulumi/azure-native/network"));
|
|
30
|
-
const
|
|
30
|
+
const Common_1 = require("../Common");
|
|
31
31
|
const Firewall_1 = __importDefault(require("./Firewall"));
|
|
32
32
|
exports.default = ({ name, group, hubAddressPrefix, hubRoutes, firewall, }) => {
|
|
33
|
-
const wanName = (0,
|
|
34
|
-
const hubName = (0,
|
|
33
|
+
const wanName = (0, Common_1.getWanName)(name);
|
|
34
|
+
const hubName = (0, Common_1.getHubName)(name);
|
|
35
35
|
const wan = new network.VirtualWan(wanName, {
|
|
36
36
|
...group,
|
|
37
37
|
virtualWANName: wanName,
|
|
38
38
|
allowVnetToVnetTraffic: true,
|
|
39
39
|
allowBranchToBranchTraffic: false,
|
|
40
|
-
type:
|
|
40
|
+
type: 'Standard',
|
|
41
41
|
});
|
|
42
42
|
const azFirewall = firewall?.create
|
|
43
43
|
? (0, Firewall_1.default)({
|
|
@@ -63,4 +63,4 @@ exports.default = ({ name, group, hubAddressPrefix, hubRoutes, firewall, }) => {
|
|
|
63
63
|
}, { dependsOn: azFirewall ? [azFirewall.firewall, wan] : wan });
|
|
64
64
|
return { wan, hub, firewall: azFirewall };
|
|
65
65
|
};
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlydHVhbFdBTi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9WTmV0L1ZpcnR1YWxXQU4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUNBLHNFQUF3RDtBQUN4RCxzQ0FBbUQ7QUFHbkQsMERBQWtDO0FBZWxDLGtCQUFlLENBQUMsRUFDZCxJQUFJLEVBQ0osS0FBSyxFQUNMLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsUUFBUSxHQUNGLEVBQUUsRUFBRTtJQUNWLE1BQU0sT0FBTyxHQUFHLElBQUEsbUJBQVUsRUFBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxNQUFNLE9BQU8sR0FBRyxJQUFBLG1CQUFVLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFFakMsTUFBTSxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRTtRQUMxQyxHQUFHLEtBQUs7UUFDUixjQUFjLEVBQUUsT0FBTztRQUN2QixzQkFBc0IsRUFBRSxJQUFJO1FBQzVCLDBCQUEwQixFQUFFLEtBQUs7UUFDakMsSUFBSSxFQUFFLFVBQVU7S0FDakIsQ0FBQyxDQUFDO0lBRUgsTUFBTSxVQUFVLEdBQUcsUUFBUSxFQUFFLE1BQU07UUFDakMsQ0FBQyxDQUFDLElBQUEsa0JBQVEsRUFBQztZQUNQLElBQUk7WUFDSixLQUFLO1lBQ0wsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNO1lBQ3ZCLFFBQVEsRUFBRTtnQkFDUjtvQkFDRSxRQUFRLEVBQUUsUUFBUSxDQUFDLFFBQVE7b0JBQzNCLGVBQWUsRUFBRSxRQUFRLENBQUMsZUFBZTtpQkFDMUM7YUFDRjtTQUNGLENBQUM7UUFDSixDQUFDLENBQUMsU0FBUyxDQUFDO0lBRWQsTUFBTSxHQUFHLEdBQUcsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUNoQyxPQUFPLEVBQ1A7UUFDRSxHQUFHLEtBQUs7UUFDUixjQUFjLEVBQUUsT0FBTztRQUN2QiwwQkFBMEIsRUFBRSxLQUFLO1FBQ2pDLFVBQVUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFO1FBRTFCLGFBQWEsRUFBRSxnQkFBZ0I7UUFDL0IsdUJBQXVCLEVBQUUsU0FBUztRQUNsQyxhQUFhLEVBQUUsVUFBVSxJQUFJLEVBQUUsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFO0tBQzVELEVBQ0QsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUM3RCxDQUFDO0lBRUYsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxDQUFDO0FBQzVDLENBQUMsQ0FBQyJ9
|
package/VNet/Vnet.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as network from
|
|
2
|
-
import * as pulumi from
|
|
3
|
-
import { output as outputs } from
|
|
4
|
-
import { BasicResourceArgs, ResourceInfo } from
|
|
5
|
-
import {
|
|
6
|
-
import { SubnetProps } from
|
|
7
|
-
export type DelegateServices =
|
|
1
|
+
import * as network from '@pulumi/azure-native/network';
|
|
2
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
3
|
+
import { output as outputs } from '@pulumi/azure-native/types';
|
|
4
|
+
import { BasicResourceArgs, ResourceInfo } from '../types';
|
|
5
|
+
import { CustomSecurityRuleArgs, RouteArgs } from './types';
|
|
6
|
+
import { SubnetProps } from './Subnet';
|
|
7
|
+
export type DelegateServices = 'Microsoft.ContainerInstance/containerGroups' | 'Microsoft.Web/serverFarms';
|
|
8
8
|
export interface VnetProps extends BasicResourceArgs {
|
|
9
9
|
ddosId?: pulumi.Input<string>;
|
|
10
10
|
/** the prefix space of vnet: ex [192.168.0.0/16]. If not provided it will collect from subnet */
|
|
@@ -25,7 +25,7 @@ export interface VnetProps extends BasicResourceArgs {
|
|
|
25
25
|
};
|
|
26
26
|
appGatewaySubnet?: {
|
|
27
27
|
addressPrefix: string;
|
|
28
|
-
version:
|
|
28
|
+
version: 'v1' | 'v2';
|
|
29
29
|
};
|
|
30
30
|
gatewaySubnet?: {
|
|
31
31
|
addressPrefix: string;
|