@drunk-pulumi/azure-components 1.0.1 → 1.0.3
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/README.md +127 -1
- package/ResourceBuilder.d.ts +85 -46
- package/ResourceBuilder.js +147 -46
- package/aks/AzKubernetes.d.ts +17 -3
- package/aks/AzKubernetes.js +92 -43
- package/aks/ContainerRegistry.d.ts +4 -3
- package/aks/ContainerRegistry.js +22 -19
- package/apim/Apim.d.ts +51 -0
- package/apim/Apim.js +248 -0
- package/apim/ApimApi.d.ts +34 -0
- package/apim/ApimApi.js +193 -0
- package/apim/ApimApiSet.d.ts +27 -0
- package/apim/ApimApiSet.js +88 -0
- package/apim/ApimPolicyBuilder.d.ts +93 -0
- package/apim/ApimPolicyBuilder.js +294 -0
- package/apim/ApimProduct.d.ts +27 -0
- package/apim/ApimProduct.js +118 -0
- package/apim/index.d.ts +2 -0
- package/apim/index.js +19 -0
- package/apim/openAPI3Type.d.ts +85 -0
- package/apim/openAPI3Type.js +3 -0
- package/apim/openApiHelper.d.ts +1 -0
- package/apim/openApiHelper.js +36 -0
- package/app/SignalR.d.ts +3 -3
- package/app/SignalR.js +35 -20
- package/azAd/AppRegistration.d.ts +15 -11
- package/azAd/AppRegistration.js +67 -68
- package/azAd/AzRole.js +2 -2
- package/azAd/GroupRole.d.ts +7 -17
- package/azAd/GroupRole.js +7 -17
- package/azAd/RoleAssignment.d.ts +1 -1
- package/azAd/RoleAssignment.js +5 -5
- package/azAd/UserAssignedIdentity.d.ts +3 -0
- package/azAd/UserAssignedIdentity.js +23 -7
- package/azAd/helpers/index.d.ts +0 -2
- package/azAd/helpers/index.js +26 -22
- package/azAd/helpers/rolesBuiltIn.d.ts +10 -19
- package/azAd/helpers/rolesBuiltIn.js +25868 -18593
- package/azAd/helpers/rsRoleDefinition.d.ts +12 -6
- package/azAd/helpers/rsRoleDefinition.js +48 -32
- package/base/BaseComponent.d.ts +1 -15
- package/base/BaseComponent.js +3 -22
- package/base/BaseResourceComponent.d.ts +24 -17
- package/base/BaseResourceComponent.js +61 -45
- package/base/helpers.d.ts +0 -6
- package/base/helpers.js +1 -18
- package/common/RandomPassword.js +4 -4
- package/common/RandomString.d.ts +1 -1
- package/common/RandomString.js +3 -3
- package/common/ResourceLocker.js +2 -2
- package/common/RsGroup.js +2 -2
- package/database/AzSql.d.ts +5 -5
- package/database/AzSql.js +37 -24
- package/database/MySql.d.ts +1 -1
- package/database/MySql.js +45 -28
- package/database/Postgres.d.ts +2 -1
- package/database/Postgres.js +29 -17
- package/database/Redis.d.ts +25 -4
- package/database/Redis.js +88 -25
- package/helpers/autoTags.js +37 -3
- package/helpers/certHelpers.d.ts +20 -0
- package/helpers/certHelpers.js +85 -0
- package/helpers/rsHelpers.d.ts +19 -1
- package/helpers/rsHelpers.js +27 -4
- package/helpers/stackEnv.d.ts +2 -1
- package/helpers/stackEnv.js +10 -7
- package/index.d.ts +1 -0
- package/index.js +2 -1
- package/package.json +11 -7
- package/services/Automation.d.ts +3 -1
- package/services/Automation.js +8 -8
- package/services/ServiceBus.d.ts +3 -2
- package/services/ServiceBus.js +17 -19
- package/types.d.ts +44 -15
- package/vault/EncryptionKey.d.ts +1 -1
- package/vault/EncryptionKey.js +4 -4
- package/vault/KeyVault.d.ts +3 -8
- package/vault/KeyVault.js +4 -7
- package/vault/VaultSecret.d.ts +1 -1
- package/vault/VaultSecret.js +9 -9
- package/vault/VaultSecrets.d.ts +2 -4
- package/vault/VaultSecrets.js +4 -6
- package/vault/helpers.d.ts +17 -0
- package/vault/helpers.js +56 -3
- package/vm/DiskEncryptionSet.js +2 -2
- package/vm/VirtualMachine.d.ts +2 -1
- package/vm/VirtualMachine.js +37 -25
- package/vnet/Basion.d.ts +4 -3
- package/vnet/Basion.js +17 -4
- package/vnet/DnsZone.d.ts +1 -1
- package/vnet/DnsZone.js +2 -2
- package/vnet/IpAddresses.d.ts +6 -2
- package/vnet/IpAddresses.js +2 -2
- package/vnet/NetworkPeering.d.ts +1 -1
- package/vnet/NetworkPeering.js +1 -1
- package/vnet/PrivateDnsZone.d.ts +1 -1
- package/vnet/PrivateDnsZone.js +4 -4
- package/vnet/PrivateEndpoint.d.ts +7 -10
- package/vnet/PrivateEndpoint.js +11 -10
- package/vnet/RouteTable.d.ts +1 -1
- package/vnet/RouteTable.js +2 -2
- package/vnet/VirtualNetwork.d.ts +30 -43
- package/vnet/VirtualNetwork.js +77 -43
- package/vnet/VpnGateway.js +2 -2
package/database/Redis.d.ts
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
|
-
import * as redis from '@pulumi/azure-native/redis';
|
|
2
1
|
import * as pulumi from '@pulumi/pulumi';
|
|
3
|
-
import
|
|
2
|
+
import * as redis from '@pulumi/azure-native/redis';
|
|
4
3
|
import * as types from '../types';
|
|
4
|
+
import * as vnet from '../vnet';
|
|
5
|
+
import { BaseArgs, BaseResourceComponent } from '../base';
|
|
5
6
|
import { PrivateEndpointType } from '../vnet';
|
|
6
|
-
export interface RedisArgs extends BaseArgs, types.WithResourceGroupInputs, Pick<redis.RedisArgs, 'sku' | 'zones' | '
|
|
7
|
+
export interface RedisArgs extends BaseArgs, types.WithResourceGroupInputs, types.WithUserAssignedIdentity, Partial<Pick<redis.RedisArgs, 'sku' | 'zones' | 'redisVersion' | 'replicasPerMaster' | 'replicasPerPrimary' | 'tenantSettings' | 'redisConfiguration'>>, Partial<Pick<redis.PatchScheduleArgs, 'scheduleEntries'>> {
|
|
8
|
+
disableAccessKeyAuthentication?: boolean;
|
|
9
|
+
additionalUserAssignedIds?: Array<{
|
|
10
|
+
name: string;
|
|
11
|
+
accessPolicy: 'Data Owner' | 'Data Contributor' | 'Data Reader';
|
|
12
|
+
clientId: pulumi.Input<string>;
|
|
13
|
+
}>;
|
|
7
14
|
network?: {
|
|
8
|
-
|
|
15
|
+
allowAllInbound?: boolean;
|
|
16
|
+
subnetId?: pulumi.Input<string>;
|
|
9
17
|
staticIP?: pulumi.Input<string>;
|
|
10
18
|
privateLink?: PrivateEndpointType;
|
|
11
19
|
ipRules?: pulumi.Input<pulumi.Input<string>[]>;
|
|
@@ -15,12 +23,25 @@ export interface RedisArgs extends BaseArgs, types.WithResourceGroupInputs, Pick
|
|
|
15
23
|
export declare class Redis extends BaseResourceComponent<RedisArgs> {
|
|
16
24
|
readonly id: pulumi.Output<string>;
|
|
17
25
|
readonly resourceName: pulumi.Output<string>;
|
|
26
|
+
privateLink: ReturnType<vnet.PrivateEndpoint['getOutputs']> | undefined;
|
|
18
27
|
constructor(name: string, args: RedisArgs, opts?: pulumi.ComponentResourceOptions);
|
|
19
28
|
getOutputs(): {
|
|
20
29
|
id: pulumi.Output<string>;
|
|
21
30
|
resourceName: pulumi.Output<string>;
|
|
31
|
+
privateLink: {
|
|
32
|
+
privateEndpoint: pulumi.Output<{
|
|
33
|
+
privateIpAddresses: string[];
|
|
34
|
+
id: string;
|
|
35
|
+
}>;
|
|
36
|
+
privateDnsZone: {
|
|
37
|
+
resourceName: pulumi.Output<string>;
|
|
38
|
+
id: pulumi.Output<string>;
|
|
39
|
+
};
|
|
40
|
+
} | undefined;
|
|
22
41
|
};
|
|
23
42
|
private createRedis;
|
|
43
|
+
private AccessPolicyAssignments;
|
|
44
|
+
private createMaintenance;
|
|
24
45
|
private createNetwork;
|
|
25
46
|
private addSecretsToVault;
|
|
26
47
|
}
|
package/database/Redis.js
CHANGED
|
@@ -34,19 +34,22 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.Redis = void 0;
|
|
37
|
-
const redis = __importStar(require("@pulumi/azure-native/redis"));
|
|
38
37
|
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
39
|
-
const
|
|
38
|
+
const redis = __importStar(require("@pulumi/azure-native/redis"));
|
|
40
39
|
const vault = __importStar(require("../vault"));
|
|
41
40
|
const vnet = __importStar(require("../vnet"));
|
|
41
|
+
const base_1 = require("../base");
|
|
42
42
|
const helpers_1 = require("./helpers");
|
|
43
43
|
class Redis extends base_1.BaseResourceComponent {
|
|
44
44
|
id;
|
|
45
45
|
resourceName;
|
|
46
|
+
privateLink;
|
|
46
47
|
constructor(name, args, opts) {
|
|
47
48
|
super('Redis', name, args, opts);
|
|
48
49
|
const server = this.createRedis();
|
|
49
50
|
this.createNetwork(server);
|
|
51
|
+
this.createMaintenance(server);
|
|
52
|
+
this.AccessPolicyAssignments(server);
|
|
50
53
|
this.addSecretsToVault(server);
|
|
51
54
|
if (args.lock)
|
|
52
55
|
this.lockFromDeleting(server);
|
|
@@ -58,63 +61,123 @@ class Redis extends base_1.BaseResourceComponent {
|
|
|
58
61
|
return {
|
|
59
62
|
id: this.id,
|
|
60
63
|
resourceName: this.resourceName,
|
|
64
|
+
privateLink: this.privateLink,
|
|
61
65
|
};
|
|
62
66
|
}
|
|
63
67
|
createRedis() {
|
|
64
|
-
const { rsGroup, network, lock, ...props } = this.args;
|
|
65
|
-
|
|
68
|
+
const { rsGroup, network, lock, defaultUAssignedId, ...props } = this.args;
|
|
69
|
+
return new redis.Redis(this.name, {
|
|
66
70
|
...props,
|
|
67
71
|
...rsGroup,
|
|
72
|
+
sku: props.sku ?? { name: 'Basic', family: 'C', capacity: 0 },
|
|
73
|
+
redisVersion: props.redisVersion ?? '6.0',
|
|
68
74
|
minimumTlsVersion: '1.2',
|
|
69
75
|
enableNonSslPort: false,
|
|
70
|
-
redisVersion: props.redisVersion ?? '6.0',
|
|
71
76
|
subnetId: network?.subnetId,
|
|
72
77
|
staticIP: network?.staticIP,
|
|
73
78
|
publicNetworkAccess: network?.privateLink ? 'Disabled' : 'Enabled',
|
|
74
|
-
updateChannel:
|
|
75
|
-
|
|
76
|
-
|
|
79
|
+
updateChannel: redis.UpdateChannel.Stable,
|
|
80
|
+
identity: {
|
|
81
|
+
type: defaultUAssignedId
|
|
82
|
+
? redis.ManagedServiceIdentityType.UserAssigned
|
|
83
|
+
: redis.ManagedServiceIdentityType.SystemAssigned,
|
|
84
|
+
userAssignedIdentities: defaultUAssignedId ? [defaultUAssignedId.id] : undefined,
|
|
85
|
+
},
|
|
86
|
+
}, { ...this.opts, protect: lock ?? this.opts?.protect, parent: this, ignoreChanges: ['name'] });
|
|
87
|
+
}
|
|
88
|
+
AccessPolicyAssignments(server) {
|
|
89
|
+
const { rsGroup, defaultUAssignedId, additionalUserAssignedIds } = this.args;
|
|
90
|
+
if (defaultUAssignedId)
|
|
91
|
+
new redis.AccessPolicyAssignment(`${this.name}-default-uid-policy`, {
|
|
92
|
+
...rsGroup,
|
|
93
|
+
accessPolicyName: 'Data Contributor',
|
|
94
|
+
cacheName: server.name,
|
|
95
|
+
objectId: defaultUAssignedId.clientId,
|
|
96
|
+
objectIdAlias: defaultUAssignedId.clientId,
|
|
97
|
+
}, { dependsOn: server, deletedWith: server, parent: this });
|
|
98
|
+
if (additionalUserAssignedIds) {
|
|
99
|
+
additionalUserAssignedIds.map((u) => {
|
|
100
|
+
return new redis.AccessPolicyAssignment(`${this.name}-${u.name}-${u.accessPolicy}`, {
|
|
101
|
+
...rsGroup,
|
|
102
|
+
accessPolicyName: u.accessPolicy,
|
|
103
|
+
cacheName: server.name,
|
|
104
|
+
objectId: u.clientId,
|
|
105
|
+
objectIdAlias: u.clientId,
|
|
106
|
+
}, { dependsOn: server, deletedWith: server, parent: this });
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
createMaintenance(rds) {
|
|
111
|
+
const { rsGroup, scheduleEntries } = this.args;
|
|
112
|
+
if (!scheduleEntries)
|
|
113
|
+
return undefined;
|
|
114
|
+
return new redis.PatchSchedule(this.name, {
|
|
115
|
+
...rsGroup,
|
|
116
|
+
name: rds.name,
|
|
117
|
+
default: 'default',
|
|
118
|
+
scheduleEntries,
|
|
119
|
+
}, { dependsOn: rds, deletedWith: rds, parent: this });
|
|
77
120
|
}
|
|
78
121
|
createNetwork(server) {
|
|
79
122
|
const { rsGroup, network } = this.args;
|
|
80
|
-
|
|
81
|
-
|
|
123
|
+
const sanitizedName = this.name.replace(/[^a-zA-Z0-9_]/g, '_');
|
|
124
|
+
if (network?.allowAllInbound) {
|
|
125
|
+
new redis.FirewallRule(`${sanitizedName}-firewall-allow-all`, {
|
|
82
126
|
...rsGroup,
|
|
83
|
-
|
|
127
|
+
ruleName: `${sanitizedName}_firewall_allow_all`,
|
|
84
128
|
cacheName: server.name,
|
|
85
|
-
startIP:
|
|
86
|
-
endIP:
|
|
87
|
-
}, { dependsOn: server, parent: this })
|
|
129
|
+
startIP: '0.0.0.0',
|
|
130
|
+
endIP: '255.255.255.255',
|
|
131
|
+
}, { dependsOn: server, parent: this });
|
|
132
|
+
}
|
|
133
|
+
else if (network?.ipRules) {
|
|
134
|
+
pulumi.output(network.ipRules).apply((ips) => (0, helpers_1.convertToIpRange)(ips).map((f, i) => {
|
|
135
|
+
return new redis.FirewallRule(`${sanitizedName}-firewall-${i}`, {
|
|
136
|
+
...rsGroup,
|
|
137
|
+
ruleName: `${sanitizedName}_firewall_${i}`,
|
|
138
|
+
cacheName: server.name,
|
|
139
|
+
startIP: f.start,
|
|
140
|
+
endIP: f.end,
|
|
141
|
+
}, { dependsOn: server, parent: this });
|
|
142
|
+
}));
|
|
88
143
|
}
|
|
89
144
|
if (network?.privateLink) {
|
|
90
|
-
new vnet.PrivateEndpoint(this.name, {
|
|
145
|
+
this.privateLink = new vnet.PrivateEndpoint(this.name, {
|
|
91
146
|
...network.privateLink,
|
|
92
147
|
rsGroup,
|
|
93
148
|
type: 'redis',
|
|
94
149
|
resourceInfo: server,
|
|
95
|
-
}, { dependsOn: server, parent: this });
|
|
150
|
+
}, { dependsOn: server, parent: this }).getOutputs();
|
|
96
151
|
}
|
|
97
152
|
}
|
|
98
153
|
addSecretsToVault(server) {
|
|
99
|
-
const { rsGroup, vaultInfo } = this.args;
|
|
154
|
+
const { rsGroup, vaultInfo, disableAccessKeyAuthentication } = this.args;
|
|
100
155
|
if (!vaultInfo)
|
|
101
156
|
return;
|
|
102
157
|
return server.hostName.apply(async (h) => {
|
|
103
158
|
if (!h)
|
|
104
159
|
return;
|
|
105
|
-
const keys =
|
|
160
|
+
const keys = redis.listRedisKeysOutput({
|
|
106
161
|
name: server.name,
|
|
107
162
|
resourceGroupName: rsGroup.resourceGroupName,
|
|
108
163
|
});
|
|
109
164
|
return new vault.VaultSecrets(this.name, {
|
|
110
165
|
vaultInfo,
|
|
111
166
|
secrets: {
|
|
112
|
-
[`${this.name}-host`]: { value: h, contentType: `Redis host` },
|
|
113
|
-
[`${this.name}-pass`]: { value: keys.primaryKey, contentType: `Redis pass` },
|
|
114
|
-
[`${this.name}-port`]: { value: '6380', contentType: `Redis port` },
|
|
115
|
-
[`${this.name}-conn`]: {
|
|
116
|
-
value:
|
|
117
|
-
|
|
167
|
+
[`${this.name}-redis-host`]: { value: h, contentType: `Redis host` },
|
|
168
|
+
[`${this.name}-redis-pass`]: { value: keys.primaryKey, contentType: `Redis pass` },
|
|
169
|
+
[`${this.name}-redis-port`]: { value: '6380', contentType: `Redis port` },
|
|
170
|
+
[`${this.name}-redis-conn`]: {
|
|
171
|
+
value: disableAccessKeyAuthentication
|
|
172
|
+
? pulumi.interpolate `rediss://${h}:6380`
|
|
173
|
+
: pulumi.interpolate `rediss://:${keys.primaryKey}@${h}:6380`,
|
|
174
|
+
contentType: `Redis Connection String For General Use`,
|
|
175
|
+
},
|
|
176
|
+
[`${this.name}-redis-net-conn`]: {
|
|
177
|
+
value: disableAccessKeyAuthentication
|
|
178
|
+
? pulumi.interpolate `${h}:6380,ssl=True,abortConnect=False`
|
|
179
|
+
: pulumi.interpolate `${h}:6380,password=${keys.primaryKey},ssl=True,abortConnect=False`,
|
|
180
|
+
contentType: `Redis Connection String For .NET Apps`,
|
|
118
181
|
},
|
|
119
182
|
},
|
|
120
183
|
}, { dependsOn: server, parent: this });
|
|
@@ -122,4 +185,4 @@ class Redis extends base_1.BaseResourceComponent {
|
|
|
122
185
|
}
|
|
123
186
|
}
|
|
124
187
|
exports.Redis = Redis;
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
188
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVkaXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvUmVkaXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXlDO0FBQ3pDLGtFQUFvRDtBQUVwRCxnREFBa0M7QUFDbEMsOENBQWdDO0FBRWhDLGtDQUEwRDtBQUcxRCx1Q0FBNkM7QUFtQzdDLE1BQWEsS0FBTSxTQUFRLDRCQUFnQztJQUN6QyxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDN0MsV0FBVyxDQUE2RDtJQUUvRSxZQUFZLElBQVksRUFBRSxJQUFlLEVBQUUsSUFBc0M7UUFDL0UsS0FBSyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWpDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRS9CLElBQUksSUFBSSxDQUFDLElBQUk7WUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLEVBQUUsR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUVoQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPO1lBQ0wsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztTQUM5QixDQUFDO0lBQ0osQ0FBQztJQUVPLFdBQVc7UUFDakIsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLEdBQUcsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUUzRSxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssQ0FDcEIsSUFBSSxDQUFDLElBQUksRUFDVDtZQUNFLEdBQUcsS0FBSztZQUNSLEdBQUcsT0FBTztZQUNWLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRyxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUU7WUFDN0QsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZLElBQUksS0FBSztZQUN6QyxpQkFBaUIsRUFBRSxLQUFLO1lBQ3hCLGdCQUFnQixFQUFFLEtBQUs7WUFDdkIsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRO1lBQzNCLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUTtZQUMzQixtQkFBbUIsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDbEUsYUFBYSxFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsTUFBTTtZQUV6QyxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLGtCQUFrQjtvQkFDdEIsQ0FBQyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxZQUFZO29CQUMvQyxDQUFDLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLGNBQWM7Z0JBQ25ELHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO2FBQ2pGO1NBQ0YsRUFDRCxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDN0YsQ0FBQztJQUNKLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxNQUFtQjtRQUNqRCxNQUFNLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLHlCQUF5QixFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM3RSxJQUFJLGtCQUFrQjtZQUNwQixJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FDOUIsR0FBRyxJQUFJLENBQUMsSUFBSSxxQkFBcUIsRUFDakM7Z0JBQ0UsR0FBRyxPQUFPO2dCQUNWLGdCQUFnQixFQUFFLGtCQUFrQjtnQkFDcEMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUN0QixRQUFRLEVBQUUsa0JBQWtCLENBQUMsUUFBUTtnQkFDckMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLFFBQVE7YUFDM0MsRUFDRCxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQ3pELENBQUM7UUFFSixJQUFJLHlCQUF5QixFQUFFLENBQUM7WUFDOUIseUJBQXlCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ2xDLE9BQU8sSUFBSSxLQUFLLENBQUMsc0JBQXNCLENBQ3JDLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFDMUM7b0JBQ0UsR0FBRyxPQUFPO29CQUNWLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxZQUFZO29CQUNoQyxTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUk7b0JBQ3RCLFFBQVEsRUFBRSxDQUFDLENBQUMsUUFBUTtvQkFDcEIsYUFBYSxFQUFFLENBQUMsQ0FBQyxRQUFRO2lCQUMxQixFQUNELEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FDekQsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxHQUFnQjtRQUN4QyxNQUFNLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDL0MsSUFBSSxDQUFDLGVBQWU7WUFBRSxPQUFPLFNBQVMsQ0FBQztRQUV2QyxPQUFPLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FDNUIsSUFBSSxDQUFDLElBQUksRUFDVDtZQUNFLEdBQUcsT0FBTztZQUNWLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtZQUNkLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLGVBQWU7U0FDaEIsRUFDRCxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQ25ELENBQUM7SUFDSixDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQW1CO1FBQ3ZDLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN2QyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUUvRCxJQUFJLE9BQU8sRUFBRSxlQUFlLEVBQUUsQ0FBQztZQUM3QixJQUFJLEtBQUssQ0FBQyxZQUFZLENBQ3BCLEdBQUcsYUFBYSxxQkFBcUIsRUFDckM7Z0JBQ0UsR0FBRyxPQUFPO2dCQUNWLFFBQVEsRUFBRSxHQUFHLGFBQWEscUJBQXFCO2dCQUMvQyxTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUk7Z0JBQ3RCLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixLQUFLLEVBQUUsaUJBQWlCO2FBQ3pCLEVBQ0QsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FDcEMsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUM1QixNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUMzQyxJQUFBLDBCQUFnQixFQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDakMsT0FBTyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQzNCLEdBQUcsYUFBYSxhQUFhLENBQUMsRUFBRSxFQUNoQztvQkFDRSxHQUFHLE9BQU87b0JBQ1YsUUFBUSxFQUFFLEdBQUcsYUFBYSxhQUFhLENBQUMsRUFBRTtvQkFDMUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUN0QixPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUs7b0JBQ2hCLEtBQUssRUFBRSxDQUFDLENBQUMsR0FBRztpQkFDYixFQUNELEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQ3BDLENBQUM7WUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUN6QyxJQUFJLENBQUMsSUFBSSxFQUNUO2dCQUNFLEdBQUcsT0FBTyxDQUFDLFdBQVc7Z0JBQ3RCLE9BQU87Z0JBQ1AsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsWUFBWSxFQUFFLE1BQU07YUFDckIsRUFDRCxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUNwQyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2pCLENBQUM7SUFDSCxDQUFDO0lBRU8saUJBQWlCLENBQUMsTUFBbUI7UUFDM0MsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsOEJBQThCLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3pFLElBQUksQ0FBQyxTQUFTO1lBQUUsT0FBTztRQUV2QixPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsQ0FBQztnQkFBRSxPQUFPO1lBRWYsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLG1CQUFtQixDQUFDO2dCQUNyQyxJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7Z0JBQ2pCLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxpQkFBaUI7YUFDN0MsQ0FBQyxDQUFDO1lBRUgsT0FBTyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQzNCLElBQUksQ0FBQyxJQUFJLEVBQ1Q7Z0JBQ0UsU0FBUztnQkFDVCxPQUFPLEVBQUU7b0JBQ1AsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLGFBQWEsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO29CQUNwRSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFO29CQUNsRixDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksYUFBYSxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUU7b0JBQ3pFLENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxhQUFhLENBQUMsRUFBRTt3QkFDM0IsS0FBSyxFQUFFLDhCQUE4Qjs0QkFDbkMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUEsWUFBWSxDQUFDLE9BQU87NEJBQ3hDLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFBLGFBQWEsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLE9BQU87d0JBQzlELFdBQVcsRUFBRSx5Q0FBeUM7cUJBQ3ZEO29CQUNELENBQUMsR0FBRyxJQUFJLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxFQUFFO3dCQUMvQixLQUFLLEVBQUUsOEJBQThCOzRCQUNuQyxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQSxHQUFHLENBQUMsbUNBQW1DOzRCQUMzRCxDQUFDLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQSxHQUFHLENBQUMsa0JBQWtCLElBQUksQ0FBQyxVQUFVLDhCQUE4Qjt3QkFDekYsV0FBVyxFQUFFLHVDQUF1QztxQkFDckQ7aUJBQ0Y7YUFDRixFQUNELEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQ3BDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQWhNRCxzQkFnTUMifQ==
|
package/helpers/autoTags.js
CHANGED
|
@@ -1,7 +1,40 @@
|
|
|
1
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 () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.registerAutoTags = void 0;
|
|
4
|
-
const
|
|
37
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
5
38
|
/**
|
|
6
39
|
* List of resource types that should be excluded from automatic tagging.
|
|
7
40
|
* These are typically identity/auth related resources or external provider resources
|
|
@@ -18,6 +51,7 @@ const ignoredTags = [
|
|
|
18
51
|
'cloudflare',
|
|
19
52
|
'providers',
|
|
20
53
|
'dynamic:Resource',
|
|
54
|
+
'StackReference',
|
|
21
55
|
];
|
|
22
56
|
/**
|
|
23
57
|
* Registers a stack transformation that automatically applies tags to resources.
|
|
@@ -29,7 +63,7 @@ const ignoredTags = [
|
|
|
29
63
|
* @param autoTags - An object containing key-value pairs of tags to be applied
|
|
30
64
|
* @returns void - The function registers a stack transformation with Pulumi runtime
|
|
31
65
|
*/
|
|
32
|
-
const registerAutoTags = (autoTags) =>
|
|
66
|
+
const registerAutoTags = (autoTags) => pulumi.runtime.registerStackTransformation((resource) => {
|
|
33
67
|
//Check and ignore tag
|
|
34
68
|
if (!resource.type.toLowerCase().includes('resourcegroup') &&
|
|
35
69
|
ignoredTags.find((t) => resource.type.toLowerCase().includes(t.toLowerCase())))
|
|
@@ -39,4 +73,4 @@ const registerAutoTags = (autoTags) => pulumi_1.runtime.registerStackTransformat
|
|
|
39
73
|
return { props: resource.props, opts: resource.opts };
|
|
40
74
|
});
|
|
41
75
|
exports.registerAutoTags = registerAutoTags;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b1RhZ3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9hdXRvVGFncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1REFBeUM7QUFFekM7Ozs7R0FJRztBQUNILE1BQU0sV0FBVyxHQUFHO0lBQ2xCLE9BQU87SUFDUCxhQUFhO0lBQ2IsYUFBYTtJQUNiLHFCQUFxQjtJQUNyQixrQkFBa0I7SUFDbEIsMEJBQTBCO0lBQzFCLFlBQVk7SUFDWixZQUFZO0lBQ1osV0FBVztJQUNYLGtCQUFrQjtJQUNsQixnQkFBZ0I7Q0FDakIsQ0FBQztBQUVGOzs7Ozs7Ozs7R0FTRztBQUNJLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxRQUFnQyxFQUFFLEVBQUUsQ0FDbkUsTUFBTSxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO0lBQ3RELHNCQUFzQjtJQUN0QixJQUNFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDO1FBQ3RELFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRTlFLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBRXhELG1CQUFtQjtJQUNuQixRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsUUFBUSxFQUFFLENBQUM7SUFDcEUsT0FBTyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDeEQsQ0FBQyxDQUFDLENBQUM7QUFaUSxRQUFBLGdCQUFnQixvQkFZeEIifQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ResourceType, ResourceInputs } from '../types';
|
|
2
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
3
|
+
export type CertFile = {
|
|
4
|
+
certificatePath: string;
|
|
5
|
+
certificatePassword?: string;
|
|
6
|
+
};
|
|
7
|
+
export type CertType = {
|
|
8
|
+
encodedCertificate: string;
|
|
9
|
+
certificatePassword?: string;
|
|
10
|
+
};
|
|
11
|
+
export type VaultCertType = {
|
|
12
|
+
vaultCertName: string;
|
|
13
|
+
version?: string;
|
|
14
|
+
};
|
|
15
|
+
export declare const getCertFromFile: (cert: CertFile) => Promise<CertType>;
|
|
16
|
+
export declare const getCertFromVault: (cert: VaultCertType, vaultInfo: ResourceType) => Promise<CertType>;
|
|
17
|
+
export declare const getCert: (cert: CertType | VaultCertType | CertFile, vaultInfo?: ResourceType) => Promise<CertType>;
|
|
18
|
+
export declare const getCertOutputs: (cert: CertType | VaultCertType | CertFile, vaultInfo?: ResourceInputs) => pulumi.Output<CertType>;
|
|
19
|
+
export declare const getCerts: (certs: Array<CertType | VaultCertType | CertFile>, vaultInfo: ResourceType) => Promise<CertType[]>;
|
|
20
|
+
export declare const getCertsOutput: (certs: Array<CertType | VaultCertType | CertFile>, vaultInfo: ResourceType) => Promise<pulumi.Output<pulumi.UnwrappedArray<CertType>>>;
|
|
@@ -0,0 +1,85 @@
|
|
|
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 () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.getCertsOutput = exports.getCerts = exports.getCertOutputs = exports.getCert = exports.getCertFromVault = exports.getCertFromFile = void 0;
|
|
37
|
+
const fs = __importStar(require("fs/promises"));
|
|
38
|
+
const vault_1 = require("../vault");
|
|
39
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
40
|
+
const getCertFromFile = async (cert) => {
|
|
41
|
+
const base64Data = await fs.readFile(cert.certificatePath).then((f) => f.toString('base64'));
|
|
42
|
+
return {
|
|
43
|
+
encodedCertificate: base64Data,
|
|
44
|
+
certificatePassword: cert.certificatePassword,
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
exports.getCertFromFile = getCertFromFile;
|
|
48
|
+
const getCertFromVault = async (cert, vaultInfo) => {
|
|
49
|
+
const v = await vault_1.vaultHelpers.getSecret({ name: cert.vaultCertName, version: cert.version, vaultInfo });
|
|
50
|
+
return {
|
|
51
|
+
encodedCertificate: v?.value,
|
|
52
|
+
certificatePassword: undefined,
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
exports.getCertFromVault = getCertFromVault;
|
|
56
|
+
const getCert = async (cert, vaultInfo) => {
|
|
57
|
+
if ('encodedCertificate' in cert) {
|
|
58
|
+
return cert;
|
|
59
|
+
}
|
|
60
|
+
else if ('vaultCertName' in cert) {
|
|
61
|
+
if (!vaultInfo)
|
|
62
|
+
throw new Error('vaultInfo is required for VaultCertType');
|
|
63
|
+
return await (0, exports.getCertFromVault)(cert, vaultInfo);
|
|
64
|
+
}
|
|
65
|
+
else if ('certificatePath' in cert) {
|
|
66
|
+
return await (0, exports.getCertFromFile)(cert);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
throw new Error('Invalid certificate type');
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
exports.getCert = getCert;
|
|
73
|
+
const getCertOutputs = (cert, vaultInfo) => pulumi.output(vaultInfo).apply((v) => (0, exports.getCert)(cert, v));
|
|
74
|
+
exports.getCertOutputs = getCertOutputs;
|
|
75
|
+
const getCerts = async (certs, vaultInfo) => {
|
|
76
|
+
const results = [];
|
|
77
|
+
for (const cert of certs) {
|
|
78
|
+
results.push(await (0, exports.getCert)(cert, vaultInfo));
|
|
79
|
+
}
|
|
80
|
+
return results;
|
|
81
|
+
};
|
|
82
|
+
exports.getCerts = getCerts;
|
|
83
|
+
const getCertsOutput = async (certs, vaultInfo) => pulumi.output((0, exports.getCerts)(certs, vaultInfo));
|
|
84
|
+
exports.getCertsOutput = getCertsOutput;
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VydEhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9jZXJ0SGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxnREFBa0M7QUFFbEMsb0NBQXdDO0FBQ3hDLHVEQUF5QztBQWlCbEMsTUFBTSxlQUFlLEdBQUcsS0FBSyxFQUFFLElBQWMsRUFBcUIsRUFBRTtJQUN6RSxNQUFNLFVBQVUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQ3JHLE9BQU87UUFDTCxrQkFBa0IsRUFBRSxVQUFVO1FBQzlCLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7S0FDOUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQU5XLFFBQUEsZUFBZSxtQkFNMUI7QUFFSyxNQUFNLGdCQUFnQixHQUFHLEtBQUssRUFBRSxJQUFtQixFQUFFLFNBQXVCLEVBQXFCLEVBQUU7SUFDeEcsTUFBTSxDQUFDLEdBQUcsTUFBTSxvQkFBWSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFFdkcsT0FBTztRQUNMLGtCQUFrQixFQUFFLENBQUMsRUFBRSxLQUFNO1FBQzdCLG1CQUFtQixFQUFFLFNBQVM7S0FDL0IsQ0FBQztBQUNKLENBQUMsQ0FBQztBQVBXLFFBQUEsZ0JBQWdCLG9CQU8zQjtBQUVLLE1BQU0sT0FBTyxHQUFHLEtBQUssRUFDMUIsSUFBeUMsRUFDekMsU0FBd0IsRUFDTCxFQUFFO0lBQ3JCLElBQUksb0JBQW9CLElBQUksSUFBSSxFQUFFLENBQUM7UUFDakMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO1NBQU0sSUFBSSxlQUFlLElBQUksSUFBSSxFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLFNBQVM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7UUFDM0UsT0FBTyxNQUFNLElBQUEsd0JBQWdCLEVBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7U0FBTSxJQUFJLGlCQUFpQixJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxJQUFBLHVCQUFlLEVBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztTQUFNLENBQUM7UUFDTixNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFDOUMsQ0FBQztBQUNILENBQUMsQ0FBQztBQWRXLFFBQUEsT0FBTyxXQWNsQjtBQUVLLE1BQU0sY0FBYyxHQUFHLENBQUMsSUFBeUMsRUFBRSxTQUEwQixFQUFFLEVBQUUsQ0FDdEcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUEsZUFBTyxFQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRDdDLFFBQUEsY0FBYyxrQkFDK0I7QUFFbkQsTUFBTSxRQUFRLEdBQUcsS0FBSyxFQUMzQixLQUFpRCxFQUNqRCxTQUF1QixFQUNGLEVBQUU7SUFDdkIsTUFBTSxPQUFPLEdBQWUsRUFBRSxDQUFDO0lBQy9CLEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxFQUFFLENBQUM7UUFDekIsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUEsZUFBTyxFQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFUVyxRQUFBLFFBQVEsWUFTbkI7QUFFSyxNQUFNLGNBQWMsR0FBRyxLQUFLLEVBQUUsS0FBaUQsRUFBRSxTQUF1QixFQUFFLEVBQUUsQ0FDakgsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFBLGdCQUFRLEVBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7QUFEL0IsUUFBQSxjQUFjLGtCQUNpQiJ9
|
package/helpers/rsHelpers.d.ts
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import * as pulumi from '@pulumi/pulumi';
|
|
2
2
|
import * as types from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Reduces a dictionary (object) by applying a processor function to each key-value pair.
|
|
5
|
+
* @param inputs - The input dictionary to process.
|
|
6
|
+
* @param processor - The function to apply to each key-value pair.
|
|
7
|
+
* @returns A new dictionary with the processed values.
|
|
8
|
+
*/
|
|
9
|
+
export declare const dictReduce: <K extends keyof any, T, O>(inputs: Record<K, T>, processor: (key: K, props: T) => O) => Record<K, O>;
|
|
10
|
+
/**
|
|
11
|
+
* Delays the execution for a specified amount of time.
|
|
12
|
+
* @param ms - The number of milliseconds to delay.
|
|
13
|
+
* @returns A promise that resolves after the specified delay.
|
|
14
|
+
*/
|
|
15
|
+
export declare const delay: (ms: number) => Promise<unknown>;
|
|
3
16
|
/**
|
|
4
17
|
* Removes leading and trailing dashes from a string and replaces multiple consecutive dashes with a single dash
|
|
5
18
|
* @param s - The input string to process
|
|
@@ -9,7 +22,12 @@ import * as types from '../types';
|
|
|
9
22
|
* removeDashes("hello--world--test") // returns "hello-world-test"
|
|
10
23
|
*/
|
|
11
24
|
export declare function removeDashes(s: string): string;
|
|
12
|
-
|
|
25
|
+
/**
|
|
26
|
+
* Normalizes a name by replacing non-alphanumeric characters with dashes and removing leading/trailing dashes
|
|
27
|
+
* @param name - The input name to normalize
|
|
28
|
+
* @returns The normalized name
|
|
29
|
+
*/
|
|
30
|
+
export declare function getNameNormalized(name: string): string;
|
|
13
31
|
/**
|
|
14
32
|
* Gets a shortened name by removing organization, project name and stack information
|
|
15
33
|
* @param name - The full resource name
|
package/helpers/rsHelpers.js
CHANGED
|
@@ -33,9 +33,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.getRsGroupIdFrom = void 0;
|
|
36
|
+
exports.getRsGroupIdFrom = exports.delay = exports.dictReduce = void 0;
|
|
37
37
|
exports.removeDashes = removeDashes;
|
|
38
|
-
exports.
|
|
38
|
+
exports.getNameNormalized = getNameNormalized;
|
|
39
39
|
exports.getShortName = getShortName;
|
|
40
40
|
exports.getRsNameFromId = getRsNameFromId;
|
|
41
41
|
exports.getRsNameFromIdOutput = getRsNameFromIdOutput;
|
|
@@ -44,6 +44,24 @@ exports.getRsInfoFromIdOutputs = getRsInfoFromIdOutputs;
|
|
|
44
44
|
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
45
45
|
const azureEnv = __importStar(require("./azureEnv"));
|
|
46
46
|
const stackInfo = __importStar(require("./stackEnv"));
|
|
47
|
+
/**
|
|
48
|
+
* Reduces a dictionary (object) by applying a processor function to each key-value pair.
|
|
49
|
+
* @param inputs - The input dictionary to process.
|
|
50
|
+
* @param processor - The function to apply to each key-value pair.
|
|
51
|
+
* @returns A new dictionary with the processed values.
|
|
52
|
+
*/
|
|
53
|
+
const dictReduce = (inputs, processor) => Object.entries(inputs).reduce((acc, [key, value]) => {
|
|
54
|
+
acc[key] = processor(key, value);
|
|
55
|
+
return acc;
|
|
56
|
+
}, {});
|
|
57
|
+
exports.dictReduce = dictReduce;
|
|
58
|
+
/**
|
|
59
|
+
* Delays the execution for a specified amount of time.
|
|
60
|
+
* @param ms - The number of milliseconds to delay.
|
|
61
|
+
* @returns A promise that resolves after the specified delay.
|
|
62
|
+
*/
|
|
63
|
+
const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
64
|
+
exports.delay = delay;
|
|
47
65
|
/**
|
|
48
66
|
* Removes leading and trailing dashes from a string and replaces multiple consecutive dashes with a single dash
|
|
49
67
|
* @param s - The input string to process
|
|
@@ -55,7 +73,12 @@ const stackInfo = __importStar(require("./stackEnv"));
|
|
|
55
73
|
function removeDashes(s) {
|
|
56
74
|
return s.replace(/^-+|-+$/g, '').replace(/-{2,}/g, '-');
|
|
57
75
|
}
|
|
58
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Normalizes a name by replacing non-alphanumeric characters with dashes and removing leading/trailing dashes
|
|
78
|
+
* @param name - The input name to normalize
|
|
79
|
+
* @returns The normalized name
|
|
80
|
+
*/
|
|
81
|
+
function getNameNormalized(name) {
|
|
59
82
|
const n = name
|
|
60
83
|
.replace(/[^a-zA-Z0-9]/g, '-') // Replace any non-alphanumeric character with "-"
|
|
61
84
|
.toLowerCase(); // Convert the result to lowercase
|
|
@@ -150,4 +173,4 @@ function getRsInfoFromId(resourceId) {
|
|
|
150
173
|
function getRsInfoFromIdOutputs(resourceId) {
|
|
151
174
|
return pulumi.output(resourceId).apply((id) => getRsInfoFromId(id));
|
|
152
175
|
}
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnNIZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvcnNIZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWdDQSxvQ0FFQztBQU9ELDhDQUtDO0FBU0Qsb0NBR0M7QUFvQkQsMENBVUM7QUFPRCxzREFFQztBQWVELDBDQW9CQztBQU9ELHdEQUVDO0FBN0lELHVEQUF5QztBQUV6QyxxREFBdUM7QUFDdkMsc0RBQXdDO0FBRXhDOzs7OztHQUtHO0FBQ0ksTUFBTSxVQUFVLEdBQUcsQ0FBNEIsTUFBb0IsRUFBRSxTQUFrQyxFQUFFLEVBQUUsQ0FDaEgsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtJQUNsRCxHQUFHLENBQUMsR0FBUSxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQVEsRUFBRSxLQUFVLENBQUMsQ0FBQztJQUNoRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsRUFBRSxFQUFrQixDQUFDLENBQUM7QUFKWixRQUFBLFVBQVUsY0FJRTtBQUV6Qjs7OztHQUlHO0FBQ0ksTUFBTSxLQUFLLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFBMUUsUUFBQSxLQUFLLFNBQXFFO0FBRXZGOzs7Ozs7O0dBT0c7QUFDSCxTQUFnQixZQUFZLENBQUMsQ0FBUztJQUNwQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDMUQsQ0FBQztBQUVEOzs7O0dBSUc7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
|
package/helpers/stackEnv.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import * as pulumi from '@pulumi/pulumi';
|
|
|
4
4
|
* @type {boolean}
|
|
5
5
|
*/
|
|
6
6
|
export declare const isDryRun: boolean;
|
|
7
|
+
export declare const isTesting: boolean;
|
|
7
8
|
/**
|
|
8
9
|
* The Pulumi organization name
|
|
9
10
|
* @type {string}
|
|
@@ -25,4 +26,4 @@ export declare const stack: string;
|
|
|
25
26
|
* @param {string} [name=projectName] - The name of the project to get outputs from. Defaults to current project
|
|
26
27
|
* @returns {pulumi.Output<TOutput>} The stack outputs
|
|
27
28
|
*/
|
|
28
|
-
export declare const getStackOutputs: <TOutput>(name?: string) => pulumi.Output<TOutput
|
|
29
|
+
export declare const getStackOutputs: <TOutput>(name?: string) => pulumi.Output<Required<TOutput>>;
|
package/helpers/stackEnv.js
CHANGED
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.getStackOutputs = exports.stack = exports.projectName = exports.organization = exports.isDryRun = void 0;
|
|
36
|
+
exports.getStackOutputs = exports.stack = exports.projectName = exports.organization = exports.isTesting = exports.isDryRun = void 0;
|
|
37
37
|
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
38
38
|
const autoTags_1 = require("./autoTags");
|
|
39
39
|
/**
|
|
@@ -41,6 +41,7 @@ const autoTags_1 = require("./autoTags");
|
|
|
41
41
|
* @type {boolean}
|
|
42
42
|
*/
|
|
43
43
|
exports.isDryRun = Boolean(process.env.PULUMI_NODEJS_DRY_RUN);
|
|
44
|
+
exports.isTesting = process.env.NODE_ENV === 'test';
|
|
44
45
|
/**
|
|
45
46
|
* The Pulumi organization name
|
|
46
47
|
* @type {string}
|
|
@@ -73,9 +74,11 @@ console.log('Pulumi Environments:', {
|
|
|
73
74
|
stack: exports.stack,
|
|
74
75
|
isDryRun: exports.isDryRun,
|
|
75
76
|
});
|
|
76
|
-
(
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
77
|
+
if (!exports.isDryRun && !exports.isTesting) {
|
|
78
|
+
(0, autoTags_1.registerAutoTags)({
|
|
79
|
+
environment: exports.stack,
|
|
80
|
+
organization: exports.organization,
|
|
81
|
+
'pulumi-project': exports.projectName,
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhY2tFbnYuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9zdGFja0Vudi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1REFBeUM7QUFDekMseUNBQThDO0FBRTlDOzs7R0FHRztBQUNVLFFBQUEsUUFBUSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFFdEQsUUFBQSxTQUFTLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEtBQUssTUFBTSxDQUFDO0FBQ3pEOzs7R0FHRztBQUNVLFFBQUEsWUFBWSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTJCLENBQUM7QUFFcEU7OztHQUdHO0FBQ1UsUUFBQSxXQUFXLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsSUFBSSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7QUFFbEc7OztHQUdHO0FBQ1UsUUFBQSxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7QUFFeEY7Ozs7O0dBS0c7QUFDSSxNQUFNLGVBQWUsR0FBRyxDQUFVLE9BQWUsbUJBQVcsRUFBb0MsRUFBRTtJQUN2RyxNQUFNLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxvQkFBWSxJQUFJLElBQUksSUFBSSxhQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9FLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFxQyxDQUFDO0FBQzNGLENBQUMsQ0FBQztBQUhXLFFBQUEsZUFBZSxtQkFHMUI7QUFFRixPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixFQUFFO0lBQ2xDLFlBQVksRUFBWixvQkFBWTtJQUNaLFdBQVcsRUFBWCxtQkFBVztJQUNYLEtBQUssRUFBTCxhQUFLO0lBQ0wsUUFBUSxFQUFSLGdCQUFRO0NBQ1QsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLGdCQUFRLElBQUksQ0FBQyxpQkFBUyxFQUFFLENBQUM7SUFDNUIsSUFBQSwyQkFBZ0IsRUFBQztRQUNmLFdBQVcsRUFBRSxhQUFLO1FBQ2xCLFlBQVksRUFBRSxvQkFBWTtRQUMxQixnQkFBZ0IsRUFBRSxtQkFBVztLQUM5QixDQUFDLENBQUM7QUFDTCxDQUFDIn0=
|
package/index.d.ts
CHANGED
package/index.js
CHANGED
|
@@ -38,6 +38,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.helpers = void 0;
|
|
40
40
|
__exportStar(require("./aks"), exports);
|
|
41
|
+
__exportStar(require("./apim"), exports);
|
|
41
42
|
__exportStar(require("./app"), exports);
|
|
42
43
|
__exportStar(require("./azAd"), exports);
|
|
43
44
|
__exportStar(require("./common"), exports);
|
|
@@ -50,4 +51,4 @@ __exportStar(require("./vault"), exports);
|
|
|
50
51
|
__exportStar(require("./vm"), exports);
|
|
51
52
|
__exportStar(require("./vnet"), exports);
|
|
52
53
|
__exportStar(require("./ResourceBuilder"), exports);
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsd0NBQXNCO0FBQ3RCLHlDQUF1QjtBQUN2Qix3Q0FBc0I7QUFDdEIseUNBQXVCO0FBQ3ZCLDJDQUF5QjtBQUN6Qiw2Q0FBMkI7QUFDM0IscURBQXFDO0FBQ3JDLHlDQUF1QjtBQUN2Qiw2Q0FBMkI7QUFDM0IsNENBQTBCO0FBQzFCLDBDQUF3QjtBQUN4Qix1Q0FBcUI7QUFDckIseUNBQXVCO0FBQ3ZCLG9EQUFrQyJ9
|