Skip to content

Configuration reference

This page is generated from the MageLift configuration schema. Do not edit it by hand.

magelift.yaml uses schema version 1. Unknown fields are rejected.

When a provider target block is present, the resolver applies the selected preset's safe provider shape defaults and the service versions from the Magento compatibility catalog. Project and environment values override them. The defaults do not create secrets, certificates, or existing-resource references; provider and preset catalogs do materialize named capacity shapes so advanced YAML can override them deliberately instead of inheriting an undocumented SDK default. Use config effective to inspect the values and their provenance.

See the advanced AWS example for a complete typed configuration that composes multi-AZ fck-nat, native and external edge, native and external observability, recovery policy, and a community extension.

Configuration has four intentional levels: the project/defaults/preset layer is the easy path for most users; environment overlays specialize it without duplicating the whole file; provider target fields select supported semantic infrastructure choices; and namespaced extensions.<vendor> fields hold provider-owned integration options. Provider target fields are validated semantic escape hatches, not an unversioned dump of raw provider SDK arguments. Omitted values resolve to named defaults and appear in the effective configuration, provenance, plan, and architecture fingerprint.

Cloud transactional email is email on the project or an environment overlay. ses requires a provider-matching secret reference in email.credential; plaintext is rejected before Magento SMTP is written. Validation success is not certified delivery. Modes tem and ovh, and ses with a managed block, provision the sender identity, credentials, and DNS through the provider adapter; explicit host, port, username, and credential values are rejected alongside managed. local.email remains the workstation overlay and uses credentialEnv. A preview environment that omits email resolves to disabled and does not inherit production SES credentials.

Resilience projection targets are optional advanced settings: use resilience.projection.runtime: ecs with an ECS cluster, service (preferred) or pinned task, and container; use runtime: kubernetes with namespace, workload, and an optional container. These are workload identities only; credentials and application verifiers stay provider-owned.

target.provider: gcp with runtime: gke-autopilot is the certified first-party Magento path for evidenced cells. runtime: gke-standard is experimental and remains the node-capable path for workloads such as multi-node OpenSearch. Historical 2.4.6-p15 and 2.4.9 topology/runtime passes remain scoped evidence. MageLift accepts PHP 8.3 and newer, so Magento 2.4.6 is unavailable. The complete Adobe cache intersection and the rest of the release matrix stay open. Both require target.gcp.project and keep GCP topology under target.gcp only. Do not reuse target.aws fields for GCP.

GCP Memorystore capacity and failure-domain choices are explicit advanced fields: memorystoreShardCount, memorystoreReplicas, memorystoreMode, and memorystoreZoneDistributionMode/memorystoreZone. Cluster Mode Disabled accepts one shard; Cluster Mode Enabled is the path for multiple shards, and the selected mode is translated to the current Memorystore API rather than left to an SDK default.

target.provider: ovh / runtime: mks and target.provider: scaleway / runtime: kapsule are also experimental. See ovh-experimental.md and scaleway-experimental.md. Scaleway requires cacheMode: redis (no managed Valkey yet); databaseHighAvailability and redisClusterSize select its supported RDB/Redis failure-domain shapes. Redis cluster mode (3-6 nodes) remains blocked until the Magento connector carries cluster discovery endpoints. OVH exposes mksPlan, zones, nodeCount, databaseNodeCount, and valkeyNodeCount; zones are MKS availability zones inside the selected OVH region, not database regions. Free MKS is single-zone; Standard multi-zone MKS creates one worker pool per listed zone and requires at least one worker per zone. The preview preset selects the current low-cost discovery one-node shape; standard and high-availability select the current production two-node shape. Advanced YAML can choose discovery/essential, business/production, or enterprise/advanced plans plus explicit flavors and node counts, and provider admission checks the selected region before mutation. On Scaleway, zone selects the managed-cache zone and zones selects the Kapsule worker zones; multi-zone plans create one worker pool per listed zone and require at least one configured node per zone. The preview preset may use one zone; standard requires two and high-availability requires three, so an underprovisioned list is rejected before Pulumi mutation.

Managed-service durability is customizable at the provider boundary while keeping the core contract portable. AWS exposes RDS/Aurora backup and maintenance windows, database deletion-protection and automated-backup deletion policy, and ElastiCache Valkey snapshot retention/window choices. Preview materializes zero Valkey snapshot-retention days; standard and high-availability materialize seven days. Database deletion protection and automated-backup cleanup are materialized from the environment class, with production retaining protection and backups by default. Explicit false and 0 values are preserved as intentional advanced choices. The AWS ECS presets materialize task CPU/memory, capacity mode, database/cache/search capacity, and queue shape; the EKS presets materialize compute mode, Kubernetes version, requests, workload replicas, and the shared managed database/cache durability shape. GCP exposes Cloud SQL automated-backup, binary-log, retained-backup-count, transaction-log, schedule, location, and deletion-protection choices plus Memorystore deletion protection and the PSC connection limit. The standard and high-availability GCP presets name eight retained automated backups and seven days of transaction-log retention; the preview preset disables Cloud SQL automated backups and binary logging. Cloud Armor is materialized for durable presets and for production environments, including production environments that deliberately select preview capacity; an explicit enableCloudArmor value overrides it. Scaleway exposes RDB backup enablement, frequency, retention, same-region placement, and encryption at rest; standard and high-availability presets name daily backups (24 hours), seven-day retention, same-region placement, and encryption at rest; preview explicitly disables automated backups to avoid orphaned backup cost during disposable environments. OVH exposes managed MySQL/Valkey backup time, destination regions, and deletion protection. Retention is provider-native: GCP's retained-backup count, Scaleway's retention days, and OVH's plan-controlled policy are not silently converted into the generic recovery policy. Cache authentication or transport-encryption modes are only exposed once the Magento connection, secret, certificate, health, and recovery contracts can honor them end to end; otherwise they fail as typed unsupported choices before mutation.

Deployments require target.aws.encryptionKeySecretArn to reference a stable Secrets Manager value. MageLift injects it at task start as the Magento encryption key. The key must remain stable for the lifetime of encrypted Magento data.

target.aws.existing.network enables an existing VPC. When it is set, provide one public, private, and data subnet ID for every configured availability zone. MageLift does not create NAT gateways, route tables, or VPC endpoints in this mode, so the imported network must already provide the required egress and private AWS service access. The VPC CIDR is still required for security-group rules.

For an owned AWS network, omitting target.aws.vpcCidr and target.aws.availabilityZones selects the named preview/standard/high-availability network defaults (10.42.0.0/16 and two or three zones derived from the configured region). The effective configuration shows these values and their provenance; override them when the account's available zones or address plan differs.

target.aws.existing.database adopts an existing AWS RDS MySQL instance. When it is set, provide provider: aws, kind: database, externalId (instance ID or ARN), secretArn (Secrets Manager master-user secret ARN; never an inline password), and endpoint (writer hostname). MageLift does not create RDS when this block is set. GCP managed Cloud SQL settings, when used, belong under target.gcp; they are not overloaded into the AWS existing-resource shape.

For AWS fck-nat, natMode, natTopology, and natReplacementMode form one explicit network boundary. Selecting fck-nat materializes the preview or durable-preset topology, replacement policy, and one cost-optimized ARM64 NAT instance in effective YAML; multi-AZ fck-nat uses one failure-domain target per selected zone and automatic replacement through an Auto Scaling group unless none is explicitly selected. target.aws.natInstanceType overrides the ARM64 Graviton size; it defaults to the cost-optimized t4g.nano, and x86 instance types are rejected for the first-party ARM64 fck-nat AMI. A high-availability fck-nat plan requires multi-AZ plus automatic replacement; a single instance is never labeled highly available.

build.staticContent.strategy and build.staticContent.threads map PaaS SCD_STRATEGY / SCD_THREADS on import and become Magento SCD -s / -j. See ece-tools parity for the closed vs intentional-gap matrix.

build.extensions declares the PHP extensions that the selected builder must load. build.composer.version accepts a Composer 2 major.minor or patch version; append + for a minimum. Both requirements are checked inside the isolated builder before dependency installation; an unsupported extension or Composer version fails the build instead of being ignored.

observability.nativeProvider selects a matching cloud telemetry destination and observability.externalProvider selects an extension-owned adapter without putting vendor credentials in the portable configuration. observability.nativeReference is an opaque identity owned by that native provider; it is not a credential, selector, or provider SDK object. For example, OVHcloud uses it to identify an existing Logs Data Platform stream. cloudwatch, google-cloud-operations, scaleway-cockpit, and ovh-logs-data-platform are first-party native adapters for their matching clouds. New Relic, Datadog, OTLP, and other external providers are extension-owned. Put their credentials and provider-specific options under extensions.<vendor>. The core preserves an extension namespace as opaque YAML; its registered adapter must strict-decode and validate that payload before planning or mutation. A first-party adapter rejects signals it cannot configure rather than silently dropping them.

