@drunk-pulumi/azure 1.0.3 → 1.0.4
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.js +4 -3
- package/Aks/Identity.js +3 -3
- package/Aks/index.d.ts +8 -7
- package/Aks/index.js +73 -57
- package/Automation/index.d.ts +1 -1
- package/Automation/index.js +5 -5
- package/AzAd/EnvRoles.Consts.d.ts +11 -7
- package/AzAd/EnvRoles.Consts.js +43 -50
- package/AzAd/EnvRoles.d.ts +3 -3
- package/AzAd/EnvRoles.js +10 -10
- package/AzAd/Group.d.ts +2 -2
- package/AzAd/Group.js +12 -12
- package/AzAd/Identities/AzDevOpsIdentity.d.ts +1 -1
- package/AzAd/Identities/AzDevOpsIdentity.js +9 -6
- package/AzAd/Identities/AzDevOpsManagedIdentity.d.ts +2 -2
- package/AzAd/Identities/AzDevOpsManagedIdentity.js +6 -3
- package/AzAd/RoleAssignment.d.ts +3 -3
- package/AzAd/RoleAssignment.js +3 -3
- package/AzAd/RoleDefinitions/JustInTimeRequestRole.js +10 -10
- package/Builder/AksBuilder.js +15 -1
- package/Builder/PrivateDnsZoneBuilder.d.ts +2 -1
- package/Builder/PrivateDnsZoneBuilder.js +41 -23
- package/Builder/ResourceBuilder.js +12 -6
- package/Builder/SqlBuilder.js +7 -1
- package/Builder/StorageBuilder.js +14 -14
- package/Builder/VaultBuilder.d.ts +2 -1
- package/Builder/VaultBuilder.js +8 -1
- package/Builder/types/resourceBuilder.d.ts +2 -0
- package/Builder/types/sqlBuilder.d.ts +2 -1
- package/Builder/types/storageBuilder.d.ts +10 -8
- package/Builder/types/vaultBuilder.d.ts +6 -1
- package/Cdn/CdnEndpoint.d.ts +2 -3
- package/Cdn/CdnEndpoint.js +15 -17
- package/Cdn/CdnRules.d.ts +6 -2
- package/Cdn/CdnRules.js +51 -56
- package/Certificate/index.d.ts +2 -2
- package/Certificate/index.js +29 -29
- package/Common/AzureEnv.d.ts +2 -3
- package/Common/AzureEnv.js +21 -8
- package/Common/Naming/index.d.ts +1 -1
- package/Common/Naming/index.js +65 -61
- package/Common/index.d.ts +11 -6
- package/Common/index.js +6 -1
- package/ContainerRegistry/index.d.ts +5 -5
- package/ContainerRegistry/index.js +75 -50
- package/Core/KeyGenerators.d.ts +5 -5
- package/Core/KeyGenerators.js +5 -5
- package/CustomRoles/index.js +3 -3
- package/KeyVault/CustomHelper.d.ts +4 -4
- package/KeyVault/CustomHelper.js +7 -7
- package/KeyVault/Helper.js +12 -9
- package/Logs/Helpers.d.ts +1 -1
- package/RedisCache/index.d.ts +2 -2
- package/RedisCache/index.js +10 -5
- package/SignalR/index.d.ts +4 -4
- package/SignalR/index.js +26 -21
- package/Sql/SqlDb.js +2 -3
- package/Sql/index.d.ts +3 -4
- package/Sql/index.js +11 -11
- package/Storage/Helper.d.ts +1 -1
- package/Storage/index.d.ts +2 -3
- package/Storage/index.js +2 -2
- package/VNet/FirewallPolicies/AksFirewallPolicy.d.ts +2 -2
- package/VNet/FirewallPolicies/AksFirewallPolicy.js +107 -117
- package/VNet/FirewallPolicies/CloudPCFirewallPolicy.d.ts +4 -3
- package/VNet/FirewallPolicies/CloudPCFirewallPolicy.js +150 -132
- package/VNet/Helper.d.ts +1 -0
- package/VNet/Helper.js +25 -19
- package/VNet/index.d.ts +9 -9
- package/VNet/index.js +58 -49
- package/VNet/types.d.ts +9 -6
- package/package.json +6 -6
|
@@ -23,6 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.from = void 0;
|
|
26
27
|
const network = __importStar(require("@pulumi/azure-native/network"));
|
|
27
28
|
const native = __importStar(require("@pulumi/azure-native"));
|
|
28
29
|
const pulumi_1 = require("@pulumi/pulumi");
|
|
@@ -32,16 +33,22 @@ class PrivateDnsZoneBuilder {
|
|
|
32
33
|
_aRecords = [];
|
|
33
34
|
_vnetLinks = [];
|
|
34
35
|
commonProps;
|
|
36
|
+
_dnsInfo = undefined;
|
|
35
37
|
_zoneInstance = undefined;
|
|
36
|
-
constructor(
|
|
38
|
+
constructor(props) {
|
|
39
|
+
if ('id' in props)
|
|
40
|
+
this._dnsInfo = props;
|
|
37
41
|
this.commonProps = {
|
|
38
|
-
...
|
|
42
|
+
...props,
|
|
39
43
|
group: {
|
|
40
|
-
resourceGroupName: group.resourceGroupName,
|
|
44
|
+
resourceGroupName: props.group.resourceGroupName,
|
|
41
45
|
location: GlobalEnv_1.globalKeyName,
|
|
42
46
|
},
|
|
43
47
|
};
|
|
44
48
|
}
|
|
49
|
+
static from(info) {
|
|
50
|
+
return new PrivateDnsZoneBuilder(info);
|
|
51
|
+
}
|
|
45
52
|
linkTo(props) {
|
|
46
53
|
this._vnetLinks.push(props);
|
|
47
54
|
return this;
|
|
@@ -51,23 +58,35 @@ class PrivateDnsZoneBuilder {
|
|
|
51
58
|
return this;
|
|
52
59
|
}
|
|
53
60
|
buildZone() {
|
|
61
|
+
if (this._dnsInfo)
|
|
62
|
+
return;
|
|
54
63
|
const { name, group, dependsOn } = this.commonProps;
|
|
55
64
|
this._zoneInstance = new network.PrivateZone(name, {
|
|
56
65
|
privateZoneName: name,
|
|
57
66
|
...group,
|
|
58
67
|
}, { dependsOn });
|
|
59
|
-
this.
|
|
60
|
-
|
|
61
|
-
:
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
this._dnsInfo = {
|
|
69
|
+
name: this.commonProps.name,
|
|
70
|
+
group: this.commonProps.group,
|
|
71
|
+
id: this._zoneInstance.id,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
buildRecords() {
|
|
75
|
+
this._aRecords.forEach((a, index) => {
|
|
76
|
+
const n = a.recordName === '*'
|
|
77
|
+
? `All-${index}-ARecord`
|
|
78
|
+
: a.recordName === '@'
|
|
79
|
+
? `Root-${index}-ARecord`
|
|
80
|
+
: `${a.recordName}-ARecord`;
|
|
81
|
+
return new network.PrivateRecordSet(`${this._dnsInfo.name}-${n}`, {
|
|
82
|
+
privateZoneName: this._dnsInfo.name,
|
|
83
|
+
...this._dnsInfo.group,
|
|
84
|
+
relativeRecordSetName: a.recordName,
|
|
85
|
+
recordType: 'A',
|
|
86
|
+
aRecords: a.ipAddresses.map((i) => ({ ipv4Address: i })),
|
|
87
|
+
ttl: 3600,
|
|
88
|
+
}, { dependsOn: this._zoneInstance, deleteBeforeReplace: true });
|
|
89
|
+
});
|
|
71
90
|
}
|
|
72
91
|
buildVnetLinks() {
|
|
73
92
|
if (this._vnetLinks.length <= 0)
|
|
@@ -79,8 +98,8 @@ class PrivateDnsZoneBuilder {
|
|
|
79
98
|
...(lik.vnetIds ?? []),
|
|
80
99
|
].map((v, i) => {
|
|
81
100
|
return new native.network.VirtualNetworkLink(`${this.commonProps.name.split('.')[0]}-${index}-${i}-link`, {
|
|
82
|
-
|
|
83
|
-
|
|
101
|
+
privateZoneName: this._dnsInfo.name,
|
|
102
|
+
...this._dnsInfo.group,
|
|
84
103
|
registrationEnabled: Boolean(lik.registrationEnabled),
|
|
85
104
|
virtualNetwork: { id: v },
|
|
86
105
|
}, { dependsOn: this._zoneInstance, deleteBeforeReplace: true });
|
|
@@ -88,13 +107,12 @@ class PrivateDnsZoneBuilder {
|
|
|
88
107
|
}
|
|
89
108
|
build() {
|
|
90
109
|
this.buildZone();
|
|
110
|
+
this.buildRecords();
|
|
91
111
|
this.buildVnetLinks();
|
|
92
|
-
return
|
|
93
|
-
name: this.commonProps.name,
|
|
94
|
-
group: this.commonProps.group,
|
|
95
|
-
id: this._zoneInstance.id,
|
|
96
|
-
};
|
|
112
|
+
return this._dnsInfo;
|
|
97
113
|
}
|
|
98
114
|
}
|
|
115
|
+
const from = (info) => PrivateDnsZoneBuilder.from(info);
|
|
116
|
+
exports.from = from;
|
|
99
117
|
exports.default = (props) => new PrivateDnsZoneBuilder(props);
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJpdmF0ZURuc1pvbmVCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0J1aWxkZXIvUHJpdmF0ZURuc1pvbmVCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsc0VBQXdEO0FBS3hELDZEQUErQztBQUMvQywyQ0FBd0M7QUFDeEMsMkNBQXVEO0FBQ3ZELG1EQUFvRDtBQUVwRCxNQUFNLHFCQUFxQjtJQUNqQixTQUFTLEdBQXlCLEVBQUUsQ0FBQztJQUNyQyxVQUFVLEdBQW9DLEVBQUUsQ0FBQztJQUN4QyxXQUFXLENBQW9CO0lBRXhDLFFBQVEsR0FBNkIsU0FBUyxDQUFDO0lBQy9DLGFBQWEsR0FBb0MsU0FBUyxDQUFDO0lBRW5FLFlBQW1CLEtBQXdCO1FBQ3pDLElBQUksSUFBSSxJQUFJLEtBQUs7WUFBRSxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQXFCLENBQUM7UUFDekQsSUFBSSxDQUFDLFdBQVcsR0FBRztZQUNqQixHQUFHLEtBQUs7WUFDUixLQUFLLEVBQUU7Z0JBQ0wsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxpQkFBaUI7Z0JBQ2hELFFBQVEsRUFBRSx5QkFBYTthQUN4QjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFrQjtRQUNuQyxPQUFPLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFvQztRQUN6QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBeUI7UUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lB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
|
|
@@ -31,9 +31,8 @@ const ResourceGroup_1 = __importDefault(require("../Core/ResourceGroup"));
|
|
|
31
31
|
const KeyVault_1 = require("../KeyVault");
|
|
32
32
|
const VnetBuilder_1 = __importDefault(require("./VnetBuilder"));
|
|
33
33
|
const azure_providers_1 = require("@drunk-pulumi/azure-providers");
|
|
34
|
-
const
|
|
34
|
+
const Common_1 = require("../Common");
|
|
35
35
|
const VaultBuilder_1 = __importStar(require("./VaultBuilder"));
|
|
36
|
-
const AzureEnv_2 = require("../Common/AzureEnv");
|
|
37
36
|
class ResourceBuilder {
|
|
38
37
|
name;
|
|
39
38
|
_createRGProps = undefined;
|
|
@@ -50,6 +49,7 @@ class ResourceBuilder {
|
|
|
50
49
|
_vaultInfo = undefined;
|
|
51
50
|
_vnetBuilder = undefined;
|
|
52
51
|
_secrets = {};
|
|
52
|
+
_certs = {};
|
|
53
53
|
_vaultLinkingProps = undefined;
|
|
54
54
|
_otherResources = [];
|
|
55
55
|
//Instances
|
|
@@ -91,7 +91,7 @@ class ResourceBuilder {
|
|
|
91
91
|
return this;
|
|
92
92
|
}
|
|
93
93
|
getVaultInfoBy(name) {
|
|
94
|
-
return this.withVault((0,
|
|
94
|
+
return this.withVault((0, Common_1.getKeyVaultInfo)(name));
|
|
95
95
|
}
|
|
96
96
|
linkVaultTo(props) {
|
|
97
97
|
this._vaultLinkingProps = props;
|
|
@@ -101,6 +101,10 @@ class ResourceBuilder {
|
|
|
101
101
|
this._secrets = { ...this._secrets, ...items };
|
|
102
102
|
return this;
|
|
103
103
|
}
|
|
104
|
+
addCerts(props) {
|
|
105
|
+
this._certs[props.name] = props;
|
|
106
|
+
return this;
|
|
107
|
+
}
|
|
104
108
|
withVnet(props) {
|
|
105
109
|
this._vnetBuilder = props;
|
|
106
110
|
return this;
|
|
@@ -137,7 +141,7 @@ class ResourceBuilder {
|
|
|
137
141
|
return;
|
|
138
142
|
if (!this._createRGProps)
|
|
139
143
|
this._createRGProps = {
|
|
140
|
-
enableRGRoles: Boolean(this._envRoles),
|
|
144
|
+
enableRGRoles: { readOnly: Boolean(this._envRoles) },
|
|
141
145
|
enableVaultRoles: this._createVault,
|
|
142
146
|
};
|
|
143
147
|
const rs = (0, ResourceGroup_1.default)({
|
|
@@ -170,6 +174,8 @@ class ResourceBuilder {
|
|
|
170
174
|
//Add Secrets to Vaults
|
|
171
175
|
if (this._secrets)
|
|
172
176
|
this._vaultInfo.addSecrets(this._secrets);
|
|
177
|
+
if (this._certs)
|
|
178
|
+
this._vaultInfo.addCerts(this._certs);
|
|
173
179
|
}
|
|
174
180
|
//This linking need to be called after Vnet created
|
|
175
181
|
buildVaultLinking() {
|
|
@@ -187,7 +193,7 @@ class ResourceBuilder {
|
|
|
187
193
|
new azure_providers_1.VaultNetworkResource(`${this.name}-vault`, {
|
|
188
194
|
vaultName: this._vaultInfo.name,
|
|
189
195
|
resourceGroupName: this._vaultInfo.group.resourceGroupName,
|
|
190
|
-
subscriptionId:
|
|
196
|
+
subscriptionId: Common_1.subscriptionId,
|
|
191
197
|
subnetIds: subIds,
|
|
192
198
|
ipAddresses: ipAddresses,
|
|
193
199
|
}, { dependsOn: this._RGInstance ?? this._vnetInstance?.vnet });
|
|
@@ -245,4 +251,4 @@ class ResourceBuilder {
|
|
|
245
251
|
}
|
|
246
252
|
}
|
|
247
253
|
exports.default = (name) => new ResourceBuilder(name);
|
|
248
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
254
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzb3VyY2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0J1aWxkZXIvUmVzb3VyY2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFjQSwrQ0FLMEI7QUFFMUIsMEVBQXVDO0FBRXZDLDBDQUFxRDtBQUVyRCxnRUFBd0M7QUFDeEMsbUVBQXFFO0FBQ3JFLHNDQUE0RDtBQUU1RCwrREFBbUU7QUFFbkUsTUFBTSxlQUFlO0lBaUNBO0lBMUJYLGNBQWMsR0FBZ0MsU0FBUyxDQUFDO0lBQ3hELFNBQVMsR0FBWSxLQUFLLENBQUM7SUFDM0IsT0FBTyxHQUFrQyxTQUFTLENBQUM7SUFDbkQsS0FBSyxHQUFZLEtBQUssQ0FBQztJQUN2QixXQUFXLEdBQVksS0FBSyxDQUFDO0lBQzdCLFlBQVksR0FBWSxLQUFLLENBQUM7SUFDOUIsZ0JBQWdCLEdBQXVCLFNBQVMsQ0FBQztJQUNqRCxtQkFBbUIsR0FBWSxLQUFLLENBQUM7SUFDckMsU0FBUyxHQUFnQyxTQUFTLENBQUM7SUFDbkQsY0FBYyxHQUFHLElBQUksS0FBSyxFQUF1QixDQUFDO0lBQ2xELG1CQUFtQixHQUFHLElBQUksS0FBSyxFQUE0QixDQUFDO0lBQzVELFVBQVUsR0FBcUMsU0FBUyxDQUFDO0lBQ3pELFlBQVksR0FBd0MsU0FBUyxDQUFDO0lBQzlELFFBQVEsR0FBa0MsRUFBRSxDQUFDO0lBQzdDLE1BQU0sR0FBb0MsRUFBRSxDQUFDO0lBRTdDLGtCQUFrQixHQUN4QixTQUFTLENBQUM7SUFDSixlQUFlLEdBQXVCLEVBQUUsQ0FBQztJQUVqRCxXQUFXO0lBQ0gsV0FBVyxHQUE4QixTQUFTLENBQUM7SUFDbkQsaUJBQWlCLEdBQW1DLFNBQVMsQ0FBQztJQUM5RCxlQUFlLEdBQWlDLEVBQUUsQ0FBQztJQUNuRCxhQUFhLEdBQW1DLFNBQVMsQ0FBQztJQUVsRSxZQUFtQixJQUFZO1FBQVosU0FBSSxH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
|
package/Builder/SqlBuilder.js
CHANGED
|
@@ -18,6 +18,7 @@ class SqlBuilder extends types_1.Builder {
|
|
|
18
18
|
_databasesProps = {};
|
|
19
19
|
_defaultSku = 'S0';
|
|
20
20
|
_vulnerabilityAssessment = undefined;
|
|
21
|
+
_ignoreChanges = undefined;
|
|
21
22
|
constructor(props) {
|
|
22
23
|
super(props);
|
|
23
24
|
}
|
|
@@ -73,6 +74,10 @@ class SqlBuilder extends types_1.Builder {
|
|
|
73
74
|
this._loginInfo = props;
|
|
74
75
|
return this;
|
|
75
76
|
}
|
|
77
|
+
ignoreChangesFrom(...props) {
|
|
78
|
+
this._ignoreChanges = props;
|
|
79
|
+
return this;
|
|
80
|
+
}
|
|
76
81
|
buildLogin() {
|
|
77
82
|
if (!this._generateLogin)
|
|
78
83
|
return;
|
|
@@ -111,6 +116,7 @@ class SqlBuilder extends types_1.Builder {
|
|
|
111
116
|
network: this._networkProps,
|
|
112
117
|
elasticPool: this._elasticPoolProps,
|
|
113
118
|
databases: this._databasesProps,
|
|
119
|
+
ignoreChanges: this._ignoreChanges,
|
|
114
120
|
});
|
|
115
121
|
}
|
|
116
122
|
build() {
|
|
@@ -120,4 +126,4 @@ class SqlBuilder extends types_1.Builder {
|
|
|
120
126
|
}
|
|
121
127
|
}
|
|
122
128
|
exports.default = (props) => new SqlBuilder(props);
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3FsQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9CdWlsZGVyL1NxbEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxpREFBNkU7QUFFN0UsbUNBZWlCO0FBQ2pCLDJDQUE2QztBQUU3QyxNQUFNLFVBQ0osU0FBUSxlQUFtQjtJQVEzQixXQUFXO0lBQ0gsWUFBWSxHQUEyQixTQUFTLENBQUM7SUFFekQsUUFBUTtJQUNBLGNBQWMsR0FBWSxLQUFLLENBQUM7SUFDaEMsVUFBVSxHQUFrQyxTQUFTLENBQUM7SUFDdEQsWUFBWSxHQUE4QixFQUFFLENBQUM7SUFDN0MsYUFBYSxHQUErQixTQUFTLENBQUM7SUFDdEQsaUJBQWlCLEdBQW1DLFNBQVMsQ0FBQztJQUM5RCxlQUFlLEdBQXVDLEVBQUUsQ0FBQztJQUN6RCxXQUFXLEdBQWEsSUFBSSxDQUFDO0lBQzdCLHdCQUF3QixHQUVoQixTQUFTLENBQUM7SUFDbEIsY0FBYyxHQUF5QixTQUFTLENBQUM7SUFFekQsWUFBWSxLQUFtQjtRQUM3QixLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRUQsMkJBQTJCLENBQ3pCLEtBQTRDO1FBRTVDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxLQUFLLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sZUFBZSxDQUFDLEtBQXlCO1FBQzlDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ00sUUFBUSxDQUFDLEdBQWE7UUFDM0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ00sYUFBYSxDQUFDLEtBQXVCO1FBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRztZQUFFLEtBQUssQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFdB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
|
|
@@ -8,6 +8,9 @@ const CdnEndpoint_1 = __importDefault(require("../Cdn/CdnEndpoint"));
|
|
|
8
8
|
const CdnRules_1 = require("../Cdn/CdnRules");
|
|
9
9
|
const types_1 = require("./types");
|
|
10
10
|
class StorageBuilder extends types_1.Builder {
|
|
11
|
+
//Instance
|
|
12
|
+
_storageInstance = undefined;
|
|
13
|
+
//Props
|
|
11
14
|
_type = 'storage';
|
|
12
15
|
_policies = undefined;
|
|
13
16
|
_features = {};
|
|
@@ -17,12 +20,12 @@ class StorageBuilder extends types_1.Builder {
|
|
|
17
20
|
_cdnProps = undefined;
|
|
18
21
|
_network = undefined;
|
|
19
22
|
_lock = false;
|
|
20
|
-
_storageInstance = undefined;
|
|
21
23
|
constructor(props) {
|
|
22
24
|
super(props);
|
|
23
25
|
}
|
|
24
|
-
asStorage() {
|
|
26
|
+
asStorage(props = {}) {
|
|
25
27
|
this._type = 'storage';
|
|
28
|
+
this._features = props;
|
|
26
29
|
return this;
|
|
27
30
|
}
|
|
28
31
|
asStaticWebStorage() {
|
|
@@ -49,10 +52,6 @@ class StorageBuilder extends types_1.Builder {
|
|
|
49
52
|
this._policies = props;
|
|
50
53
|
return this;
|
|
51
54
|
}
|
|
52
|
-
withFeature(props) {
|
|
53
|
-
this._features = props;
|
|
54
|
-
return this;
|
|
55
|
-
}
|
|
56
55
|
withNetwork(props) {
|
|
57
56
|
this._network = props;
|
|
58
57
|
return this;
|
|
@@ -77,17 +76,18 @@ class StorageBuilder extends types_1.Builder {
|
|
|
77
76
|
});
|
|
78
77
|
}
|
|
79
78
|
buildCDN() {
|
|
80
|
-
if (!this._cdnProps)
|
|
79
|
+
if (!this._cdnProps || !this._storageInstance?.instance)
|
|
81
80
|
return;
|
|
82
|
-
const securityHeaders = this._cdnProps
|
|
83
|
-
|
|
81
|
+
const securityHeaders = this._cdnProps
|
|
82
|
+
.securityResponse
|
|
83
|
+
? (0, CdnRules_1.getDefaultResponseHeaders)(this._cdnProps.securityResponse)
|
|
84
|
+
: undefined;
|
|
84
85
|
//Create Azure CDN if customDomain provided
|
|
85
|
-
const origin = `${this._storageInstance.name}.z23.web.core.windows.net`;
|
|
86
86
|
(0, CdnEndpoint_1.default)({
|
|
87
|
-
name: this._storageInstance.name,
|
|
88
87
|
...this._cdnProps,
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
name: this._storageInstance.name,
|
|
89
|
+
origin: this._storageInstance.instance.primaryEndpoints.apply((p) => p.web.replace('https://', '').slice(0, -1)),
|
|
90
|
+
securityResponseHeaders: securityHeaders,
|
|
91
91
|
dependsOn: this._storageInstance?.instance,
|
|
92
92
|
});
|
|
93
93
|
}
|
|
@@ -98,4 +98,4 @@ class StorageBuilder extends types_1.Builder {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
exports.default = (props) => new StorageBuilder(props);
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RvcmFnZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQnVpbGRlci9TdG9yYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHlEQUtvQjtBQUNwQixxRUFBNkM7QUFDN0MsOENBQTREO0FBRTVELG1DQVNpQjtBQUVqQixNQUFNLGNBQ0osU0FBUSxlQUFxQjtJQUc3QixVQUFVO0lBQ0YsZ0JBQWdCLEdBQStCLFNBQVMsQ0FBQztJQUVqRSxPQUFPO0lBQ0MsS0FBSyxHQUE0QixTQUFTLENBQUM7SUFDM0MsU0FBUyxHQUFrQyxTQUFTLENBQUM7SUFDckQsU0FBUyxHQUE4QixFQUFFLENBQUM7SUFDMUMsV0FBVyxHQUFxQixFQUFFLENBQUM7SUFDbkMsT0FBTyxHQUFhLEVBQUUsQ0FBQztJQUN2QixXQUFXLEdBQWEsRUFBRSxDQUFDO0lBQzNCLFNBQVMsR0FBK0IsU0FBUyxDQUFDO0lBQ2xELFFBQVEsR0FBbUMsU0FBUyxDQUFDO0lBQ3JELEtBQUssR0FBWSxLQUFLLENBQUM7SUFFL0IsWUFBbUIsS0FBbUI7UUFDcEMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2YsQ0FBQztJQUNNLFNBQVMsQ0FBQyxRQUFtQyxFQUFFO1FBQ3BELElBQUksQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDTSxPQUFPLENBQUMsS0FBcUI7UUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ00sYUFBYSxDQUFDLEtBQXFCO1FBQ3hDLElBQUksQ0FBQyxXQUFXLENB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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BuilderProps } from './types';
|
|
2
|
-
import { IVaultBuilder, IVaultBuilderResults } from './types/vaultBuilder';
|
|
2
|
+
import { CertBuilderType, IVaultBuilder, IVaultBuilderResults } from './types/vaultBuilder';
|
|
3
3
|
import { KeyVaultInfo, ResourceGroupInfo } from '../types';
|
|
4
4
|
import { Input, Output } from '@pulumi/pulumi';
|
|
5
5
|
export declare class VaultBuilderResults implements IVaultBuilderResults {
|
|
@@ -16,6 +16,7 @@ export declare class VaultBuilderResults implements IVaultBuilderResults {
|
|
|
16
16
|
}): IVaultBuilderResults;
|
|
17
17
|
privateLinkTo(subnetIds: Input<string>[]): IVaultBuilderResults;
|
|
18
18
|
addSecrets(items: Record<string, Input<string>>): IVaultBuilderResults;
|
|
19
|
+
addCerts(items: Record<string, CertBuilderType>): IVaultBuilderResults;
|
|
19
20
|
}
|
|
20
21
|
declare const _default: (props: Omit<BuilderProps, "vaultInfo">) => IVaultBuilder;
|
|
21
22
|
export default _default;
|
package/Builder/VaultBuilder.js
CHANGED
|
@@ -79,6 +79,13 @@ class VaultBuilderResults {
|
|
|
79
79
|
});
|
|
80
80
|
return this;
|
|
81
81
|
}
|
|
82
|
+
addCerts(items) {
|
|
83
|
+
Object.keys(items).map((key) => {
|
|
84
|
+
const val = items[key];
|
|
85
|
+
return new azure_providers_1.VaultCertResource(val.name, { ...val, vaultName: this.vaultInfo.name });
|
|
86
|
+
});
|
|
87
|
+
return this;
|
|
88
|
+
}
|
|
82
89
|
}
|
|
83
90
|
exports.VaultBuilderResults = VaultBuilderResults;
|
|
84
91
|
class VaultBuilder {
|
|
@@ -99,4 +106,4 @@ class VaultBuilder {
|
|
|
99
106
|
}
|
|
100
107
|
}
|
|
101
108
|
exports.default = (props) => new VaultBuilder(props);
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmF1bHRCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0J1aWxkZXIvVmF1bHRCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsd0RBQTREO0FBRzVELG1FQUd1QztBQUN2QyxpREFBb0Q7QUFDcEQsMkRBQTJEO0FBRTNELE1BQWEsbUJBQW1CO0lBQ087SUFBckMsWUFBcUMsU0FBdUI7UUFBdkIsY0FBUyxHQUFULFNBQVMsQ0FBYztJQUFHLENBQUM7SUFFekQsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUF1QjtRQUN4QyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ2hELE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUN2RCxPQUFPLElBQUksbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUNELElBQVcsRUFBRTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUNNLElBQUk7UUFDVCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUdiO1FBQ0MsSUFBSSxzQ0FBb0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxhQUFhLEVBQUU7WUFDNUQsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSTtZQUM5QixpQkFBaUIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxpQkFBaUI7WUFDekQsY0FBYyxFQUFkLHlCQUFjO1lBQ2QsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU0sYUFBYSxDQUFDLFNBQTBCO1FBQzdDLElBQUEsaUNBQXNCLEVBQUM7WUFDckIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFNBQVM7U0FDVixDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxVQUFVLENBQ2YsS0FBb0M7UUFFcEMsdUJBQXVCO1FBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDN0IsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sSUFBQSw4QkFBZSxFQUFDO2dCQUNyQixJQUFJLEVBQUUsR0FBRztnQkFDVCxLQUFLLEVBQUUsR0FBRztnQkFDVixXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxHQUFHLEVBQUU7Z0JBQzVDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUzthQUMxQixDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFFBQVEsQ0FBQyxLQUFzQztRQUNwRCxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQzdCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN2QixPQUFRLElBQUksbUNBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFDdEYsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRjtBQW5FRCxrREFtRUM7QUFFRCxNQUFNLFlBQVk7SUFDQyxNQUFNLENBQWtDO0lBQ2pELFFBQVEsR0FBaUMsU0FBUyxDQUFDO0lBRTNELFlBQVksS0FBc0M7UUFDaEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVNLGNBQWMsQ0FBQyxPQUF5QjtRQUM3QyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxLQUFLO1FBQ1YsTUFBTSxFQUFFLEdBQUcsSUFBQSxrQkFBSyxFQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixJQUFJLElBQUksQ0FBQyxRQUFRO1lBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDbkQsT0FBTyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGO0FBRUQsa0JBQWUsQ0FBQyxLQUFzQyxFQUFFLEVBQUUsQ0FDeEQsSUFBSSxZQUFZLENBQUMsS0FBSyxDQUFrQixDQUFDIn0=
|
|
@@ -2,6 +2,7 @@ import { EnvRolesResults } from '../../AzAd/EnvRoles';
|
|
|
2
2
|
import { RoleEnableTypes } from '../../AzAd/EnvRoles.Consts';
|
|
3
3
|
import { KeyVaultInfo, ResourceGroupInfo, ResourceInfo } from '../../types';
|
|
4
4
|
import { BuilderProps, IBuilder, IBuilderAsync } from './genericBuilder';
|
|
5
|
+
import { CertBuilderType } from './vaultBuilder';
|
|
5
6
|
import { IVnetBuilder, IVnetBuilderStart, VnetBuilderResults } from './vnetBuilder';
|
|
6
7
|
import { Input } from '@pulumi/pulumi';
|
|
7
8
|
export type ResourceBuilderResults = BuilderProps & {
|
|
@@ -34,6 +35,7 @@ export interface IResourceVaultBuilder {
|
|
|
34
35
|
}
|
|
35
36
|
export interface IResourceVaultItemsBuilder {
|
|
36
37
|
addSecrets(items: Record<string, Input<string>>): IResourceBuilder;
|
|
38
|
+
addCerts(props: CertBuilderType): IResourceBuilder;
|
|
37
39
|
}
|
|
38
40
|
export interface IResourceVnetBuilder {
|
|
39
41
|
withVnet(props: ResourceVnetBuilderType): IResourceBuilder;
|
|
@@ -3,7 +3,7 @@ import { IBuilder, ILoginBuilder } from './genericBuilder';
|
|
|
3
3
|
import { SqlAuthType, SqlElasticPoolType, SqlNetworkType, SqlResults, SqlVulnerabilityAssessmentType } from '../../Sql';
|
|
4
4
|
import { SqlDbProps, SqlDbSku } from '../../Sql/SqlDb';
|
|
5
5
|
import { LogStorageInfo } from '../../Logs/Helpers';
|
|
6
|
-
export type SqlBuilderAuthOptionsType =
|
|
6
|
+
export type SqlBuilderAuthOptionsType = Omit<SqlAuthType, 'password' | 'adminLogin' | 'envRoles'>;
|
|
7
7
|
export type SqlDbBuilderType = {
|
|
8
8
|
name: string;
|
|
9
9
|
sku?: SqlDbSku;
|
|
@@ -34,5 +34,6 @@ export interface ISqlBuilder extends IBuilder<SqlResults> {
|
|
|
34
34
|
withDatabases(props: SqlDbBuilderType): ISqlBuilder;
|
|
35
35
|
copyDbFrom(props: SqlDbCopyType): ISqlBuilder;
|
|
36
36
|
replicaDbFrom(props: SqlDbReplicaType): ISqlBuilder;
|
|
37
|
+
ignoreChangesFrom(...props: string[]): ISqlBuilder;
|
|
37
38
|
withVulnerabilityAssessment(props: SqlBuilderVulnerabilityAssessmentType): ISqlBuilder;
|
|
38
39
|
}
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
export type
|
|
1
|
+
import { CdnEndpointProps } from '../../Cdn/CdnEndpoint';
|
|
2
|
+
import { CdnSecurityHeaderTypes } from '../../Cdn/CdnRules';
|
|
3
|
+
import { ContainerProps, StorageFeatureType, StorageNetworkType, StoragePolicyType } from '../../Storage';
|
|
4
|
+
import { ResourceInfo } from '../../types';
|
|
5
|
+
import { IBuilder } from './genericBuilder';
|
|
6
|
+
export type StorageCdnType = Pick<CdnEndpointProps, 'cdnProfileInfo' | 'cors' | 'domainNames'> & {
|
|
7
|
+
securityResponse?: CdnSecurityHeaderTypes;
|
|
8
|
+
};
|
|
9
|
+
export type StorageFeatureBuilderType = Pick<StorageFeatureType, 'enableKeyVaultEncryption' | 'allowSharedKeyAccess'>;
|
|
7
10
|
export interface IStorageStarterBuilder {
|
|
8
|
-
asStorage(): IStorageBuilder;
|
|
11
|
+
asStorage(props?: StorageFeatureBuilderType): IStorageBuilder;
|
|
9
12
|
asStaticWebStorage(): IStaticWebStorageBuilder;
|
|
10
13
|
}
|
|
11
14
|
export interface IStorageSharedBuilder extends IBuilder<ResourceInfo> {
|
|
@@ -17,7 +20,6 @@ export interface IStorageBuilder extends IBuilder<ResourceInfo>, IStorageSharedB
|
|
|
17
20
|
withQueue(name: string): IStorageBuilder;
|
|
18
21
|
withFileShare(name: string): IStorageBuilder;
|
|
19
22
|
withPolicies(props: StoragePolicyType): IStorageBuilder;
|
|
20
|
-
withFeature(props: StorageFeatureBuilderType): IStorageBuilder;
|
|
21
23
|
}
|
|
22
24
|
export interface IStaticWebStorageBuilder extends IBuilder<ResourceInfo>, IStorageSharedBuilder {
|
|
23
25
|
withCdn(props: StorageCdnType): IStaticWebStorageBuilder;
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CertArgs } from '@drunk-pulumi/azure-providers';
|
|
2
|
+
import { BasicMonitorArgs, KeyVaultInfo, NamedResourceType } from '../../types';
|
|
2
3
|
import { Input } from '@pulumi/pulumi';
|
|
4
|
+
export type CertBuilderType = NamedResourceType & {
|
|
5
|
+
cert: CertArgs;
|
|
6
|
+
};
|
|
3
7
|
export interface IVaultBuilderResults extends KeyVaultInfo {
|
|
4
8
|
info(): KeyVaultInfo;
|
|
5
9
|
addSecrets(items: Record<string, Input<string>>): IVaultBuilderResults;
|
|
10
|
+
addCerts(items: Record<string, CertBuilderType>): IVaultBuilderResults;
|
|
6
11
|
privateLinkTo(subnetIds: Input<string>[]): IVaultBuilderResults;
|
|
7
12
|
linkTo(props: {
|
|
8
13
|
subnetIds: Input<string>[];
|
package/Cdn/CdnEndpoint.d.ts
CHANGED
|
@@ -4,10 +4,9 @@ export interface CdnEndpointProps extends BasicArgs {
|
|
|
4
4
|
name: string;
|
|
5
5
|
origin: Input<string>;
|
|
6
6
|
cors?: string[];
|
|
7
|
-
|
|
8
|
-
httpsEnabled?: boolean;
|
|
7
|
+
domainNames: string[];
|
|
9
8
|
securityResponseHeaders?: Record<string, string>;
|
|
10
9
|
cdnProfileInfo?: ResourceInfo;
|
|
11
10
|
}
|
|
12
|
-
declare const _default: ({ name,
|
|
11
|
+
declare const _default: ({ name, domainNames, origin, cors, securityResponseHeaders, cdnProfileInfo, dependsOn, }: CdnEndpointProps) => import("@pulumi/azure-native/cdn/endpoint").Endpoint;
|
|
13
12
|
export default _default;
|
package/Cdn/CdnEndpoint.js
CHANGED
|
@@ -28,12 +28,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
const native = __importStar(require("@pulumi/azure-native"));
|
|
30
30
|
const CdnHttpsEnable_1 = __importDefault(require("@drunk-pulumi/azure-providers/CdnHttpsEnable"));
|
|
31
|
-
const
|
|
31
|
+
const Common_1 = require("../Common");
|
|
32
32
|
const CdnRules_1 = require("./CdnRules");
|
|
33
33
|
const GlobalEnv_1 = require("../Common/GlobalEnv");
|
|
34
|
-
|
|
35
|
-
const Common_1 = require("../Common");
|
|
36
|
-
exports.default = ({ name, domainName, origin, cors, httpsEnabled, securityResponseHeaders, cdnProfileInfo = GlobalEnv_1.cdnProfileInfo, dependsOn, }) => {
|
|
34
|
+
exports.default = ({ name, domainNames, origin, cors, securityResponseHeaders, cdnProfileInfo = GlobalEnv_1.cdnProfileInfo, dependsOn, }) => {
|
|
37
35
|
name = (0, Common_1.getCdnEndpointName)(name);
|
|
38
36
|
const rules = [CdnRules_1.enforceHttpsRule, CdnRules_1.indexFileCacheRule];
|
|
39
37
|
if (securityResponseHeaders) {
|
|
@@ -71,24 +69,24 @@ exports.default = ({ name, domainName, origin, cors, httpsEnabled, securityRespo
|
|
|
71
69
|
isHttpAllowed: true,
|
|
72
70
|
isHttpsAllowed: true,
|
|
73
71
|
}, { dependsOn });
|
|
74
|
-
if (
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
profileName: cdnProfileInfo.name,
|
|
79
|
-
customDomainName: (0, Helpers_1.replaceAll)(domainName, '.', '-'),
|
|
80
|
-
hostName: domainName,
|
|
81
|
-
}, { dependsOn: endpoint });
|
|
82
|
-
if (httpsEnabled) {
|
|
83
|
-
new CdnHttpsEnable_1.default(name, {
|
|
72
|
+
if (domainNames) {
|
|
73
|
+
domainNames.map((d) => {
|
|
74
|
+
const customDomain = new native.cdn.CustomDomain(`${name}-${d}`, {
|
|
75
|
+
...cdnProfileInfo.group,
|
|
84
76
|
endpointName: endpoint.name,
|
|
77
|
+
profileName: cdnProfileInfo.name,
|
|
78
|
+
customDomainName: (0, Common_1.replaceAll)(d, '.', '-'),
|
|
79
|
+
hostName: d,
|
|
80
|
+
}, { dependsOn: endpoint });
|
|
81
|
+
return new CdnHttpsEnable_1.default(`${name}-${d}`, {
|
|
85
82
|
...cdnProfileInfo.group,
|
|
83
|
+
endpointName: endpoint.name,
|
|
86
84
|
profileName: cdnProfileInfo.name,
|
|
87
85
|
customDomainName: customDomain.name,
|
|
88
|
-
subscriptionId:
|
|
86
|
+
subscriptionId: Common_1.subscriptionId,
|
|
89
87
|
}, { dependsOn: customDomain });
|
|
90
|
-
}
|
|
88
|
+
});
|
|
91
89
|
}
|
|
92
90
|
return endpoint;
|
|
93
91
|
};
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RuRW5kcG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQ2RuL0NkbkVuZHBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2REFBK0M7QUFDL0Msa0dBQTBFO0FBQzFFLHNDQUEyRTtBQUMzRSx5Q0FLb0I7QUFDcEIsbURBQTZFO0FBWTdFLGtCQUFlLENBQUMsRUFDZCxJQUFJLEVBQ0osV0FBVyxFQUNYLE1BQU0sRUFDTixJQUFJLEVBQ0osdUJBQXVCLEVBQ3ZCLGNBQWMsR0FBRywwQkFBb0IsRUFDckMsU0FBUyxHQUNRLEVBQUUsRUFBRTtJQUNyQixJQUFJLEdBQUcsSUFBQSwyQkFBa0IsRUFBQyxJQUFJLENBQUMsQ0FBQztJQUVoQyxNQUFNLEtBQUssR0FBRyxDQUFDLDJCQUFnQixFQUFFLDZCQUFrQixDQUFDLENBQUM7SUFDckQsSUFBSSx1QkFBdUIsRUFBRSxDQUFDO1FBQzVCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBQSxpQ0FBc0IsRUFBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUNELElBQUksSUFBSSxFQUFFLENBQUM7UUFDVCxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBQSwwQkFBZSxFQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELG1CQUFtQjtJQUNuQixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRTNDLE1BQU0sUUFBUSxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQ3RDLElBQUksRUFDSjtRQUNFLFlBQVksRUFBRSxJQUFJO1FBQ2xCLEdBQUcsY0FBZSxDQUFDLEtBQUs7UUFDeEIsV0FBVyxFQUFFLGNBQWUsQ0FBQyxJQUFJO1FBRWpDLE9BQU8sRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUNyQyxnQkFBZ0IsRUFBRSxNQUFNO1FBRXhCLGdCQUFnQixFQUFFLG9CQUFvQjtRQUN0QywwQkFBMEIsRUFBRSxtQkFBbUI7UUFFL0MsY0FBYyxFQUFFO1lBQ2QsS0FBSztZQUNMLFdBQVcsRUFBRSxzQkFBc0I7U0FDcEM7UUFFRCxvQkFBb0IsRUFBRSxJQUFJO1FBQzFCLHNCQUFzQixFQUFFO1lBQ3RCLFlBQVk7WUFDWixXQUFXO1lBQ1gsVUFBVTtZQUNWLFVBQVU7WUFDVixpQkFBaUI7WUFDakIsdUJBQXVCO1lBQ3ZCLHFCQUFxQjtZQUNyQix3QkFBd0I7WUFDeEIsMEJBQTBCO1NBQzNCO1FBRUQsYUFBYSxFQUFFLElBQUk7UUFDbkIsY0FBYyxFQUFFLElBQUk7S0FDckIsRUFDRCxFQUFFLFNBQVMsRUFBRSxDQUNkLENBQUM7SUFFRixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2hCLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixNQUFNLFlBQVksR0FBRyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUM5QyxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsRUFDZDtnQkFDRSxHQUFHLGNBQWUsQ0FBQyxLQUFLO2dCQUN4QixZQUFZLEVBQUUsUUFBUSxDQUFDLElBQUk7Z0JBRTNCLFdBQVcsRUFBRSxjQUFlLENBQUMsSUFBSTtnQkFDakMsZ0JBQWdCLEVBQUUsSUFBQSxtQkFBVSxFQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDO2dCQUN6QyxRQUFRLEVBQUUsQ0FBQzthQUNaLEVBQ0QsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLENBQ3hCLENBQUM7WUFFRixPQUFPLElBQUksd0JBQWMsQ0FDdkIsR0FBRyxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQ2Q7Z0JBQ0UsR0FBRyxjQUFlLENBQUMsS0FBSztnQkFDeEIsWUFBWSxFQUFFLFFBQVEsQ0FBQyxJQUFJO2dCQUMzQixXQUFXLEVBQUUsY0FBZSxDQUFDLElBQUk7Z0JBQ2pDLGdCQUFnQixFQUFFLFlBQVksQ0FBQyxJQUFJO2dCQUNuQyxjQUFjLEVBQWQsdUJBQWM7YUFDZixFQUNELEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUM1QixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyxDQUFDIn0=
|
package/Cdn/CdnRules.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import * as native from
|
|
2
|
-
export
|
|
1
|
+
import * as native from '@pulumi/azure-native';
|
|
2
|
+
export type CdnSecurityHeaderTypes = {
|
|
3
|
+
contentSecurityPolicies?: string[];
|
|
4
|
+
allowOrigins?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function getDefaultResponseHeaders({ contentSecurityPolicies, allowOrigins, }: CdnSecurityHeaderTypes): Record<string, string>;
|
|
3
7
|
export declare const enforceHttpsRule: native.types.input.cdn.DeliveryRuleArgs;
|
|
4
8
|
export declare const indexFileCacheRule: native.types.input.cdn.DeliveryRuleArgs;
|
|
5
9
|
export declare const getResponseHeadersRule: (rules: Record<string, string>) => native.types.input.cdn.DeliveryRuleArgs;
|