Deployment Config
DeploymentConfig
Defines the environment-specific runtime configuration for an application.
Provides overrides for resource limits, environment variables, health checks, and volume mounts, allowing a common Application manifest to be tuned for environments like staging or production when deployed to Cloud Run or GKE.
| Property | Type | Description |
|---|---|---|
| apiVersion | string | |
| kind | string | |
| metadata | map | |
| spec | Spec |
BucketMountsEntry
| Property | Type | Description |
|---|---|---|
| key | string | |
| value | VolumeMountBucketRef |
EventArcNotificationsEntry
| Property | Type | Description |
|---|---|---|
| key | string | |
| value | string |
PortsEntry
| Property | Type | Description |
|---|---|---|
| key | int64 | |
| value | string |
VolumeMountsEntry
| Property | Type | Description |
|---|---|---|
| key | string | |
| value | ContainerVolumeMount |
Spec
Houses the environment-specific configuration overrides. Contains the mutable scaling limits, custom container environment injections, and port mappings unique to this phase.
| Property | Type | Description |
|---|---|---|
| description | string | This description is optional but will drastically improve the understand of the AI assistant about the structural elements of the organization |
| deleteBeforeCreate | bool | A boolean flag that changes the deployment strategy. If true, the existing version of the application is destroyed before the new version is created. If false (default), a rolling update is performed. |
| stateful | bool | Indicates whether the application requires persistent storage. This is a hint to the platform to provision stateful resources like persistent disks. This semantic flag instructs the engine to allocate durable volumes but may be bypassed on purely stateless environments. |
| migrationJobContainer | ContainerSpec | Defines the container specification (image, commands, environment variables) for the one-off migration job that runs before the main service is deployed. This is only used if the corresponding Application manifest has run_migration_job set to true. |
| container | ContainerSpec | Provides environment-specific overrides for the main application container, such as command-line arguments, environment variables, and resource limits. |
| ports | list of PortsEntry | A map of ports that the application listens on, where the key is the port number and the value is the protocol (e.g., http, grpc, tcp). This map is used to create service mesh routes and backend service endpoints for each port, enabling traffic to reach the application. |
| health | Health | |
| volumes | list of VolumesEntry | Defines volumes to be mounted into the application's container, typically for configuration files. Each entry creates explicit volume mounts on the underlying compute resource, leveraging abstract storage units such as blob buckets linked into the filesystem. |
| scaling | ScalingConfig | Defines the autoscaling parameters for the application. These values control the baseline and upper boundary instance allocations dynamically based on load. |
| version | string |
Health
Defines the health checks for the application, including the protocol, port, path, and thresholds for determining if the application is healthy. This configuration dictates probing mechanisms such as startup and liveness checks on the allocated compute resources. Controls up-time monitoring and deployment gating. Generates the active probing logic to detect and recover from hangs on the deployed containers.
| Property | Type | Description |
|---|---|---|
| startup | HostHealthConfig | |
| liveness | HostHealthConfig |
PortsEntry
| Property | Type | Description |
|---|---|---|
| key | int64 | |
| value | string |
ScalingConfig
Controls the autoscaling behaviors. Maps bounds constraints on compute workloads to balance performance and cost dynamically.
| Property | Type | Description |
|---|---|---|
| min | int64 | The minimum number of application instances to keep running. |
| max | int64 | The maximum number of application instances to scale up to. |
VolumesEntry
| Property | Type | Description |
|---|---|---|
| key | string | |
| value | ContainerVolumeMount |
ContainerVolumeMount
Maps generated files to a container volume.
Specifies the layout of files to be mounted, typically corresponding to config maps or secrets in K8s, or files written in Cloud Run.
| Property | Type | Description |
|---|---|---|
| files | list of FilesEntry |
VolumeMountBucketRef
References an external bucket for volume mounting.
Indicates Cloud Storage FUSE parameters and IAM permissions needed to attach the bucket.
| Property | Type | Description |
|---|---|---|
| name | string | |
| path | string | |
| canWrite | bool |
ContainerSpec
Core configuration block for defining a runtime container.
Overrides default container behavior from the base image, defining entrypoints, variables, and compute constraints. Translates directly to elements like resources and env within google_cloud_run_v2_service or Kubernetes specifications.
| Property | Type | Description |
|---|---|---|
| enabled | bool | |
| command | list of string | |
| args | list of string | |
| env | list of EnvVariableDefinition | |
| uid | string | |
| gid | string | |
| resources | ContainerResources |
HostHealthConfig
Configuration for uptime and health checks on host endpoints.
Translates into google_compute_health_check and backend service parameters, driving routing decisions within GCP load balancers.
| Property | Type | Description |
|---|---|---|
| protocol | string | |
| port | int64 | |
| checkIntervalSec | int64 | Default 30 |
| timeoutSec | int64 | Default 5 |
| healthyThreshold | int64 | Default 1 |
| unhealthyThreshold | int64 | Default 2 |
| enableLogs | bool | |
| path | string | Default "/" |
ContainerResources
Defines compute requirements and constraints for a container.
Maps to the resource requests and limits in Kubernetes Pods or Cloud Run service configurations to ensure adequate scaling and scheduling semantics.
| Property | Type | Description |
|---|---|---|
| requests | ContainerResource | |
| limits | ContainerResource |
FilesEntry
| Property | Type | Description |
|---|---|---|
| key | string | |
| value | VolumeMountFile |
EnvVariableDefinition
Defines a static environment variable to be injected.
Appended to the environment variable array of the corresponding compute resource container definition.
| Property | Type | Description |
|---|---|---|
| name | string | |
| value | string |
ContainerResource
Single resource boundary definition.
Translates to either requests or limits for CPU or memory within a container specification.
| Property | Type | Description |
|---|---|---|
| cpu | string | |
| memory | string |
VolumeMountFile
Defines a synthesized file content within a volume mount.
Handled by startup scripts to create physical files on disk with the necessary text or binary payloads.
| Property | Type | Description |
|---|---|---|
| mimeType | string | |
| content | string | |
| base64Encoded | bool |