Skip to content

Commit 5a24e33

Browse files
authored
Merge pull request #24 from coldbox-modules/boxlang_compat
Boxlang Compat
2 parents eeb99ee + a5cb28a commit 5a24e33

27 files changed

+903
-634
lines changed

.github/workflows/ci.yml

Lines changed: 59 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,58 @@ jobs:
2222
strategy:
2323
fail-fast: false
2424
matrix:
25-
cfengine: [ "lucee@5", "lucee@6", "adobe@2018", "adobe@2021" ]
25+
cfengine: [ "lucee@5", "lucee@6" ,"adobe@2018", "adobe@2021", "adobe@2023", "adobe@2025", "boxlang-cfml@1" ]
26+
coldboxVersion: [ "^6.0.0", "^7.0.0", "^8.0.0" ]
2627
experimental: [ false ]
2728
include:
28-
- cfengine: "boxlang@1"
29+
- coldboxVersion: "^8.0.0"
30+
cfengine: "boxlang@1"
31+
experimental: false
32+
- coldboxVersion: "be"
33+
cfengine: "lucee@5"
34+
experimental: true
35+
- coldboxVersion: "be"
36+
cfengine: "lucee@6"
37+
experimental: true
38+
- coldboxVersion: "be"
39+
cfengine: "lucee@be"
40+
experimental: true
41+
- coldboxVersion: "be"
42+
cfengine: "adobe@2018"
43+
experimental: true
44+
- coldboxVersion: "be"
45+
cfengine: "adobe@2021"
46+
experimental: true
47+
- coldboxVersion: "be"
48+
cfengine: "adobe@2023"
49+
experimental: true
50+
- coldboxVersion: "be"
51+
cfengine: "adobe@2025"
52+
experimental: true
53+
- coldboxVersion: "be"
54+
cfengine: "adobe@be"
55+
experimental: true
56+
- coldboxVersion: "be"
57+
cfengine: "boxlang@1"
58+
experimental: true
59+
- coldboxVersion: "be"
60+
cfengine: "boxlang@be"
61+
experimental: true
62+
- coldboxVersion: "be"
63+
cfengine: "boxlang-cfml@1"
64+
experimental: true
65+
- coldboxVersion: "be"
66+
cfengine: "boxlang-cfml@be"
2967
experimental: true
3068
steps:
3169
- name: Checkout Repository
32-
uses: actions/checkout@v2
70+
uses: actions/checkout@v5
3371

3472
- name: Setup Java
35-
uses: actions/setup-java@v2
73+
uses: actions/setup-java@v5
3674
with:
37-
distribution: "adopt"
38-
java-version: "11"
75+
distribution: "temurin"
76+
java-version: 21
3977

4078
- name: Cache CommandBox Dependencies
4179
uses: actions/cache@v4
@@ -46,28 +84,22 @@ jobs:
4684
restore-keys: |
4785
${{ runner.OS }}-commandbox-cache-${{ hashFiles( 'box.json' ) }}-${{ hashFiles( 'test-harness/box.json' ) }}
4886
49-
- name: Setup CommandBox
50-
uses: elpete/[email protected]
51-
52-
- name: Update Commandbox Boxlang Module
53-
if: ${{ matrix.cfengine == 'boxlang@1' }}
54-
run:
55-
box install --force commandbox-boxlang
87+
- name: Setup CommandBox CLI
88+
uses: Ortus-Solutions/[email protected]
89+
with:
90+
install: commandbox-boxlang
5691

57-
- name: Install Test Harness Dependencies
58-
working-directory: ./test-harness
92+
- name: Install Test Harness with ColdBox ${{ matrix.coldboxVersion }}
5993
run: |
6094
box install
95+
cd test-harness
96+
box package set dependencies.coldbox=${{ matrix.coldboxVersion }}
97+
box install
6198
6299
- name: Start ${{ matrix.cfengine }} Server
63-
working-directory: ./test-harness
64100
run: |
65101
echo "matrix.cfengine=${{ matrix.cfengine }}" > ./.env
66102
box server start serverConfigFile="server-${{ matrix.cfengine }}.json" --noSaveSettings --debug
67-
# Install Adobe 2021 cfpm modules
68-
if [[ "${{ matrix.cfengine }}" == "adobe@2021" ]] ; then
69-
box run-script install:2021
70-
fi
71103
curl http://127.0.0.1:60299
72104
73105
- name: Run Tests
@@ -125,17 +157,17 @@ jobs:
125157
build:
126158
name: Build & Publish
127159
needs: tests
128-
runs-on: ubuntu-24.04
160+
runs-on: ubuntu-latest
129161
steps:
130162
- name: Checkout Repository
131-
uses: actions/checkout@v2
163+
uses: actions/checkout@v5
132164
with:
133165
fetch-depth: 0
134166

135167
- name: Setup Java
136-
uses: actions/setup-java@v2
168+
uses: actions/setup-java@v5
137169
with:
138-
distribution: "adopt"
170+
distribution: "temurin"
139171
java-version: "11"
140172

