Skip to content

Boxlang Compat

Boxlang Compat #45

Workflow file for this run

name: Pull Requests
on:
push:
branches-ignore:
- "main"
- "master"
- "development"
pull_request:
branches:
- development
jobs:
tests:
name: Tests
runs-on: ubuntu-latest
env:
DB_USER: root
DB_PASSWORD: root
continue-on-error: ${{ matrix.experimental }}
strategy:
fail-fast: false
matrix:
cfengine: [ "lucee@5", "lucee@6" ,"adobe@2018", "adobe@2021", "adobe@2023", "adobe@2025", "boxlang-cfml@1" ]
coldboxVersion: [ "^6.0.0", "^7.0.0", "^8.0.0" ]
experimental: [ false ]
include:
- coldboxVersion: "^8.0.0"
cfengine: "boxlang@1"
experimental: false
- coldboxVersion: "be"
cfengine: "lucee@5"
experimental: true
- coldboxVersion: "be"
cfengine: "lucee@6"
experimental: true
- coldboxVersion: "be"
cfengine: "lucee@be"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2018"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2021"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2023"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@2025"
experimental: true
- coldboxVersion: "be"
cfengine: "adobe@be"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang@1"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang@be"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang-cfml@1"
experimental: true
- coldboxVersion: "be"
cfengine: "boxlang-cfml@be"
experimental: true
steps:
- name: Checkout Repository
uses: actions/checkout@v5
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: "temurin"
java-version: 21
- name: Setup CommandBox CLI
uses: Ortus-Solutions/[email protected]
with:
install: commandbox-boxlang
- name: Install Test Harness with ColdBox ${{ matrix.coldboxVersion }}
run: |
box install
cd test-harness
box package set dependencies.coldbox=${{ matrix.coldboxVersion }}
box install
- name: Start ${{ matrix.cfengine }} Server
run: |
echo "matrix.cfengine=${{ matrix.cfengine }}" > ./.env
box server start serverConfigFile="server-${{ matrix.cfengine }}.json" --noSaveSettings --debug
curl http://127.0.0.1:60299
- name: Run Tests
working-directory: ./test-harness
run: |
mkdir tests/results
box package set testbox.runner="http://localhost:60299/tests/runner.cfm"
box testbox run --verbose outputFile=tests/results/test-results outputFormats=json,antjunit
- name: Publish PR Test Reports
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
files: test-harness/tests/results/**/*.xml
check_name: "${{ matrix.cfengine }} Test Results"
- name: Failure Debugging Info
if: ${{ failure() }}
working-directory: ./test-harness
run: |
box server log serverConfigFile="server-${{ matrix.cfengine }}.json"
format:
name: Format
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v5
- name: Setup Java
uses: actions/setup-java@v5
with:
distribution: "temurin"
java-version: "11"
- name: Setup CommandBox CLI
uses: Ortus-Solutions/[email protected]
with:
install: commandbox-cfformat
- name: Run CFFormat
run: box run-script format
- name: Commit Format Changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: Apply cfformat changes