@drunk-pulumi/azure-components 1.1.26 → 1.1.27

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.
@@ -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' | 'imageType'>> & {
23
+ containers: Array<Partial<Pick<inputs.app.ContainerArgs, 'args' | 'command' | 'env' | 'probes' | 'volumeMounts' | 'resources'>> & {
17
24
  /** Container name */
18
- name: string;
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: string;
31
+ name?: string;
25
32
  image: pulumi.Input<string>;
26
33
  }>;
27
34
  /** Scaling configuration */
28
- scale?: Partial<Pick<inputs.app.ScaleArgs, 'cooldownPeriod' | 'pollingInterval'> & {
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
  };
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBDb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBRWhELHVEQUF5QztBQUV6QyxrQ0FBZ0U7QUFnSGhFLE1BQWEsWUFBYSxTQUFRLDRCQUF1QztJQUN2RCxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDcEMsSUFBSSxDQUFvQztJQUN4QyxrQkFBa0IsQ0FBd0I7SUFDMUMsbUJBQW1CLENBQTBCO0lBRTdELFlBQVksSUFBWSxFQUFFLElBQXNCLEVBQUUsSUFBc0M7UUFDdEYsS0FBSyxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXhDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRS9DLElBQUksQ0FBQyxFQUFFLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDLGtCQUFrQixDQUFDO1FBQzFELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxZQUFZLENBQUMsbUJBQW1CLENBQUM7UUFFNUQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBS2YsT0FBTztZQUNMLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixpQkFBaUIsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElB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
140
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBDb250YWluZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBRWhELHVEQUF5QztBQUV6QyxrQ0FBZ0U7QUFzR2hFLE1BQWEsWUFBYSxTQUFRLDRCQUF1QztJQUN2RCxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDcEMsSUFBSSxDQUFvQztJQUN4QyxrQkFBa0IsQ0FBd0I7SUFDMUMsbUJBQW1CLENBQTBCO0lBRTdELFlBQVksSUFBWSxFQUFFLElBQXNCLEVBQUUsSUFBc0M7UUFDdEYsS0FBSyxDQUFDLGNBQWMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXhDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRS9DLElBQUksQ0FBQyxFQUFFLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDdEMsSUFBSSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsWUFBWSxDQUFDLGtCQUFrQixDQUFDO1FBQzFELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxZQUFZLENBQUMsbUJBQW1CLENBQUM7UUFFNUQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBS2YsT0FBTztZQUNMLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixpQkFBaUIsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLElB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
@@ -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' | 'appInsightsConfiguration' | 'appLogsConfiguration' | 'openTelemetryConfiguration' | 'publicNetworkAccess'>> {
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, Omit<AppContainerArgs, types.CommonProps | 'managedEnvironmentId'>>;
48
- containerJobs?: Record<string, Omit<AppJobArgs, types.CommonProps | 'managedEnvironmentId'>>;
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 {};
@@ -67,23 +67,10 @@ class AppContainerEnv extends base_1.BaseResourceComponent {
67
67
  };
68
68
  }
