1
0
Fork 0

drm_hwcomposer: CI: Refactor containers

The `ubuntu/x86_64_android` container is the base for running cts/vts
tests, but it is getting very large (~4GB) and takes a long time to build.
To make the base container smaller (~2.6GB), and to make it quicker to
rebuild specific components, carve out two new containers from the base
container:
  1) `ubuntu/x86_64_android_tools` for any tools that can be downloaded;
  2) `ubuntu/x86_64_android_binaries` for any binaries (excluding
      cuttlefish) that need to be built within the aosp repo.

Also, remove the jobs that start with the prefix `use-*`. These jobs pull
containers (e.g. debian/x86_64_cuttlefish) to make files inside the
container (e.g. cuttlefish.tar.xz) available to other jobs in the pipeline
as artifacts. But these `use-*` jobs can take a long time to run
(anywhere from 3 to 20 minutes to use the cuttlefish container). Instead,
use skopeo with umoci to fetch the containers and access their files,
which is much quicker.

Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
This commit is contained in:
Deborah Brouwer 2025-08-28 16:05:45 -07:00
parent c02ebae650
commit 2e853865c2
9 changed files with 332 additions and 144 deletions

View file

@ -11,6 +11,9 @@ variables:
CI_TEMPLATES_COMMIT: &ci-templates-commit 32afe5644697e503af18a736587c8619fa036a72
FDO_UPSTREAM_REPO: "drm-hwcomposer/drm-hwcomposer"
CUTTLEFISH_TARBALL: "cuttlefish.tar.xz"
ANDROID_TOOLS_TARBALL: "android_tools.tar.xz"
TOOLS_DIR: "android-tools"
BINARIES_DIR: "android-binaries"
RESULTS_DIR: "${CI_PROJECT_DIR}/results"
include:
@ -80,8 +83,6 @@ android-cts:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
- job: use-debian/x86_64_cuttlefish
artifacts: true
artifacts:
paths:
- "${RESULTS_DIR}"
@ -100,8 +101,6 @@ android-vts:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
- job: use-debian/x86_64_cuttlefish
artifacts: true
artifacts:
paths:
- "${RESULTS_DIR}"