aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.cirrus.yml28
-rwxr-xr-xhack/tree_status.sh4
2 files changed, 31 insertions, 1 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index 0745b1e7b..25ca058fc 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -176,6 +176,34 @@ vendor_task:
failed_master_script: '$CIRRUS_WORKING_DIR/$SCRIPT_BASE/notice_master_failure.sh |& ${TIMESTAMP}'
+# This task runs `make varlink_api_generate` followed by ./hack/tree_status.sh to check
+# whether the git tree is clean.
+varlink_api_task:
+
+ depends_on:
+ - "gating"
+
+ env:
+ CIRRUS_WORKING_DIR: "/usr/src/libpod"
+ # Used by tree_status.sh
+ SUGGESTION: 'remove API.md, then "make varlink_api_generate" and commit changes.'
+
+ # Runs within Cirrus's "community cluster"
+ container:
+ image: "quay.io/libpod/gate:latest"
+ cpu: 4
+ memory: 12
+
+ timeout_in: 10m
+
+ vendor_script:
+ - '/usr/local/bin/entrypoint.sh varlink_api_generate'
+ - 'cd /go/src/github.com/containers/libpod && ./hack/tree_status.sh'
+
+ on_failure:
+ failed_master_script: '$CIRRUS_WORKING_DIR/$SCRIPT_BASE/notice_master_failure.sh'
+
+
build_each_commit_task:
depends_on:
diff --git a/hack/tree_status.sh b/hack/tree_status.sh
index 78fb4c6a3..ac874a347 100755
--- a/hack/tree_status.sh
+++ b/hack/tree_status.sh
@@ -1,12 +1,14 @@
#!/bin/bash
set -e
+SUGGESTION="${SUGGESTION:-sync the vendor.conf and commit all changes.}"
+
STATUS=$(git status --porcelain)
if [[ -z $STATUS ]]
then
echo "tree is clean"
else
- echo "tree is dirty, please commit all changes and sync the vendor.conf"
+ echo "tree is dirty, please $SUGGESTION"
echo ""
echo "$STATUS"
exit 1