69
69
  createManagedEnvironment() {
70
- const { rsGroup, enableResourceIdentity, defaultUAssignedId, vnetConfiguration, logAnalyticsWorkspace, dapr, workloadProfiles, zoneRedundant, ...props } = this.args;
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwQ29udGFpbmVyRW52LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBDb250YWluZXJFbnYudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBQ2hELHVEQUF5QztBQUV6QyxpREFBZ0U7QUFDaEUsa0NBQWdFO0FBQ2hFLHdDQUFzQztBQUV0QyxxQ0FBOEM7QUFxRTlDLE1BQWEsZUFBZ0IsU0FBUSw0QkFBMEM7SUFDN0QsRUFBRSxDQUF3QjtJQUMxQixZQUFZLENBQXdCO0lBQ3BDLGFBQWEsQ0FBd0I7SUFDckMsUUFBUSxDQUF3QjtJQUVoRCxZQUFZLElBQVksRUFBRSxJQUF5QixFQUFFLElBQXNDO1FBQ3pGLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTNDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ25ELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFNUIsSUFBSSxDQUFDLEVBQUUsR0FBRyxVQUFVLENBQUMsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUM7UUFDOUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO1FBRXBDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sVUFBVTtRQUlmLE9BQU87WUFDTCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsaUJBQWlC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
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' | 'imageType'>> & {
16
+ containers: Array<Partial<Pick<inputs.app.ContainerArgs, 'args' | 'command' | 'env' | 'probes' | 'volumeMounts' | 'resources'>> & {
17
17
  /** Container name */
18
- name: string;
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: string;
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwSm9iLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBKb2IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBRWhELHVEQUF5QztBQUV6QyxrQ0FBZ0U7QUFrRmhFLE1BQWEsTUFBTyxTQUFRLDRCQUFpQztJQUMzQyxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDcEMsbUJBQW1CLENBQTBCO0lBQzdDLG1CQUFtQixDQUF3QjtJQUUzRCxZQUFZLElBQVksRUFBRSxJQUFnQixFQUFFLElBQXNDO1FBQ2hGLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVsQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsR0FBRyxDQUFDLG1CQUFtQixDQUFDO1FBQ25ELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsbUJBQW1CLENBQUM7UUFFbkQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBSWYsT0FBTztZQUNMLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUM7WUFDckUsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7WUFDN0MsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtTQUM5QyxD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
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwSm9iLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwcC9BcHBKb2IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsOERBQWdEO0FBRWhELHVEQUF5QztBQUV6QyxrQ0FBZ0U7QUE2RWhFLE1BQWEsTUFBTyxTQUFRLDRCQUFpQztJQUMzQyxFQUFFLENBQXdCO0lBQzFCLFlBQVksQ0FBd0I7SUFDcEMsbUJBQW1CLENBQTBCO0lBQzdDLG1CQUFtQixDQUF3QjtJQUUzRCxZQUFZLElBQVksRUFBRSxJQUFnQixFQUFFLElBQXNDO1FBQ2hGLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVsQyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFN0IsSUFBSSxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztRQUM3QixJQUFJLENBQUMsbUJBQW1CLEdBQUcsR0FBRyxDQUFDLG1CQUFtQixDQUFDO1FBQ25ELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsbUJBQW1CLENBQUM7UUFFbkQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxVQUFVO1FBSWYsT0FBTztZQUNMLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUM7WUFDckUsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLG1CQUFtQixFQUFFLElBQUksQ0FBQyxtQkFBbUI7WUFDN0MsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtTQUM5QyxDQUFDO0lBQ0osQ0FBQztJQUVPLFNBQVM7UUFDZixNQUFNLEVBQ0osT0FBTyxFQUNQLHNCQUFzQixFQUN0QixrQkFBa0IsRUFDbEIsb0JBQW9CLEVBQ3BCLFFBQVEsRUFDUixhQUFhLEVBQ2IsR0FBRyxLQUFLLEVBQ1QsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBRWQsT0FBTyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQ2hCLElBQUksQ0FBQyxJQUFJLEVBQ1Q7WUFDRSxHQUFHLEtBQUs7WUFDUixHQUFHLE9BQU87WUFDVixhQUFhLEVBQUUsb0JBQW9CO1lBQ25DLFFBQVEsRUFBRSxzQkFBc0I7Z0JBQzlCLENBQUMsQ0FBQztvQkFDRSxJQUFJLEVBQUUsa0JBQWtCO3dCQUN0QixDQUFDLENBQUMsR0FBRyxDQUFDLDBCQUEwQixDQUFDLDJCQUEyQjt3QkFDNUQsQ0FBQyxDQUFDLEdBQUcsQ0FBQywwQkFBMEIsQ0FBQyxjQUFjO29CQUNqRCxzQkFBc0IsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztpQkFDakY7Z0JBQ0gsQ0FBQyxDQUFDLFNBQVM7WUFFYixhQUFhLEVBQUU7Z0JBQ2IsV0FBVyxFQUFFLGFBQWEsQ0FBQyxXQUFXO2dCQUN0QyxjQUFjLEVBQUUsYUFBYSxDQUFDLGNBQWMsSUFBSSxJQUFJO2dCQUNwRCxpQkFBaUIsRUFBRSxhQUFhLENBQUMsaUJBQWlCLElBQUksQ0FBQztnQkFDdkQsbUJBQW1CLEVBQUUsYUFBYSxDQUFDLG1CQUFtQjtvQkFDcEQsQ0FBQyxDQUFDO3dCQUNFLHNCQUFzQixFQUFFLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsSUFBSSxDQUFDO3dCQUNyRixXQUFXLEVBQUUsYUFBYSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsSUFBSSxDQUFDO3FCQUNoRTtvQkFDSCxDQUFDLENBQUMsU0FBUztnQkFDYixxQkFBcUIsRUFBRSxhQUFhLENBQUMscUJBQXFCO29CQUN4RCxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUU7d0JBQ0osSUFBSSxDQUFDLGFBQWEsQ0FBQyxxQkFBc0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQzs0QkFDekQsTUFBTSxJQUFJLEtBQUssQ0FBQyxtRUFBbUUsQ0FBQyxDQUFDO3dCQUN2RixDQUFDO3dCQUNELE9BQU87NEJBQ0wsY0FBYyxFQUFFLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjOzRCQUNsRSxzQkFBc0IsRUFBRSxhQUFhLENBQUMscUJBQXFCLENBQUMsc0JBQXNCLElBQUksQ0FBQzs0QkFDdkYsV0FBVyxFQUFFLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxXQUFXLElBQUksQ0FBQzt5QkFDbEUsQ0FBQztvQkFDSixDQUFDLENBQUMsRUFBRTtvQkFDTixDQUFDLENBQUMsU0FBUztnQkFDYixrQkFBa0IsRUFBRSxhQUFhLENBQUMsa0JBQWtCO29CQUNsRCxDQUFDLENBQUM7d0JBQ0Usc0JBQXNCLEVBQUUsYUFBYSxDQUFDLGtCQUFrQixDQUFDLHNCQUFzQixJQUFJLENBQUM7d0JBQ3BGLFdBQVcsRUFBRSxhQUFhLENBQUMsa0JBQWtCLENBQUMsV0FBVyxJQUFJLENBQUM7d0JBQzlELEtBQUssRUFBRSxhQUFhLENBQUMsa0JBQWtCLENBQUMsS0FBSztxQkFDOUM7b0JBQ0gsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsVUFBVSxFQUFFLGFBQWEsQ0FBQyxVQUFVO2dCQUNwQyxPQUFPLEVBQUUsYUFBYSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQzFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTtvQkFDWixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7b0JBQ2QsV0FBVyxFQUFFLENBQUMsQ0FBQyxXQUFXO29CQUMxQixRQUFRLEVBQUUsQ0FBQyxDQUFDLFFBQVEsSUFBSSxrQkFBa0IsRUFBRSxFQUFFO2lCQUMvQyxDQUFDLENBQUM7YUFDSjtZQUVELFFBQVEsRUFBRTtnQkFDUixVQUFVLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQzFDLEdBQUcsQ0FBQztvQkFDSixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSTtvQkFDekIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO29CQUNkLFNBQVMsRUFBRSxnQkFBZ0I7b0JBQzNCLFNBQVMsRUFBRSxDQUFDLENBQUMsU0FBUyxJQUFJO3dCQUN4QixHQUFHLEVBQUUsSUFBSTt3QkFDVCxNQUFNLEVBQUUsT0FBTztxQkFDaEI7b0JBQ0QsR0FBRyxFQUNELENBQUMsQ0FBQyxHQUFHO3dCQUNMLGFBQWEsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDOzRCQUNqQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUk7NEJBQ1osU0FBUyxFQUFFLENBQUMsQ0FBQyxJQUFJO3lCQUNsQixDQUFDLENBQUM7aUJBQ04sQ0FBQyxDQUFDO2dCQUVILGNBQWMsRUFBRSxRQUFRLENBQUMsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDcEQsR0FBRyxFQUFFO29CQUNMLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksT0FBTztvQkFDcEMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLO29CQUNmLFNBQVMsRUFBRSxnQkFBZ0I7aUJBQzVCLENBQUMsQ0FBQztnQkFDSCxPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87YUFDMUI7U0FDRixFQUNELEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUNsRCxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBOUhELHdCQThIQyJ9
@@ -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
@@ -1,3 +1,4 @@
1
+ export * as appHelpers from './appContainerHelper';
1
2
  export * from './AppCert';
2
3
  export * from './AppConfig';
3
4
  export * from './AppContainer';
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw0Q0FBMEI7QUFDMUIsOENBQTRCO0FBQzVCLGlEQUErQjtBQUMvQixvREFBa0M7QUFDbEMsMkNBQXlCO0FBQ3pCLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIsNkNBQTJCO0FBQzNCLDRDQUEwQiJ9
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1FQUFtRDtBQUNuRCw0Q0FBMEI7QUFDMUIsOENBQTRCO0FBQzVCLGlEQUErQjtBQUMvQixvREFBa0M7QUFDbEMsMkNBQXlCO0FBQ3pCLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIsNkNBQTJCO0FBQzNCLDRDQUEwQiJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@drunk-pulumi/azure-components",
3
- "version": "1.1.26",
3
+ "version": "1.1.27",
4
4
  "description": "The custom components for Pulumi Azure",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -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) {
@@ -540,4 +561,4 @@ function allowsAksPolicies({ name = 'aks', priority, subnetAddressSpaces, privat
540
561
  });
541
562
  return builder;
542
563
  }
543
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uUG9saWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdm5ldC9GaXJld2FsbFBvbGljaWVzL2NvbW1vblBvbGljaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQSw4Q0FFQztBQUVELHdEQW1XQztBQUVELHNEQWFDO0FBRUQsMERBaUVDO0FBR0QsOENBbUdDO0FBcmpCRCx1REFBeUM7QUFDekMsMkNBQXlDO0FBQ3pDLG1FQUFnRTtBQUVuRCxRQUFBLGFBQWEsR0FBRztJQUMzQixJQUFJO0lBQ0osS0FBSztJQUNMLEtBQUs7SUFDTCxNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE9BQU87Q0FDUixDQUFDO0FBRUYsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBa0Q7SUFDbEgsT0FBTyxJQUFJLDZDQUFxQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxFQUNyQyxJQUFJLEdBQUcsZ0JBQWdCLEVBQ3ZCLFFBQVEsR0FBRyxHQUFHLEVBQ2QsZUFBZSxFQUNmLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixtQkFBbUIsR0FXcEI7SUFDQyxNQUFNLE9BQU8sR0FBRyxJQUFJLDZDQUFxQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUUvRSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2xCLE9BQU8sQ0FBQyxVQUFVLENBQUMsa0JBQWtCLEVB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
564
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uUG9saWNpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdm5ldC9GaXJld2FsbFBvbGljaWVzL2NvbW1vblBvbGljaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQSw4Q0FFQztBQUVELHdEQTBYQztBQUVELHNEQWFDO0FBRUQsMERBaUVDO0FBR0QsOENBbUdDO0FBNWtCRCx1REFBeUM7QUFDekMsMkNBQXlDO0FBQ3pDLG1FQUFnRTtBQUVuRCxRQUFBLGFBQWEsR0FBRztJQUMzQixJQUFJO0lBQ0osS0FBSztJQUNMLEtBQUs7SUFDTCxNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sTUFBTTtJQUNOLE9BQU87Q0FDUixDQUFDO0FBRUYsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBa0Q7SUFDbEgsT0FBTyxJQUFJLDZDQUFxQixDQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxFQUNyQyxJQUFJLEdBQUcsZ0JBQWdCLEVBQ3ZCLFFBQVEsR0FBRyxHQUFHLEVBQ2QsZUFBZSxFQUNmLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixtQkFBbUIsRUFDbkIsa0JBQWtCLEdBWW5CO0lBQ0MsTUFBTSxPQUFPLEdBQUcsSUFBSSw2Q0FBcUIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFFL0UsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNsQixPQUFPLENBQUMsVUFBVSxD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