141173
- name: Cache CommandBox Dependencies
@@ -147,10 +179,11 @@ jobs:
147179
restore-keys: |
148180
${{ runner.OS }}-commandbox-cache-${{ hashFiles( 'box.json' ) }}-${{ hashFiles( 'test-harness/box.json' ) }}
149181
150-
- name: Setup CommandBox
151-
uses: elpete/setup-commandbox@v1.0.0
182+
- name: Setup CommandBox CLI
183+
uses: Ortus-Solutions/setup-commandbox@v2.0.1
152184
with:
153185
forgeboxAPIKey: ${{ secrets.FORGEBOX_TOKEN }}
186+
install: commandbox-docbox
154187

155188
- name: Setup Environment Variables For Build Process
156189
id: current_version
@@ -167,7 +200,6 @@ jobs:
167200
168201
- name: Build ${{ env.MODULE_ID }}
169202
run: |
170-
box install commandbox-docbox
171203
box task run taskfile=build/Build target=run :version=${{ env.VERSION }} :projectName=${{ env.MODULE_ID }} :buildID=${{ github.run_number }} :branch=${{ env.BRANCH }}
172204
173205
- name: Upload Build Artifacts

.github/workflows/pr.yml

Lines changed: 64 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -13,50 +13,83 @@ on:
1313
jobs:
1414
tests:
1515
name: Tests
16-
runs-on: ubuntu-24.04
16+
runs-on: ubuntu-latest
1717
env:
1818
DB_USER: root
1919
DB_PASSWORD: root
20-
continue-on-error: ${{ matrix.experimental }}
20+
continue-on-error: ${{ matrix.experimental }}
2121
strategy:
22-
fail-fast: true
22+
fail-fast: false
2323
matrix:
24-
cfengine: [ "lucee@5", "adobe@2018", "adobe@2021" ]
24+
cfengine: [ "lucee@5", "lucee@6" ,"adobe@2018", "adobe@2021", "adobe@2023", "adobe@2025", "boxlang-cfml@1" ]
25+
coldboxVersion: [ "^6.0.0", "^7.0.0", "^8.0.0" ]
26+
experimental: [ false ]
2527
include:
26-
- cfengine: "boxlang@1"
28+
- coldboxVersion: "^8.0.0"
29+
cfengine: "boxlang@1"
30+
experimental: false
31+
- coldboxVersion: "be"
32+
cfengine: "lucee@5"
33+
experimental: true
34+
- coldboxVersion: "be"
35+
cfengine: "lucee@6"
36+
experimental: true
37+
- coldboxVersion: "be"
38+
cfengine: "lucee@be"
39+
experimental: true
40+
- coldboxVersion: "be"
41+
cfengine: "adobe@2018"
42+
experimental: true
43+
- coldboxVersion: "be"
44+
cfengine: "adobe@2021"
45+
experimental: true
46+
- coldboxVersion: "be"
47+
cfengine: "adobe@2023"
48+
experimental: true
49+
- coldboxVersion: "be"
50+
cfengine: "adobe@2025"
51+
experimental: true
52+
- coldboxVersion: "be"
53+
cfengine: "adobe@be"
54+
experimental: true
55+
- coldboxVersion: "be"
56+
cfengine: "boxlang@1"
57+
experimental: true
58+
- coldboxVersion: "be"
59+
cfengine: "boxlang@be"
60+
experimental: true
61+
- coldboxVersion: "be"
62+
cfengine: "boxlang-cfml@1"
63+
experimental: true
64+
- coldboxVersion: "be"
65+
cfengine: "boxlang-cfml@be"
2766
experimental: true
2867
steps:
2968
- name: Checkout Repository
30-
uses: actions/checkout@v2
69+
uses: actions/checkout@v5
3170

3271
- name: Setup Java
33-
uses: actions/setup-java@v2
72+
uses: actions/setup-java@v5
3473
with:
35-
distribution: "adopt"
36-
java-version: "11"
37-
38-
- name: Setup CommandBox
39-
uses: elpete/[email protected]
74+
distribution: "temurin"
75+
java-version: 21
4076

41-
- name: Update Commandbox Boxlang Module
42-
if: ${{ matrix.cfengine == 'boxlang@1' }}
43-
run:
44-
box install --force commandbox-boxlang
77+
- name: Setup CommandBox CLI
78+
uses: Ortus-Solutions/[email protected]
79+
with:
80+
install: commandbox-boxlang
4581

