@drunk-pulumi/azure 1.0.7 → 1.0.9
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 +2 -3
- package/Aks/Identity.js +17 -17
- package/Aks/index.d.ts +13 -15
- package/Aks/index.js +63 -64
- package/Automation/index.d.ts +4 -4
- package/Automation/index.js +13 -9
- package/AzAd/EnvRoles.d.ts +0 -5
- package/AzAd/EnvRoles.js +3 -4
- package/AzAd/Group.d.ts +4 -4
- package/AzAd/Group.js +14 -5
- package/AzAd/Helper.d.ts +3 -8
- package/AzAd/Helper.js +67 -51
- package/AzAd/Identities/AzDevOpsManagedIdentity.d.ts +3 -3
- package/AzAd/Identities/AzDevOpsManagedIdentity.js +4 -4
- package/AzAd/Identities/AzUserAdRevertSync.d.ts +2 -2
- package/AzAd/Identities/EnvUID.d.ts +4 -0
- package/AzAd/Identities/EnvUID.js +21 -0
- package/AzAd/Identities/index.d.ts +1 -1
- package/AzAd/Identities/index.js +3 -3
- package/AzAd/Identity.d.ts +2 -2
- package/AzAd/Identity.js +3 -8
- package/AzAd/RoleAssignment.d.ts +2 -2
- package/AzAd/UserAssignedIdentity.d.ts +4 -3
- package/AzAd/UserAssignedIdentity.js +10 -13
- package/Builder/AksBuilder.d.ts +2 -2
- package/Builder/AksBuilder.js +14 -7
- package/Builder/ApimBuilder.js +8 -10
- package/Builder/CdnBuilder.d.ts +2 -2
- package/Builder/CdnBuilder.js +1 -1
- package/Builder/PrivateDnsZoneBuilder.js +4 -5
- package/Builder/ResourceBuilder.d.ts +2 -2
- package/Builder/ResourceBuilder.js +42 -5
- package/Builder/SqlBuilder.d.ts +2 -2
- package/Builder/SqlBuilder.js +9 -10
- package/Builder/VaultBuilder.d.ts +2 -3
- package/Builder/VaultBuilder.js +16 -15
- package/Builder/VmBuilder.d.ts +2 -2
- package/Builder/VmBuilder.js +12 -3
- package/Builder/VnetBuilder.d.ts +2 -2
- package/Builder/VnetBuilder.js +100 -53
- package/Builder/types/apimBuilder.d.ts +8 -9
- package/Builder/types/apimPolicyBuilder.d.ts +3 -3
- package/Builder/types/apimProductBuilder.d.ts +2 -2
- package/Builder/types/askBuilder.d.ts +8 -3
- package/Builder/types/envRoleBuilder.d.ts +2 -2
- package/Builder/types/genericBuilder.d.ts +2 -8
- package/Builder/types/genericBuilder.js +1 -1
- package/Builder/types/resourceBuilder.d.ts +12 -6
- package/Builder/types/sqlBuilder.d.ts +4 -5
- package/Builder/types/vaultBuilder.d.ts +4 -3
- package/Builder/types/vmBuilder.d.ts +6 -2
- package/Builder/types/vnetBuilder.d.ts +13 -12
- package/Cdn/CdnEndpoint.d.ts +1 -1
- package/Cdn/CdnEndpoint.js +2 -3
- package/Common/AzureEnv.d.ts +0 -7
- package/Common/AzureEnv.js +2 -44
- package/Common/GlobalEnv.d.ts +1 -3
- package/Common/GlobalEnv.js +19 -21
- package/Common/Helpers.d.ts +0 -1
- package/Common/Helpers.js +29 -29
- package/Common/Naming.d.ts +68 -0
- package/Common/Naming.js +189 -0
- package/Common/RsInfo/Helper.d.ts +4 -0
- package/Common/RsInfo/Helper.js +48 -0
- package/Common/RsInfo/index.d.ts +31 -0
- package/Common/RsInfo/index.js +245 -0
- package/Common/index.d.ts +3 -0
- package/Common/index.js +5 -2
- package/ContainerRegistry/Helper.d.ts +2 -9
- package/ContainerRegistry/Helper.js +36 -31
- package/Core/KeyGenerators.js +2 -2
- package/Core/Locker.d.ts +6 -4
- package/Core/Locker.js +23 -2
- package/Core/Random.d.ts +2 -2
- package/Core/Random.js +2 -1
- package/Core/ResourceCreator.js +3 -6
- package/CosmosDb/index.d.ts +3 -3
- package/CosmosDb/index.js +14 -14
- package/IOT/Hub/index.js +2 -1
- package/KeyVault/CustomHelper.d.ts +4 -3
- package/KeyVault/CustomHelper.js +3 -2
- package/KeyVault/Helper.d.ts +5 -1
- package/KeyVault/Helper.js +13 -2
- package/KeyVault/index.d.ts +1 -6
- package/KeyVault/index.js +19 -14
- package/Logs/AppInsight.js +3 -1
- package/Logs/Helpers.d.ts +5 -54
- package/Logs/Helpers.js +41 -68
- package/Logs/LogAnalytics.d.ts +5 -11
- package/Logs/LogAnalytics.js +11 -11
- package/Logs/WebTest.d.ts +2 -2
- package/Logs/WebTest.js +13 -13
- package/Logs/index.d.ts +7 -22
- package/Logs/index.js +33 -52
- package/Postgresql/index.js +3 -3
- package/ServiceBus/index.d.ts +4 -5
- package/ServiceBus/index.js +10 -8
- package/Sql/Helper.js +4 -4
- package/Sql/SqlDb.js +3 -6
- package/Sql/index.d.ts +2 -5
- package/Sql/index.js +12 -21
- package/Storage/Helper.d.ts +2 -28
- package/Storage/Helper.js +58 -77
- package/Storage/index.d.ts +2 -2
- package/Storage/index.js +7 -6
- package/VM/DiskEncryptionSet.d.ts +4 -6
- package/VM/DiskEncryptionSet.js +18 -6
- package/VM/index.d.ts +3 -3
- package/VM/index.js +37 -13
- package/VNet/Firewall.d.ts +8 -6
- package/VNet/Firewall.js +25 -28
- package/VNet/FirewallPolicies/CloudPCFirewallPolicy.js +2 -2
- package/VNet/Helper.d.ts +3 -20
- package/VNet/Helper.js +6 -49
- package/VNet/IpAddress.js +3 -6
- package/VNet/IpAddressPrefix.d.ts +2 -2
- package/VNet/IpAddressPrefix.js +3 -3
- package/VNet/NSGRules/BlockInternetSecurityRule.d.ts +3 -0
- package/VNet/NSGRules/BlockInternetSecurityRule.js +34 -0
- package/VNet/NSGRules/index.d.ts +5 -4
- package/VNet/NSGRules/index.js +4 -2
- package/VNet/NetworkPeering.d.ts +18 -6
- package/VNet/NetworkPeering.js +43 -27
- package/VNet/PrivateEndpoint.js +2 -2
- package/VNet/VirtualWAN.js +2 -2
- package/VNet/types.d.ts +3 -8
- package/Web/AppConfig.js +2 -1
- package/package.json +4 -5
- package/types.d.ts +85 -30
- package/Aks/VmSetAutoScale/index.d.ts +0 -14
- package/Aks/VmSetAutoScale/index.js +0 -155
- package/Aks/VmSetMonitor/index.d.ts +0 -10
- package/Aks/VmSetMonitor/index.js +0 -90
- package/Apim/Helpers.d.ts +0 -2
- package/Apim/Helpers.js +0 -18
- package/AzAd/Identities/GlobalUserAssignedIdentity.d.ts +0 -4
- package/AzAd/Identities/GlobalUserAssignedIdentity.js +0 -19
- package/Common/Naming/index.d.ts +0 -67
- package/Common/Naming/index.js +0 -161
- package/Core/Helper.d.ts +0 -18
- package/Core/Helper.js +0 -42
- package/VNet/index.d.ts +0 -65
- package/VNet/index.js +0 -220
- package/Web/Helpers.d.ts +0 -6
- package/Web/Helpers.js +0 -59
package/Common/Naming/index.js
DELETED
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getIpAddressName = exports.getNetworkSecurityGroupName = exports.getWorkflowName = exports.getRouteItemName = exports.getRouteName = exports.getIotHubName = exports.getHubName = exports.getWanName = exports.getVnetName = exports.getVpnName = exports.getVdiName = exports.getNICName = exports.getVMName = exports.getFirewallPolicyGroupName = exports.getFirewallPolicyName = exports.getFirewallName = exports.getMySqlName = exports.getPostgresqlName = exports.getSqlServerName = exports.getSqlDbName = exports.getElasticPoolName = exports.getSignalRName = exports.getPrivateEndpointName = exports.getServiceBusName = exports.getRedisCacheName = exports.getAlertName = exports.getWebTestName = exports.getFuncAppName = exports.getWebAppName = exports.getLogWpName = exports.getAppInsightName = exports.getK8sProviderName = exports.getAksName = exports.getManagedIdentityName = exports.getIdentityName = exports.getSshName = exports.getDiskEncryptionName = exports.getApimName = exports.getAppConfigName = exports.getCosmosDbName = exports.getB2cName = exports.getAutomationAccountName = exports.getPasswordName = exports.getKeyName = exports.getConnectionName = exports.getCertName = exports.getAppPlanName = exports.getSecretName = exports.getStorageName = exports.getResourceGroupName = void 0;
|
|
4
|
-
exports.getCertOrderName = exports.getAcrName = exports.getCdnProfileName = exports.getCdnEndpointName = exports.getKeyVaultName = exports.getBastionName = exports.getNatGatewayName = exports.getAppGatewayName = exports.getIpAddressPrefixName = void 0;
|
|
5
|
-
const AzureEnv_1 = require("../AzureEnv");
|
|
6
|
-
const Helpers_1 = require("../Helpers");
|
|
7
|
-
const ResourceEnv_1 = require("../ResourceEnv");
|
|
8
|
-
const StackEnv_1 = require("../StackEnv");
|
|
9
|
-
/** The method to get Resource group Name*/
|
|
10
|
-
const getResourceGroupName = (name, convention = {}) => (0, ResourceEnv_1.getResourceName)(name, {
|
|
11
|
-
...convention,
|
|
12
|
-
suffix: StackEnv_1.organization ? `grp-${StackEnv_1.organization}` : 'grp',
|
|
13
|
-
});
|
|
14
|
-
exports.getResourceGroupName = getResourceGroupName;
|
|
15
|
-
/** Get Azure Storage Account and CosmosDb Name*/
|
|
16
|
-
const getStorageName = (name) => {
|
|
17
|
-
name = (0, ResourceEnv_1.getResourceName)(name, { includeOrgName: true, suffix: 'stg' });
|
|
18
|
-
name = (0, Helpers_1.replaceAll)(name, '-', '');
|
|
19
|
-
name = (0, Helpers_1.replaceAll)(name, '.', '');
|
|
20
|
-
return name.toLowerCase().substring(0, 24);
|
|
21
|
-
};
|
|
22
|
-
exports.getStorageName = getStorageName;
|
|
23
|
-
/** Get Vault Secret Name. Remove the stack name and replace all _ with - then lower cases. */
|
|
24
|
-
const getSecretName = (name) => {
|
|
25
|
-
name = (0, Helpers_1.replaceAll)(name, `${StackEnv_1.stack}-`, '');
|
|
26
|
-
name = (0, Helpers_1.replaceAll)(name, StackEnv_1.stack, '');
|
|
27
|
-
name = (0, Helpers_1.replaceAll)(name, ' ', '-');
|
|
28
|
-
name = (0, Helpers_1.replaceAll)(name, '.', '-');
|
|
29
|
-
return (0, Helpers_1.replaceAll)(name, '_', '-').toLowerCase();
|
|
30
|
-
};
|
|
31
|
-
exports.getSecretName = getSecretName;
|
|
32
|
-
const getAppPlanName = (name) => (0, ResourceEnv_1.getResourceName)(name, { includeOrgName: false, suffix: 'app-plan' });
|
|
33
|
-
exports.getAppPlanName = getAppPlanName;
|
|
34
|
-
const getCertName = (name) => {
|
|
35
|
-
name = (0, exports.getSecretName)(name);
|
|
36
|
-
return `${name}-cert`;
|
|
37
|
-
};
|
|
38
|
-
exports.getCertName = getCertName;
|
|
39
|
-
const getConnectionName = (name, type) => `${(0, exports.getSecretName)(name)}-conn-${type}`;
|
|
40
|
-
exports.getConnectionName = getConnectionName;
|
|
41
|
-
const getKeyName = (name, type) => `${(0, exports.getSecretName)(name)}-key-${type}`;
|
|
42
|
-
exports.getKeyName = getKeyName;
|
|
43
|
-
const getPasswordName = (name, type) => type === null
|
|
44
|
-
? (0, ResourceEnv_1.getResourceName)(name, { suffix: 'pwd' })
|
|
45
|
-
: `${(0, exports.getSecretName)(name)}-pwd-${type}`;
|
|
46
|
-
exports.getPasswordName = getPasswordName;
|
|
47
|
-
const getAutomationAccountName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'acc-auto' });
|
|
48
|
-
exports.getAutomationAccountName = getAutomationAccountName;
|
|
49
|
-
const getB2cName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'b2c' });
|
|
50
|
-
exports.getB2cName = getB2cName;
|
|
51
|
-
const getCosmosDbName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'cdb' });
|
|
52
|
-
exports.getCosmosDbName = getCosmosDbName;
|
|
53
|
-
const getAppConfigName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'cfg' });
|
|
54
|
-
exports.getAppConfigName = getAppConfigName;
|
|
55
|
-
const getApimName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'apim' });
|
|
56
|
-
exports.getApimName = getApimName;
|
|
57
|
-
const getDiskEncryptionName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'disk-encrypt' });
|
|
58
|
-
exports.getDiskEncryptionName = getDiskEncryptionName;
|
|
59
|
-
const getSshName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'ssh' });
|
|
60
|
-
exports.getSshName = getSshName;
|
|
61
|
-
const getIdentityName = (name) => (0, ResourceEnv_1.getResourceName)(name);
|
|
62
|
-
exports.getIdentityName = getIdentityName;
|
|
63
|
-
const getManagedIdentityName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'mid' });
|
|
64
|
-
exports.getManagedIdentityName = getManagedIdentityName;
|
|
65
|
-
const getAksName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'aks' });
|
|
66
|
-
exports.getAksName = getAksName;
|
|
67
|
-
const getK8sProviderName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'ks-pvd' });
|
|
68
|
-
exports.getK8sProviderName = getK8sProviderName;
|
|
69
|
-
const getAppInsightName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'isg' });
|
|
70
|
-
exports.getAppInsightName = getAppInsightName;
|
|
71
|
-
const getLogWpName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'wp' });
|
|
72
|
-
exports.getLogWpName = getLogWpName;
|
|
73
|
-
const getWebAppName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'web' });
|
|
74
|
-
exports.getWebAppName = getWebAppName;
|
|
75
|
-
const getFuncAppName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'func' });
|
|
76
|
-
exports.getFuncAppName = getFuncAppName;
|
|
77
|
-
const getWebTestName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'hlz' });
|
|
78
|
-
exports.getWebTestName = getWebTestName;
|
|
79
|
-
const getAlertName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'alt' });
|
|
80
|
-
exports.getAlertName = getAlertName;
|
|
81
|
-
const getRedisCacheName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'rds' });
|
|
82
|
-
exports.getRedisCacheName = getRedisCacheName;
|
|
83
|
-
const getServiceBusName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'bus' });
|
|
84
|
-
exports.getServiceBusName = getServiceBusName;
|
|
85
|
-
const getPrivateEndpointName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'pre' });
|
|
86
|
-
exports.getPrivateEndpointName = getPrivateEndpointName;
|
|
87
|
-
const getSignalRName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'sigr' }); //.substring(0, 24);
|
|
88
|
-
exports.getSignalRName = getSignalRName;
|
|
89
|
-
const getElasticPoolName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'elp' });
|
|
90
|
-
exports.getElasticPoolName = getElasticPoolName;
|
|
91
|
-
const getSqlDbName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'db' });
|
|
92
|
-
exports.getSqlDbName = getSqlDbName;
|
|
93
|
-
const getSqlServerName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'sql' });
|
|
94
|
-
exports.getSqlServerName = getSqlServerName;
|
|
95
|
-
const getPostgresqlName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'postgres' });
|
|
96
|
-
exports.getPostgresqlName = getPostgresqlName;
|
|
97
|
-
const getMySqlName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'mysql' });
|
|
98
|
-
exports.getMySqlName = getMySqlName;
|
|
99
|
-
const getFirewallName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'fw' });
|
|
100
|
-
exports.getFirewallName = getFirewallName;
|
|
101
|
-
const getFirewallPolicyName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'fwp' });
|
|
102
|
-
exports.getFirewallPolicyName = getFirewallPolicyName;
|
|
103
|
-
const getFirewallPolicyGroupName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'fw-pg' });
|
|
104
|
-
exports.getFirewallPolicyGroupName = getFirewallPolicyGroupName;
|
|
105
|
-
const getVMName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'vm' });
|
|
106
|
-
exports.getVMName = getVMName;
|
|
107
|
-
const getNICName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'nic' });
|
|
108
|
-
exports.getNICName = getNICName;
|
|
109
|
-
const getVdiName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'vdi' });
|
|
110
|
-
exports.getVdiName = getVdiName;
|
|
111
|
-
const getVpnName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'vpn' });
|
|
112
|
-
exports.getVpnName = getVpnName;
|
|
113
|
-
const getVnetName = (name, convention = {}) => (0, ResourceEnv_1.getResourceName)(name, { ...convention, suffix: 'vnt' });
|
|
114
|
-
exports.getVnetName = getVnetName;
|
|
115
|
-
const getWanName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'wan' });
|
|
116
|
-
exports.getWanName = getWanName;
|
|
117
|
-
const getHubName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'hub' });
|
|
118
|
-
exports.getHubName = getHubName;
|
|
119
|
-
const getIotHubName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'iot' });
|
|
120
|
-
exports.getIotHubName = getIotHubName;
|
|
121
|
-
const getRouteName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'route' });
|
|
122
|
-
exports.getRouteName = getRouteName;
|
|
123
|
-
const getRouteItemName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: '', includeOrgName: false });
|
|
124
|
-
exports.getRouteItemName = getRouteItemName;
|
|
125
|
-
const getWorkflowName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'wkp' });
|
|
126
|
-
exports.getWorkflowName = getWorkflowName;
|
|
127
|
-
const getNetworkSecurityGroupName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'nsg' });
|
|
128
|
-
exports.getNetworkSecurityGroupName = getNetworkSecurityGroupName;
|
|
129
|
-
const getIpAddressName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'ip' });
|
|
130
|
-
exports.getIpAddressName = getIpAddressName;
|
|
131
|
-
const getIpAddressPrefixName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'ipx' });
|
|
132
|
-
exports.getIpAddressPrefixName = getIpAddressPrefixName;
|
|
133
|
-
const getAppGatewayName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'gtw' });
|
|
134
|
-
exports.getAppGatewayName = getAppGatewayName;
|
|
135
|
-
const getNatGatewayName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'ngw' });
|
|
136
|
-
exports.getNatGatewayName = getNatGatewayName;
|
|
137
|
-
const getBastionName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'bst' });
|
|
138
|
-
exports.getBastionName = getBastionName;
|
|
139
|
-
/**Key vault allow to disable or custom the convention. The max length of vault name is 24*/
|
|
140
|
-
const getKeyVaultName = (name, convention = {}) => (0, ResourceEnv_1.getResourceName)(name, {
|
|
141
|
-
...convention,
|
|
142
|
-
suffix: 'vlt',
|
|
143
|
-
includeOrgName: true,
|
|
144
|
-
}).substring(0, 24);
|
|
145
|
-
exports.getKeyVaultName = getKeyVaultName;
|
|
146
|
-
const getCdnEndpointName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'cdn' });
|
|
147
|
-
exports.getCdnEndpointName = getCdnEndpointName;
|
|
148
|
-
/**The CDN Profile is created to Global group so no prefix*/
|
|
149
|
-
const getCdnProfileName = (name) => (0, ResourceEnv_1.getResourceName)(name, { suffix: 'cdn-pfl' });
|
|
150
|
-
exports.getCdnProfileName = getCdnProfileName;
|
|
151
|
-
/**The Azure Container Registry is created to Global group so no prefix*/
|
|
152
|
-
const getAcrName = (name) => (0, Helpers_1.replaceAll)((0, ResourceEnv_1.getResourceName)(name, {
|
|
153
|
-
prefix: '',
|
|
154
|
-
suffix: 'acr',
|
|
155
|
-
region: AzureEnv_1.currentCountryCode,
|
|
156
|
-
}), '-', '').substring(0, 24);
|
|
157
|
-
exports.getAcrName = getAcrName;
|
|
158
|
-
/**The App Cert Order is created to Global group so no prefix*/
|
|
159
|
-
const getCertOrderName = (name) => (0, ResourceEnv_1.getResourceName)(name.replace('.', '-'), { prefix: '', suffix: 'ca' });
|
|
160
|
-
exports.getCertOrderName = getCertOrderName;
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvQ29tbW9uL05hbWluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQ0EsMENBQWlEO0FBQ2pELHdDQUF3QztBQUN4QyxnREFBaUQ7QUFDakQsMENBQWtEO0FBRWxELDJDQUEyQztBQUNwQyxNQUFNLG9CQUFvQixHQUFHLENBQ2xDLElBQVksRUFDWixhQUE4QixFQUFFLEVBQ3hCLEVBQUUsQ0FDVixJQUFBLDZCQUFlLEVBQUMsSUFBSSxFQUFFO0lBQ3BCLEdBQUcsVUFBVTtJQUNiLE1BQU0sRUFBRSx1QkFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLHVCQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSztDQUNyRCxDQUFDLENBQUM7QUFQUSxRQUFBLG9CQUFvQix3QkFPNUI7QUFFTCxpREFBaUQ7QUFDMUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxJQUFZLEVBQVUsRUFBRTtJQUNyRCxJQUFJLEdBQUcsSUFBQSw2QkFBZSxFQUFDLElBQUksRUFBRSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDdEUsSUFBSSxHQUFHLElBQUEsb0JBQVUsRUFBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLElBQUksR0FBRyxJQUFBLG9CQUFVLEVBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqQyxPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQzdDLENBQUMsQ0FBQztBQUxXLFFBQUEsY0FBYyxrQkFLekI7QUFFRiw4RkFBOEY7QUFDdkYsTUFBTSxhQUFhLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUM1QyxJQUFJLEdBQUcsSUFBQSxvQkFBVSxFQUFDLElBQUksRUFBRSxHQUFH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
|
package/Core/Helper.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { NamedType, ResourceGroupInfo } from '../types';
|
|
2
|
-
export interface AzureResourceItem extends NamedType {
|
|
3
|
-
id: string;
|
|
4
|
-
location: string;
|
|
5
|
-
resourceGroupName: string;
|
|
6
|
-
tags: {
|
|
7
|
-
[key: string]: string;
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
export interface AzureResourceResult {
|
|
11
|
-
value: Array<AzureResourceItem>;
|
|
12
|
-
}
|
|
13
|
-
/**Get Resource group Id from Info */
|
|
14
|
-
export declare const getRGId: (group: ResourceGroupInfo) => import("@pulumi/pulumi").Output<string>;
|
|
15
|
-
/** Find a NetworkSecurityGroups in a Resource Group*/
|
|
16
|
-
export declare const findNetworkSecurityGroups: (group: string) => Promise<AzureResourceItem[] | undefined>;
|
|
17
|
-
/** Find VM Scale set in a Resource Group */
|
|
18
|
-
export declare const findVMScaleSet: (group: string) => Promise<AzureResourceItem[] | undefined>;
|
package/Core/Helper.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.findVMScaleSet = exports.findNetworkSecurityGroups = exports.getRGId = void 0;
|
|
4
|
-
const Axios_1 = require("@drunk-pulumi/azure-providers/Tools/Axios");
|
|
5
|
-
const pulumi_1 = require("@pulumi/pulumi");
|
|
6
|
-
const Common_1 = require("../Common");
|
|
7
|
-
/**Get Resource group Id from Info */
|
|
8
|
-
const getRGId = (group) => (0, pulumi_1.interpolate) `/subscriptions/${Common_1.subscriptionId}/resourceGroups/${group.resourceGroupName}`;
|
|
9
|
-
exports.getRGId = getRGId;
|
|
10
|
-
/** Find a NetworkSecurityGroups in a Resource Group*/
|
|
11
|
-
const findNetworkSecurityGroups = async (group) => {
|
|
12
|
-
const axios = (0, Axios_1.createAxios)();
|
|
13
|
-
try {
|
|
14
|
-
const url = `/resourceGroups/${group}/providers/Microsoft.Network/networkSecurityGroups?api-version=2020-05-01`;
|
|
15
|
-
const rs = await axios.get(url).then((rs) => rs.data);
|
|
16
|
-
return rs.value.map((i) => {
|
|
17
|
-
i.resourceGroupName = group;
|
|
18
|
-
return i;
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
catch (error) {
|
|
22
|
-
return undefined;
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
exports.findNetworkSecurityGroups = findNetworkSecurityGroups;
|
|
26
|
-
/** Find VM Scale set in a Resource Group */
|
|
27
|
-
const findVMScaleSet = async (group) => {
|
|
28
|
-
const axios = (0, Axios_1.createAxios)();
|
|
29
|
-
try {
|
|
30
|
-
const url = `/resourceGroups/${group}/providers/Microsoft.Compute/virtualMachineScaleSets?api-version=2020-06-01`;
|
|
31
|
-
const rs = await axios.get(url).then((rs) => rs.data);
|
|
32
|
-
return rs.value.map((i) => {
|
|
33
|
-
i.resourceGroupName = group;
|
|
34
|
-
return i;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
catch (error) {
|
|
38
|
-
return undefined;
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
exports.findVMScaleSet = findVMScaleSet;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0NvcmUvSGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFFQUF3RTtBQUN4RSwyQ0FBNkM7QUFDN0Msc0NBQTJDO0FBZ0IzQyxxQ0FBcUM7QUFDOUIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxLQUF3QixFQUFFLEVBQUUsQ0FDbEQsSUFBQSxvQkFBVyxFQUFBLGtCQUFrQix1QkFBYyxtQkFBbUIsS0FBSyxDQUFDLGlCQUFpQixFQUFFLENBQUM7QUFEN0UsUUFBQSxPQUFPLFdBQ3NFO0FBRTFGLHNEQUFzRDtBQUMvQyxNQUFNLHlCQUF5QixHQUFHLEtBQUssRUFBRSxLQUFhLEVBQUUsRUFBRTtJQUMvRCxNQUFNLEtBQUssR0FBRyxJQUFBLG1CQUFXLEdBQUUsQ0FBQztJQUM1QixJQUFJLENBQUM7UUFDSCxNQUFNLEdBQUcsR0FBRyxtQkFBbUIsS0FBSywyRUFBMkUsQ0FBQztRQUNoSCxNQUFNLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxHQUFHLENBQXNCLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTNFLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUN4QixDQUFDLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7QUFDSCxDQUFDLENBQUM7QUFiVyxRQUFBLHlCQUF5Qiw2QkFhcEM7QUFFRiw0Q0FBNEM7QUFDckMsTUFBTSxjQUFjLEdBQUcsS0FBSyxFQUFFLEtBQWEsRUFBRSxFQUFFO0lBQ3BELE1BQU0sS0FBSyxHQUFHLElBQUEsbUJBQVcsR0FBRSxDQUFDO0lBQzVCLElBQUksQ0FBQztRQUNILE1BQU0sR0FBRyxHQUFHLG1CQUFtQixLQUFLLDZFQUE2RSxDQUFDO1FBQ2xILE1BQU0sRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEdBQUcsQ0FBc0IsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFM0UsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3hCLENBQUMsQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7WUFDNUIsT0FBTyxDQUFDLENBQUM7UUFDWCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUMsQ0FBQztBQWJXLFFBQUEsY0FBYyxrQkFhekIifQ==
|
package/VNet/index.d.ts
DELETED
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import * as network from '@pulumi/azure-native/network';
|
|
2
|
-
import { Input } from '@pulumi/pulumi';
|
|
3
|
-
import * as pulumi from '@pulumi/pulumi';
|
|
4
|
-
import { BasicMonitorArgs, ResourceArgs } from '../types';
|
|
5
|
-
import { CustomSecurityRuleArgs } from './types';
|
|
6
|
-
import { FirewallSkus } from './Firewall';
|
|
7
|
-
import { FirewallPolicyProps } from './types';
|
|
8
|
-
import { SubnetProps } from './Subnet';
|
|
9
|
-
interface Props extends ResourceArgs {
|
|
10
|
-
ddosId?: Input<string>;
|
|
11
|
-
addressSpace?: Input<string>[];
|
|
12
|
-
subnets?: SubnetProps[];
|
|
13
|
-
publicIpAddress?: network.PublicIPAddress;
|
|
14
|
-
dnsServers?: pulumi.Input<pulumi.Input<string>[]>;
|
|
15
|
-
features?: {
|
|
16
|
-
enableBastion?: {
|
|
17
|
-
subnetPrefix: string;
|
|
18
|
-
};
|
|
19
|
-
enableAppGateway?: {
|
|
20
|
-
subnetPrefix: string;
|
|
21
|
-
};
|
|
22
|
-
enableFirewall?: {
|
|
23
|
-
subnetPrefix: string;
|
|
24
|
-
/** Only required if Firewall is Basic tier */
|
|
25
|
-
managementSubnetPrefix?: string;
|
|
26
|
-
sku?: FirewallSkus;
|
|
27
|
-
policy: Omit<FirewallPolicyProps, 'enabled'>;
|
|
28
|
-
/** set this is TRUE if want to create firewall subnet but not create firewall component */
|
|
29
|
-
disabledFirewallCreation?: boolean;
|
|
30
|
-
};
|
|
31
|
-
vnetPeering?: Array<{
|
|
32
|
-
vnetId: Input<string>;
|
|
33
|
-
/** To create a route and Security access to the applicant */
|
|
34
|
-
firewallPrivateIpAddress?: Input<string>;
|
|
35
|
-
}>;
|
|
36
|
-
securityGroup?: {
|
|
37
|
-
/**Add Security rule to block/allow inbound internet if it is TRUE*/
|
|
38
|
-
allowInboundInternetAccess?: boolean;
|
|
39
|
-
/**Add Security rule to block/allow internet if it is TRUE*/
|
|
40
|
-
allowOutboundInternetAccess?: boolean;
|
|
41
|
-
rules?: Input<CustomSecurityRuleArgs>[];
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
monitorConfig?: BasicMonitorArgs;
|
|
45
|
-
}
|
|
46
|
-
declare const _default: ({ group, name, ddosId, addressSpace, publicIpAddress, subnets, features, monitorConfig, ...others }: Props) => {
|
|
47
|
-
firewall: {
|
|
48
|
-
firewall: network.AzureFirewall;
|
|
49
|
-
policy: network.FirewallPolicy | undefined;
|
|
50
|
-
} | undefined;
|
|
51
|
-
name: string;
|
|
52
|
-
id: pulumi.Output<string>;
|
|
53
|
-
group: import("../types").ResourceGroupInfo;
|
|
54
|
-
vnet: network.VirtualNetwork;
|
|
55
|
-
appGatewaySubnet: pulumi.OutputInstance<import("@pulumi/azure-native/types/output").network.SubnetResponse | undefined>;
|
|
56
|
-
gatewaySubnet: pulumi.OutputInstance<import("@pulumi/azure-native/types/output").network.SubnetResponse | undefined>;
|
|
57
|
-
firewallManageSubnet: pulumi.OutputInstance<import("@pulumi/azure-native/types/output").network.SubnetResponse | undefined>;
|
|
58
|
-
routeTable?: network.RouteTable;
|
|
59
|
-
firewallSubnet: pulumi.OutputInstance<import("@pulumi/azure-native/types/output").network.SubnetResponse | undefined>;
|
|
60
|
-
bastionSubnet: pulumi.OutputInstance<import("@pulumi/azure-native/types/output").network.SubnetResponse | undefined>;
|
|
61
|
-
findSubnet: (name: string) => pulumi.OutputInstance<import("@pulumi/azure-native/types/output").network.SubnetResponse | undefined>;
|
|
62
|
-
securityGroup: undefined | network.NetworkSecurityGroup;
|
|
63
|
-
publicIpAddress: import("@pulumi/azure-native/network/publicIPAddress").PublicIPAddress | undefined;
|
|
64
|
-
};
|
|
65
|
-
export default _default;
|
package/VNet/index.js
DELETED
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const network = __importStar(require("@pulumi/azure-native/network"));
|
|
30
|
-
const Firewall_1 = __importDefault(require("./Firewall"));
|
|
31
|
-
const NetworkPeering_1 = __importDefault(require("./NetworkPeering"));
|
|
32
|
-
const Vnet_1 = __importDefault(require("./Vnet"));
|
|
33
|
-
const Helper_1 = require("./Helper");
|
|
34
|
-
exports.default = ({ group, name, ddosId, addressSpace, publicIpAddress, subnets, features = {}, monitorConfig, ...others }) => {
|
|
35
|
-
const securities = features.securityGroup?.rules || [];
|
|
36
|
-
const routes = new Array();
|
|
37
|
-
if (publicIpAddress) {
|
|
38
|
-
//Add route from IpAddress to internet
|
|
39
|
-
if (features.enableFirewall) {
|
|
40
|
-
routes.push({
|
|
41
|
-
name: `firewall-to-internet`,
|
|
42
|
-
addressPrefix: publicIpAddress.ipAddress.apply((i) => `${i}/32`),
|
|
43
|
-
nextHopType: network.RouteNextHopType.Internet,
|
|
44
|
-
});
|
|
45
|
-
} //Allow Internet to public IpAddress security group
|
|
46
|
-
else if (features.securityGroup?.allowInboundInternetAccess)
|
|
47
|
-
securities.push({
|
|
48
|
-
name: 'allow-inbound-internet-publicIpAddress',
|
|
49
|
-
sourceAddressPrefix: '*',
|
|
50
|
-
sourcePortRange: '*',
|
|
51
|
-
destinationAddressPrefix: publicIpAddress.ipAddress.apply((i) => `${i}/32`),
|
|
52
|
-
destinationPortRanges: ['443', '80'],
|
|
53
|
-
protocol: 'TCP',
|
|
54
|
-
access: 'Allow',
|
|
55
|
-
direction: 'Inbound',
|
|
56
|
-
priority: 200 + securities.length + 1,
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
//Update Security Group
|
|
60
|
-
if (features.vnetPeering) {
|
|
61
|
-
features.vnetPeering.forEach((pp, index) => {
|
|
62
|
-
// The below rules should not be duplicated.
|
|
63
|
-
if (pp.firewallPrivateIpAddress) {
|
|
64
|
-
//Update route to firewall IpAddress
|
|
65
|
-
routes.push({
|
|
66
|
-
name: `vnet-to-firewall`,
|
|
67
|
-
addressPrefix: '0.0.0.0/0',
|
|
68
|
-
nextHopType: network.RouteNextHopType.VirtualAppliance,
|
|
69
|
-
nextHopIpAddress: pp.firewallPrivateIpAddress,
|
|
70
|
-
});
|
|
71
|
-
//Allow Vnet to Firewall
|
|
72
|
-
securities.push({
|
|
73
|
-
name: `allow-vnet-to-firewall`,
|
|
74
|
-
sourceAddressPrefix: '*',
|
|
75
|
-
sourcePortRange: '*',
|
|
76
|
-
destinationAddressPrefix: pp.firewallPrivateIpAddress,
|
|
77
|
-
destinationPortRange: '*',
|
|
78
|
-
protocol: '*',
|
|
79
|
-
access: 'Allow',
|
|
80
|
-
direction: 'Outbound',
|
|
81
|
-
priority: 100,
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
securities.push({
|
|
85
|
-
name: `allow-vnet-to-vnet-${index}`,
|
|
86
|
-
sourceAddressPrefix: 'VirtualNetwork',
|
|
87
|
-
sourcePortRange: '*',
|
|
88
|
-
destinationAddressPrefix: 'VirtualNetwork',
|
|
89
|
-
destinationPortRange: '*',
|
|
90
|
-
protocol: '*',
|
|
91
|
-
access: 'Allow',
|
|
92
|
-
direction: 'Outbound',
|
|
93
|
-
priority: 101,
|
|
94
|
-
});
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
//Vnet
|
|
98
|
-
const vnet = (0, Vnet_1.default)({
|
|
99
|
-
group,
|
|
100
|
-
name,
|
|
101
|
-
ddosId,
|
|
102
|
-
addressSpaces: addressSpace,
|
|
103
|
-
subnets,
|
|
104
|
-
features: {
|
|
105
|
-
securityGroup: features.securityGroup
|
|
106
|
-
? {
|
|
107
|
-
...features.securityGroup,
|
|
108
|
-
rules: securities,
|
|
109
|
-
}
|
|
110
|
-
: undefined,
|
|
111
|
-
routeTable: { rules: routes },
|
|
112
|
-
appGatewaySubnet: features.enableAppGateway
|
|
113
|
-
? {
|
|
114
|
-
addressPrefix: features.enableAppGateway.subnetPrefix,
|
|
115
|
-
version: 'v1',
|
|
116
|
-
}
|
|
117
|
-
: undefined,
|
|
118
|
-
firewall: features.enableFirewall
|
|
119
|
-
? {
|
|
120
|
-
addressPrefix: features.enableFirewall.subnetPrefix,
|
|
121
|
-
managementAddressPrefix: features.enableFirewall.managementSubnetPrefix,
|
|
122
|
-
}
|
|
123
|
-
: undefined,
|
|
124
|
-
bastion: features.enableBastion
|
|
125
|
-
? {
|
|
126
|
-
addressPrefix: features.enableBastion.subnetPrefix,
|
|
127
|
-
}
|
|
128
|
-
: undefined,
|
|
129
|
-
},
|
|
130
|
-
...others,
|
|
131
|
-
});
|
|
132
|
-
//Firewall
|
|
133
|
-
let firewall;
|
|
134
|
-
if (features.enableFirewall &&
|
|
135
|
-
!features.enableFirewall.disabledFirewallCreation) {
|
|
136
|
-
firewall = createFirewall({
|
|
137
|
-
name,
|
|
138
|
-
group,
|
|
139
|
-
policy: {
|
|
140
|
-
...features.enableFirewall.policy,
|
|
141
|
-
},
|
|
142
|
-
outbound: [
|
|
143
|
-
{
|
|
144
|
-
publicIpAddress: publicIpAddress,
|
|
145
|
-
subnetId: vnet.firewallSubnet.apply((c) => c.id),
|
|
146
|
-
},
|
|
147
|
-
],
|
|
148
|
-
management: features?.enableFirewall.managementSubnetPrefix
|
|
149
|
-
? {
|
|
150
|
-
subnetId: vnet.firewallManageSubnet.apply((c) => c.id),
|
|
151
|
-
}
|
|
152
|
-
: undefined,
|
|
153
|
-
sku: features.enableFirewall.sku,
|
|
154
|
-
routeTableName: vnet.routeTable?.name,
|
|
155
|
-
monitorConfig,
|
|
156
|
-
dependsOn: [vnet.vnet],
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
//Vnet Peering
|
|
160
|
-
if (features.vnetPeering) {
|
|
161
|
-
features.vnetPeering.map((pp) => {
|
|
162
|
-
const info = (0, Helper_1.parseVnetInfoFromId)(pp.vnetId);
|
|
163
|
-
(0, NetworkPeering_1.default)({
|
|
164
|
-
firstVnet: {
|
|
165
|
-
vnetName: vnet.vnet.name,
|
|
166
|
-
resourceGroupName: group.resourceGroupName,
|
|
167
|
-
},
|
|
168
|
-
secondVnet: info,
|
|
169
|
-
});
|
|
170
|
-
//Update route to firewall IpAddress
|
|
171
|
-
// if (pp.firewallPrivateIpAddress && vnet.routeTable) {
|
|
172
|
-
// new NetworkRouteResource(
|
|
173
|
-
// `${name}-vnet-to-firewall`,
|
|
174
|
-
// {
|
|
175
|
-
// routeName: "vnet-to-firewall",
|
|
176
|
-
// ...group,
|
|
177
|
-
// routeTableName: vnet.routeTable.name,
|
|
178
|
-
// addressPrefix: "0.0.0.0/0",
|
|
179
|
-
// nextHopType: network.RouteNextHopType.VirtualAppliance,
|
|
180
|
-
// nextHopIpAddress: pp.firewallPrivateIpAddress,
|
|
181
|
-
// },
|
|
182
|
-
// {
|
|
183
|
-
// dependsOn: vnet.routeTable,
|
|
184
|
-
// },
|
|
185
|
-
// );
|
|
186
|
-
// }
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
//Return the results
|
|
190
|
-
return { publicIpAddress, ...vnet, firewall };
|
|
191
|
-
};
|
|
192
|
-
const createFirewall = ({ name, group, routeTableName, dependsOn = [], ...others }) => {
|
|
193
|
-
const rs = (0, Firewall_1.default)({
|
|
194
|
-
name,
|
|
195
|
-
group,
|
|
196
|
-
...others,
|
|
197
|
-
dependsOn,
|
|
198
|
-
});
|
|
199
|
-
// if (routeTableName) {
|
|
200
|
-
// //Route Vnet to Firewall
|
|
201
|
-
// new NetworkRouteResource(
|
|
202
|
-
// `${name}-vnet-to-firewall`,
|
|
203
|
-
// {
|
|
204
|
-
// routeName: `vnet-to-firewall`,
|
|
205
|
-
// ...group,
|
|
206
|
-
// routeTableName: routeTableName,
|
|
207
|
-
// addressPrefix: '0.0.0.0/0',
|
|
208
|
-
// nextHopType: network.RouteNextHopType.VirtualAppliance,
|
|
209
|
-
// nextHopIpAddress: rs.firewall.ipConfigurations.apply((c) =>
|
|
210
|
-
// c ? c[0].privateIPAddress : '',
|
|
211
|
-
// ),
|
|
212
|
-
// },
|
|
213
|
-
// {
|
|
214
|
-
// dependsOn: [rs.firewall],
|
|
215
|
-
// },
|
|
216
|
-
// );
|
|
217
|
-
// }
|
|
218
|
-
return rs;
|
|
219
|
-
};
|
|
220
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVk5ldC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsc0VBQXdEO0FBTXhELDBEQUFtRTtBQUVuRSxzRUFBMkM7QUFFM0Msa0RBQTBCO0FBQzFCLHFDQUErQztBQTZDL0Msa0JBQWUsQ0FBQyxFQUNkLEtBQUssRUFDTCxJQUFJLEVBQ0osTUFBTSxFQUNOLFlBQVksRUFDWixlQUFlLEVBQ2YsT0FBTyxFQUNQLFFBQVEsR0FBRyxFQUFFLEVBQ2IsYUFBYSxFQUNiLEdBQUcsTUFBTSxFQUNILEVBQUUsRUFBRTtJQUNWLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxhQUFhLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQztJQUN2RCxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBbUMsQ0FBQztJQUU1RCxJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ3BCLHNDQUFzQztRQUN0QyxJQUFJLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUM1QixNQUFNLENBQUMsSUFBSSxDQUFDO2dCQUNWLElBQUksRUFBRSxzQkFBc0I7Z0JBQzVCLGFBQWEsRUFBRSxlQUFlLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztnQkFDaEUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRO2FBQy9DLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxtREFBbUQ7YUFDaEQsSUFBSSxRQUFRLENBQUMsYUFBYSxFQUFFLDBCQUEwQjtZQUN6RCxVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUNkLElBQUksRUFBRSx3Q0FBd0M7Z0JBQzlDLG1CQUFtQixFQUFFLEdBQUc7Z0JBQ3hCLGVBQWUsRUFBRSxHQUFHO2dCQUNwQix3QkFBd0IsRUFBRSxlQUFlLENBQUMs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
|
package/Web/Helpers.d.ts
DELETED
package/Web/Helpers.js
DELETED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.getCertificateForDomain = void 0;
|
|
27
|
-
const Axios_1 = require("@drunk-pulumi/azure-providers/Tools/Axios");
|
|
28
|
-
const Helper_1 = require("../KeyVault/Helper");
|
|
29
|
-
const Naming_1 = require("../Common/Naming");
|
|
30
|
-
const global = __importStar(require("../Common/GlobalEnv"));
|
|
31
|
-
/**Get current certificate from Cert order by domain name*/
|
|
32
|
-
const getCertificateForDomain = async (domain) => {
|
|
33
|
-
const orderName = (0, Naming_1.getCertOrderName)(domain);
|
|
34
|
-
const axios = (0, Axios_1.createAxios)();
|
|
35
|
-
const url = `/resourceGroups/${global.groupInfo.resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/${orderName}/certificates?api-version=2015-08-01`;
|
|
36
|
-
const rs = await axios
|
|
37
|
-
.get(url)
|
|
38
|
-
.then((rs) => rs.data)
|
|
39
|
-
.catch((err) => {
|
|
40
|
-
console.error('getCertOrderInfo: Error ', err);
|
|
41
|
-
return undefined;
|
|
42
|
-
});
|
|
43
|
-
const info = rs?.value ? rs.value[0] : undefined;
|
|
44
|
-
if (!info)
|
|
45
|
-
return undefined;
|
|
46
|
-
const cert = await (0, Helper_1.getSecret)({
|
|
47
|
-
name: info.properties.keyVaultSecretName,
|
|
48
|
-
vaultInfo: global.keyVaultInfo,
|
|
49
|
-
});
|
|
50
|
-
if (!cert)
|
|
51
|
-
return undefined;
|
|
52
|
-
return {
|
|
53
|
-
name: cert.name,
|
|
54
|
-
base64CertData: cert.value,
|
|
55
|
-
thumbprint: cert.properties.tags['Thumbprint'],
|
|
56
|
-
};
|
|
57
|
-
};
|
|
58
|
-
exports.getCertificateForDomain = getCertificateForDomain;
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9XZWIvSGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHFFQUF3RTtBQUN4RSwrQ0FBK0M7QUFDL0MsNkNBQW9EO0FBQ3BELDREQUE4QztBQVU5QywyREFBMkQ7QUFDcEQsTUFBTSx1QkFBdUIsR0FBRyxLQUFLLEVBQUUsTUFBYyxFQUFFLEVBQUU7SUFDOUQsTUFBTSxTQUFTLEdBQUcsSUFBQSx5QkFBZ0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUMzQyxNQUFNLEtBQUssR0FBRyxJQUFBLG1CQUFXLEdBQUUsQ0FBQztJQUU1QixNQUFNLEdBQUcsR0FBRyxtQkFBbUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsa0VBQWtFLFNBQVMsc0NBQXNDLENBQUM7SUFDbkwsTUFBTSxFQUFFLEdBQUcsTUFBTSxLQUFLO1NBQ25CLEdBQUcsQ0FBVyxHQUFHLENBQUM7U0FDbEIsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDO1NBQ3JCLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ2IsT0FBTyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUMvQyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDLENBQUMsQ0FBQztJQUVMLE1BQU0sSUFBSSxHQUFHLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNqRCxJQUFJLENBQUMsSUFBSTtRQUFFLE9BQU8sU0FBUyxDQUFDO0lBRTVCLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBQSxrQkFBUyxFQUFDO1FBQzNCLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQjtRQUN4QyxTQUFTLEVBQUUsTUFBTSxDQUFDLFlBQVk7S0FDL0IsQ0FBQyxDQUFDO0lBRUgsSUFBSSxDQUFDLElBQUk7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUU1QixPQUFPO1FBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1FBQ2YsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFNO1FBQzNCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUssQ0FBQyxZQUFZLENBQUM7S0FDaEQsQ0FBQztBQUNKLENBQUMsQ0FBQztBQTVCVyxRQUFBLHVCQUF1QiwyQkE0QmxDIn0=
|