@drunk-pulumi/azure-components 1.1.26 → 1.1.28
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/AzKubernetes.d.ts +4 -1
- package/aks/AzKubernetes.js +3 -8
- package/app/AppContainer.d.ts +12 -15
- package/app/AppContainer.js +12 -16
- package/app/AppContainerEnv.d.ts +9 -7
- package/app/AppContainerEnv.js +18 -15
- package/app/AppJob.d.ts +3 -3
- package/app/AppJob.js +11 -4
- package/app/appContainerHelper.d.ts +29 -0
- package/app/appContainerHelper.js +138 -0
- package/app/index.d.ts +1 -0
- package/app/index.js +25 -1
- package/azAd/AzRole.d.ts +5 -3
- package/azAd/AzRole.js +34 -22
- package/azAd/GroupRole.d.ts +6 -6
- package/azAd/GroupRole.js +4 -14
- package/package.json +1 -1
- package/types.d.ts +7 -9
- package/vnet/FirewallPolicies/commonPolicies.d.ts +2 -1
- package/vnet/FirewallPolicies/commonPolicies.js +25 -6
- package/vnet/VirtualNetwork.js +14 -9
package/aks/AzKubernetes.d.ts
CHANGED
|
@@ -23,7 +23,10 @@ type MaintenanceArgs = LegacyMaintenanceArgs | {
|
|
|
23
23
|
nodeOS?: AutoUpgradeScheduleArgs;
|
|
24
24
|
};
|
|
25
25
|
export interface AzKubernetesArgs extends CommonBaseArgs, types.WithEncryptionEnabler, types.WithGroupRolesArgs, types.WithUserAssignedIdentity, types.WithDiskEncryptSet, Partial<Pick<ccs.ManagedClusterArgs, 'dnsPrefix' | 'supportPlan' | 'autoScalerProfile' | 'autoUpgradeProfile' | 'storageProfile'>> {
|
|
26
|
-
sku:
|
|
26
|
+
sku: {
|
|
27
|
+
name: ccs.ManagedClusterSKUName;
|
|
28
|
+
tier?: ccs.ManagedClusterSKUTier;
|
|
29
|
+
};
|
|
27
30
|
nodeResourceGroup?: pulumi.Input<string>;
|
|
28
31
|
namespaces?: Record<string, ccs.NamespaceArgs['properties']>;
|
|
29
32
|
/** This only allows when cluster creating. For additional agent pool after cluster created please use extraAgentPools */
|
package/aks/AzKubernetes.js
CHANGED
|
@@ -190,6 +190,7 @@ class AzKubernetes extends base_1.BaseResourceComponent {
|
|
|
190
190
|
return new ccs.ManagedCluster(this.name, {
|
|
191
191
|
...props,
|
|
192
192
|
...rsGroup,
|
|
193
|
+
sku,
|
|
193
194
|
aadProfile: groupRoles
|
|
194
195
|
? {
|
|
195
196
|
enableAzureRBAC: true,
|
|
@@ -282,9 +283,7 @@ class AzKubernetes extends base_1.BaseResourceComponent {
|
|
|
282
283
|
//userAssignedIdentities: defaultUAssignedId ? [defaultUAssignedId.id] : undefined,
|
|
283
284
|
}
|
|
284
285
|
: undefined,
|
|
285
|
-
//
|
|
286
|
-
// ? pulumi.output(defaultUAssignedId).apply((uID) => ({ [uID.id]: uID }))
|
|
287
|
-
// : undefined,
|
|
286
|
+
//identityProfile: {},
|
|
288
287
|
linuxProfile: {
|
|
289
288
|
adminUsername: login.userName,
|
|
290
289
|
ssh: { publicKeys: [{ keyData: login.sshPublicKey }] },
|
|
@@ -324,10 +323,6 @@ class AzKubernetes extends base_1.BaseResourceComponent {
|
|
|
324
323
|
clientId: appID.clientId,
|
|
325
324
|
secret: appID.clientSecret,
|
|
326
325
|
},
|
|
327
|
-
sku: {
|
|
328
|
-
name: ccs.ManagedClusterSKUName.Base,
|
|
329
|
-
tier: sku,
|
|
330
|
-
},
|
|
331
326
|
windowsProfile: undefined,
|
|
332
327
|
workloadAutoScalerProfile: {
|
|
333
328
|
verticalPodAutoscaler: {
|
|
@@ -524,4 +519,4 @@ class AzKubernetes extends base_1.BaseResourceComponent {
|
|
|
524
519
|
}
|
|
525
520
|
}
|
|
526
521
|
exports.AzKubernetes = AzKubernetes;
|
|
527
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXpLdWJlcm5ldGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Frcy9Bekt1YmVybmV0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkVBQTZEO0FBRTdELHVEQUF5QztBQUV6QywwRUFBNEQ7QUFFNUQsa0NBQTBEO0FBQzFELGtDQUFnRTtBQUNoRSx3Q0FBNkQ7QUFFN0QsOEJBQTBDO0FBQzFDLHNDQUF5QztBQUN6Qyx1Q0FBNEY7QUFDNUYsNkNBQTREO0FBQzVELHNEQUF3QztBQW1CeEMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLFdBQXdDLEVBQXdDLEVBQUU7SUFDakgsSUFBSSxDQUFDLFdBQVc7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUMvQixPQUFPLFlBQVksSUFBSSxXQUFXLElBQUksZ0JBQWdCLElBQUksV0FBVyxDQUFDO0FBQ3hFLENBQUMsQ0FBQztBQUVGLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxXQUF3QyxFQUFxQyxFQUFFO0lBQ2hILElBQUksQ0FBQyxXQUFXO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDbkMsSUFBSSx1QkFBdUIsQ0FBQyxXQUFXLENBQUM7UUFBRSxPQUFPLFdBQVcsQ0FBQztJQUM3RCxPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFdBQXdDLEVBQXVDLEVBQUU7SUFDN0csSUFBSSxDQUFDLFdBQVcsSUFBSSx1QkFBdUIsQ0FBQyxXQUFXLENBQUM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUMzRSxPQUFPLFdBQVcsQ0FBQyxXQUFXLENBQUM7QUFDakMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsQ0FBQyxXQUF3QyxFQUF1QyxFQUFFO0lBQ3hHLElBQUksQ0FBQyxXQUFXLElBQUksdUJBQXVCLENBQUMsV0FBVyxDQUFDO1FBQUUsT0FBTyxT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
|
|
522
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXpLdWJlcm5ldGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Frcy9Bekt1YmVybmV0ZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMkVBQTZEO0FBRTdELHVEQUF5QztBQUV6QywwRUFBNEQ7QUFFNUQsa0NBQTBEO0FBQzFELGtDQUFnRTtBQUNoRSx3Q0FBNkQ7QUFFN0QsOEJBQTBDO0FBQzFDLHNDQUF5QztBQUN6Qyx1Q0FBNEY7QUFDNUYsNkNBQTREO0FBQzVELHNEQUF3QztBQW1CeEMsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLFdBQXdDLEVBQXdDLEVBQUU7SUFDakgsSUFBSSxDQUFDLFdBQVc7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUMvQixPQUFPLFlBQVksSUFBSSxXQUFXLElBQUksZ0JBQWdCLElBQUksV0FBVyxDQUFDO0FBQ3hFLENBQUMsQ0FBQztBQUVGLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxXQUF3QyxFQUFxQyxFQUFFO0lBQ2hILElBQUksQ0FBQyxXQUFXO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDbkMsSUFBSSx1QkFBdUIsQ0FBQyxXQUFXLENBQUM7UUFBRSxPQUFPLFdBQVcsQ0FBQztJQUM3RCxPQUFPLFdBQVcsQ0FBQyxPQUFPLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBRUYsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFdBQXdDLEVBQXVDLEVBQUU7SUFDN0csSUFBSSxDQUFDLFdBQVcsSUFBSSx1QkFBdUIsQ0FBQyxXQUFXLENBQUM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUMzRSxPQUFPLFdBQVcsQ0FBQyxXQUFXLENBQUM7QUFDakMsQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsQ0FBQyxXQUF3QyxFQUF1QyxFQUFFO0lBQ3hHLElBQUksQ0FBQyxXQUFXLElBQUksdUJBQXVCLENBQUMsV0FBVyxDQUFDO1FBQUUsT0FBTyxT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
|
package/app/AppContainer.d.ts
CHANGED
|
@@ -3,6 +3,13 @@ import * as inputs from '@pulumi/azure-native/types/input';
|
|
|
3
3
|
import * as pulumi from '@pulumi/pulumi';
|
|
4
4
|
import { BaseResourceComponent, CommonBaseArgs } from '../base';
|
|
5
5
|
import * as types from '../types';
|
|
6
|
+
export type AppSecretArgs = {
|
|
7
|
+
name: string;
|
|
8
|
+
/** Plain value OR keyVaultUrl (prefer Key Vault) */
|
|
9
|
+
value?: pulumi.Input<string>;
|
|
10
|
+
keyVaultUrl?: pulumi.Input<string>;
|
|
11
|
+
identity?: pulumi.Input<string>;
|
|
12
|
+
};
|
|
6
13
|
/**
|
|
7
14
|
* Azure Container App component providing secure, serverless container execution
|
|
8
15
|
* with auto-scaling, ingress, and managed environment integration.
|
|
@@ -13,23 +20,19 @@ export interface AppContainerArgs extends CommonBaseArgs, Partial<Pick<app.Conta
|
|
|
13
20
|
/** Container configuration */
|
|
14
21
|
template: {
|
|
15
22
|
/** Container definitions (at least one required) */
|
|
16
|
-
containers: Array<Partial<Pick<inputs.app.ContainerArgs, 'args' | 'command' | 'env' | 'probes' | 'volumeMounts' | 'resources'
|
|
23
|
+
containers: Array<Partial<Pick<inputs.app.ContainerArgs, 'args' | 'command' | 'env' | 'probes' | 'volumeMounts' | 'resources'>> & {
|
|
17
24
|
/** Container name */
|
|
18
|
-
name
|
|
25
|
+
name?: string;
|
|
19
26
|
/** Container image (e.g., 'mcr.microsoft.com/azuredocs/containerapps-helloworld:latest') */
|
|
20
27
|
image: pulumi.Input<string>;
|
|
21
28
|
}>;
|
|
22
29
|
/** Init containers */
|
|
23
30
|
initContainers?: Array<Partial<Pick<inputs.app.InitContainerArgs, 'args' | 'command' | 'env' | 'volumeMounts' | 'resources'>> & {
|
|
24
|
-
name
|
|
31
|
+
name?: string;
|
|
25
32
|
image: pulumi.Input<string>;
|
|
26
33
|
}>;
|
|
27
34
|
/** Scaling configuration */
|
|
28
|
-
scale?:
|
|
29
|
-
minReplicas?: number;
|
|
30
|
-
maxReplicas?: number;
|
|
31
|
-
rules?: pulumi.Input<pulumi.Input<inputs.app.ScaleRuleArgs>[]>;
|
|
32
|
-
}>;
|
|
35
|
+
scale?: inputs.app.ScaleArgs;
|
|
33
36
|
/** Volume definitions */
|
|
34
37
|
volumes?: pulumi.Input<pulumi.Input<inputs.app.VolumeArgs>[]>;
|
|
35
38
|
/** Revision suffix */
|
|
@@ -59,13 +62,7 @@ export interface AppContainerArgs extends CommonBaseArgs, Partial<Pick<app.Conta
|
|
|
59
62
|
/** Registry credentials */
|
|
60
63
|
registries?: pulumi.Input<pulumi.Input<inputs.app.RegistryCredentialsArgs>[]>;
|
|
61
64
|
/** Secrets for environment variables or registry auth */
|
|
62
|
-
secrets?: Array<
|
|
63
|
-
name: string;
|
|
64
|
-
/** Plain value OR keyVaultUrl (prefer Key Vault) */
|
|
65
|
-
value?: pulumi.Input<string>;
|
|
66
|
-
keyVaultUrl?: pulumi.Input<string>;
|
|
67
|
-
identity?: pulumi.Input<string>;
|
|
68
|
-
}>;
|
|
65
|
+
secrets?: Array<AppSecretArgs>;
|
|
69
66
|
/** Max inactive revisions */
|
|
70
67
|
maxInactiveRevisions?: pulumi.Input<number>;
|
|
71
68
|
};
|
package/app/AppContainer.js
CHANGED
|
@@ -100,7 +100,7 @@ class AppContainer extends base_1.BaseResourceComponent {
|
|
|
100
100
|
name: s.name,
|
|
101
101
|
value: s.value,
|
|
102
102
|
keyVaultUrl: s.keyVaultUrl,
|
|
103
|
-
identity: s.identity,
|
|
103
|
+
identity: s.identity ?? defaultUAssignedId?.id,
|
|
104
104
|
})),
|
|
105
105
|
maxInactiveRevisions: configuration.maxInactiveRevisions,
|
|
106
106
|
}
|
|
@@ -108,30 +108,26 @@ class AppContainer extends base_1.BaseResourceComponent {
|
|
|
108
108
|
template: {
|
|
109
109
|
containers: template.containers.map((c) => ({
|
|
110
110
|
...c,
|
|
111
|
-
name: c.name,
|
|
111
|
+
name: c.name ?? this.name,
|
|
112
112
|
image: c.image,
|
|
113
|
+
imageType: 'ContainerImage',
|
|
113
114
|
resources: c.resources ?? {
|
|
114
115
|
cpu: 0.25,
|
|
115
116
|
memory: '0.5Gi',
|
|
116
117
|
},
|
|
118
|
+
env: c.env ??
|
|
119
|
+
configuration?.secrets?.map((s) => ({
|
|
120
|
+
name: s.name,
|
|
121
|
+
secretRef: s.name,
|
|
122
|
+
})),
|
|
117
123
|
})),
|
|
118
124
|
initContainers: template.initContainers?.map((ic) => ({
|
|
119
125
|
...ic,
|
|
120
|
-
name: ic.name
|
|
126
|
+
name: ic.name ?? `${this.name}-init`,
|
|
121
127
|
image: ic.image,
|
|
128
|
+
imageType: 'ContainerImage',
|
|
122
129
|
})),
|
|
123
|
-
scale: template.scale
|
|
124
|
-
? {
|
|
125
|
-
cooldownPeriod: template.scale.cooldownPeriod,
|
|
126
|
-
maxReplicas: template.scale.maxReplicas ?? 10,
|
|
127
|
-
minReplicas: template.scale.minReplicas ?? 0,
|
|
128
|
-
pollingInterval: template.scale.pollingInterval,
|
|
129
|
-
rules: template.scale.rules,
|
|
130
|
-
}
|
|
131
|
-
: {
|
|
132
|
-
minReplicas: 0,
|
|
133
|
-
maxReplicas: 10,
|
|
134
|
-
},
|
|
130
|
+
scale: template.scale,
|
|
135
131
|
volumes: template.volumes,
|
|
136
132
|
revisionSuffix: template.revisionSuffix,
|
|
137
133
|
serviceBinds: template.serviceBinds,
|
|
@@ -141,4 +137,4 @@ class AppContainer extends base_1.BaseResourceComponent {
|
|
|
141
137
|
}
|
|
142
138
|
}
|
|
143
139
|
exports.AppContainer = AppContainer;
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBDb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBRWhELHVEQUF5QztBQUV6QyxrQ0FBZ0U7QUFzR2hFLE1BQWEsWUFBYSxTQUFRLDRCQUF1QztJQUN2RCxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDcEMsSUFBSSxDQUFvQztJQUN4QyxrQkFBa0IsQ0FBd0I7SUFDMUMsbUJBQW1CLENBQTBCO0lBRTdELFlBQVksSUFBWSxFQUFFLElBQXNCLEVBQUUsSUFBc0M7UUFDdEYsS0FBSyxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXhDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRS9DLElBQUksQ0FBQyxFQUFFLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDLGtCQUFrQixDQUFDO1FBQzFELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxZQUFZLENBQUMsbUJBQW1CLENBQUM7UUFFNUQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBS2YsT0FBTztZQUNMLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixpQkFBaUIsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElB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
|
package/app/AppContainerEnv.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { AppContainerArgs } from './AppContainer';
|
|
|
5
5
|
import { BaseResourceComponent, CommonBaseArgs } from '../base';
|
|
6
6
|
import * as enums from '@pulumi/azure-native/types/enums';
|
|
7
7
|
import { AppJobArgs } from './AppJob';
|
|
8
|
-
interface ScheduledEntryArgs {
|
|
8
|
+
export interface ScheduledEntryArgs {
|
|
9
9
|
/**
|
|
10
10
|
* Length of maintenance window range from 8 to 24 hours.
|
|
11
11
|
*/
|
|
@@ -19,11 +19,16 @@ interface ScheduledEntryArgs {
|
|
|
19
19
|
*/
|
|
20
20
|
weekDay: pulumi.Input<enums.app.WeekDay>;
|
|
21
21
|
}
|
|
22
|
+
export type ContainerAppsArgs = Omit<AppContainerArgs, types.CommonProps | 'managedEnvironmentId'>;
|
|
23
|
+
export type ContainerJobsArgs = Omit<AppJobArgs, types.CommonProps | 'managedEnvironmentId'>;
|
|
22
24
|
/**
|
|
23
25
|
* Azure Container Apps Managed Environment component providing isolated hosting
|
|
24
26
|
* environment for container apps with networking, monitoring, and scaling features.
|
|
25
27
|
*/
|
|
26
|
-
export interface AppContainerEnvArgs extends CommonBaseArgs, Partial<Pick<app.ManagedEnvironmentArgs, 'daprAIConnectionString' | 'daprAIInstrumentationKey' | 'customDomainConfiguration' | 'infrastructureResourceGroup' | 'peerAuthentication' | 'peerTrafficConfiguration' | 'workloadProfiles' | 'zoneRedundant' | '
|
|
28
|
+
export interface AppContainerEnvArgs extends CommonBaseArgs, Partial<Pick<app.ManagedEnvironmentArgs, 'daprAIConnectionString' | 'daprAIInstrumentationKey' | 'customDomainConfiguration' | 'infrastructureResourceGroup' | 'peerAuthentication' | 'peerTrafficConfiguration' | 'workloadProfiles' | 'zoneRedundant' | 'publicNetworkAccess'>> {
|
|
29
|
+
logs?: Omit<types.LogsInputs, 'storage'> & {
|
|
30
|
+
enableOpenTelemetry?: boolean;
|
|
31
|
+
};
|
|
27
32
|
/** VNet configuration for internal networking */
|
|
28
33
|
vnetConfiguration?: {
|
|
29
34
|
/** Subnet resource info for infrastructure components */
|
|
@@ -35,8 +40,6 @@ export interface AppContainerEnvArgs extends CommonBaseArgs, Partial<Pick<app.Ma
|
|
|
35
40
|
/** Platform-reserved DNS IP (must be within platformReservedCidr) */
|
|
36
41
|
platformReservedDnsIP?: pulumi.Input<string>;
|
|
37
42
|
};
|
|
38
|
-
/** Log Analytics workspace for Container App logs and metrics */
|
|
39
|
-
logAnalyticsWorkspace?: types.ResourceInputs;
|
|
40
43
|
/** Dapr configuration */
|
|
41
44
|
dapr?: {
|
|
42
45
|
/** Application Insights connection string for Dapr telemetry */
|
|
@@ -44,8 +47,8 @@ export interface AppContainerEnvArgs extends CommonBaseArgs, Partial<Pick<app.Ma
|
|
|
44
47
|
/** Application Insights instrumentation key for Dapr telemetry */
|
|
45
48
|
instrumentationKey?: pulumi.Input<string>;
|
|
46
49
|
};
|
|
47
|
-
containerApps?: Record<string,
|
|
48
|
-
containerJobs?: Record<string,
|
|
50
|
+
containerApps?: Record<string, ContainerAppsArgs>;
|
|
51
|
+
containerJobs?: Record<string, ContainerJobsArgs>;
|
|
49
52
|
maintenanceSchedules?: pulumi.Input<ScheduledEntryArgs>[];
|
|
50
53
|
}
|
|
51
54
|
export declare class AppContainerEnv extends BaseResourceComponent<AppContainerEnvArgs> {
|
|
@@ -63,4 +66,3 @@ export declare class AppContainerEnv extends BaseResourceComponent<AppContainerE
|
|
|
63
66
|
private createApps;
|
|
64
67
|
private createJobs;
|
|
65
68
|
}
|
|
66
|
-
export {};
|
package/app/AppContainerEnv.js
CHANGED
|
@@ -67,23 +67,10 @@ class AppContainerEnv extends base_1.BaseResourceComponent {
|
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
69
|
createManagedEnvironment() {
|
|
70
|
-
const { rsGroup, enableResourceIdentity, defaultUAssignedId, vnetConfiguration,
|
|
71
|
-
// Build Log Analytics configuration
|
|
72
|
-
const appLogsConfiguration = logAnalyticsWorkspace
|
|
73
|
-
? {
|
|
74
|
-
appLogsConfiguration: {
|
|
75
|
-
logAnalyticsConfiguration: {
|
|
76
|
-
customerId: logAnalyticsWorkspace.id,
|
|
77
|
-
sharedKey: pulumi.secret(logAnalyticsWorkspace.id), // In practice, retrieve actual shared key
|
|
78
|
-
},
|
|
79
|
-
},
|
|
80
|
-
}
|
|
81
|
-
: undefined;
|
|
70
|
+
const { rsGroup, enableResourceIdentity, defaultUAssignedId, vnetConfiguration, dapr, logs, workloadProfiles, zoneRedundant, ...props } = this.args;
|
|
82
71
|
return new app.ManagedEnvironment(this.name, {
|
|
83
72
|
...props,
|
|
84
73
|
...rsGroup,
|
|
85
|
-
// Logging and monitoring
|
|
86
|
-
...appLogsConfiguration,
|
|
87
74
|
workloadProfiles: workloadProfiles ?? [
|
|
88
75
|
{
|
|
89
76
|
name: 'Consumption',
|
|
@@ -111,6 +98,22 @@ class AppContainerEnv extends base_1.BaseResourceComponent {
|
|
|
111
98
|
daprAIConnectionString: dapr?.connectionString ?? this.args.daprAIConnectionString,
|
|
112
99
|
daprAIInstrumentationKey: dapr?.instrumentationKey ?? this.args.daprAIInstrumentationKey,
|
|
113
100
|
zoneRedundant: zoneRedundant ?? helpers_1.azureEnv.isPrd,
|
|
101
|
+
appLogsConfiguration: logs?.workspace
|
|
102
|
+
? {
|
|
103
|
+
destination: 'log-analytics',
|
|
104
|
+
logAnalyticsConfiguration: {
|
|
105
|
+
customerId: logs.workspace.customerId,
|
|
106
|
+
},
|
|
107
|
+
}
|
|
108
|
+
: { destination: 'azure-monitor' },
|
|
109
|
+
openTelemetryConfiguration: logs?.enableOpenTelemetry
|
|
110
|
+
? {
|
|
111
|
+
logsConfiguration: {
|
|
112
|
+
destinations: ['appInsights'],
|
|
113
|
+
},
|
|
114
|
+
}
|
|
115
|
+
: undefined,
|
|
116
|
+
appInsightsConfiguration: logs?.appInsight ? { connectionString: logs.appInsight.connectionString } : undefined,
|
|
114
117
|
}, { ...this.opts, parent: this, deleteBeforeReplace: true });
|
|
115
118
|
}
|
|
116
119
|
createMaintenance(env) {
|
|
@@ -158,4 +161,4 @@ class AppContainerEnv extends base_1.BaseResourceComponent {
|
|
|
158
161
|
}
|
|
159
162
|
}
|
|
160
163
|
exports.AppContainerEnv = AppContainerEnv;
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29udGFpbmVyRW52LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBDb250YWluZXJFbnYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBQ2hELHVEQUF5QztBQUV6QyxpREFBZ0U7QUFDaEUsa0NBQWdFO0FBQ2hFLHdDQUFzQztBQUV0QyxxQ0FBOEM7QUFvRTlDLE1BQWEsZUFBZ0IsU0FBUSw0QkFBMEM7SUFDN0QsRUFBRSxDQUF3QjtJQUMxQixZQUFZLENBQXdCO0lBQ3BDLGFBQWEsQ0FBd0I7SUFDckMsUUFBUSxDQUF3QjtJQUVoRCxZQUFZLElBQVksRUFBRSxJQUF5QixFQUFFLElBQXNDO1FBQ3pGLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTNDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFNUIsSUFBSSxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO1FBRXBDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sVUFBVTtRQUlmLE9BQU87WUFDTCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsaUJBQWlC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
|
package/app/AppJob.d.ts
CHANGED
|
@@ -13,15 +13,15 @@ export interface AppJobArgs extends CommonBaseArgs, Partial<Pick<app.JobArgs, 'w
|
|
|
13
13
|
/** Container configuration template */
|
|
14
14
|
template: {
|
|
15
15
|
/** Container definitions (at least one required) */
|
|
16
|
-
containers: Array<Partial<Pick<inputs.app.ContainerArgs, 'args' | 'command' | 'env' | 'probes' | 'volumeMounts' | 'resources'
|
|
16
|
+
containers: Array<Partial<Pick<inputs.app.ContainerArgs, 'args' | 'command' | 'env' | 'probes' | 'volumeMounts' | 'resources'>> & {
|
|
17
17
|
/** Container name */
|
|
18
|
-
name
|
|
18
|
+
name?: string;
|
|
19
19
|
/** Container image (e.g., 'mcr.microsoft.com/azuredocs/containerapps-job:latest') */
|
|
20
20
|
image: pulumi.Input<string>;
|
|
21
21
|
}>;
|
|
22
22
|
/** Init containers */
|
|
23
23
|
initContainers?: Array<Partial<Pick<inputs.app.InitContainerArgs, 'args' | 'command' | 'env' | 'volumeMounts' | 'resources'>> & {
|
|
24
|
-
name
|
|
24
|
+
name?: string;
|
|
25
25
|
image: pulumi.Input<string>;
|
|
26
26
|
}>;
|
|
27
27
|
/** Volume definitions */
|
package/app/AppJob.js
CHANGED
|
@@ -108,23 +108,30 @@ class AppJob extends base_1.BaseResourceComponent {
|
|
|
108
108
|
name: s.name,
|
|
109
109
|
value: s.value,
|
|
110
110
|
keyVaultUrl: s.keyVaultUrl,
|
|
111
|
-
identity: s.identity,
|
|
111
|
+
identity: s.identity ?? defaultUAssignedId?.id,
|
|
112
112
|
})),
|
|
113
113
|
},
|
|
114
114
|
template: {
|
|
115
115
|
containers: template.containers.map((c) => ({
|
|
116
116
|
...c,
|
|
117
|
-
name: c.name,
|
|
117
|
+
name: c.name ?? this.name,
|
|
118
118
|
image: c.image,
|
|
119
|
+
imageType: 'ContainerImage',
|
|
119
120
|
resources: c.resources ?? {
|
|
120
121
|
cpu: 0.25,
|
|
121
122
|
memory: '0.5Gi',
|
|
122
123
|
},
|
|
124
|
+
env: c.env ??
|
|
125
|
+
configuration.secrets?.map((s) => ({
|
|
126
|
+
name: s.name,
|
|
127
|
+
secretRef: s.name,
|
|
128
|
+
})),
|
|
123
129
|
})),
|
|
124
130
|
initContainers: template.initContainers?.map((ic) => ({
|
|
125
131
|
...ic,
|
|
126
|
-
name: ic.name
|
|
132
|
+
name: ic.name ?? `${this.name}-init`,
|
|
127
133
|
image: ic.image,
|
|
134
|
+
imageType: 'ContainerImage',
|
|
128
135
|
})),
|
|
129
136
|
volumes: template.volumes,
|
|
130
137
|
},
|
|
@@ -132,4 +139,4 @@ class AppJob extends base_1.BaseResourceComponent {
|
|
|
132
139
|
}
|
|
133
140
|
}
|
|
134
141
|
exports.AppJob = AppJob;
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwSm9iLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBKb2IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBRWhELHVEQUF5QztBQUV6QyxrQ0FBZ0U7QUE2RWhFLE1BQWEsTUFBTyxTQUFRLDRCQUFpQztJQUMzQyxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDcEMsbUJBQW1CLENBQTBCO0lBQzdDLG1CQUFtQixDQUF3QjtJQUUzRCxZQUFZLElBQVksRUFBRSxJQUFnQixFQUFFLElBQXNDO1FBQ2hGLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVsQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsR0FBRyxDQUFDLG1CQUFtQixDQUFDO1FBQ25ELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsbUJBQW1CLENBQUM7UUFFbkQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBSWYsT0FBTztZQUNMLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUM7WUFDckUsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7WUFDN0MsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtTQUM5QyxD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
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { AppContainerArgs, AppSecretArgs } from './AppContainer';
|
|
2
|
+
import * as types from '../types';
|
|
3
|
+
import { AppJobArgs } from './AppJob';
|
|
4
|
+
import * as pulumi from '@pulumi/pulumi';
|
|
5
|
+
import * as inputs from '@pulumi/azure-native/types/input';
|
|
6
|
+
export type ContainerAppsArgs = Omit<AppContainerArgs, types.CommonProps | 'managedEnvironmentId'>;
|
|
7
|
+
export type ContainerJobsArgs = Omit<AppJobArgs, types.CommonProps | 'managedEnvironmentId'>;
|
|
8
|
+
export declare const createCloudflareTunnelApp: ({ enableResourceIdentity, configuration, container, }: types.WithResourceIdentityFlag & {
|
|
9
|
+
configuration: {
|
|
10
|
+
registries?: pulumi.Input<pulumi.Input<inputs.app.RegistryCredentialsArgs>[]>;
|
|
11
|
+
cloudflareToken: Omit<AppSecretArgs, "name">;
|
|
12
|
+
};
|
|
13
|
+
container: {
|
|
14
|
+
image: pulumi.Input<string>;
|
|
15
|
+
resources?: pulumi.Input<inputs.app.ContainerResourcesArgs>;
|
|
16
|
+
};
|
|
17
|
+
}) => ContainerAppsArgs;
|
|
18
|
+
export declare const createGitRunnerJob: ({ enableResourceIdentity, configuration, container, }: types.WithResourceIdentityFlag & {
|
|
19
|
+
configuration: {
|
|
20
|
+
gitRepoOwner: pulumi.Input<string>;
|
|
21
|
+
gitRepoName: pulumi.Input<string>;
|
|
22
|
+
registries?: pulumi.Input<pulumi.Input<inputs.app.RegistryCredentialsArgs>[]>;
|
|
23
|
+
gitPATSecret: Omit<AppSecretArgs, "name">;
|
|
24
|
+
};
|
|
25
|
+
container: {
|
|
26
|
+
image: pulumi.Input<string>;
|
|
27
|
+
resources?: pulumi.Input<inputs.app.ContainerResourcesArgs>;
|
|
28
|
+
};
|
|
29
|
+
}) => ContainerJobsArgs;
|
|
@@ -0,0 +1,138 @@
|
|
|
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.createGitRunnerJob = exports.createCloudflareTunnelApp = void 0;
|
|
37
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
38
|
+
const createCloudflareTunnelApp = ({ enableResourceIdentity, configuration, container, }) => {
|
|
39
|
+
return {
|
|
40
|
+
enableResourceIdentity,
|
|
41
|
+
configuration: {
|
|
42
|
+
registries: configuration.registries,
|
|
43
|
+
maxInactiveRevisions: 5,
|
|
44
|
+
activeRevisionsMode: 'Single',
|
|
45
|
+
secrets: [
|
|
46
|
+
{
|
|
47
|
+
...configuration.cloudflareToken,
|
|
48
|
+
name: 'cf-tunnel-token',
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
},
|
|
52
|
+
template: {
|
|
53
|
+
containers: [
|
|
54
|
+
{
|
|
55
|
+
name: 'cloudflared',
|
|
56
|
+
args: ['tunnel', '--no-autoupdate', 'run', '--token', '$(token)'],
|
|
57
|
+
image: container.image,
|
|
58
|
+
resources: container?.resources,
|
|
59
|
+
env: [
|
|
60
|
+
{
|
|
61
|
+
name: 'token',
|
|
62
|
+
secretRef: 'cf-tunnel-token',
|
|
63
|
+
},
|
|
64
|
+
],
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
exports.createCloudflareTunnelApp = createCloudflareTunnelApp;
|
|
71
|
+
const createGitRunnerJob = ({ enableResourceIdentity, configuration, container, }) => {
|
|
72
|
+
return {
|
|
73
|
+
enableResourceIdentity,
|
|
74
|
+
configuration: {
|
|
75
|
+
registries: configuration.registries,
|
|
76
|
+
triggerType: 'Event',
|
|
77
|
+
eventTriggerConfig: {
|
|
78
|
+
parallelism: 1,
|
|
79
|
+
replicaCompletionCount: 1,
|
|
80
|
+
scale: {
|
|
81
|
+
minExecutions: 0,
|
|
82
|
+
maxExecutions: 5,
|
|
83
|
+
rules: [
|
|
84
|
+
{
|
|
85
|
+
name: 'github-runner',
|
|
86
|
+
type: 'github-runner',
|
|
87
|
+
metadata: {
|
|
88
|
+
githubAPIURL: 'https://api.github.com',
|
|
89
|
+
owner: configuration.gitRepoOwner,
|
|
90
|
+
runnerScope: 'repo',
|
|
91
|
+
repos: configuration.gitRepoName,
|
|
92
|
+
targetWorkflowQueueLength: '1',
|
|
93
|
+
},
|
|
94
|
+
auth: [
|
|
95
|
+
{
|
|
96
|
+
triggerParameter: 'personalAccessToken',
|
|
97
|
+
secretRef: 'github-pat-secret',
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
],
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
secrets: [
|
|
105
|
+
{
|
|
106
|
+
...configuration.gitPATSecret,
|
|
107
|
+
name: 'github-pat-secret',
|
|
108
|
+
},
|
|
109
|
+
],
|
|
110
|
+
},
|
|
111
|
+
template: {
|
|
112
|
+
containers: [
|
|
113
|
+
{
|
|
114
|
+
name: 'git-runner',
|
|
115
|
+
image: container.image,
|
|
116
|
+
// https://learn.microsoft.com/en-us/azure/container-apps/containers#allocations
|
|
117
|
+
resources: container.resources ?? { cpu: 2.5, memory: '5.0Gi' },
|
|
118
|
+
env: [
|
|
119
|
+
{
|
|
120
|
+
name: 'GITHUB_PAT',
|
|
121
|
+
secretRef: 'github-pat-secret',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'GH_URL',
|
|
125
|
+
value: pulumi.interpolate `https://github.com/${configuration.gitRepoOwner}/${configuration.gitRepoName}`,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
name: 'REGISTRATION_TOKEN_API_URL',
|
|
129
|
+
value: pulumi.interpolate `https://api.github.com/repos/${configuration.gitRepoOwner}/${configuration.gitRepoName}/actions/runners/registration-token`,
|
|
130
|
+
},
|
|
131
|
+
],
|
|
132
|
+
},
|
|
133
|
+
],
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
exports.createGitRunnerJob = createGitRunnerJob;
|
|
138
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwQ29udGFpbmVySGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9hcHBDb250YWluZXJIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBR0EsdURBQXlDO0FBTWxDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxFQUN4QyxzQkFBc0IsRUFDdEIsYUFBYSxFQUNiLFNBQVMsR0FVVixFQUFxQixFQUFFO0lBQ3RCLE9BQU87UUFDTCxzQkFBc0I7UUFDdEIsYUFBYSxFQUFFO1lBQ2IsVUFBVSxFQUFFLGFBQWEsQ0FBQyxVQUFVO1lBQ3BDLG9CQUFvQixFQUFFLENBQUM7WUFDdkIsbUJBQW1CLEVBQUUsUUFBUTtZQUM3QixPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsR0FBRyxhQUFhLENBQUMsZUFBZTtvQkFDaEMsSUFBSSxFQUFFLGlCQUFpQjtpQkFDeEI7YUFDRjtTQUNGO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsVUFBVSxFQUFFO2dCQUNWO29CQUNFLElBQUksRUFBRSxhQUFhO29CQUNuQixJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUM7b0JBQ2pFLEtBQUssRUFBRSxTQUFTLENBQUMsS0FBSztvQkFDdEIsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTO29CQUMvQixHQUFHLEVBQUU7d0JBQ0g7NEJBQ0UsSUFBSSxFQUFFLE9BQU87NEJBQ2IsU0FBUyxFQUFFLGlCQUFpQjt5QkFDN0I7cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQTVDVyxRQUFBLHlCQUF5Qiw2QkE0Q3BDO0FBRUssTUFBTSxrQkFBa0IsR0FBRyxDQUFDLEVBQ2pDLHNCQUFzQixFQUN0QixhQUFhLEVBQ2IsU0FBUyxHQVlWLEVBQXFCLEVBQUU7SUFDdEIsT0FBTztRQUNMLHNCQUFzQjtRQUN0QixhQUFhLEVBQUU7WUFDYixVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7WUFDcEMsV0FBVyxFQUFFLE9BQU87WUFDcEIsa0JBQWtCLEVBQUU7Z0JBQ2xCLFdBQVcsRUFBRSxDQUFDO2dCQUNkLHNCQUFzQixFQUFFLENBQUM7Z0JBQ3pCLEtBQUssRUFBRTtvQkFDTCxhQUFhLEVBQUUsQ0FBQztvQkFDaEIsYUFBYSxFQUFFLENBQUM7b0JBQ2hCLEtBQUssRUFBRTt3QkFDTDs0QkFDRSxJQUFJLEVBQUUsZUFBZTs0QkFDckIsSUFBSSxFQUFFLGVBQWU7NEJBQ3JCLFFBQVEsRUFBRTtnQ0FDUixZQUFZLEVBQUUsd0JBQXdCO2dDQUN0QyxLQUFLLEVBQUUsYUFBYSxDQUFDLFlBQVk7Z0NBQ2pDLFdBQVcsRUFBRSxNQUFNO2dDQUNuQixLQUFLLEVBQUUsYUFBYSxDQUFDLFdBQVc7Z0NBQ2hDLHlCQUF5QixFQUFFLEdBQUc7NkJBQy9COzRCQUNELElBQUksRUFBRTtnQ0FDSjtvQ0FDRSxnQkFBZ0IsRUFBRSxxQkFBcUI7b0NBQ3ZDLFNBQVMsRUFBRSxtQkFBbUI7aUNBQy9COzZCQUNGO3lCQUNGO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDRCxPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsR0FBRyxhQUFhLENBQUMsWUFBWTtvQkFDN0IsSUFBSSxFQUFFLG1CQUFtQjtpQkFDMUI7YUFDRjtTQUNGO1FBQ0QsUUFBUSxFQUFFO1lBQ1IsVUFBVSxFQUFFO2dCQUNWO29CQUNFLElBQUksRUFBRSxZQUFZO29CQUNsQixLQUFLLEVBQUUsU0FBUyxDQUFDLEtBQUs7b0JBQ3RCLGdGQUFnRjtvQkFDaEYsU0FBUyxFQUFFLFNBQVMsQ0FBQyxTQUFTLElBQUksRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUU7b0JBQy9ELEdBQUcsRUFBRTt3QkFDSDs0QkFDRSxJQUFJLEVBQUUsWUFBWTs0QkFDbEIsU0FBUyxFQUFFLG1CQUFtQjt5QkFDL0I7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsS0FBSyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUEsc0JBQXNCLGFBQWEsQ0FBQyxZQUFZLElBQUksYUFBYSxDQUFDLFdBQVcsRUFBRTt5QkFDekc7d0JBQ0Q7NEJBQ0UsSUFBSSxFQUFFLDRCQUE0Qjs0QkFDbEMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUEsZ0NBQWdDLGFBQWEsQ0FBQyxZQUFZLElBQUksYUFBYSxDQUFDLFdBQVcscUNBQXFDO3lCQUN0SjtxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBaEZXLFFBQUEsa0JBQWtCLHNCQWdGN0IifQ==
|
package/app/index.d.ts
CHANGED
package/app/index.js
CHANGED
|
@@ -10,10 +10,34 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
10
10
|
if (k2 === undefined) k2 = k;
|
|
11
11
|
o[k2] = m[k];
|
|
12
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
|
+
})();
|
|
13
35
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
37
|
};
|
|
16
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.appHelpers = void 0;
|
|
40
|
+
exports.appHelpers = __importStar(require("./appContainerHelper"));
|
|
17
41
|
__exportStar(require("./AppCert"), exports);
|
|
18
42
|
__exportStar(require("./AppConfig"), exports);
|
|
19
43
|
__exportStar(require("./AppContainer"), exports);
|
|
@@ -23,4 +47,4 @@ __exportStar(require("./AppService"), exports);
|
|
|
23
47
|
__exportStar(require("./IoTHub"), exports);
|
|
24
48
|
__exportStar(require("./LogicApp"), exports);
|
|
25
49
|
__exportStar(require("./SignalR"), exports);
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1FQUFtRDtBQUNuRCw0Q0FBMEI7QUFDMUIsOENBQTRCO0FBQzVCLGlEQUErQjtBQUMvQixvREFBa0M7QUFDbEMsMkNBQXlCO0FBQ3pCLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIsNkNBQTJCO0FBQzNCLDRDQUEwQiJ9
|
package/azAd/AzRole.d.ts
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import * as azAd from '@pulumi/azuread';
|
|
2
2
|
import * as pulumi from '@pulumi/pulumi';
|
|
3
3
|
import { BaseComponent } from '../base/BaseComponent';
|
|
4
|
-
export interface AzRoleArgs extends Partial<Pick<azAd.GroupArgs, '
|
|
4
|
+
export interface AzRoleArgs extends Partial<Pick<azAd.GroupArgs, 'owners' | 'preventDuplicateNames' | 'description'>> {
|
|
5
|
+
members?: pulumi.Input<string>[];
|
|
5
6
|
}
|
|
6
7
|
export declare class AzRole extends BaseComponent<AzRoleArgs> {
|
|
7
|
-
readonly
|
|
8
|
-
readonly displayName: pulumi.Output<string>;
|
|
8
|
+
readonly group: azAd.Group;
|
|
9
9
|
constructor(name: string, args?: AzRoleArgs, opts?: pulumi.ComponentResourceOptions);
|
|
10
10
|
getOutputs(): {
|
|
11
11
|
objectId: pulumi.Output<string>;
|
|
12
12
|
displayName: pulumi.Output<string>;
|
|
13
13
|
};
|
|
14
|
+
private createGroup;
|
|
15
|
+
private createMembers;
|
|
14
16
|
}
|
package/azAd/AzRole.js
CHANGED
|
@@ -35,38 +35,50 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.AzRole = void 0;
|
|
37
37
|
const azAd = __importStar(require("@pulumi/azuread"));
|
|
38
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
38
39
|
const BaseComponent_1 = require("../base/BaseComponent");
|
|
39
40
|
const helpers_1 = require("../base/helpers");
|
|
40
41
|
const helpers_2 = require("../helpers");
|
|
41
42
|
class AzRole extends BaseComponent_1.BaseComponent {
|
|
42
|
-
|
|
43
|
-
displayName;
|
|
43
|
+
group;
|
|
44
44
|
constructor(name, args = {}, opts) {
|
|
45
|
-
const
|
|
46
|
-
super((0, helpers_1.getComponentResourceType)('AzRole'),
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
: `ROL ${helpers_2.stackInfo.stack} ${name}`.toUpperCase();
|
|
50
|
-
const role = new azAd.Group(n, {
|
|
51
|
-
displayName: roleName,
|
|
52
|
-
description: roleName,
|
|
53
|
-
members: args.members,
|
|
54
|
-
owners: args.owners,
|
|
55
|
-
securityEnabled: true,
|
|
56
|
-
mailEnabled: false,
|
|
57
|
-
preventDuplicateNames: args.preventDuplicateNames,
|
|
58
|
-
assignableToRole: false,
|
|
59
|
-
}, { parent: this });
|
|
60
|
-
this.objectId = role.objectId;
|
|
61
|
-
this.displayName = role.displayName;
|
|
45
|
+
const rsName = `rol-${name.toLowerCase().replace(/\s+/g, '-')}`;
|
|
46
|
+
super((0, helpers_1.getComponentResourceType)('AzRole'), rsName, args, opts);
|
|
47
|
+
this.group = this.createGroup(rsName);
|
|
48
|
+
this.createMembers(this.group);
|
|
62
49
|
this.registerOutputs();
|
|
63
50
|
}
|
|
64
51
|
getOutputs() {
|
|
65
52
|
return {
|
|
66
|
-
objectId: this.objectId,
|
|
67
|
-
displayName: this.displayName,
|
|
53
|
+
objectId: this.group.objectId,
|
|
54
|
+
displayName: this.group.displayName,
|
|
68
55
|
};
|
|
69
56
|
}
|
|
57
|
+
createGroup(rsName) {
|
|
58
|
+
const { description, owners, preventDuplicateNames } = this.args;
|
|
59
|
+
const roleName = this.name.includes(helpers_2.stackInfo.stack)
|
|
60
|
+
? `ROL ${this.name}`.toUpperCase()
|
|
61
|
+
: `ROL ${helpers_2.stackInfo.stack} ${this.name}`.toUpperCase();
|
|
62
|
+
return new azAd.Group(rsName, {
|
|
63
|
+
displayName: roleName,
|
|
64
|
+
description: description ?? roleName,
|
|
65
|
+
//members: args.members,
|
|
66
|
+
owners: owners,
|
|
67
|
+
preventDuplicateNames,
|
|
68
|
+
securityEnabled: true,
|
|
69
|
+
mailEnabled: false,
|
|
70
|
+
assignableToRole: false,
|
|
71
|
+
}, { parent: this, ignoreChanges: ['members'] });
|
|
72
|
+
}
|
|
73
|
+
createMembers(group) {
|
|
74
|
+
const { members } = this.args;
|
|
75
|
+
if (!members || members.length === 0)
|
|
76
|
+
return;
|
|
77
|
+
pulumi.output(members).apply((ms) => ms.map((m) => new azAd.GroupMember(`${this.name}-mb-${m}`, {
|
|
78
|
+
memberObjectId: m,
|
|
79
|
+
groupObjectId: group.objectId,
|
|
80
|
+
}, { dependsOn: group, parent: this, deletedWith: group, deleteBeforeReplace: true })));
|
|
81
|
+
}
|
|
70
82
|
}
|
|
71
83
|
exports.AzRole = AzRole;
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXpSb2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F6QWQvQXpSb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUF3QztBQUN4Qyx1REFBeUM7QUFFekMseURBQXNEO0FBQ3RELDZDQUEyRDtBQUMzRCx3Q0FBdUM7QUFNdkMsTUFBYSxNQUFPLFNBQVEsNkJBQXlCO0lBQ25DLEtBQUssQ0FBYTtJQUVsQyxZQUFZLElBQVksRUFBRSxPQUFtQixFQUFFLEVBQUUsSUFBc0M7UUFDckYsTUFBTSxNQUFNLEdBQUcsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2hFLEtBQUssQ0FBQyxJQUFBLGtDQUF3QixFQUFDLFFBQVEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRS9CLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU87WUFDTCxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRO1lBQzdCLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7U0FDcEMsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXLENBQUMsTUFBYztRQUNoQyxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFFakUsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQVMsQ0FBQyxLQUFLLENBQUM7WUFDbEQsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRTtZQUNsQyxDQUFDLENBQUMsT0FBTyxtQkFBUyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFeEQsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQ25CLE1BQU0sRUFDTjtZQUNFLFdBQVcsRUFBRSxRQUFRO1lBQ3JCLFdBQVcsRUFBRSxXQUFXLElBQUksUUFBUTtZQUNwQyx3QkFBd0I7WUFDeEIsTUFBTSxFQUFFLE1BQU07WUFDZCxxQkFBcUI7WUFDckIsZUFBZSxFQUFFLElBQUk7WUFDckIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsZ0JBQWdCLEVBQUUsS0FBSztTQUN4QixFQUNELEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUM3QyxDQUFDO0lBQ0osQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFpQjtRQUNyQyxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUFFLE9BQU87UUFFN0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUNsQyxFQUFFLENBQUMsR0FBRyxDQUNKLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDSixJQUFJLElBQUksQ0FBQyxXQUFXLENBQ2xCLEdBQUcsSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLEVBQUUsRUFDdEI7WUFDRSxjQUFjLEVBQUUsQ0FBQztZQUNqQixhQUFhLEVBQUUsS0FBSyxDQUFDLFFBQVE7U0FDOUIsRUFDRCxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxDQUNsRixDQUNKLENBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTdERCx3QkE2REMifQ==
|
package/azAd/GroupRole.d.ts
CHANGED
|
@@ -6,14 +6,14 @@ export interface GroupRoleArgs extends Partial<Pick<AzRoleArgs, 'owners' | 'prev
|
|
|
6
6
|
preventDuplicateNames?: pulumi.Input<boolean>;
|
|
7
7
|
}
|
|
8
8
|
export declare class GroupRole extends BaseComponent<GroupRoleArgs> {
|
|
9
|
-
readonly admin:
|
|
10
|
-
readonly contributor:
|
|
11
|
-
readonly readOnly:
|
|
9
|
+
readonly admin: types.AsOutput<types.GroupRoleOutput>;
|
|
10
|
+
readonly contributor: types.AsOutput<types.GroupRoleOutput>;
|
|
11
|
+
readonly readOnly: types.AsOutput<types.GroupRoleOutput>;
|
|
12
12
|
constructor(name?: string, args?: GroupRoleArgs, opts?: pulumi.ComponentResourceOptions);
|
|
13
13
|
getOutputs(): {
|
|
14
|
-
admin:
|
|
15
|
-
contributor:
|
|
16
|
-
readOnly:
|
|
14
|
+
admin: types.AsOutput<types.GroupRoleOutput>;
|
|
15
|
+
contributor: types.AsOutput<types.GroupRoleOutput>;
|
|
16
|
+
readOnly: types.AsOutput<types.GroupRoleOutput>;
|
|
17
17
|
};
|
|
18
18
|
private configHierarchyRoles;
|
|
19
19
|
}
|
package/azAd/GroupRole.js
CHANGED
|
@@ -35,7 +35,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.GroupRole = void 0;
|
|
37
37
|
const azAd = __importStar(require("@pulumi/azuread"));
|
|
38
|
-
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
39
38
|
const base_1 = require("../base");
|
|
40
39
|
const helpers_1 = require("../base/helpers");
|
|
41
40
|
const helpers_2 = require("../helpers");
|
|
@@ -55,18 +54,9 @@ class GroupRole extends base_1.BaseComponent {
|
|
|
55
54
|
preventDuplicateNames: args.preventDuplicateNames,
|
|
56
55
|
}, { ...this.opts, parent: this, deletedWith: this }),
|
|
57
56
|
]));
|
|
58
|
-
this.admin =
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
});
|
|
62
|
-
this.contributor = pulumi.output({
|
|
63
|
-
objectId: roleInstances.contributor.objectId,
|
|
64
|
-
displayName: roleInstances.contributor.displayName,
|
|
65
|
-
});
|
|
66
|
-
this.readOnly = pulumi.output({
|
|
67
|
-
objectId: roleInstances.readOnly.objectId,
|
|
68
|
-
displayName: roleInstances.readOnly.displayName,
|
|
69
|
-
});
|
|
57
|
+
this.admin = roleInstances.admin.getOutputs();
|
|
58
|
+
this.contributor = roleInstances.contributor.getOutputs();
|
|
59
|
+
this.readOnly = roleInstances.readOnly.getOutputs();
|
|
70
60
|
this.configHierarchyRoles(roleInstances);
|
|
71
61
|
this.registerOutputs();
|
|
72
62
|
}
|
|
@@ -93,4 +83,4 @@ class GroupRole extends base_1.BaseComponent {
|
|
|
93
83
|
}
|
|
94
84
|
}
|
|
95
85
|
exports.GroupRole = GroupRole;
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JvdXBSb2xlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F6QWQvR3JvdXBSb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHNEQUF3QztBQUV4QyxrQ0FBd0M7QUFDeEMsNkNBQTJEO0FBQzNELHdDQUF1QztBQUV2QyxxQ0FBOEM7QUFTOUMsTUFBYSxTQUFVLFNBQVEsb0JBQTRCO0lBQ3pDLEtBQUssQ0FBd0M7SUFDN0MsV0FBVyxDQUF3QztJQUNuRCxRQUFRLENBQXdDO0lBRWhFLFlBQVksT0FBZSxtQkFBUyxDQUFDLEtBQUssRUFBRSxPQUFzQixFQUFFLEVBQUUsSUFBc0M7UUFDMUcsS0FBSyxDQUFDLElBQUEsa0NBQXdCLEVBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUUvRCxNQUFNLEtBQUssR0FBRyxDQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsVUFBVSxDQUFVLENBQUM7UUFFNUQsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FDdEMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDbEIsSUFBSTtZQUNKLElBQUksZUFBTSxDQUNSLEdBQUcsSUFBSSxJQUFJLElBQUksRUFBRSxFQUNqQjtnQkFDRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07Z0JBQ25CLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTztnQkFDNUIscUJBQXFCLEVBQUUsSUFBSSxDQUFDLHFCQUFxQjthQUNsRCxFQUNELEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUNsRDtTQUNGLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBSSxDQUFDLEtBQUssR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMxRCxJQUFJLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFcEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXpDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU87WUFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN4QixDQUFDO0lBQ0osQ0FBQztJQUVPLG9CQUFvQixDQUFDLEtBQThCO1FBQ3pELElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUNsQixHQUFHLElBQUksQ0FBQyxJQUFJLG9CQUFvQixFQUNoQztnQkFDRSxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO2dCQUN4QyxjQUFjLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRO2FBQ3BDLEVBQ0QsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxDQUNsRSxDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEMsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUNsQixHQUFHLElBQUksQ0FBQyxJQUFJLHVCQUF1QixFQUNuQztnQkFDRSxhQUFhLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRO2dCQUNyQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO2FBQzFDLEVBQ0QsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxDQUN4RSxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7Q0FDRjtBQWpFRCw4QkFpRUMifQ==
|
package/package.json
CHANGED
package/types.d.ts
CHANGED
|
@@ -57,9 +57,7 @@ export type WithDiskEncryptSet = {
|
|
|
57
57
|
};
|
|
58
58
|
export type WithMemberOfArgs = {
|
|
59
59
|
/** The Id of the EntraID group */
|
|
60
|
-
memberof?:
|
|
61
|
-
objectId: string;
|
|
62
|
-
}>[];
|
|
60
|
+
memberof?: AsInput<GroupRoleOutput>[];
|
|
63
61
|
};
|
|
64
62
|
export type IdentityType = {
|
|
65
63
|
id: string;
|
|
@@ -99,14 +97,14 @@ export interface GroupRoleOutput {
|
|
|
99
97
|
displayName: string;
|
|
100
98
|
}
|
|
101
99
|
export type GroupRoleInputTypes = {
|
|
102
|
-
admin:
|
|
103
|
-
contributor:
|
|
104
|
-
readOnly:
|
|
100
|
+
admin: AsInput<GroupRoleOutput>;
|
|
101
|
+
contributor: AsInput<GroupRoleOutput>;
|
|
102
|
+
readOnly: AsInput<GroupRoleOutput>;
|
|
105
103
|
};
|
|
106
104
|
export type GroupRoleOutputTypes = {
|
|
107
|
-
admin:
|
|
108
|
-
contributor:
|
|
109
|
-
readOnly:
|
|
105
|
+
admin: AsOutput<GroupRoleOutput>;
|
|
106
|
+
contributor: AsOutput<GroupRoleOutput>;
|
|
107
|
+
readOnly: AsOutput<GroupRoleOutput>;
|
|
110
108
|
};
|
|
111
109
|
export type WithGroupRolesArgs = {
|
|
112
110
|
groupRoles?: GroupRoleOutputTypes;
|
|
@@ -5,7 +5,7 @@ export declare function newFirewallPolicy(name: string, { priority, action }: {
|
|
|
5
5
|
priority: number;
|
|
6
6
|
action: 'Allow' | 'Deny';
|
|
7
7
|
}): FirewallPolicyBuilder;
|
|
8
|
-
export declare function defaultAllowedPolicies({ name, priority, sourceAddresses, allowsAllApps, allowsAzurePortal, allowsAzureDevOps, allowsOffice365, allowsWindowsUpdate, }: {
|
|
8
|
+
export declare function defaultAllowedPolicies({ name, priority, sourceAddresses, allowsAllApps, allowsAzurePortal, allowsAzureDevOps, allowsOffice365, allowsWindowsUpdate, allowsGitHubRunner, }: {
|
|
9
9
|
name?: string;
|
|
10
10
|
priority: number;
|
|
11
11
|
sourceAddresses: pulumi.Input<string>[];
|
|
@@ -15,6 +15,7 @@ export declare function defaultAllowedPolicies({ name, priority, sourceAddresses
|
|
|
15
15
|
/**This is dangerous rule use with care*/
|
|
16
16
|
allowsAllApps?: boolean;
|
|
17
17
|
allowsWindowsUpdate?: boolean;
|
|
18
|
+
allowsGitHubRunner?: boolean;
|
|
18
19
|
}): FirewallPolicyBuilder;
|
|
19
20
|
export declare function defaultDeniedPolicies(priority?: number): import("..").RulePolicyArgs;
|
|
20
21
|
export declare function allowsCloudflareTunnels({ name, priority, sourceAddresses, internalDestinationAddresses, internalDestinationPorts, }: {
|
|
@@ -62,7 +62,7 @@ exports.allAzurePorts = [
|
|
|
62
62
|
function newFirewallPolicy(name, { priority, action }) {
|
|
63
63
|
return new FirewallPolicyBuilder_1.FirewallPolicyBuilder(name, { priority, action });
|
|
64
64
|
}
|
|
65
|
-
function defaultAllowedPolicies({ name = 'default-allows', priority = 100, sourceAddresses, allowsAllApps, allowsAzurePortal, allowsAzureDevOps, allowsOffice365, allowsWindowsUpdate, }) {
|
|
65
|
+
function defaultAllowedPolicies({ name = 'default-allows', priority = 100, sourceAddresses, allowsAllApps, allowsAzurePortal, allowsAzureDevOps, allowsOffice365, allowsWindowsUpdate, allowsGitHubRunner, }) {
|
|
66
66
|
const builder = new FirewallPolicyBuilder_1.FirewallPolicyBuilder(name, { priority, action: 'Allow' });
|
|
67
67
|
if (allowsAllApps) {
|
|
68
68
|
builder.addAppRule('allow-everything', {
|
|
@@ -391,6 +391,27 @@ function defaultAllowedPolicies({ name = 'default-allows', priority = 100, sourc
|
|
|
391
391
|
protocols: [{ protocolType: 'Https', port: 443 }],
|
|
392
392
|
});
|
|
393
393
|
}
|
|
394
|
+
if (allowsGitHubRunner) {
|
|
395
|
+
builder.addAppRule('allows-github-runner', {
|
|
396
|
+
description: 'Allows Github Runner',
|
|
397
|
+
sourceAddresses,
|
|
398
|
+
targetFqdns: [
|
|
399
|
+
'github.com',
|
|
400
|
+
'*.github.com',
|
|
401
|
+
'githubusercontent.com',
|
|
402
|
+
'*.githubusercontent.com',
|
|
403
|
+
'github-cloud.s3.amazonaws.com',
|
|
404
|
+
'registry.npmjs.org',
|
|
405
|
+
'*.pulumi.com',
|
|
406
|
+
'*.cloudflare.com',
|
|
407
|
+
'unpkg.com',
|
|
408
|
+
'*.unpkg.com',
|
|
409
|
+
'nodejs.org',
|
|
410
|
+
'*.nodejs.org',
|
|
411
|
+
],
|
|
412
|
+
protocols: [{ protocolType: 'Https', port: 443 }],
|
|
413
|
+
});
|
|
414
|
+
}
|
|
394
415
|
return builder;
|
|
395
416
|
}
|
|
396
417
|
function defaultDeniedPolicies(priority = 6001) {
|
|
@@ -508,6 +529,7 @@ function allowsAksPolicies({ name = 'aks', priority, subnetAddressSpaces, privat
|
|
|
508
529
|
'mcr-0001.mcr-msedge.net',
|
|
509
530
|
'management.azure.com',
|
|
510
531
|
'login.microsoftonline.com',
|
|
532
|
+
'graph.microsoft.com',
|
|
511
533
|
'packages.microsoft.com',
|
|
512
534
|
'acs-mirror.azureedge.net',
|
|
513
535
|
'packages.aks.azure.com',
|
|
@@ -521,9 +543,6 @@ function allowsAksPolicies({ name = 'aks', priority, subnetAddressSpaces, privat
|
|
|
521
543
|
'*.ingest.monitor.azure.com',
|
|
522
544
|
'*.metrics.ingest.monitor.azure.com',
|
|
523
545
|
`${helpers_1.azureEnv.currentRegionCode}.handler.control.monitor.azure.com`,
|
|
524
|
-
//Key Vault
|
|
525
|
-
'vault.azure.net',
|
|
526
|
-
'*.vault.usgovcloudapi.net',
|
|
527
546
|
//Storage for container
|
|
528
547
|
'*.blob.core.windows.net',
|
|
529
548
|
];
|
|
@@ -532,7 +551,7 @@ function allowsAksPolicies({ name = 'aks', priority, subnetAddressSpaces, privat
|
|
|
532
551
|
}
|
|
533
552
|
builder
|
|
534
553
|
//App
|
|
535
|
-
.addAppRule('
|
|
554
|
+
.addAppRule('azure-resources', {
|
|
536
555
|
description: 'Allows pods to access AzureKubernetesService',
|
|
537
556
|
sourceAddresses: subnetAddressSpaces,
|
|
538
557
|
targetFqdns,
|
|
@@ -540,4 +559,4 @@ function allowsAksPolicies({ name = 'aks', priority, subnetAddressSpaces, privat
|
|
|
540
559
|
});
|
|
541
560
|
return builder;
|
|
542
561
|
}
|
|
543
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uUG9saWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdm5ldC9GaXJld2FsbFBvbGljaWVzL2NvbW1vblBvbGljaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQSw4Q0FFQztBQUVELHdEQW1XQztBQUVELHNEQWFDO0FBRUQsMERBaUVDO0FBR0QsOENBbUdDO0FBcmpCRCx1REFBeUM7QUFDekMsMkNBQXlDO0FBQ3pDLG1FQUFnRTtBQUVuRCxRQUFBLGFBQWEsR0FBRztJQUMzQixJQUFJO0lBQ0osS0FBSztJQUNMLEtBQUs7SUFDTCxNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE9BQU87Q0FDUixDQUFDO0FBRUYsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBa0Q7SUFDbEgsT0FBTyxJQUFJLDZDQUFxQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxFQUNyQyxJQUFJLEdBQUcsZ0JBQWdCLEVBQ3ZCLFFBQVEsR0FBRyxHQUFHLEVBQ2QsZUFBZSxFQUNmLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixtQkFBbUIsR0FXcEI7SUFDQyxNQUFNLE9BQU8sR0FBRyxJQUFJLDZDQUFxQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUUvRSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2xCLE9BQU8sQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEVB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
|
|
562
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uUG9saWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdm5ldC9GaXJld2FsbFBvbGljaWVzL2NvbW1vblBvbGljaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQSw4Q0FFQztBQUVELHdEQTBYQztBQUVELHNEQWFDO0FBRUQsMERBaUVDO0FBR0QsOENBaUdDO0FBMWtCRCx1REFBeUM7QUFDekMsMkNBQXlDO0FBQ3pDLG1FQUFnRTtBQUVuRCxRQUFBLGFBQWEsR0FBRztJQUMzQixJQUFJO0lBQ0osS0FBSztJQUNMLEtBQUs7SUFDTCxNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE9BQU87Q0FDUixDQUFDO0FBRUYsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBa0Q7SUFDbEgsT0FBTyxJQUFJLDZDQUFxQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxFQUNyQyxJQUFJLEdBQUcsZ0JBQWdCLEVBQ3ZCLFFBQVEsR0FBRyxHQUFHLEVBQ2QsZUFBZSxFQUNmLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsa0JBQWtCLEdBWW5CO0lBQ0MsTUFBTSxPQUFPLEdBQUcsSUFBSSw2Q0FBcUIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFFL0UsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNsQixPQUFPLENBQUMsVUFBVSxD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
|
package/vnet/VirtualNetwork.js
CHANGED
|
@@ -171,6 +171,7 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
171
171
|
if (!ipCreate)
|
|
172
172
|
return [];
|
|
173
173
|
this.ipAddressInstance = new IpAddresses_1.IpAddresses(`${this.name}-ip`, { ...ipCreate, rsGroup }, {
|
|
174
|
+
...this.opts,
|
|
174
175
|
parent: this,
|
|
175
176
|
retainOnDelete: true,
|
|
176
177
|
});
|
|
@@ -199,9 +200,9 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
199
200
|
...rsGroup,
|
|
200
201
|
...natGatewayCreate,
|
|
201
202
|
sku: { name: natGatewayCreate.sku },
|
|
202
|
-
zones: natGatewayCreate.sku == 'Standard' ?
|
|
203
|
+
zones: natGatewayCreate.sku == 'Standard' ? undefined : helpers_1.zoneHelper.getDefaultZones(natGatewayCreate.zones),
|
|
203
204
|
publicIpAddresses: ipAddresses,
|
|
204
|
-
}, { dependsOn: this.ipAddressInstance ?? this.opts?.dependsOn, parent: this });
|
|
205
|
+
}, { ...this.opts, dependsOn: this.ipAddressInstance ?? this.opts?.dependsOn, parent: this });
|
|
205
206
|
}
|
|
206
207
|
createVpnGateway(subnets) {
|
|
207
208
|
const { rsGroup, vpnGatewayCreate } = this.args;
|
|
@@ -212,7 +213,7 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
212
213
|
...vpnGatewayCreate,
|
|
213
214
|
rsGroup,
|
|
214
215
|
subnetId: vpnSubnet.id,
|
|
215
|
-
}, { dependsOn: vpnSubnet, parent: this });
|
|
216
|
+
}, { ...this.opts, dependsOn: vpnSubnet, parent: this });
|
|
216
217
|
}
|
|
217
218
|
createFirewall(subnets) {
|
|
218
219
|
const { rsGroup, natGatewayCreate, publicIpAddresses, firewallCreate } = this.args;
|
|
@@ -245,7 +246,11 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
245
246
|
subnet: { id: firewallSubnet.id },
|
|
246
247
|
},
|
|
247
248
|
],
|
|
248
|
-
}, {
|
|
249
|
+
}, {
|
|
250
|
+
...this.opts,
|
|
251
|
+
dependsOn: firewallManageSubnet ? [firewallManageSubnet, firewallSubnet] : firewallSubnet,
|
|
252
|
+
parent: this,
|
|
253
|
+
});
|
|
249
254
|
}
|
|
250
255
|
createBasion(subnets) {
|
|
251
256
|
const { rsGroup, basion } = this.args;
|
|
@@ -257,7 +262,7 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
257
262
|
rsGroup,
|
|
258
263
|
subnetId: basionSubnet.id,
|
|
259
264
|
network: { ...basion.network },
|
|
260
|
-
}, { dependsOn: basionSubnet, parent: this });
|
|
265
|
+
}, { ...this.opts, dependsOn: basionSubnet, parent: this });
|
|
261
266
|
}
|
|
262
267
|
createVnet({ natGateway, routeTable, securityGroup, }) {
|
|
263
268
|
const { rsGroup, firewallCreate, basion, vpnGatewayCreate, vnet } = this.args;
|
|
@@ -324,7 +329,7 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
324
329
|
enabled: true,
|
|
325
330
|
enforcement: network.VirtualNetworkEncryptionEnforcement.AllowUnencrypted,
|
|
326
331
|
},
|
|
327
|
-
}, { dependsOn, ignoreChanges: ['virtualNetworkPeerings', 'subnets'], parent: this });
|
|
332
|
+
}, { ...this.opts, dependsOn, ignoreChanges: ['virtualNetworkPeerings', 'subnets'], parent: this });
|
|
328
333
|
const subs = this.createSubnets({
|
|
329
334
|
subnets,
|
|
330
335
|
vnet: vn,
|
|
@@ -381,7 +386,7 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
381
386
|
resourceGroupName: pulumi.output(this.args.rsGroup.resourceGroupName),
|
|
382
387
|
},
|
|
383
388
|
secondVnet: peeringCreate.vnet,
|
|
384
|
-
}, { dependsOn: vnet, parent: this });
|
|
389
|
+
}, { ...this.opts, dependsOn: vnet, parent: this });
|
|
385
390
|
}
|
|
386
391
|
createPrivateZonesLinks(vnet) {
|
|
387
392
|
const { vnet: { privateZonesLinks }, } = this.args;
|
|
@@ -395,9 +400,9 @@ class Vnet extends base_1.BaseResourceComponent {
|
|
|
395
400
|
location: 'global',
|
|
396
401
|
registrationEnabled: false,
|
|
397
402
|
virtualNetwork: { id: vnet.id },
|
|
398
|
-
}, { dependsOn: vnet, deletedWith: vnet, parent: this });
|
|
403
|
+
}, { ...this.opts, dependsOn: vnet, deletedWith: vnet, parent: this });
|
|
399
404
|
}));
|
|
400
405
|
}
|
|
401
406
|
}
|
|
402
407
|
exports.Vnet = Vnet;
|
|
403
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlydHVhbE5ldHdvcmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdm5ldC9WaXJ0dWFsTmV0d29yay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzRUFBd0Q7QUFFeEQsdURBQXlDO0FBQ3pDLGtDQUFnRTtBQUNoRSxvREFBa0Q7QUFFbEQscUNBQThDO0FBQzlDLHlDQUFxRTtBQUNyRSxtREFBcUM7QUFDckMscURBQXNFO0FBQ3RFLDZDQUEwRDtBQUMxRCxtREFBeUQ7QUFDekQsNkNBQTBEO0FBQzFELCtDQUE2RDtBQUM3RCw0RUFBOEQ7QUFDOUQsd0NBQW1EO0FBa0duRCxNQUFhLElBQUssU0FBUSw0QkFBK0I7SUFDdkMsTUFBTSxDQUF5QjtJQUMvQixhQUFhLENBQXlCO0lBQ3RDLFVBQVUsQ0FBd0I7SUFDbEMsVUFBVSxDQUF5QjtJQUNuQyxVQUFVLENBQXlCO0lBQ25DLFFBQVEsQ0FBbUI7SUFDM0IsSUFBSSxDQUF3QjtJQUM1QixPQUFPLENBQXdDO0lBQy9DLFdBQVcsR0FBd0MsRUFBRSxDQUFDO0lBQzlELGlCQUFpQixDQUEwQjtJQUVuRCxZQUFZLElBQVksRUFBRSxJQUFjLEVBQUUsSUFBc0M7UUFDOUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWhDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ2pELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQ25ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN0RCxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUks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
|
|
408
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVmlydHVhbE5ldHdvcmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdm5ldC9WaXJ0dWFsTmV0d29yay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxzRUFBd0Q7QUFFeEQsdURBQXlDO0FBQ3pDLGtDQUFnRTtBQUNoRSxvREFBa0Q7QUFFbEQscUNBQThDO0FBQzlDLHlDQUFxRTtBQUNyRSxtREFBcUM7QUFDckMscURBQXNFO0FBQ3RFLDZDQUEwRDtBQUMxRCxtREFBeUQ7QUFDekQsNkNBQTBEO0FBQzFELCtDQUE2RDtBQUM3RCw0RUFBOEQ7QUFDOUQsd0NBQW1EO0FBa0duRCxNQUFhLElBQUssU0FBUSw0QkFBK0I7SUFDdkMsTUFBTSxDQUF5QjtJQUMvQixhQUFhLENBQXlCO0lBQ3RDLFVBQVUsQ0FBd0I7SUFDbEMsVUFBVSxDQUF5QjtJQUNuQyxVQUFVLENBQXlCO0lBQ25DLFFBQVEsQ0FBbUI7SUFDM0IsSUFBSSxDQUF3QjtJQUM1QixPQUFPLENBQXdDO0lBQy9DLFdBQVcsR0FBd0MsRUFBRSxDQUFDO0lBQzlELGlCQUFpQixDQUEwQjtJQUVuRCxZQUFZLElBQVksRUFBRSxJQUFjLEVBQUUsSUFBc0M7UUFDOUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWhDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQ2pELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzNDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1FBQ25ELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN0RCxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUks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
|