diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..083683e --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,36 @@ +name: CI + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + # ───────────────────────── Bash side ───────────────────────── + test-bash: + runs-on: ubuntu-latest # Linux covers your .sh script + steps: + - uses: actions/checkout@v4 + + # Install Bats (bash test runner) + - name: Set up Bats + uses: mig4/setup-bats@v1 # Tiny 1-line action :contentReference[oaicite:1]{index=1} + with: + bats-version: 1.12.0 + + - name: Run Bats tests + run: bats -r tests/bats # adjust path if you keep tests elsewhere + + # ─────────────────────── PowerShell side ───────────────────── + test-pwsh: + runs-on: windows-latest # Gives you pwsh + Pester pre-installed :contentReference[oaicite:2]{index=2} + steps: + - uses: actions/checkout@v4 + + - name: Run Pester tests + shell: pwsh + run: | + # Pester 5 is already in the image, but you can pin a version: + # Install-Module Pester -Force -RequiredVersion 5.6.0 + Invoke-Pester -Path tests/pester -CI