From 6325e14869e56f5e4ded7a06d9188aedf25abbf9 Mon Sep 17 00:00:00 2001 From: Jonathan Miller <230051081+jmiller-moko@users.noreply.github.com> Date: Thu, 18 Dec 2025 17:25:32 -0600 Subject: [PATCH] Update ci.yml --- .github/workflows/ci.yml | 117 ++++++++++++++++++++------------------- 1 file changed, 61 insertions(+), 56 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 882a171..ae9fb84 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,4 +1,4 @@ -# +# ============================================================================ # Copyright (C) 2025 Moko Consulting # # This file is part of a Moko Consulting project. @@ -25,70 +25,75 @@ # PATH: /.github/workflows/ci.yml # VERSION: 01.00.00 # BRIEF: Continuous integration governance workflow for standards enforcement. -# +# NOTE: Avoids wildcard branch filters on pull_request to prevent Actions parser errors. +# ============================================================================ name: CI on: - push: - branches: - - main - - dev - - "dev/*" - pull_request: - branches: - - "*" - workflow_dispatch: + push: + branches: + - main + - dev + - "dev/*" + pull_request: + workflow_dispatch: + +permissions: + contents: read + issues: write jobs: - ci: - name: Standards CI Validation - runs-on: ubuntu-latest + ci: + name: Standards CI Validation + runs-on: ubuntu-latest - permissions: - contents: read - issues: write + steps: + - name: Checkout repository + uses: actions/checkout@v4 - steps: - - name: Checkout repository - uses: actions/checkout@v4 + - name: Validate file paths + shell: bash + run: | + set -euo pipefail + if [ -x "./scripts/validate_paths.sh" ]; then + ./scripts/validate_paths.sh + else + echo "validate_paths.sh not present, skipping" + fi - - name: Set shell strict mode - run: | - set -euo pipefail + - name: Validate tabs usage + shell: bash + run: | + set -euo pipefail + if [ -x "./scripts/validate_tabs.sh" ]; then + ./scripts/validate_tabs.sh + else + echo "validate_tabs.sh not present, skipping" + fi - - name: Validate file paths - run: | - if [ -x "./scripts/validate_paths.sh" ]; then - ./scripts/validate_paths.sh - else - echo "validate_paths.sh not present, skipping" - fi + - name: Validate CHANGELOG governance + shell: bash + run: | + set -euo pipefail + if [ -x "./scripts/validate_changelog.sh" ]; then + ./scripts/validate_changelog.sh + else + echo "validate_changelog.sh not present, skipping" + fi - - name: Validate tabs usage - run: | - if [ -x "./scripts/validate_tabs.sh" ]; then - ./scripts/validate_tabs.sh - else - echo "validate_tabs.sh not present, skipping" - fi + - name: Validate Joomla manifests + shell: bash + run: | + set -euo pipefail + if [ -x "./scripts/validate_manifest.sh" ]; then + ./scripts/validate_manifest.sh + else + echo "validate_manifest.sh not present, skipping" + fi - - name: Validate CHANGELOG governance - run: | - if [ -x "./scripts/validate_changelog.sh" ]; then - ./scripts/validate_changelog.sh - else - echo "validate_changelog.sh not present, skipping" - fi - - - name: Validate Joomla manifests - run: | - if [ -x "./scripts/validate_manifest.sh" ]; then - ./scripts/validate_manifest.sh - else - echo "validate_manifest.sh not present, skipping" - fi - - - name: CI completion - run: | - echo "CI checks completed successfully" + - name: CI completion + shell: bash + run: | + set -euo pipefail + echo "CI checks completed successfully"