46-
- name: Install Test Harness Dependencies
47-
working-directory: ./test-harness
82+
- name: Install Test Harness with ColdBox ${{ matrix.coldboxVersion }}
4883
run: |
4984
box install
85+
cd test-harness
86+
box package set dependencies.coldbox=${{ matrix.coldboxVersion }}
87+
box install
5088
5189
- name: Start ${{ matrix.cfengine }} Server
52-
working-directory: ./test-harness
5390
run: |
5491
echo "matrix.cfengine=${{ matrix.cfengine }}" > ./.env
5592
box server start serverConfigFile="server-${{ matrix.cfengine }}.json" --noSaveSettings --debug
56-
# Install Adobe 2021 cfpm modules
57-
if [[ "${{ matrix.cfengine }}" == "adobe@2021" ]] ; then
58-
box run-script install:2021
59-
fi
6093
curl http://127.0.0.1:60299
6194
6295
- name: Run Tests
@@ -81,22 +114,21 @@ jobs:
81114
82115
format:
83116
name: Format
84-
runs-on: ubuntu-24.04
117+
runs-on: ubuntu-latest
85118
steps:
86119
- name: Checkout Repository
87-
uses: actions/checkout@v2
120+
uses: actions/checkout@v5
88121

89122
- name: Setup Java
90-
uses: actions/setup-java@v2
123+
uses: actions/setup-java@v5
91124
with:
92-
distribution: "adopt"
125+
distribution: "temurin"
93126
java-version: "11"
94127

95-
- name: Set Up CommandBox
96-
uses: elpete/[email protected]
97-
98-
- name: Install CFFormat
99-
run: box install commandbox-cfformat
128+
- name: Setup CommandBox CLI
129+
uses: Ortus-Solutions/[email protected]
130+
with:
131+
install: commandbox-cfformat
100132

101133
- name: Run CFFormat
102134
run: box run-script format

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
.artifacts/**
44
.tmp/**
5+
modules/
56

67
test-harness/.engine/**
78
test-harness/.env
@@ -11,6 +12,7 @@ test-harness/testbox/**
1112
test-harness/logs/**
1213
test-harness/modules/**
1314
test-harness/tests/resources/petstore/test.yaml
15+
.engine/**
1416

1517
# log files
1618
logs/**

ModuleConfig.cfc

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,21 @@
66
component {
77

88
// Module Properties
9-
this.title = "ColdBox Swagger SDK";
10-
this.author = "Ortus Solutions";
11-
this.webURL = "https://www.ortussolutions.com";
12-
this.description = "Swagger SDK Module";
13-
this.version = "@build.version@[email protected]@";
14-
this.viewParentLookup = true;
9+
this.title = "ColdBox Swagger SDK";
10+
this.author = "Ortus Solutions";
11+
this.webURL = "https://www.ortussolutions.com";
12+
this.description = "Swagger SDK Module";
13+
this.version = "@build.version@[email protected]@";
14+
this.viewParentLookup = true;
1515
this.layoutParentLookup = true;
1616
// Model Namespace
17-
this.modelNamespace = "SwaggerSDK";
17+
this.modelNamespace = "SwaggerSDK";
1818
// CF Mapping
19-
this.cfmapping = "SwaggerSDK";
19+
this.cfmapping = "SwaggerSDK";
2020
// Auto-map models
21-
this.autoMapModels = false;
21+
this.autoMapModels = false;
2222
// Module Dependencies That Must Be Loaded First, use internal names or aliases
23-
this.dependencies = [ "cbjavaloader" ];
23+
this.dependencies = [ "cbjavaloader" ];
2424

2525
/**
2626
* Configure App
@@ -33,14 +33,13 @@ component {
3333
*/
3434
function onLoad(){
3535
// load jars
36-
wirebox.getInstance( "loader@cbjavaloader" )
37-
.appendPaths( variables.modulePath & "/lib" );
36+
wirebox.getInstance( "loader@cbjavaloader" ).appendPaths( variables.modulePath & "/lib" );
3837

3938

4039
/**
41-
* Utilities
42-
*
43-
*/
40+
* Utilities
41+
*
42+
*/
4443

4544
// Open API Util
4645
binder
@@ -51,9 +50,9 @@ component {
5150

5251

5352
/**
54-
* Manual Instantiation Instances
55-
*
56-
*/
53+
* Manual Instantiation Instances
54+
*
55+
*/
5756

5857
// models.OpenAPI.Document
5958
binder

box.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@
3232
"*/.md"
3333
],
3434
"scripts":{
35-
"toMaster":"recipe build/toMaster.boxr"
35+
"toMaster":"recipe build/toMaster.boxr",
36+
"format":"cfformat run models,test-harness/tests/resources/BaseOpenAPISpec.cfc,test-harness/tests/specs,ModuleConfig.cfc --overwrite",
37+
"format:watch":"cfformat watch models,test-harness/tests/resources/BaseOpenAPISpec.cfc,test-harness/tests/specs,ModuleConfig.cfc ./.cfformat.json",
38+
"format:check":"cfformat check models,test-harness/tests/resources/BaseOpenAPISpec.cfc,test-harness/tests/specs,ModuleConfig.cfc ./.cfformat.json",
39+
},
40+
"installPaths":{
41+
"cbjavaloader":"modules/cbjavaloader/"
3642
}
3743
}

0 commit comments

Comments
 (0)