28 lines
764 B
YAML
28 lines
764 B
YAML
|
steps:
|
||
|
# Step 1: Clone the repo and identify changed directories
|
||
|
- name: "gcr.io/cloud-builders/git"
|
||
|
entrypoint: "bash"
|
||
|
args:
|
||
|
- "-c"
|
||
|
- |
|
||
|
echo "Identifying changed directories..."
|
||
|
CHANGED_DIRS=$(./changed-directories.sh)
|
||
|
echo "Changed services: $CHANGED_DIRS"
|
||
|
|
||
|
# Step 2: Build, Test, and Containerize for each changed directory
|
||
|
- name: "gcr.io/cloud-builders/docker"
|
||
|
entrypoint: "bash"
|
||
|
args:
|
||
|
- "-c"
|
||
|
- |
|
||
|
for dir in $CHANGED_DIRS; do
|
||
|
echo "Processing $dir"
|
||
|
make -C $dir build test containerize
|
||
|
done
|
||
|
|
||
|
# Step 3: Push container images
|
||
|
- name: "gcr.io/cloud-builders/docker"
|
||
|
args: ["push", "gcr.io/$PROJECT_ID/$IMAGE_NAME"]
|
||
|
|
||
|
timeout: "1200s" # 20 minutes
|