Skip to content

Commit bbe1d73

Browse files
author
Scaffold Bot
committed
ci: exclude demo.sh-driven pgo + 11-build-tooling from standalone build matrix
1 parent 1001924 commit bbe1d73

1 file changed

Lines changed: 21 additions & 6 deletions

File tree

.github/workflows/container-builds.yml

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
name: Container builds
22

3-
# Full `podman build` of every example image. This is the heavy pass the
4-
# fast push CI (ci.yml) deliberately skips — several images build gRPC,
5-
# OpenTelemetry-cpp, or libabigail from source (tens of minutes each), so it
6-
# runs on demand rather than on every push.
3+
# Full `podman build` of every standalone example image. This is the heavy
4+
# pass the fast push CI (ci.yml) deliberately skips — several images build
5+
# gRPC, OpenTelemetry-cpp, or libabigail from source (tens of minutes each),
6+
# so it runs on demand rather than on every push.
7+
#
8+
# Two Containerfiles are excluded (see the discover job): demo-01's PGO build
9+
# and 11-build-tooling both need their demo.sh to generate a build input
10+
# (PGO profiles / vendored deps) first, so they are not standalone-buildable.
711
#
812
# Trigger manually from the Actions tab (or `gh workflow run "Container builds"`).
913
# To also run it weekly, uncomment the schedule block below (note: ~22 heavy
@@ -32,10 +36,21 @@ jobs:
3236
- id: set
3337
name: Build matrix from examples/**/Containerfile*
3438
run: |
35-
files=$(find examples -name 'Containerfile*' -type f | sort \
39+
# Excluded — NOT standalone `podman build` targets. Each needs its
40+
# demo.sh to generate a build input first, so a bare build from a
41+
# clean checkout fails on a missing COPY source:
42+
# * demo-01 Containerfile.pgo — two-pass PGO; the optimized stage
43+
# COPYs pgo-profiles/ (.gcda files captured by demo.sh's training
44+
# run). Build it via `demo.sh` / the --target flow, not here.
45+
# * 11-build-tooling — COPYs vendor/, which is gitignored and
46+
# populated by the demo. Covered by its demo.sh instead.
47+
exclude='examples/demo-01-image-strategy/Containerfile.pgo|examples/statelessness/11-build-tooling/Containerfile$'
48+
echo "Excluded (demo.sh-driven, not standalone-buildable):"
49+
find examples -name 'Containerfile*' -type f | sort | grep -E "$exclude" | sed 's/^/ - /' || true
50+
files=$(find examples -name 'Containerfile*' -type f | sort | grep -vE "$exclude" \
3651
| jq -R -s -c 'split("\n") | map(select(length > 0))')
3752
echo "matrix={\"containerfile\":$files}" >> "$GITHUB_OUTPUT"
38-
echo "Discovered:"; echo "$files" | jq -r '.[]'
53+
echo "Building:"; echo "$files" | jq -r '.[]' | sed 's/^/ - /'
3954
4055
build:
4156
name: ${{ matrix.containerfile }}

0 commit comments

Comments
 (0)