blob: 220d147bce4fb53a8ed1367c843a0ad9ce96516e [file] [log] [blame]
steps:
- name: "ghcr.io/project-chip/chip-build-vscode:50"
entrypoint: "bash"
args:
- "-c"
- |
git config --global --add safe.directory "*"
python scripts/checkout_submodules.py --shallow --recursive --platform esp32 nrfconnect silabs linux android
id: Submodules
- name: "ghcr.io/project-chip/chip-build-vscode:50"
# NOTE: silabs boostrap is NOT done with the rest as it requests a conflicting
# jinja2 version (asks for 3.1.3 when constraints.txt asks for 3.0.3)
env:
- PW_ENVIRONMENT_ROOT=/pwenv
args:
- "-c"
- source ./scripts/bootstrap.sh -p all,esp32,nrfconnect,linux,android
id: Bootstrap
waitFor:
- Submodules
entrypoint: /usr/bin/bash
volumes:
- name: pwenv
path: /pwenv
timeout: 900s
- name: "ghcr.io/project-chip/chip-build-vscode:50"
env:
- PW_ENVIRONMENT_ROOT=/pwenv
args:
- >-
perl -i -pe 's/^gdbgui==/# gdbgui==/' /opt/espressif/esp-idf/requirements.txt &&
./examples/chef/chef.py --build_all --build_exclude noip\|roboticvacuumcleaner
id: CompileAll
waitFor:
- Bootstrap
entrypoint: ./scripts/run_in_build_env.sh
volumes:
- name: pwenv
path: /pwenv
- name: "ghcr.io/project-chip/chip-build-vscode:50"
env:
- PW_ENVIRONMENT_ROOT=/pwenv
args:
- ./examples/chef/chef.py --build_all --build_include
linux_arm64_ipv6only.*noip
# Temporarely allow failure since this is known to fail:
# AppMain tries to setup commissioning in general (even if all things are
# disabled, ethernet assumes network commissioning cluster) and link fails
# when the cluster is fully disabled
# TODO: completely remove this target or fix compilation
allowFailure: true
id: CompileNoip
waitFor:
- CompileAll
entrypoint: ./scripts/run_in_build_env.sh
volumes:
- name: pwenv
path: /pwenv
- name: "gcr.io/cloud-builders/docker"
args:
[
"/workspace/examples/chef/create_docker.py",
"--commit_sha",
"$COMMIT_SHA",
"--short_sha",
"$SHORT_SHA",
"--revision_id",
"$REVISION_ID",
"--build_id",
"$BUILD_ID",
"--image_name",
"$_DOCKER_IMAGE_NAME",
"--tar_path",
"/workspace/artifacts",
]
id: DockerAll
entrypoint: python3
waitFor:
- CompileNoip
logsBucket: matter-build-automation-build-logs
# Global timeout for all steps
timeout: 36000s
queueTtl: 21600s
artifacts:
objects:
location: "gs://matter-build-automation-artifacts/$PROJECT_ID/$COMMIT_SHA/"
paths: ["/workspace/artifacts/*.tar.gz"]
# Using higher CPU machines generally speeds up builds, except bootstrap is always
# slow.
options:
machineType: "E2_HIGHCPU_32"
diskSizeGb: 500