The first-release schema has no singular edge.provider or observability.provider field and has no compatibility alias for either one. Use nativeProvider and externalProvider to compose destinations; provider on target and existing-resource identities remains identity data.

External edge apply requires a real edge.health policy. Set edge.health.expectedCname to the provider's DNS target and, for a standalone edge apply, set edge.health.originUrl to the origin health endpoint. A normal deployment may derive the origin URL from the newly provisioned applicationURL output. If the endpoint uses a generated load-balancer hostname with a certificate for the application domain, set edge.health.originHost for TLS SNI and HTTP Host. When one edge domain is configured, the first-party Fastly adapter uses that domain as the default origin host; set originHost when the certificate differs. An originHealthRef is a reference for evidence and never substitutes for an HTTP health proof. tlsMode: external means that certificate ownership and renewal stay outside MageLift; the Fastly adapter maps it to customer-provided TLS and does not create a TLS subscription.

Field Type Required Accepted values Description
schemaVersion integer yes 1 MageLift configuration schema version
project object yes Project identity
project.name string yes Project name
application object yes Magento application settings
application.edition string yes open-source, commerce Magento edition
application.version string yes Exact Magento release
application.mode string yes integrated, headless Application mode
application.webRuntime string no nginx-fpm, frankenphp-classic, php-apache HTTP application runtime
application.magento object no Magento runtime overlays
application.magento.frontName string no Magento admin frontName
application.magento.cookieDomain string no Magento cookie domain
application.magento.unsecureBaseUrl string no Unsecure Magento base URL
application.magento.secureBaseUrl string no Secure Magento base URL
application.magento.corsOrigins array no Allowed CORS origins for the Magento API
application.magento.storefrontOrigin string no Headless storefront origin allowed by CORS
application.magento.consumers object no Magento message consumer runners
application.magento.consumers.mode string or null no cron, processes, both Consumer runner
application.magento.consumers.names array no Named Magento consumers
application.magento.queueTransport string or null no sqs, pubsub Optional Magento-module queue transport
application.magento.queueModule string or null no Locked Composer Magento package providing SQS or Pub/Sub transport
application.magento.variables object no CONFIG__* and MAGENTO_DC_* overlays
application.cron array no Portable Magento cron schedule entries
build object yes Application build settings
build.php string yes Exact PHP branch or patch version
build.extensions array no Required PHP extensions
build.composer object no Composer settings
build.composer.version string or null no Required Composer 2 major, minor, or patch version
build.composer.credentials string no Composer credentials secret reference
build.staticContent object no Static content deployment settings
build.staticContent.locales array no Locales passed to setup:static-content:deploy --language
build.staticContent.themes array no Themes passed to setup:static-content:deploy --theme
build.staticContent.strategy string or null no quick, standard, compact Static content deploy strategy (-s)
build.staticContent.threads integer or null no Static content deploy thread count (-j)
build.qualityPatches array no Quality Patch IDs applied at build
build.cloudPatches boolean no Opt in to upstream Cloud Patches apply during build
build.hooks object no Build lifecycle hooks
build.hooks.*.phase string yes validate, build, package Preparation lifecycle phase
build.hooks.*.relationship string yes before, after, replace, disable Relationship to the target step
build.hooks.*.target string yes Stable target step ID
build.hooks.*.command object or null no Validated command vector
build.hooks.*.command.executable string yes composer, magento Allowed executable
build.hooks.*.command.arguments array no Argument vector
build.hooks.*.dependencies array no Additional stable step dependencies
build.hooks.*.timeoutSeconds integer no Step timeout in seconds
build.hooks.*.retries object no Retry policy
build.hooks.*.retries.maxAttempts integer no Maximum attempts
build.hooks.*.retries.delaySeconds integer no Retry delay in seconds
build.hooks.*.retries.idempotent boolean no Whether retrying is safe
build.hooks.*.failure string no abort, continue Failure action
build.cache object or null no Optional user-owned BuildKit registry cache
build.cache.from array no Registry references imported before the build
build.cache.to string or null no Registry reference receiving exported cache layers
build.cache.mode string or null no min, max BuildKit cache export mode
build.cache.ignoreExportErrors boolean no Continue when cache export fails
local object no Local runtime service and email choices
local.database object no Local database family and version
local.database.family string or null no Service family
local.database.version string or null no Service version
local.cache object no Local cache family and version
local.cache.family string or null no Service family
local.cache.version string or null no Service version
local.search object no Local search family and version
local.search.family string or null no Service family
local.search.version string or null no Service version
local.queue object no Local queue family and version
local.queue.family string or null no Service family
local.queue.version string or null no Service version
local.webServer object no Local web server family and version
local.webServer.family string or null no Service family
local.webServer.version string or null no Service version
local.webCache object no Local web cache family and version
local.webCache.family string or null no Service family
local.webCache.version string or null no Service version
local.phpSettings object or null no Local PHP ini settings
local.email object no Local email delivery mode
local.email.mode string or null no disabled, smtp, ses, mailpit Email mode
local.email.host string or null no SMTP or local email host
local.email.port integer or null no SMTP or local email port
local.email.username string or null no SMTP username
local.email.from string or null no Default sender address
local.email.credentialEnv string or null no Environment variable containing the email credential
target object yes Deployment target
target.provider string yes aws, gcp, ovh, scaleway Infrastructure provider
target.runtime string yes ecs-fargate, eks, gke-autopilot, gke-standard, mks, kapsule Application runtime
target.aws object or null no AWS deployment inputs
target.aws.kmsKeyArn string or null no Customer-managed KMS key ARN
target.aws.hostedZoneId string or null no Route 53 hosted zone ID
target.aws.cloudFrontCertificateArn string or null no us-east-1 ACM certificate ARN
target.aws.albCertificateArn string or null no Regional ACM certificate ARN
target.aws.snsTopicArn string or null no SNS notification topic ARN
target.aws.imageDigest string or null no Signed immutable OCI image digest
target.aws.cacheSecretArn string or null no Valkey auth token secret ARN
target.aws.sessionSecretArn string or null no Session auth token secret ARN
target.aws.queueSecretArn string or null no RabbitMQ password secret ARN
target.aws.encryptionKeySecretArn string or null no Magento encryption key secret ARN
target.aws.databaseName string or null no Magento database name
target.aws.masterUsername string or null no Database master username
target.aws.vpcCidr string or null no Canonical VPC IPv4 CIDR
target.aws.availabilityZones array or null no AWS availability zones
target.aws.mediaDomain string or null no Media delivery domain
target.aws.natMode string or null no nat-gateway, fck-nat Private subnet egress mode
target.aws.natTopology string or null no single-az, multi-az AWS NAT failure-domain topology; omitted defaults to single-AZ for preview and multi-AZ for standard/high-availability
target.aws.natReplacementMode string or null no none, auto-scaling AWS fck-nat replacement mode; omitted defaults to automatic replacement for multi-AZ fck-nat
target.aws.natInstanceType string or null no ARM64 fck-nat instance type; omitted defaults to cost-optimized t4g.nano
target.aws.labels object or null no Resource labels
target.aws.existing object or null no Existing AWS resources
target.aws.existing.network object or null no Existing VPC reference
target.aws.existing.network.provider string yes aws Resource provider
target.aws.existing.network.kind string yes Resource kind
target.aws.existing.network.externalId string yes Provider resource identifier
target.aws.existing.publicSubnetIds array or null no Existing public subnet IDs
target.aws.existing.privateSubnetIds array or null no Existing private subnet IDs
target.aws.existing.dataSubnetIds array or null no Existing data subnet IDs
target.aws.existing.database object or null no Existing RDS MySQL reference
target.aws.existing.database.provider string yes aws Resource provider
target.aws.existing.database.kind string yes Resource kind
target.aws.existing.database.externalId string yes RDS instance identifier or ARN
target.aws.existing.database.secretArn string yes Secrets Manager master-user secret ARN
target.aws.existing.database.endpoint string yes RDS writer endpoint hostname
target.aws.catalog object no Benchmark-selected service catalog
target.aws.catalog.version string or null no Benchmark catalog version
target.aws.catalog.databaseEngine string or null no aurora-mysql, rds-mysql, rds-mariadb Database engine shape
target.aws.catalog.searchMode string or null no serverless, provisioned, disabled OpenSearch provisioning mode
target.aws.catalog.queueMode string or null no db, amazon-mq, ecs-rabbitmq, ecs-artemis Magento messaging broker mode
target.aws.catalog.databaseBackupWindow string or null no AWS RDS/Aurora automated backup window in UTC
target.aws.catalog.databaseMaintenanceWindow string or null no AWS RDS/Aurora maintenance window in UTC
target.aws.catalog.databaseDeletionProtection boolean or null no Enable AWS RDS/Aurora deletion protection
target.aws.catalog.databaseDeleteAutomatedBackups boolean or null no Delete AWS RDS/Aurora automated backups when the database is destroyed
target.aws.catalog.cacheSnapshotRetentionLimit integer or null no AWS ElastiCache Valkey automatic snapshot retention in days; zero disables snapshots
target.aws.catalog.cacheSnapshotWindow string or null no AWS ElastiCache Valkey daily snapshot window in UTC
target.aws.catalog.aurora object no Aurora or RDS MySQL capacity
target.aws.catalog.aurora.minimumAcu number no Minimum Aurora Serverless v2 capacity
target.aws.catalog.aurora.maximumAcu number no Maximum Aurora Serverless v2 capacity
target.aws.catalog.aurora.autoPauseSeconds integer no Aurora auto-pause duration
target.aws.catalog.aurora.engineSupportsAutoPause boolean no Whether the selected engine supports auto-pause
target.aws.catalog.aurora.instanceClass string no Provisioned Aurora or RDS MySQL instance class
target.aws.catalog.aurora.instanceCount integer no Provisioned Aurora instance count
target.aws.catalog.valkey object no Valkey capacity
target.aws.catalog.valkey.nodeType string no Valkey node type
target.aws.catalog.valkey.replicaCount integer no Valkey replica count
target.aws.catalog.search object no OpenSearch capacity
target.aws.catalog.search.maximumIndexingOcu number no OpenSearch Serverless indexing limit
target.aws.catalog.search.maximumSearchOcu number no OpenSearch Serverless search limit
target.aws.catalog.search.acceptColdStarts boolean no Accept OpenSearch Serverless cold starts
target.aws.catalog.search.instanceType string no Provisioned OpenSearch instance type
target.aws.catalog.search.instanceCount integer no Provisioned OpenSearch data node count
target.aws.catalog.search.dedicatedMasterType string no OpenSearch dedicated master type
target.aws.catalog.search.dedicatedMasterCount integer no OpenSearch dedicated master count
target.aws.catalog.search.ebsVolumeType string no OpenSearch EBS volume type
target.aws.catalog.search.ebsVolumeSizeGiB integer no OpenSearch EBS volume size
target.aws.catalog.rabbitMq object no Amazon MQ RabbitMQ capacity (queueMode amazon-mq)
target.aws.catalog.rabbitMq.instanceType string no RabbitMQ broker instance type
target.aws.catalog.fargate object no Fargate capacity (ecs-fargate)
target.aws.catalog.fargate.computeMode string or null no fargate, fargate-spot, ec2-asg, managed-instances ECS capacity mode
target.aws.catalog.fargate.cpu integer no Fargate task CPU
target.aws.catalog.fargate.memoryMiB integer no Fargate task memory
target.aws.catalog.fargate.desiredCount integer no Fargate desired task count
target.aws.catalog.fargate.instanceType string or null no EC2 or managed-instance capacity type
target.aws.catalog.fargate.instanceAmi string or null no Pinned AMI for ECS EC2 capacity
target.aws.catalog.fargate.minCapacity integer or null no Minimum host capacity
target.aws.catalog.fargate.maxCapacity integer or null no Maximum host capacity
target.aws.catalog.eks object or null no EKS Autopilot capacity (eks)
target.aws.catalog.eks.computeMode string or null no auto-mode, managed-node-groups, self-managed, fargate EKS compute mode
target.aws.catalog.eks.kubernetesVersion string or null no EKS Kubernetes minor version
target.aws.catalog.eks.cpuRequest string or null no Web/cron CPU request
target.aws.catalog.eks.memoryRequest string or null no Web/cron memory request
target.aws.catalog.eks.desiredWebReplicas integer or null no Desired web Deployment replicas
target.aws.catalog.eks.queueConsumerCount integer or null no Queue consumer Deployment replicas
target.aws.catalog.eks.searchMode string or null no opensearch, disabled EKS OpenSearch workload mode
target.aws.catalog.eks.searchReplicas integer or null no OpenSearch StatefulSet replicas
target.aws.catalog.eks.queueMode string or null no database, rabbitmq EKS queue workload mode
target.aws.catalog.eks.queueReplicas integer or null no RabbitMQ StatefulSet replicas
target.aws.catalog.eks.nodeInstanceType string or null no EKS node instance type
target.aws.catalog.eks.nodeAmi string or null no Pinned AMI for self-managed EKS nodes
target.aws.catalog.eks.nodeMinSize integer or null no Minimum EKS node count
target.aws.catalog.eks.nodeDesiredSize integer or null no Desired EKS node count
target.aws.catalog.eks.nodeMaxSize integer or null no Maximum EKS node count
target.aws.catalog.eks.fargateNamespaces array or null no Namespaces scheduled on EKS Fargate
target.aws.catalog.retention object no Retention policy
target.aws.catalog.retention.logDays integer no CloudWatch log retention days
target.aws.catalog.retention.backupDays integer no Database backup retention days
target.aws.catalog.retention.artifactDays integer no Artifact retention days
target.aws.catalog.versions object no Managed service versions
target.aws.catalog.versions.auroraMysql string no Aurora MySQL engine version
target.aws.catalog.versions.mysql string no RDS MySQL engine version
target.aws.catalog.versions.mariaDb string no RDS MariaDB engine version
target.aws.catalog.versions.valkey string no Valkey engine version
target.aws.catalog.versions.openSearch string no OpenSearch engine version
target.aws.catalog.versions.rabbitMq string no RabbitMQ engine version
target.gcp object or null no GCP deployment inputs
target.gcp.project string yes GCP project ID
target.gcp.region string or null no GCP region
target.gcp.networkCidr string or null no VPC IPv4 CIDR
target.gcp.zones array or null no GCP zones
target.gcp.imageDigest string or null no Signed immutable OCI image digest
target.gcp.databaseName string or null no Magento database name
target.gcp.masterUsername string or null no Cloud SQL master username
target.gcp.encryptionKeySecret string or null no Secret Manager secret ID for Magento encryption key
target.gcp.cloudSqlTier string or null no Cloud SQL machine tier
target.gcp.cloudSqlAvailability string or null no ZONAL, REGIONAL Cloud SQL availability type
target.gcp.cloudSqlBackupEnabled boolean or null no Enable Cloud SQL automated backups
target.gcp.cloudSqlBinaryLogEnabled boolean or null no Enable Cloud SQL MySQL binary logging for point-in-time recovery
target.gcp.cloudSqlBackupRetentionCount integer or null no Cloud SQL retained automated backup count
target.gcp.cloudSqlTransactionLogRetentionDays integer or null no Cloud SQL MySQL transaction log retention in days (1-7)
target.gcp.cloudSqlBackupStartTime string or null no Cloud SQL automated backup start time (HH:MM)
target.gcp.cloudSqlBackupLocation string or null no Cloud SQL automated backup storage location
target.gcp.cloudSqlDeletionProtection boolean or null no Enable Cloud SQL service and IaC deletion protection
target.gcp.memorystoreNodeType string or null no Memorystore for Valkey node type
target.gcp.memorystoreShardCount integer or null no Memorystore for Valkey shard count
target.gcp.memorystoreReplicas integer or null no Memorystore for Valkey replica count per shard (0-5)
target.gcp.memorystoreEngineVersion string or null no VALKEY_8_0, VALKEY_9_0, VALKEY_9_1 Memorystore for Valkey engine version (VALKEY_9_0 GA or VALKEY_9_1 Preview)
target.gcp.memorystoreMode string or null no CLUSTER, CLUSTER_DISABLED Memorystore for Valkey cluster mode
target.gcp.memorystoreZoneDistributionMode string or null no MULTI_ZONE, SINGLE_ZONE Memorystore for Valkey zone distribution mode
target.gcp.memorystoreZone string or null no Memorystore for Valkey single-zone placement
target.gcp.memorystoreDeletionProtection boolean or null no Enable Memorystore for Valkey deletion protection
target.gcp.memorystorePscConnectionLimit integer or null no Maximum automatic Memorystore PSC connections
target.gcp.openSearchMode string or null no opensearch, disabled GKE OpenSearch workload mode
target.gcp.openSearchReplicas integer or null no GKE OpenSearch replica count
target.gcp.openSearchImage string or null no GKE OpenSearch image reference
target.gcp.queueMode string or null no database, rabbitmq GKE queue workload mode
target.gcp.queueReplicas integer or null no GKE RabbitMQ replica count
target.gcp.rabbitMqImage string or null no GKE RabbitMQ image reference
target.gcp.enableCloudArmor boolean or null no Create a GCP Cloud Armor security policy
target.gcp.kubernetesVersion string or null no GKE Kubernetes version
target.gcp.releaseChannel string or null no RAPID, REGULAR, STABLE GKE release channel
target.gcp.clusterIpv4Cidr string or null no GKE cluster pod IPv4 CIDR
target.gcp.servicesIpv4Cidr string or null no GKE services IPv4 CIDR
target.gcp.standardNodeType string or null no GKE Standard node machine type
target.gcp.standardNodeCount integer or null no GKE Standard initial node count per zone
target.gcp.standardNodeMinCount integer or null no GKE Standard minimum nodes per zone
target.gcp.standardNodeMaxCount integer or null no GKE Standard maximum nodes per zone
target.gcp.standardNodeDiskType string or null no GKE Standard node boot disk type
target.gcp.standardNodeDiskSizeGiB integer or null no GKE Standard node boot disk size
target.gcp.standardNodeImageType string or null no GKE Standard node image type
target.gcp.standardNodeSpot boolean no Use Spot VMs for GKE Standard nodes
target.gcp.autopilotCpuRequest string or null no GKE Autopilot CPU request
target.gcp.autopilotMemoryRequest string or null no GKE Autopilot memory request
target.gcp.desiredWebReplicas integer or null no Desired web Deployment replicas
target.gcp.queueConsumerCount integer or null no Queue consumer Deployment replicas
target.gcp.labels object or null no Resource labels
target.ovh object or null no OVHcloud deployment inputs (experimental)
target.ovh.serviceName string yes OVH Public Cloud project service name
target.ovh.apiEndpoint string or null no ovh-eu, ovh-ca, ovh-us OVHcloud API endpoint alias (ovh-eu, ovh-ca, or ovh-us)
target.ovh.region string or null no OVH Public Cloud region (for example EU-WEST-PAR or GRA11)
target.ovh.networkCidr string or null no Private network IPv4 CIDR
target.ovh.zones array or null no OVH MKS availability zones within the selected region
target.ovh.attachFloatingIps boolean no Attach OVH floating IPs to MKS nodes
target.ovh.privateNetworkRoutingAsDefault boolean no Route MKS egress through OVH's documented private-subnet DHCP gateway; custom gateway routing is not inferred
target.ovh.imageDigest string or null no Signed immutable OCI image digest
target.ovh.databaseName string or null no Magento database name
target.ovh.masterUsername string or null no Managed MySQL master username
target.ovh.encryptionKeySecret string or null no Secret reference for Magento encryption key
target.ovh.databaseFlavor string or null no OVH managed MySQL flavor
target.ovh.databasePlan string or null no discovery, essential, business, production, enterprise, advanced OVH managed MySQL plan (discovery/essential, business/production, or enterprise/advanced)
target.ovh.databaseVersion string or null no 8.0, 8.4 OVH managed MySQL engine version (8.0 or 8.4)
target.ovh.databaseNodeCount integer or null no OVH managed MySQL node count
target.ovh.databaseBackupTime string or null no OVH managed MySQL daily backup start time (HH:MM)
target.ovh.databaseBackupRegions array or null no OVH managed MySQL backup regions
target.ovh.databaseDeletionProtection boolean or null no Enable OVH managed MySQL deletion protection
target.ovh.valkeyFlavor string or null no OVH managed Valkey flavor
target.ovh.valkeyPlan string or null no discovery, essential, business, production OVH managed Valkey plan (discovery/essential or business/production)
target.ovh.valkeyVersion string or null no 7.2, 8.0, 8.1, 9.0, 9.1 OVH managed Valkey engine version (7.2, 8.0, 8.1, 9.0, or 9.1; default 8.1)
target.ovh.valkeyNodeCount integer or null no OVH managed Valkey node count
target.ovh.valkeyBackupTime string or null no OVH managed Valkey daily backup start time (HH:MM)
target.ovh.valkeyBackupRegions array or null no OVH managed Valkey backup regions
target.ovh.valkeyDeletionProtection boolean or null no Enable OVH managed Valkey deletion protection
target.ovh.mksPlan string or null no free, standard OVH Managed Kubernetes plan
target.ovh.nodeFlavor string or null no MKS node pool flavor
target.ovh.nodeCount integer or null no MKS node pool size
target.ovh.cpuRequest string or null no Kubernetes CPU request
target.ovh.memoryRequest string or null no Kubernetes memory request
target.ovh.desiredWebReplicas integer or null no Desired web Deployment replicas
target.ovh.queueConsumerCount integer or null no Queue consumer Deployment replicas
target.ovh.stateBucket string or null no S3-compatible DIY state bucket name
target.ovh.stateEndpoint string or null no Loopback S3-compatible endpoint override (Floci)
target.ovh.stateRegion string or null no S3-compatible region code for DIY state
target.ovh.labels object or null no Resource labels
target.scaleway object or null no Scaleway deployment inputs (experimental)
target.scaleway.projectId string yes Scaleway project ID
target.scaleway.region string or null no Scaleway region (e.g. fr-par)
target.scaleway.zone string or null no Scaleway availability zone (e.g. fr-par-1)
target.scaleway.networkCidr string or null no Private network IPv4 CIDR
target.scaleway.zones array or null no Scaleway zones
target.scaleway.imageDigest string or null no Signed immutable OCI image digest
target.scaleway.databaseName string or null no Magento database name
target.scaleway.masterUsername string or null no Managed MySQL master username
target.scaleway.encryptionKeySecret string or null no Secret reference for Magento encryption key
target.scaleway.databaseNodeType string or null no Scaleway RDB node type
target.scaleway.databaseHighAvailability boolean no Enable Scaleway RDB high availability
target.scaleway.databaseBackupEnabled boolean or null no Enable Scaleway RDB automated backups
target.scaleway.databaseBackupFrequencyHours integer or null no Scaleway RDB automated backup frequency in hours
target.scaleway.databaseBackupRetentionDays integer or null no Scaleway RDB automated backup retention in days
target.scaleway.databaseBackupSameRegion boolean or null no Store Scaleway RDB logical backups in the instance region
target.scaleway.databaseEncryptionAtRest boolean or null no Enable Scaleway RDB encryption at rest
target.scaleway.redisNodeType string or null no Scaleway Redis node type
target.scaleway.redisVersion string or null no Scaleway Redis engine version
target.scaleway.redisClusterSize integer or null no Scaleway Redis node count (1 standalone, 2 HA, 3-6 cluster mode)
target.scaleway.cacheMode string or null no redis Cache engine escape hatch
target.scaleway.cpuRequest string or null no Kubernetes CPU request
target.scaleway.memoryRequest string or null no Kubernetes memory request
target.scaleway.desiredWebReplicas integer or null no Desired web Deployment replicas
target.scaleway.queueConsumerCount integer or null no Queue consumer Deployment replicas
target.scaleway.kapsuleVersion string or null no Kapsule Kubernetes version
target.scaleway.nodeType string or null no Kapsule pool node type
target.scaleway.nodeCount integer or null no Kapsule pool size
target.scaleway.stateBucket string or null no S3-compatible DIY state bucket name
target.scaleway.stateEndpoint string or null no Loopback S3-compatible endpoint override (Floci)
target.scaleway.stateRegion string or null no S3-compatible region code for DIY state
target.scaleway.labels object or null no Resource labels
edge object no Optional edge delivery provider
edge.externalProvider string or null no External edge delivery provider
edge.mode string or null no none, native, external, both Edge composition mode
edge.nativeProvider string or null no Provider-native edge implementation
edge.serviceId string or null no Fastly service identifier
edge.tokenSecret string or null no Fastly API token secret reference
edge.domains array or null no Edge hostnames
edge.tls boolean no Require edge TLS
edge.tlsMode string or null no TLS certificate ownership and renewal mode
edge.dnsMode string or null no DNS ownership and convergence mode
edge.vclRef string or null no Reference to reviewed Fastly VCL or policy artifact
edge.purgeOnDeploy boolean no Purge Fastly content after deploy
edge.originHealthRef string or null no Origin health gate reference
edge.cachePolicyRef string or null no Reviewed cache-key and bypass policy reference
edge.purgePolicyRef string or null no Purge verification policy reference
edge.wafPolicyRef string or null no WAF or security-header policy reference
edge.failoverPolicyRef string or null no Origin failover and failback policy reference
edge.ownershipMarker string or null no Edge resource ownership marker
edge.health object or null no External edge health verification policy
edge.health.originUrl string or null no Origin health URL checked before edge mutation
edge.health.originHost string or null no TLS SNI and HTTP Host used for the origin health URL
edge.health.expectedCname string or null no Expected edge DNS CNAME
edge.health.routePath string or null no Path used for post-mutation edge verification
edge.health.expectedStatus integer or null no Expected post-mutation HTTP status
edge.health.routeTimeoutSeconds integer or null no Maximum edge route convergence time
edge.health.routePollSeconds integer or null no Edge route convergence polling interval
observability object no Optional observability provider
observability.nativeProvider string or null no Provider-native observability destination
observability.nativeReference string or null no Opaque provider-owned native destination reference
observability.externalProvider string or null no External observability destination
observability.credentialReferences array or null no Secret references resolved by the observability extension
observability.endpoint string or null no Optional telemetry endpoint
observability.serviceName string or null no Telemetry service name
observability.environment string or null no Telemetry environment name
observability.logs boolean no Export logs
observability.metrics boolean no Export metrics
observability.traces boolean no Export traces
observability.signals array or null no Portable telemetry signal names
observability.retentionDays integer or null no Telemetry retention days
observability.samplingRatio number or null no Trace sampling ratio
observability.redactionPolicyRef string or null no Telemetry redaction policy reference
observability.alertReferences array or null no Alert and dashboard references
observability.labels object or null no Additional resource attributes
observability.dataResidency string or null no Declared telemetry data residency
observability.alerts array or null no Actionable alert policies
observability.dashboards array or null no Operational dashboards
observability.slos array or null no Service-level objectives
email object no Cloud transactional email
email.mode string or null no disabled, smtp, ses, tem, ovh Cloud email mode
email.host string or null no SMTP host
email.port integer or null no SMTP port
email.username string or null no SMTP username
email.from string or null no Default sender address
email.credential string or null no SES credential secret reference
email.managed object or null no Managed email provisioning inputs
email.managed.domain string or null no Verified sender domain
email.managed.hostedZoneId string or null no Route 53 hosted zone ID for DKIM records (SES only)
email.managed.account string or null no Mailbox account name (OVH only)
resilience object no Availability, backup, and disaster-recovery policy
resilience.profileId string or null no Named resilience profile
resilience.availabilityTarget string or null no Availability target
resilience.rpoSeconds integer or null no Maximum recovery point objective in seconds
resilience.rtoSeconds integer or null no Maximum recovery time objective in seconds
resilience.retentionDays integer or null no Backup retention days
resilience.recoveryScope string or null no Recovery scope
resilience.failoverOwner string or null no Failover operator
resilience.fencingPolicy string or null no Single-writer and split-brain fencing policy
resilience.dataRegion string or null no Optional region residency for Magento database, media, and backups
resilience.recoveryDestinations array or null no Allowed recovery destinations
resilience.projection object or null no Search and cache rebuild workload target
resilience.projection.runtime string yes ecs, kubernetes Projection runtime transport
resilience.projection.cluster string or null no ECS cluster identity
resilience.projection.service string or null no ECS service used to select a running task
resilience.projection.task string or null no Optional pinned ECS task identity
resilience.projection.namespace string or null no Kubernetes workload namespace
resilience.projection.workload string or null no Kubernetes workload app label
resilience.projection.container string or null no Container receiving projection commands
resilience.dataClasses array or null no Independent data-class recovery policies
defaults object yes Project defaults
defaults.region string no Default AWS region
defaults.preset string no preview, standard, high-availability Default infrastructure preset
compatibility object no Compatibility policy
compatibility.allowUnsupported boolean no Allow an unsupported service combination
environments object yes Named deployment environments
environments.*.inherits string no Parent environment
environments.*.account string or null no AWS account ID
environments.*.class string or null no Environment class
environments.*.preset string or null no preview, standard, high-availability Infrastructure preset
environments.*.domain string or null no Environment domain
environments.*.protection boolean or null no Protect against destructive commands
environments.*.expiresAt string or null no Preview expiration as RFC3339
environments.*.monthlyBudgetCents integer or null no Monthly budget planning input in cents (alerts only, never enforced)
environments.*.branches array or null no Git branches mapped to this environment
environments.*.seedDump string or null no Local MySQL dump path seeded after first deploy
environments.*.project object or null no
environments.*.project.name string no Project name
environments.*.application object or null no
environments.*.application.edition string no open-source, commerce Magento edition
environments.*.application.version string no Exact Magento release
environments.*.application.mode string no integrated, headless Application mode
environments.*.application.webRuntime string no nginx-fpm, frankenphp-classic, php-apache HTTP application runtime
environments.*.application.magento object no Magento runtime overlays
environments.*.application.magento.frontName string no Magento admin frontName
environments.*.application.magento.cookieDomain string no Magento cookie domain
environments.*.application.magento.unsecureBaseUrl string no Unsecure Magento base URL
environments.*.application.magento.secureBaseUrl string no Secure Magento base URL
environments.*.application.magento.corsOrigins array no Allowed CORS origins for the Magento API
environments.*.application.magento.storefrontOrigin string no Headless storefront origin allowed by CORS
environments.*.application.magento.consumers object no Magento message consumer runners
environments.*.application.magento.consumers.mode string or null no cron, processes, both Consumer runner
environments.*.application.magento.consumers.names array no Named Magento consumers
environments.*.application.magento.queueTransport string or null no sqs, pubsub Optional Magento-module queue transport
environments.*.application.magento.queueModule string or null no Locked Composer Magento package providing SQS or Pub/Sub transport
environments.*.application.magento.variables object no CONFIG__* and MAGENTO_DC_* overlays
environments.*.application.cron array no Portable Magento cron schedule entries
environments.*.build object or null no
environments.*.build.php string no Exact PHP branch or patch version
environments.*.build.extensions array no Required PHP extensions
environments.*.build.composer object no Composer settings
environments.*.build.composer.version string or null no Required Composer 2 major, minor, or patch version
environments.*.build.composer.credentials string no Composer credentials secret reference
environments.*.build.staticContent object no Static content deployment settings
environments.*.build.staticContent.locales array no Locales passed to setup:static-content:deploy --language
environments.*.build.staticContent.themes array no Themes passed to setup:static-content:deploy --theme
environments.*.build.staticContent.strategy string or null no quick, standard, compact Static content deploy strategy (-s)
environments.*.build.staticContent.threads integer or null no Static content deploy thread count (-j)
environments.*.build.qualityPatches array no Quality Patch IDs applied at build
environments.*.build.cloudPatches boolean no Opt in to upstream Cloud Patches apply during build
environments.*.build.hooks object no Build lifecycle hooks
environments.*.build.hooks.*.phase string no validate, build, package Preparation lifecycle phase
environments.*.build.hooks.*.relationship string no before, after, replace, disable Relationship to the target step
environments.*.build.hooks.*.target string no Stable target step ID
environments.*.build.hooks.*.command object or null no Validated command vector
environments.*.build.hooks.*.command.executable string no composer, magento Allowed executable
environments.*.build.hooks.*.command.arguments array no Argument vector
environments.*.build.hooks.*.dependencies array no Additional stable step dependencies
environments.*.build.hooks.*.timeoutSeconds integer no Step timeout in seconds
environments.*.build.hooks.*.retries object no Retry policy
environments.*.build.hooks.*.retries.maxAttempts integer no Maximum attempts
environments.*.build.hooks.*.retries.delaySeconds integer no Retry delay in seconds
environments.*.build.hooks.*.retries.idempotent boolean no Whether retrying is safe
environments.*.build.hooks.*.failure string no abort, continue Failure action
environments.*.build.cache object or null no Optional user-owned BuildKit registry cache
environments.*.build.cache.from array no Registry references imported before the build
environments.*.build.cache.to string or null no Registry reference receiving exported cache layers
environments.*.build.cache.mode string or null no min, max BuildKit cache export mode
environments.*.build.cache.ignoreExportErrors boolean no Continue when cache export fails
environments.*.target object or null no
environments.*.target.provider string no aws, gcp, ovh, scaleway Infrastructure provider
environments.*.target.runtime string no ecs-fargate, eks, gke-autopilot, gke-standard, mks, kapsule Application runtime
environments.*.target.aws object or null no AWS deployment inputs
environments.*.target.aws.kmsKeyArn string or null no Customer-managed KMS key ARN
environments.*.target.aws.hostedZoneId string or null no Route 53 hosted zone ID
environments.*.target.aws.cloudFrontCertificateArn string or null no us-east-1 ACM certificate ARN
environments.*.target.aws.albCertificateArn string or null no Regional ACM certificate ARN
environments.*.target.aws.snsTopicArn string or null no SNS notification topic ARN
environments.*.target.aws.imageDigest string or null no Signed immutable OCI image digest
environments.*.target.aws.cacheSecretArn string or null no Valkey auth token secret ARN
environments.*.target.aws.sessionSecretArn string or null no Session auth token secret ARN
environments.*.target.aws.queueSecretArn string or null no RabbitMQ password secret ARN
environments.*.target.aws.encryptionKeySecretArn string or null no Magento encryption key secret ARN
environments.*.target.aws.databaseName string or null no Magento database name
environments.*.target.aws.masterUsername string or null no Database master username
environments.*.target.aws.vpcCidr string or null no Canonical VPC IPv4 CIDR
environments.*.target.aws.availabilityZones array or null no AWS availability zones
environments.*.target.aws.mediaDomain string or null no Media delivery domain
environments.*.target.aws.natMode string or null no nat-gateway, fck-nat Private subnet egress mode
environments.*.target.aws.natTopology string or null no single-az, multi-az AWS NAT failure-domain topology; omitted defaults to single-AZ for preview and multi-AZ for standard/high-availability
environments.*.target.aws.natReplacementMode string or null no none, auto-scaling AWS fck-nat replacement mode; omitted defaults to automatic replacement for multi-AZ fck-nat
environments.*.target.aws.natInstanceType string or null no ARM64 fck-nat instance type; omitted defaults to cost-optimized t4g.nano
environments.*.target.aws.labels object or null no Resource labels
environments.*.target.aws.existing object or null no Existing AWS resources
environments.*.target.aws.existing.network object or null no Existing VPC reference
environments.*.target.aws.existing.network.provider string no aws Resource provider
environments.*.target.aws.existing.network.kind string no Resource kind
environments.*.target.aws.existing.network.externalId string no Provider resource identifier
environments.*.target.aws.existing.publicSubnetIds array or null no Existing public subnet IDs
environments.*.target.aws.existing.privateSubnetIds array or null no Existing private subnet IDs
environments.*.target.aws.existing.dataSubnetIds array or null no Existing data subnet IDs
environments.*.target.aws.existing.database object or null no Existing RDS MySQL reference
environments.*.target.aws.existing.database.provider string no aws Resource provider
environments.*.target.aws.existing.database.kind string no Resource kind
environments.*.target.aws.existing.database.externalId string no RDS instance identifier or ARN
environments.*.target.aws.existing.database.secretArn string no Secrets Manager master-user secret ARN
environments.*.target.aws.existing.database.endpoint string no RDS writer endpoint hostname
environments.*.target.aws.catalog object no Benchmark-selected service catalog
environments.*.target.aws.catalog.version string or null no Benchmark catalog version
environments.*.target.aws.catalog.databaseEngine string or null no aurora-mysql, rds-mysql, rds-mariadb Database engine shape
environments.*.target.aws.catalog.searchMode string or null no serverless, provisioned, disabled OpenSearch provisioning mode
environments.*.target.aws.catalog.queueMode string or null no db, amazon-mq, ecs-rabbitmq, ecs-artemis Magento messaging broker mode
environments.*.target.aws.catalog.databaseBackupWindow string or null no AWS RDS/Aurora automated backup window in UTC
environments.*.target.aws.catalog.databaseMaintenanceWindow string or null no AWS RDS/Aurora maintenance window in UTC
environments.*.target.aws.catalog.databaseDeletionProtection boolean or null no Enable AWS RDS/Aurora deletion protection
environments.*.target.aws.catalog.databaseDeleteAutomatedBackups boolean or null no Delete AWS RDS/Aurora automated backups when the database is destroyed
environments.*.target.aws.catalog.cacheSnapshotRetentionLimit integer or null no AWS ElastiCache Valkey automatic snapshot retention in days; zero disables snapshots
environments.*.target.aws.catalog.cacheSnapshotWindow string or null no AWS ElastiCache Valkey daily snapshot window in UTC
environments.*.target.aws.catalog.aurora object no Aurora or RDS MySQL capacity
environments.*.target.aws.catalog.aurora.minimumAcu number no Minimum Aurora Serverless v2 capacity
environments.*.target.aws.catalog.aurora.maximumAcu number no Maximum Aurora Serverless v2 capacity
environments.*.target.aws.catalog.aurora.autoPauseSeconds integer no Aurora auto-pause duration
environments.*.target.aws.catalog.aurora.engineSupportsAutoPause boolean no Whether the selected engine supports auto-pause
environments.*.target.aws.catalog.aurora.instanceClass string no Provisioned Aurora or RDS MySQL instance class
environments.*.target.aws.catalog.aurora.instanceCount integer no Provisioned Aurora instance count
environments.*.target.aws.catalog.valkey object no Valkey capacity
environments.*.target.aws.catalog.valkey.nodeType string no Valkey node type
environments.*.target.aws.catalog.valkey.replicaCount integer no Valkey replica count
environments.*.target.aws.catalog.search object no OpenSearch capacity
environments.*.target.aws.catalog.search.maximumIndexingOcu number no OpenSearch Serverless indexing limit
environments.*.target.aws.catalog.search.maximumSearchOcu number no OpenSearch Serverless search limit
environments.*.target.aws.catalog.search.acceptColdStarts boolean no Accept OpenSearch Serverless cold starts
environments.*.target.aws.catalog.search.instanceType string no Provisioned OpenSearch instance type
environments.*.target.aws.catalog.search.instanceCount integer no Provisioned OpenSearch data node count
environments.*.target.aws.catalog.search.dedicatedMasterType string no OpenSearch dedicated master type
environments.*.target.aws.catalog.search.dedicatedMasterCount integer no OpenSearch dedicated master count
environments.*.target.aws.catalog.search.ebsVolumeType string no OpenSearch EBS volume type
environments.*.target.aws.catalog.search.ebsVolumeSizeGiB integer no OpenSearch EBS volume size
environments.*.target.aws.catalog.rabbitMq object no Amazon MQ RabbitMQ capacity (queueMode amazon-mq)
environments.*.target.aws.catalog.rabbitMq.instanceType string no RabbitMQ broker instance type
environments.*.target.aws.catalog.fargate object no Fargate capacity (ecs-fargate)
environments.*.target.aws.catalog.fargate.computeMode string or null no fargate, fargate-spot, ec2-asg, managed-instances ECS capacity mode
environments.*.target.aws.catalog.fargate.cpu integer no Fargate task CPU
environments.*.target.aws.catalog.fargate.memoryMiB integer no Fargate task memory
environments.*.target.aws.catalog.fargate.desiredCount integer no Fargate desired task count
environments.*.target.aws.catalog.fargate.instanceType string or null no EC2 or managed-instance capacity type
environments.*.target.aws.catalog.fargate.instanceAmi string or null no Pinned AMI for ECS EC2 capacity
environments.*.target.aws.catalog.fargate.minCapacity integer or null no Minimum host capacity
environments.*.target.aws.catalog.fargate.maxCapacity integer or null no Maximum host capacity
environments.*.target.aws.catalog.eks object or null no EKS Autopilot capacity (eks)
environments.*.target.aws.catalog.eks.computeMode string or null no auto-mode, managed-node-groups, self-managed, fargate EKS compute mode
environments.*.target.aws.catalog.eks.kubernetesVersion string or null no EKS Kubernetes minor version
environments.*.target.aws.catalog.eks.cpuRequest string or null no Web/cron CPU request
environments.*.target.aws.catalog.eks.memoryRequest string or null no Web/cron memory request
environments.*.target.aws.catalog.eks.desiredWebReplicas integer or null no Desired web Deployment replicas
environments.*.target.aws.catalog.eks.queueConsumerCount integer or null no Queue consumer Deployment replicas
environments.*.target.aws.catalog.eks.searchMode string or null no opensearch, disabled EKS OpenSearch workload mode
environments.*.target.aws.catalog.eks.searchReplicas integer or null no OpenSearch StatefulSet replicas
environments.*.target.aws.catalog.eks.queueMode string or null no database, rabbitmq EKS queue workload mode
environments.*.target.aws.catalog.eks.queueReplicas integer or null no RabbitMQ StatefulSet replicas
environments.*.target.aws.catalog.eks.nodeInstanceType string or null no EKS node instance type
environments.*.target.aws.catalog.eks.nodeAmi string or null no Pinned AMI for self-managed EKS nodes
environments.*.target.aws.catalog.eks.nodeMinSize integer or null no Minimum EKS node count
environments.*.target.aws.catalog.eks.nodeDesiredSize integer or null no Desired EKS node count
environments.*.target.aws.catalog.eks.nodeMaxSize integer or null no Maximum EKS node count
environments.*.target.aws.catalog.eks.fargateNamespaces array or null no Namespaces scheduled on EKS Fargate
environments.*.target.aws.catalog.retention object no Retention policy
environments.*.target.aws.catalog.retention.logDays integer no CloudWatch log retention days
environments.*.target.aws.catalog.retention.backupDays integer no Database backup retention days
environments.*.target.aws.catalog.retention.artifactDays integer no Artifact retention days
environments.*.target.aws.catalog.versions object no Managed service versions
environments.*.target.aws.catalog.versions.auroraMysql string no Aurora MySQL engine version
environments.*.target.aws.catalog.versions.mysql string no RDS MySQL engine version
environments.*.target.aws.catalog.versions.mariaDb string no RDS MariaDB engine version
environments.*.target.aws.catalog.versions.valkey string no Valkey engine version
environments.*.target.aws.catalog.versions.openSearch string no OpenSearch engine version
environments.*.target.aws.catalog.versions.rabbitMq string no RabbitMQ engine version
environments.*.target.gcp object or null no GCP deployment inputs
environments.*.target.gcp.project string no GCP project ID
environments.*.target.gcp.region string or null no GCP region
environments.*.target.gcp.networkCidr string or null no VPC IPv4 CIDR
environments.*.target.gcp.zones array or null no GCP zones
environments.*.target.gcp.imageDigest string or null no Signed immutable OCI image digest
environments.*.target.gcp.databaseName string or null no Magento database name
environments.*.target.gcp.masterUsername string or null no Cloud SQL master username
environments.*.target.gcp.encryptionKeySecret string or null no Secret Manager secret ID for Magento encryption key
environments.*.target.gcp.cloudSqlTier string or null no Cloud SQL machine tier
environments.*.target.gcp.cloudSqlAvailability string or null no ZONAL, REGIONAL Cloud SQL availability type
environments.*.target.gcp.cloudSqlBackupEnabled boolean or null no Enable Cloud SQL automated backups
environments.*.target.gcp.cloudSqlBinaryLogEnabled boolean or null no Enable Cloud SQL MySQL binary logging for point-in-time recovery
environments.*.target.gcp.cloudSqlBackupRetentionCount integer or null no Cloud SQL retained automated backup count
environments.*.target.gcp.cloudSqlTransactionLogRetentionDays integer or null no Cloud SQL MySQL transaction log retention in days (1-7)
environments.*.target.gcp.cloudSqlBackupStartTime string or null no Cloud SQL automated backup start time (HH:MM)
environments.*.target.gcp.cloudSqlBackupLocation string or null no Cloud SQL automated backup storage location
environments.*.target.gcp.cloudSqlDeletionProtection boolean or null no Enable Cloud SQL service and IaC deletion protection
environments.*.target.gcp.memorystoreNodeType string or null no Memorystore for Valkey node type
environments.*.target.gcp.memorystoreShardCount integer or null no Memorystore for Valkey shard count
environments.*.target.gcp.memorystoreReplicas integer or null no Memorystore for Valkey replica count per shard (0-5)
environments.*.target.gcp.memorystoreEngineVersion string or null no VALKEY_8_0, VALKEY_9_0, VALKEY_9_1 Memorystore for Valkey engine version (VALKEY_9_0 GA or VALKEY_9_1 Preview)
environments.*.target.gcp.memorystoreMode string or null no CLUSTER, CLUSTER_DISABLED Memorystore for Valkey cluster mode
environments.*.target.gcp.memorystoreZoneDistributionMode string or null no MULTI_ZONE, SINGLE_ZONE Memorystore for Valkey zone distribution mode
environments.*.target.gcp.memorystoreZone string or null no Memorystore for Valkey single-zone placement
environments.*.target.gcp.memorystoreDeletionProtection boolean or null no Enable Memorystore for Valkey deletion protection
environments.*.target.gcp.memorystorePscConnectionLimit integer or null no Maximum automatic Memorystore PSC connections
environments.*.target.gcp.openSearchMode string or null no opensearch, disabled GKE OpenSearch workload mode
environments.*.target.gcp.openSearchReplicas integer or null no GKE OpenSearch replica count
environments.*.target.gcp.openSearchImage string or null no GKE OpenSearch image reference
environments.*.target.gcp.queueMode string or null no database, rabbitmq GKE queue workload mode
environments.*.target.gcp.queueReplicas integer or null no GKE RabbitMQ replica count
environments.*.target.gcp.rabbitMqImage string or null no GKE RabbitMQ image reference
environments.*.target.gcp.enableCloudArmor boolean or null no Create a GCP Cloud Armor security policy
environments.*.target.gcp.kubernetesVersion string or null no GKE Kubernetes version
environments.*.target.gcp.releaseChannel string or null no RAPID, REGULAR, STABLE GKE release channel
environments.*.target.gcp.clusterIpv4Cidr string or null no GKE cluster pod IPv4 CIDR
environments.*.target.gcp.servicesIpv4Cidr string or null no GKE services IPv4 CIDR
environments.*.target.gcp.standardNodeType string or null no GKE Standard node machine type
environments.*.target.gcp.standardNodeCount integer or null no GKE Standard initial node count per zone
environments.*.target.gcp.standardNodeMinCount integer or null no GKE Standard minimum nodes per zone
environments.*.target.gcp.standardNodeMaxCount integer or null no GKE Standard maximum nodes per zone
environments.*.target.gcp.standardNodeDiskType string or null no GKE Standard node boot disk type
environments.*.target.gcp.standardNodeDiskSizeGiB integer or null no GKE Standard node boot disk size
environments.*.target.gcp.standardNodeImageType string or null no GKE Standard node image type
environments.*.target.gcp.standardNodeSpot boolean no Use Spot VMs for GKE Standard nodes
environments.*.target.gcp.autopilotCpuRequest string or null no GKE Autopilot CPU request
environments.*.target.gcp.autopilotMemoryRequest string or null no GKE Autopilot memory request
environments.*.target.gcp.desiredWebReplicas integer or null no Desired web Deployment replicas
environments.*.target.gcp.queueConsumerCount integer or null no Queue consumer Deployment replicas
environments.*.target.gcp.labels object or null no Resource labels
environments.*.target.ovh object or null no OVHcloud deployment inputs (experimental)
environments.*.target.ovh.serviceName string no OVH Public Cloud project service name
environments.*.target.ovh.apiEndpoint string or null no ovh-eu, ovh-ca, ovh-us OVHcloud API endpoint alias (ovh-eu, ovh-ca, or ovh-us)
environments.*.target.ovh.region string or null no OVH Public Cloud region (for example EU-WEST-PAR or GRA11)
environments.*.target.ovh.networkCidr string or null no Private network IPv4 CIDR
environments.*.target.ovh.zones array or null no OVH MKS availability zones within the selected region
environments.*.target.ovh.attachFloatingIps boolean no Attach OVH floating IPs to MKS nodes
environments.*.target.ovh.privateNetworkRoutingAsDefault boolean no Route MKS egress through OVH's documented private-subnet DHCP gateway; custom gateway routing is not inferred
environments.*.target.ovh.imageDigest string or null no Signed immutable OCI image digest
environments.*.target.ovh.databaseName string or null no Magento database name
environments.*.target.ovh.masterUsername string or null no Managed MySQL master username
environments.*.target.ovh.encryptionKeySecret string or null no Secret reference for Magento encryption key
environments.*.target.ovh.databaseFlavor string or null no OVH managed MySQL flavor
environments.*.target.ovh.databasePlan string or null no discovery, essential, business, production, enterprise, advanced OVH managed MySQL plan (discovery/essential, business/production, or enterprise/advanced)
environments.*.target.ovh.databaseVersion string or null no 8.0, 8.4 OVH managed MySQL engine version (8.0 or 8.4)
environments.*.target.ovh.databaseNodeCount integer or null no OVH managed MySQL node count
environments.*.target.ovh.databaseBackupTime string or null no OVH managed MySQL daily backup start time (HH:MM)
environments.*.target.ovh.databaseBackupRegions array or null no OVH managed MySQL backup regions
environments.*.target.ovh.databaseDeletionProtection boolean or null no Enable OVH managed MySQL deletion protection
environments.*.target.ovh.valkeyFlavor string or null no OVH managed Valkey flavor
environments.*.target.ovh.valkeyPlan string or null no discovery, essential, business, production OVH managed Valkey plan (discovery/essential or business/production)
environments.*.target.ovh.valkeyVersion string or null no 7.2, 8.0, 8.1, 9.0, 9.1 OVH managed Valkey engine version (7.2, 8.0, 8.1, 9.0, or 9.1; default 8.1)
environments.*.target.ovh.valkeyNodeCount integer or null no OVH managed Valkey node count
environments.*.target.ovh.valkeyBackupTime string or null no OVH managed Valkey daily backup start time (HH:MM)
environments.*.target.ovh.valkeyBackupRegions array or null no OVH managed Valkey backup regions
environments.*.target.ovh.valkeyDeletionProtection boolean or null no Enable OVH managed Valkey deletion protection
environments.*.target.ovh.mksPlan string or null no free, standard OVH Managed Kubernetes plan
environments.*.target.ovh.nodeFlavor string or null no MKS node pool flavor
environments.*.target.ovh.nodeCount integer or null no MKS node pool size
environments.*.target.ovh.cpuRequest string or null no Kubernetes CPU request
environments.*.target.ovh.memoryRequest string or null no Kubernetes memory request
environments.*.target.ovh.desiredWebReplicas integer or null no Desired web Deployment replicas
environments.*.target.ovh.queueConsumerCount integer or null no Queue consumer Deployment replicas
environments.*.target.ovh.stateBucket string or null no S3-compatible DIY state bucket name
environments.*.target.ovh.stateEndpoint string or null no Loopback S3-compatible endpoint override (Floci)
environments.*.target.ovh.stateRegion string or null no S3-compatible region code for DIY state
environments.*.target.ovh.labels object or null no Resource labels
environments.*.target.scaleway object or null no Scaleway deployment inputs (experimental)
environments.*.target.scaleway.projectId string no Scaleway project ID
environments.*.target.scaleway.region string or null no Scaleway region (e.g. fr-par)
environments.*.target.scaleway.zone string or null no Scaleway availability zone (e.g. fr-par-1)
environments.*.target.scaleway.networkCidr string or null no Private network IPv4 CIDR
environments.*.target.scaleway.zones array or null no Scaleway zones
environments.*.target.scaleway.imageDigest string or null no Signed immutable OCI image digest
environments.*.target.scaleway.databaseName string or null no Magento database name
environments.*.target.scaleway.masterUsername string or null no Managed MySQL master username
environments.*.target.scaleway.encryptionKeySecret string or null no Secret reference for Magento encryption key
environments.*.target.scaleway.databaseNodeType string or null no Scaleway RDB node type
environments.*.target.scaleway.databaseHighAvailability boolean no Enable Scaleway RDB high availability
environments.*.target.scaleway.databaseBackupEnabled boolean or null no Enable Scaleway RDB automated backups
environments.*.target.scaleway.databaseBackupFrequencyHours integer or null no Scaleway RDB automated backup frequency in hours
environments.*.target.scaleway.databaseBackupRetentionDays integer or null no Scaleway RDB automated backup retention in days
environments.*.target.scaleway.databaseBackupSameRegion boolean or null no Store Scaleway RDB logical backups in the instance region
environments.*.target.scaleway.databaseEncryptionAtRest boolean or null no Enable Scaleway RDB encryption at rest
environments.*.target.scaleway.redisNodeType string or null no Scaleway Redis node type
environments.*.target.scaleway.redisVersion string or null no Scaleway Redis engine version
environments.*.target.scaleway.redisClusterSize integer or null no Scaleway Redis node count (1 standalone, 2 HA, 3-6 cluster mode)
environments.*.target.scaleway.cacheMode string or null no redis Cache engine escape hatch
environments.*.target.scaleway.cpuRequest string or null no Kubernetes CPU request
environments.*.target.scaleway.memoryRequest string or null no Kubernetes memory request
environments.*.target.scaleway.desiredWebReplicas integer or null no Desired web Deployment replicas
environments.*.target.scaleway.queueConsumerCount integer or null no Queue consumer Deployment replicas
environments.*.target.scaleway.kapsuleVersion string or null no Kapsule Kubernetes version
environments.*.target.scaleway.nodeType string or null no Kapsule pool node type
environments.*.target.scaleway.nodeCount integer or null no Kapsule pool size
environments.*.target.scaleway.stateBucket string or null no S3-compatible DIY state bucket name
environments.*.target.scaleway.stateEndpoint string or null no Loopback S3-compatible endpoint override (Floci)
environments.*.target.scaleway.stateRegion string or null no S3-compatible region code for DIY state
environments.*.target.scaleway.labels object or null no Resource labels
environments.*.edge object or null no
environments.*.edge.externalProvider string or null no External edge delivery provider
environments.*.edge.mode string or null no none, native, external, both Edge composition mode
environments.*.edge.nativeProvider string or null no Provider-native edge implementation
environments.*.edge.serviceId string or null no Fastly service identifier
environments.*.edge.tokenSecret string or null no Fastly API token secret reference
environments.*.edge.domains array or null no Edge hostnames
environments.*.edge.tls boolean no Require edge TLS
environments.*.edge.tlsMode string or null no TLS certificate ownership and renewal mode
environments.*.edge.dnsMode string or null no DNS ownership and convergence mode
environments.*.edge.vclRef string or null no Reference to reviewed Fastly VCL or policy artifact
environments.*.edge.purgeOnDeploy boolean no Purge Fastly content after deploy
environments.*.edge.originHealthRef string or null no Origin health gate reference
environments.*.edge.cachePolicyRef string or null no Reviewed cache-key and bypass policy reference
environments.*.edge.purgePolicyRef string or null no Purge verification policy reference
environments.*.edge.wafPolicyRef string or null no WAF or security-header policy reference
environments.*.edge.failoverPolicyRef string or null no Origin failover and failback policy reference
environments.*.edge.ownershipMarker string or null no Edge resource ownership marker
environments.*.edge.health object or null no External edge health verification policy
environments.*.edge.health.originUrl string or null no Origin health URL checked before edge mutation
environments.*.edge.health.originHost string or null no TLS SNI and HTTP Host used for the origin health URL
environments.*.edge.health.expectedCname string or null no Expected edge DNS CNAME
environments.*.edge.health.routePath string or null no Path used for post-mutation edge verification
environments.*.edge.health.expectedStatus integer or null no Expected post-mutation HTTP status
environments.*.edge.health.routeTimeoutSeconds integer or null no Maximum edge route convergence time
environments.*.edge.health.routePollSeconds integer or null no Edge route convergence polling interval
environments.*.observability object or null no
environments.*.observability.nativeProvider string or null no Provider-native observability destination
environments.*.observability.nativeReference string or null no Opaque provider-owned native destination reference
environments.*.observability.externalProvider string or null no External observability destination
environments.*.observability.credentialReferences array or null no Secret references resolved by the observability extension
environments.*.observability.endpoint string or null no Optional telemetry endpoint
environments.*.observability.serviceName string or null no Telemetry service name
environments.*.observability.environment string or null no Telemetry environment name
environments.*.observability.logs boolean no Export logs
environments.*.observability.metrics boolean no Export metrics
environments.*.observability.traces boolean no Export traces
environments.*.observability.signals array or null no Portable telemetry signal names
environments.*.observability.retentionDays integer or null no Telemetry retention days
environments.*.observability.samplingRatio number or null no Trace sampling ratio
environments.*.observability.redactionPolicyRef string or null no Telemetry redaction policy reference
environments.*.observability.alertReferences array or null no Alert and dashboard references
environments.*.observability.labels object or null no Additional resource attributes
environments.*.observability.dataResidency string or null no Declared telemetry data residency
environments.*.observability.alerts array or null no Actionable alert policies
environments.*.observability.dashboards array or null no Operational dashboards
environments.*.observability.slos array or null no Service-level objectives
environments.*.email object or null no
environments.*.email.mode string or null no disabled, smtp, ses, tem, ovh Cloud email mode
environments.*.email.host string or null no SMTP host
environments.*.email.port integer or null no SMTP port
environments.*.email.username string or null no SMTP username
environments.*.email.from string or null no Default sender address
environments.*.email.credential string or null no SES credential secret reference
environments.*.email.managed object or null no Managed email provisioning inputs
environments.*.email.managed.domain string or null no Verified sender domain
environments.*.email.managed.hostedZoneId string or null no Route 53 hosted zone ID for DKIM records (SES only)
environments.*.email.managed.account string or null no Mailbox account name (OVH only)
environments.*.resilience object or null no
environments.*.resilience.profileId string or null no Named resilience profile
environments.*.resilience.availabilityTarget string or null no Availability target
environments.*.resilience.rpoSeconds integer or null no Maximum recovery point objective in seconds
environments.*.resilience.rtoSeconds integer or null no Maximum recovery time objective in seconds
environments.*.resilience.retentionDays integer or null no Backup retention days
environments.*.resilience.recoveryScope string or null no Recovery scope
environments.*.resilience.failoverOwner string or null no Failover operator
environments.*.resilience.fencingPolicy string or null no Single-writer and split-brain fencing policy
environments.*.resilience.dataRegion string or null no Optional region residency for Magento database, media, and backups
environments.*.resilience.recoveryDestinations array or null no Allowed recovery destinations
environments.*.resilience.projection object or null no Search and cache rebuild workload target
environments.*.resilience.projection.runtime string no ecs, kubernetes Projection runtime transport
environments.*.resilience.projection.cluster string or null no ECS cluster identity
environments.*.resilience.projection.service string or null no ECS service used to select a running task
environments.*.resilience.projection.task string or null no Optional pinned ECS task identity
environments.*.resilience.projection.namespace string or null no Kubernetes workload namespace
environments.*.resilience.projection.workload string or null no Kubernetes workload app label
environments.*.resilience.projection.container string or null no Container receiving projection commands
environments.*.resilience.dataClasses array or null no Independent data-class recovery policies
environments.*.defaults object or null no
environments.*.defaults.region string no Default AWS region
environments.*.defaults.preset string no preview, standard, high-availability Default infrastructure preset
environments.*.compatibility object or null no
environments.*.compatibility.allowUnsupported boolean no Allow an unsupported service combination
environments.*.extensions object no
extensions object no Namespaced extension settings

Environment values override project values. A null environment value removes an optional inherited value. Entries under extensions may use namespaced fields that MageLift does not inspect.