name: Davidson CI on: push: permissions: contents: read jobs: quality: runs-on: davidson-ci steps: - name: Checkout project uses: actions/checkout@v4 - name: Checkout Davidson CI uses: actions/checkout@v4 with: repository: pauljd/davidson-ci path: .davidson-ci - name: Detect project id: detect run: .davidson-ci/modules/detect.sh - name: PHP id: php if: always() run: .davidson-ci/modules/php.sh - name: JavaScript / TypeScript id: javascript if: always() run: .davidson-ci/modules/javascript.sh - name: CSS id: css if: always() run: .davidson-ci/modules/css.sh - name: Security id: security if: always() run: .davidson-ci/modules/security.sh - name: Davidson CI Report if: always() run: .davidson-ci/scripts/report.sh - name: Final CI status if: always() 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 if [ "$FAILED" -eq 1 ]; then echo "Davidson CI failed" exit 1 fi echo "Davidson CI passed"