diff --git a/.gitea/scoped_workflows/davidson-ci.yml b/.gitea/scoped_workflows/davidson-ci.yml index a70bbbf..9c499a0 100644 --- a/.gitea/scoped_workflows/davidson-ci.yml +++ b/.gitea/scoped_workflows/davidson-ci.yml @@ -54,17 +54,36 @@ jobs: run: | FAILED=0 - [ "${DAVIDSON_PHP_STATUS:-UNKNOWN}" = "FAIL" ] && FAILED=1 - [ "${DAVIDSON_JS_STATUS:-UNKNOWN}" = "FAIL" ] && FAILED=1 - [ "${DAVIDSON_CSS_STATUS:-UNKNOWN}" = "FAIL" ] && FAILED=1 - [ "${DAVIDSON_SECURITY_STATUS:-UNKNOWN}" = "FAIL" ] && FAILED=1 + check_status() { + NAME="$1" + STATUS="$2" - if [ "$FAILED" -eq 1 ]; then + case "$STATUS" in + PASS|SKIP) + echo "$NAME: $STATUS" + ;; + FAIL) + echo "$NAME: FAIL" + FAILED=1 + ;; + *) + echo "$NAME: invalid or missing status ($STATUS)" + FAILED=1 + ;; + esac + } + + check_status "PHP" "${DAVIDSON_PHP_STATUS:-UNKNOWN}" + check_status "JavaScript / TypeScript" "${DAVIDSON_JS_STATUS:-UNKNOWN}" + check_status "CSS" "${DAVIDSON_CSS_STATUS:-UNKNOWN}" + check_status "Security" "${DAVIDSON_SECURITY_STATUS:-UNKNOWN}" + + if [ "$FAILED" -ne 0 ]; then echo "Davidson CI failed" exit 1 fi - echo "Davidson CI passed" + echo "Davidson CI passed" ai-review: needs: quality