@drunk-pulumi/azure 0.0.48 → 0.0.50
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 +2 -2
- package/Aks/Helper.js +5 -5
- package/Aks/Identity.d.ts +2 -2
- package/Aks/Identity.js +5 -5
- package/Aks/index.d.ts +13 -13
- package/Aks/index.js +99 -89
- package/Apim/Helpers.d.ts +1 -1
- package/Apim/Helpers.js +2 -2
- package/AzAd/Identity.d.ts +7 -7
- package/AzAd/Identity.js +49 -43
- package/Builder/AksBuilder.d.ts +1 -1
- package/Builder/AksBuilder.js +7 -3
- 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.d.ts +1 -1
- package/Builder/ResourceBuilder.js +33 -9
- 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/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/askBuilder.d.ts +6 -6
- package/Builder/types/genericBuilder.d.ts +7 -6
- package/Builder/types/genericBuilder.js +1 -1
- package/Builder/types/resourceBuilder.d.ts +8 -8
- 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.d.ts +1 -3
- package/Common/GlobalEnv.js +5 -11
- package/Common/ResourceEnv.d.ts +1 -2
- package/Common/ResourceEnv.js +15 -15
- package/ContainerRegistry/index.d.ts +5 -15
- package/ContainerRegistry/index.js +25 -34
- package/Core/{KeyGenetators.js → KeyGenerators.js} +1 -1
- package/Core/ResourceGroup.d.ts +4 -4
- package/Core/ResourceGroup.js +3 -3
- 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 +10 -10
- package/ServiceBus/index.js +17 -17
- package/SignalR/index.d.ts +5 -5
- package/SignalR/index.js +18 -18
- package/Sql/index.d.ts +8 -8
- package/Sql/index.js +37 -35
- 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/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/Vnet.d.ts +8 -8
- package/VNet/Vnet.js +13 -13
- package/VNet/index.d.ts +1 -1
- package/Web/AppConfig.d.ts +2 -2
- package/Web/AppConfig.js +8 -8
- package/package.json +7 -7
- package/types.d.ts +29 -22
- package/config.d.ts +0 -9
- package/config.js +0 -7
- /package/Core/{KeyGenetators.d.ts → KeyGenerators.d.ts} +0 -0
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/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/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;
|
package/VNet/Vnet.js
CHANGED
|
@@ -28,13 +28,13 @@ 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 Helper_1 = require("./Helper");
|
|
31
|
-
const
|
|
31
|
+
const Common_1 = require("../Common");
|
|
32
32
|
const Subnet_1 = __importDefault(require("./Subnet"));
|
|
33
33
|
const SecurityGroup_1 = __importDefault(require("./SecurityGroup"));
|
|
34
34
|
const RouteTable_1 = __importDefault(require("./RouteTable"));
|
|
35
35
|
const AppGatewaySecurityRule_1 = __importDefault(require("./NSGRules/AppGatewaySecurityRule"));
|
|
36
36
|
exports.default = ({ name, group, ddosId, addressSpaces, subnets = [], natGateway, dnsServers, features = {}, dependsOn, }) => {
|
|
37
|
-
const vName = (0,
|
|
37
|
+
const vName = (0, Common_1.getVnetName)(name);
|
|
38
38
|
const securityRules = features.securityGroup?.rules || [];
|
|
39
39
|
//AppGateway
|
|
40
40
|
if (features.appGatewaySubnet) {
|
|
@@ -94,14 +94,14 @@ exports.default = ({ name, group, ddosId, addressSpaces, subnets = [], natGatewa
|
|
|
94
94
|
//Allow outbound internet
|
|
95
95
|
if (!features.securityGroup.allowOutboundInternetAccess) {
|
|
96
96
|
securityRules.push({
|
|
97
|
-
name:
|
|
98
|
-
sourceAddressPrefix:
|
|
99
|
-
sourcePortRange:
|
|
100
|
-
destinationAddressPrefix:
|
|
101
|
-
destinationPortRange:
|
|
102
|
-
protocol:
|
|
103
|
-
access:
|
|
104
|
-
direction:
|
|
97
|
+
name: 'DefaultDeniedInternetOutbound',
|
|
98
|
+
sourceAddressPrefix: '*',
|
|
99
|
+
sourcePortRange: '*',
|
|
100
|
+
destinationAddressPrefix: 'Internet',
|
|
101
|
+
destinationPortRange: '*',
|
|
102
|
+
protocol: '*',
|
|
103
|
+
access: 'Deny',
|
|
104
|
+
direction: 'Outbound',
|
|
105
105
|
priority: 4096, //The last rule in the list;
|
|
106
106
|
});
|
|
107
107
|
}
|
|
@@ -139,11 +139,11 @@ exports.default = ({ name, group, ddosId, addressSpaces, subnets = [], natGatewa
|
|
|
139
139
|
})),
|
|
140
140
|
enableDdosProtection: ddosId !== undefined,
|
|
141
141
|
ddosProtectionPlan: ddosId ? { id: ddosId } : undefined,
|
|
142
|
-
}, { dependsOn, ignoreChanges: [
|
|
142
|
+
}, { dependsOn, ignoreChanges: ['virtualNetworkPeerings'] });
|
|
143
143
|
const findSubnet = (name) => vnet.subnets.apply((ss) => ss.find((s) => s.name === name));
|
|
144
144
|
//Return the results
|
|
145
145
|
return {
|
|
146
|
-
|
|
146
|
+
name: vName,
|
|
147
147
|
group,
|
|
148
148
|
id: vnet.id,
|
|
149
149
|
vnet,
|
|
@@ -157,4 +157,4 @@ exports.default = ({ name, group, ddosId, addressSpaces, subnets = [], natGatewa
|
|
|
157
157
|
bastionSubnet: findSubnet(Helper_1.azBastionSubnetName),
|
|
158
158
|
};
|
|
159
159
|
};
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVm5ldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9WTmV0L1ZuZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNFQUF3RDtBQUt4RCxxQ0FNa0I7QUFDbEIsc0NBQXdDO0FBQ3hDLHNEQUFxRDtBQUNyRCxvRUFBNEM7QUFDNUMsOERBQXNDO0FBQ3RDLCtGQUF1RTtBQXdFdkUsa0JBQWUsQ0FBQyxFQUNkLElBQUksRUFDSixLQUFLLEVBQ0wsTUFBTSxFQUNOLGFBQWEsRUFDYixPQUFPLEdBQUcsRUFBRSxFQUNaLFVBQVUsRUFDVixVQUFVLEVBQ1YsUUFBUSxHQUFHLEVBQUUsRUFDYixTQUFTLEdBQ0MsRUFBYyxFQUFFO0lBQzFCLE1BQU0sS0FBSyxHQUFHLElBQUEsb0JBQVcsRUFBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsYUFBYSxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7SUFFMUQsWUFBWTtJQUNaLElBQUksUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQztZQUNYLElBQUksRUFBRSw2QkFBb0I7WUFDMUIsYUFBYSxFQUFFLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhO1lBQ3RELHVCQUF1QixFQUFFLEtBQUs7WUFDOUIsbUJBQW1CLEVBQUUsS0FBSztZQUMxQixnQkFBZ0IsRUFBRSxLQUFLO1NBQ3hCLENBQUMsQ0FBQztRQUVILDRFQUE0RTtRQUM1RSxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSxnQ0FBc0IsRUFBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRCxnQkFBZ0I7SUFDaEIsSUFBSSxRQUFRLEVBQUUsYUFBYSxFQUFFLENBQUM7UUFDNUIsT0FBTyxDQUFDLElBQUksQ0FBQztZQUNYLElBQUksRUFBRSwwQkFB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
|
package/VNet/index.d.ts
CHANGED
|
@@ -50,7 +50,7 @@ declare const _default: ({ group, name, ddosId, addressSpace, publicIpAddress, s
|
|
|
50
50
|
firewall: network.AzureFirewall;
|
|
51
51
|
policy: network.FirewallPolicy | undefined;
|
|
52
52
|
} | undefined;
|
|
53
|
-
|
|
53
|
+
name: string;
|
|
54
54
|
group: ResourceGroupInfo;
|
|
55
55
|
id: pulumi.Output<string>;
|
|
56
56
|
vnet: network.VirtualNetwork;
|
package/Web/AppConfig.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as appConfig from
|
|
2
|
-
import { KeyVaultInfo, PrivateLinkPropsType, ResourceGroupInfo, ResourceInfo } from
|
|
1
|
+
import * as appConfig from '@pulumi/azure-native/appconfiguration';
|
|
2
|
+
import { KeyVaultInfo, PrivateLinkPropsType, ResourceGroupInfo, ResourceInfo } from '../types';
|
|
3
3
|
export type AppConfigProps = {
|
|
4
4
|
name: string;
|
|
5
5
|
group: ResourceGroupInfo;
|
package/Web/AppConfig.js
CHANGED
|
@@ -38,14 +38,14 @@ exports.default = ({ group, name, vaultInfo, disableLocalAuth, privateLink, }) =
|
|
|
38
38
|
const app = new appConfig.ConfigurationStore(name, {
|
|
39
39
|
configStoreName: name,
|
|
40
40
|
...group,
|
|
41
|
-
identity: { type:
|
|
41
|
+
identity: { type: 'SystemAssigned' },
|
|
42
42
|
enablePurgeProtection: AzureEnv_1.isPrd,
|
|
43
43
|
softDeleteRetentionInDays: AzureEnv_1.isPrd ? 7 : 1,
|
|
44
44
|
disableLocalAuth,
|
|
45
45
|
publicNetworkAccess: privateLink
|
|
46
46
|
? appConfig.PublicNetworkAccess.Disabled
|
|
47
47
|
: appConfig.PublicNetworkAccess.Enabled,
|
|
48
|
-
sku: { name:
|
|
48
|
+
sku: { name: 'Standard' },
|
|
49
49
|
});
|
|
50
50
|
//Access Keys
|
|
51
51
|
if (vaultInfo && !disableLocalAuth) {
|
|
@@ -62,7 +62,7 @@ exports.default = ({ group, name, vaultInfo, disableLocalAuth, privateLink, }) =
|
|
|
62
62
|
//Only Read Connection String here
|
|
63
63
|
if (key.readOnly) {
|
|
64
64
|
(0, CustomHelper_1.addCustomSecret)({
|
|
65
|
-
name: key.name.includes(
|
|
65
|
+
name: key.name.includes('Primary')
|
|
66
66
|
? readPrimaryConnectionStringKey
|
|
67
67
|
: readSecondaryConnectionStringKey,
|
|
68
68
|
value: key.connectionString,
|
|
@@ -77,17 +77,17 @@ exports.default = ({ group, name, vaultInfo, disableLocalAuth, privateLink, }) =
|
|
|
77
77
|
//Private Link
|
|
78
78
|
if (privateLink) {
|
|
79
79
|
(0, PrivateEndpoint_1.default)({
|
|
80
|
-
resourceInfo: {
|
|
81
|
-
privateDnsZoneName:
|
|
82
|
-
linkServiceGroupIds: [
|
|
80
|
+
resourceInfo: { name, group, id: app.id },
|
|
81
|
+
privateDnsZoneName: 'privatelink.azconfig.io',
|
|
82
|
+
linkServiceGroupIds: ['appConfig'],
|
|
83
83
|
...privateLink,
|
|
84
84
|
});
|
|
85
85
|
}
|
|
86
86
|
return {
|
|
87
|
-
|
|
87
|
+
name,
|
|
88
88
|
group,
|
|
89
89
|
id: app.id,
|
|
90
90
|
instance: app,
|
|
91
91
|
};
|
|
92
92
|
};
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL1dlYi9BcHBDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlGQUFtRTtBQUNuRSxpREFBMkM7QUFDM0MsNkNBQW9EO0FBT3BELDhFQUFzRDtBQUN0RCwyREFBMkQ7QUFVM0Qsa0JBQWUsQ0FBQyxFQUNkLEtBQUssRUFDTCxJQUFJLEVBQ0osU0FBUyxFQUNULGdCQUFnQixFQUNoQixXQUFXLEdBQ0ksRUFFZixFQUFFO0lBQ0YsSUFBSSxHQUFHLElBQUEseUJBQWdCLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsTUFBTSw4QkFBOEIsR0FBRyxHQUFHLElBQUksaUNBQWlDLENBQUM7SUFDaEYsTUFBTSxnQ0FBZ0MsR0FBRyxHQUFHLElBQUksbUNBQW1DLENBQUM7SUFFcEYsTUFBTSxHQUFHLEdBQUcsSUFBSSxTQUFTLENBQUMsa0JBQWtCLENBQUMsSUFBSSxFQUFFO1FBQ2pELGVBQWUsRUFBRSxJQUFJO1FBQ3JCLEdBQUcsS0FBSztRQUNSLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtRQUNwQyxxQkFBcUIsRUFBRSxnQkFBSztRQUM1Qix5QkFBeUIsRUFBRSxnQkFBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEMsZ0JBQWdCO1FBQ2hCLG1CQUFtQixFQUFFLFdBQVc7WUFDOUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRO1lBQ3hDLENBQUMsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsT0FBTztRQUV6QyxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO0tBQzFCLENBQUMsQ0FBQztJQUVILGFBQWE7SUFDYixJQUFJLFNBQVMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDbkMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFO1lBQ3hCLElBQUksQ0FBQyxFQUFFO2dCQUFFLE9BQU87WUFDaEIsMkJBQTJCO1lBQzNCLE1BQU0sSUFBSSxHQUFHLE1BQU0sU0FBUyxDQUFDLDBCQUEwQixDQUFDO2dCQUN0RCxlQUFlLEVBQUUsSUFBSTtnQkFDckIsR0FBRyxLQUFLO2FBQ1QsQ0FBQyxDQUFDO1lBRUgsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtvQkFDckIsa0NBQWtDO29CQUNsQyxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQzt3QkFDakIsSUFBQSw4QkFBZSxFQUFDOzRCQUNkLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUM7Z0NBQ2hDLENBQUMsQ0FBQyw4QkFBOEI7Z0NBQ2hDLENBQUMsQ0FBQyxnQ0FBZ0M7NEJBQ3BDLEtBQUssRUFBRSxHQUFHLENBQUMsZ0JBQWdCOzRCQUMzQixXQUFXLEVBQUUsYUFBYSxJQUFJLElBQUksR0FBRyxDQUFDLElBQUksRUFBRTs0QkFDNUMsU0FBUzt5QkFDVixDQUFDLENBQUM7b0JBQ0wsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ2QsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNoQixJQUFBLHlCQUFlLEVBQUM7WUFDZCxZQUFZLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFO1lBQ3pDLGtCQUFrQixFQUFFLHlCQUF5QjtZQUM3QyxtQkFBbUIsRUFBRSxDQUFDLFdBQVcsQ0FBQztZQUNsQyxHQUFHLFdBQVc7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUk7UUFDSixLQUFLO1FBQ0wsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1FBQ1YsUUFBUSxFQUFFLEdBQUc7S0FDZCxDQUFDO0FBQ0osQ0FBQyxDQUFDIn0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@drunk-pulumi/azure",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.50",
|
|
4
4
|
"author": "drunkcoding@outlook.com",
|
|
5
5
|
"description": "The custom helpers pulumi-azure",
|
|
6
6
|
"license": "MIT",
|
|
@@ -18,15 +18,15 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@drunk-pulumi/azure-providers": "^0.0.24",
|
|
21
|
-
"@pulumi/azure-native": "^2.
|
|
22
|
-
"@pulumi/azuread": "5.
|
|
23
|
-
"@pulumi/pulumi": "^3.
|
|
24
|
-
"@pulumi/random": "^4.16.
|
|
25
|
-
"@pulumi/tls": "^5.0.
|
|
21
|
+
"@pulumi/azure-native": "^2.48.0",
|
|
22
|
+
"@pulumi/azuread": "5.53.1",
|
|
23
|
+
"@pulumi/pulumi": "^3.122.0",
|
|
24
|
+
"@pulumi/random": "^4.16.3",
|
|
25
|
+
"@pulumi/tls": "^5.0.4",
|
|
26
26
|
"axios": "^1.7.2",
|
|
27
27
|
"netmask": "^2.0.2",
|
|
28
28
|
"node-forge": "^1.3.1",
|
|
29
29
|
"to-words": "^4.0.1",
|
|
30
|
-
"xml-formatter": "^3.6.
|
|
30
|
+
"xml-formatter": "^3.6.3"
|
|
31
31
|
}
|
|
32
32
|
}
|
package/types.d.ts
CHANGED
|
@@ -1,7 +1,17 @@
|
|
|
1
|
-
import { Input, Output, Resource } from
|
|
2
|
-
import * as authorization from
|
|
3
|
-
import { DiagnosticSetting } from
|
|
4
|
-
import { EnvRoleKeyTypes } from
|
|
1
|
+
import { Input, Output, Resource } from '@pulumi/pulumi';
|
|
2
|
+
import * as authorization from '@pulumi/azure-native/authorization';
|
|
3
|
+
import { DiagnosticSetting } from '@pulumi/azure-native/aadiam/diagnosticSetting';
|
|
4
|
+
import { EnvRoleKeyTypes } from './AzAd/EnvRoles';
|
|
5
|
+
export declare namespace NodeJS {
|
|
6
|
+
interface ProcessEnv {
|
|
7
|
+
DPA_NAMING_DISABLE_PREFIX?: string;
|
|
8
|
+
DPA_NAMING_DISABLE_REGION?: string;
|
|
9
|
+
DPA_NAMING_DISABLE_SUFFIX?: string;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export type NamedResourceType = {
|
|
13
|
+
name: string;
|
|
14
|
+
};
|
|
5
15
|
export interface ResourceInfoArg {
|
|
6
16
|
/**If name and provider of the resource is not provided then the Id will be resource group Id*/
|
|
7
17
|
name?: Input<string>;
|
|
@@ -10,27 +20,27 @@ export interface ResourceInfoArg {
|
|
|
10
20
|
group: ResourceGroupInfo;
|
|
11
21
|
subscriptionId?: Input<string>;
|
|
12
22
|
}
|
|
13
|
-
export
|
|
23
|
+
export type BasicArgs = {
|
|
14
24
|
dependsOn?: Input<Input<Resource>[]> | Input<Resource>;
|
|
15
25
|
importUri?: string;
|
|
16
26
|
ignoreChanges?: string[];
|
|
17
|
-
}
|
|
18
|
-
export
|
|
27
|
+
};
|
|
28
|
+
export type ResourceGroupInfo = {
|
|
19
29
|
resourceGroupName: string;
|
|
20
30
|
location?: Input<string>;
|
|
21
|
-
}
|
|
22
|
-
export
|
|
31
|
+
};
|
|
32
|
+
export type ConventionProps = {
|
|
23
33
|
prefix?: string;
|
|
24
34
|
suffix?: string;
|
|
25
35
|
/**Whether include the Azure Region name at the end of the name or not*/
|
|
26
36
|
region?: string;
|
|
27
37
|
/**Whether include the organization name at the end of the name or not*/
|
|
28
38
|
includeOrgName?: boolean;
|
|
29
|
-
}
|
|
30
|
-
export
|
|
39
|
+
};
|
|
40
|
+
export type BasicMonitorArgs = BasicArgs & {
|
|
31
41
|
logWpId?: Input<string>;
|
|
32
42
|
logStorageId?: Input<string>;
|
|
33
|
-
}
|
|
43
|
+
};
|
|
34
44
|
export interface DiagnosticProps extends BasicMonitorArgs {
|
|
35
45
|
name: string;
|
|
36
46
|
targetResourceId: Input<string>;
|
|
@@ -42,17 +52,20 @@ export type ResourceType = {
|
|
|
42
52
|
groupName: string;
|
|
43
53
|
formattedName?: boolean;
|
|
44
54
|
};
|
|
45
|
-
export
|
|
46
|
-
resourceName: string;
|
|
55
|
+
export type ResourceInfo = NamedResourceType & {
|
|
47
56
|
group: ResourceGroupInfo;
|
|
48
57
|
id: Output<string>;
|
|
58
|
+
};
|
|
59
|
+
export type KeyVaultInfo = ResourceInfo;
|
|
60
|
+
export interface ResourceInfoWithInstance<InstanceType> extends ResourceInfo {
|
|
61
|
+
instance: InstanceType;
|
|
49
62
|
}
|
|
50
63
|
export interface BasicResourceArgs extends BasicArgs {
|
|
51
64
|
name: string;
|
|
52
65
|
group: ResourceGroupInfo;
|
|
53
66
|
}
|
|
54
67
|
export interface DefaultResourceArgs extends BasicArgs {
|
|
55
|
-
monitoring?: Omit<DiagnosticProps,
|
|
68
|
+
monitoring?: Omit<DiagnosticProps, 'name' | 'targetResourceId'>;
|
|
56
69
|
}
|
|
57
70
|
export type PrivateLinkPropsType = {
|
|
58
71
|
subnetIds: Input<string>[];
|
|
@@ -63,19 +76,13 @@ export type NetworkPropsType = {
|
|
|
63
76
|
ipAddresses?: Input<string>[];
|
|
64
77
|
privateLink?: PrivateLinkPropsType;
|
|
65
78
|
};
|
|
66
|
-
export interface BasicResourceResultProps<TClass> {
|
|
67
|
-
name: string;
|
|
79
|
+
export interface BasicResourceResultProps<TClass> extends NamedResourceType {
|
|
68
80
|
resource: TClass;
|
|
69
81
|
}
|
|
70
82
|
export interface ResourceResultProps<TClass> extends BasicResourceResultProps<TClass> {
|
|
71
83
|
locker?: authorization.ManagementLockByScope;
|
|
72
84
|
diagnostic?: DiagnosticSetting;
|
|
73
85
|
}
|
|
74
|
-
export interface KeyVaultInfo {
|
|
75
|
-
name: string;
|
|
76
|
-
group: ResourceGroupInfo;
|
|
77
|
-
id: Output<string>;
|
|
78
|
-
}
|
|
79
86
|
export type IdentityRoleAssignment = {
|
|
80
87
|
vaultInfo?: KeyVaultInfo;
|
|
81
88
|
roles?: Array<{
|
package/config.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/** The environment configuration fro drunk-pulumi-azure with prefix is DPA*/
|
|
2
|
-
export interface EnvConfig {
|
|
3
|
-
DPA_NAMING_DISABLE_REGION: boolean | undefined;
|
|
4
|
-
}
|
|
5
|
-
export declare namespace NodeJS {
|
|
6
|
-
interface ProcessEnv extends EnvConfig {
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
export declare const env: EnvConfig;
|
package/config.js
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.env = void 0;
|
|
4
|
-
exports.env = {
|
|
5
|
-
DPA_NAMING_DISABLE_REGION: Boolean(process.env.DPA_NAMING_DISABLE_REGION),
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTYSxRQUFBLEdBQUcsR0FBYztJQUM1Qix5QkFBeUIsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQztDQUMxRSxDQUFDIn0=
|
|
File without changes
|