From 4665c1720ebf247454248ca9c3c323c4a025144d Mon Sep 17 00:00:00 2001 From: vmelikyan Date: Wed, 25 Feb 2026 16:12:07 -0800 Subject: [PATCH] support for specifying build job resource in lifecycle.yaml --- src/pages/docs/schema/github.mdx | 39 ++++++++++++++++++++++++++++---- src/pages/docs/schema/helm.mdx | 17 ++++++++++---- 2 files changed, 48 insertions(+), 8 deletions(-) diff --git a/src/pages/docs/schema/github.mdx b/src/pages/docs/schema/github.mdx index 36f2d4f..517c649 100644 --- a/src/pages/docs/schema/github.mdx +++ b/src/pages/docs/schema/github.mdx @@ -89,6 +89,13 @@ services: defaultTag: "main" builder: engine: "buildkit" # Options: buildkit (default), codefresh, kaniko + resources: # Optional - custom CPU/memory for the build job + requests: + cpu: "1" + memory: "2Gi" + limits: + cpu: "4" + memory: "8Gi" # Init container - runs before main application (optional) init: dockerfilePath: "docker/migrate.dockerfile" @@ -159,11 +166,35 @@ The default Docker image tag, typically matching the branch name. ### docker.builder -Configuration for the Docker build process. The `engine` field specifies which build engine to use: +Configuration for the Docker build process. -- `buildkit` - BuildKit engine (default) -- `codefresh` - Codefresh build engine -- `kaniko` - Kaniko build engine +| Field | Type | Description | +| -------------------- | ------ | --------------------------------------------------------- | +| `engine` | string | Build engine: `buildkit` (default), `kaniko`, `codefresh` | +| `resources.requests` | object | Minimum CPU/memory guaranteed for the build job | +| `resources.limits` | object | Maximum CPU/memory allowed for the build job | + +The `resources` field lets you configure CPU and memory for the build job container. Values use standard Kubernetes resource units (e.g., `"500m"` for CPU, `"1Gi"` for memory). + +**Precedence:** Per-service `resources` in lifecycle.yaml take priority over values set in `global_config`. If neither is set, built-in defaults are used. + +| Engine | Default CPU Request | Default Memory Request | Default CPU Limit | Default Memory Limit | +| -------- | ------------------- | ---------------------- | ----------------- | -------------------- | +| buildkit | 500m | 1Gi | 2 | 4Gi | +| kaniko | 300m | 750Mi | 1 | 2Gi | + +```yaml filename="lifecycle.yaml" +docker: + builder: + engine: "buildkit" + resources: + requests: + cpu: "1" + memory: "2Gi" + limits: + cpu: "4" + memory: "8Gi" +``` ### docker.app (Required) diff --git a/src/pages/docs/schema/helm.mdx b/src/pages/docs/schema/helm.mdx index 648b635..455eccb 100644 --- a/src/pages/docs/schema/helm.mdx +++ b/src/pages/docs/schema/helm.mdx @@ -156,6 +156,13 @@ services: defaultTag: "main" builder: engine: "buildkit" # Options: buildkit (default), codefresh, kaniko + resources: # Optional - custom CPU/memory for the build job + requests: + cpu: "1" + memory: "2Gi" + limits: + cpu: "4" + memory: "8Gi" # Init container - runs before main application (optional) init: dockerfilePath: "docker/migrate.dockerfile" @@ -223,11 +230,13 @@ The default Docker image tag, typically matching the branch name. ### docker.builder -Configuration for the Docker build process. The `engine` field specifies which build engine to use: +Configuration for the Docker build process. See the [GitHub service docker.builder](/docs/schema/github#dockerbuilder) section for the full reference, including `resources` configuration for build job CPU/memory. -- `buildkit` - BuildKit engine (default) -- `codefresh` - Codefresh build engine -- `kaniko` - Kaniko build engine +| Field | Type | Description | +| -------------------- | ------ | --------------------------------------------------------- | +| `engine` | string | Build engine: `buildkit` (default), `kaniko`, `codefresh` | +| `resources.requests` | object | Minimum CPU/memory guaranteed for the build job | +| `resources.limits` | object | Maximum CPU/memory allowed for the build job | ### docker.app (Required when using docker)