Skip to content

Commit 2965306

Browse files
committed
boxlang certs
1 parent 0c8d3f5 commit 2965306

13 files changed

+136
-103
lines changed

.github/workflows/cron.yml

+21-22
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,26 @@
1-
name: Weekly Test Engines
1+
name: Daily Tests
22

33
on:
4-
schedule:
5-
- cron: '0 8 * * 4'
4+
schedule:
5+
- cron: '0 0 * * *' # Runs at 00:00 UTC every day
66

77
jobs:
8-
tests:
9-
10-
uses: ./.github/workflows/tests.yml
11-
secrets: inherit
8+
tests:
9+
uses: ./.github/workflows/tests.yml
10+
secrets: inherit
1211

13-
notify:
14-
needs: [ tests ]
15-
runs-on: ubuntu-24.04
16-
if: ${{ always() }}
17-
steps:
18-
- name: Slack Notifications
19-
uses: rtCamp/action-slack-notify@v2
20-
env:
21-
SLACK_CHANNEL: boxlang-cron
22-
SLACK_COLOR: ${{ job.status }} # or a specific color like 'green' or '#ff00ff'
23-
SLACK_ICON_EMOJI: ":bell:"
24-
SLACK_MESSAGE: '${{ github.repository }} weekly tests'
25-
SLACK_TITLE: ${{ github.repository }} Tests results
26-
SLACK_USERNAME: CI
27-
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
12+
notify:
13+
needs: [ tests ]
14+
runs-on: ubuntu-24.04
15+
if: ${{ always() }}
16+
steps:
17+
- name: Slack Notifications
18+
uses: rtCamp/action-slack-notify@v2
19+
env:
20+
SLACK_CHANNEL: boxlang-cron
21+
SLACK_COLOR: ${{ job.status }} # or a specific color like 'green' or '#ff00ff'
22+
SLACK_ICON_EMOJI: ":bell:"
23+
SLACK_MESSAGE: '${{ github.repository }} weekly tests'
24+
SLACK_TITLE: ${{ github.repository }} Tests results
25+
SLACK_USERNAME: CI
26+
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}

.github/workflows/pr.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,17 @@ on:
66
- "main"
77
- "master"
88
- "development"
9-
- "releases/v*"
109
pull_request:
1110
branches:
12-
- "releases/v*"
1311
- development
1412

1513
jobs:
1614
tests:
1715
uses: ./.github/workflows/tests.yml
1816
secrets: inherit
1917

20-
formatCheck:
18+
# Format PR
19+
format_check:
2120
name: Checks Source Code Formatting
2221
runs-on: ubuntu-24.04
2322
steps:

.github/workflows/release.yml

+39-7
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,13 @@ on:
1616
default: false
1717
type: boolean
1818

19+
# Manual Trigger
20+
workflow_dispatch:
1921
env:
20-
MODULE_ID: cbsecurity
22+
MODULE_ID: ${{ github.event.repository.name }}
23+
JDK: 21
2124
SNAPSHOT: ${{ inputs.snapshot || false }}
25+
BUILD_ID: ${{ github.run_number }}
2226

2327
jobs:
2428
##########################################################################################
@@ -27,6 +31,11 @@ jobs:
2731
build:
2832
name: Build & Publish
2933
runs-on: ubuntu-24.04
34+
permissions:
35+
checks: write
36+
pull-requests: write
37+
contents: write
38+
issues: write
3039
steps:
3140
- name: Checkout Repository
3241
uses: actions/checkout@v4
@@ -36,6 +45,12 @@ jobs:
3645
with:
3746
forgeboxAPIKey: ${{ secrets.FORGEBOX_TOKEN }}
3847

48+
- name: Setup Java
49+
uses: actions/setup-java@v4
50+
with:
51+
distribution: "temurin"
52+
java-version: ${{ env.JDK }}
53+
3954
- name: "Setup Environment Variables For Build Process"
4055
id: current_version
4156
run: |
@@ -50,7 +65,7 @@ jobs:
5065
fi
5166
5267
- name: Update changelog [unreleased] with latest version
53-
uses: thomaseizinger/keep-a-changelog-new-release@1.3.0
68+
uses: thomaseizinger/keep-a-changelog-new-release@3.1.0
5469
if: env.SNAPSHOT == 'false'
5570
with:
5671
changelogPath: ./changelog.md
@@ -61,10 +76,10 @@ jobs:
6176
npm install -g markdownlint-cli
6277
markdownlint changelog.md --fix
6378
box install commandbox-docbox
64-
box task run taskfile=build/Build target=run :version=${{ env.VERSION }} :projectName=${{ env.MODULE_ID }} :buildID=${{ github.run_number }} :branch=${{ env.BRANCH }}
79+
box task run taskfile=build/Build target=run :version=${{ env.VERSION }} :projectName=${{ env.MODULE_ID }} :buildID=${{ env.BUILD_ID }} :branch=${{ env.BRANCH }}
6580
66-
- name: Commit Changelog To Master
67-
uses: EndBug/[email protected].3
81+
- name: Commit Changelog [unreleased] with latest version
82+
uses: EndBug/[email protected].4
6883
if: env.SNAPSHOT == 'false'
6984
with:
7085
author_name: Github Actions
@@ -118,7 +133,7 @@ jobs:
118133
box forgebox publish --force
119134
120135
- name: Create Github Release
121-
uses: taiki-e/[email protected].0
136+
uses: taiki-e/[email protected].2
122137
continue-on-error: true
123138
if: env.SNAPSHOT == 'false'
124139
with:
@@ -127,6 +142,18 @@ jobs:
127142
token: ${{ secrets.GITHUB_TOKEN }}
128143
ref: refs/tags/v${{ env.VERSION }}
129144

145+
- name: Inform Slack
146+
if: ${{ always() }}
147+
uses: rtCamp/action-slack-notify@v2
148+
env:
149+
SLACK_CHANNEL: coding
150+
SLACK_COLOR: ${{ job.status }} # or a specific color like 'green' or '#ff00ff'
151+
SLACK_ICON_EMOJI: ":bell:"
152+
SLACK_MESSAGE: "Module ${{ env.MODULE_ID }} v${{ env.VERSION }} Built with ${{ job.status }}!"
153+
SLACK_TITLE: "ColdBox Module ${{ env.MODULE_ID }}"
154+
SLACK_USERNAME: CI
155+
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK_URL }}
156+
130157
##########################################################################################
131158
# Prep Next Release
132159
##########################################################################################
@@ -135,6 +162,11 @@ jobs:
135162
if: github.ref == 'refs/heads/master' || github.ref == 'refs/heads/main'
136163
runs-on: ubuntu-24.04
137164
needs: [ build ]
165+
permissions:
166+
checks: write
167+
pull-requests: write
168+
contents: write
169+
issues: write
138170
steps:
139171
# Checkout development
140172
- name: Checkout Repository
@@ -165,7 +197,7 @@ jobs:
165197
166198
# Commit it back to development
167199
- name: Commit Version Bump
168-
uses: EndBug/[email protected].3
200+
uses: EndBug/[email protected].4
169201
with:
170202
author_name: Github Actions
171203
author_email: [email protected]

.github/workflows/snapshot.yml

+15-1
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,14 @@ on:
44
push:
55
branches:
66
- 'development'
7+
78
workflow_dispatch:
89

10+
# Unique group name per workflow-branch/tag combo
11+
concurrency:
12+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
13+
cancel-in-progress: true
14+
915
jobs:
1016
##########################################################################################
1117
# Module Tests
@@ -20,6 +26,9 @@ jobs:
2026
format:
2127
name: Code Auto-Formatting
2228
runs-on: ubuntu-24.04
29+
permissions:
30+
contents: write
31+
checks: write
2332
steps:
2433
- uses: actions/checkout@v4
2534

@@ -29,7 +38,7 @@ jobs:
2938
cmd: run-script format
3039

3140
- name: Commit Format Changes
32-
uses: stefanzweifel/git-auto-commit-action@v4
41+
uses: stefanzweifel/git-auto-commit-action@v5
3342
with:
3443
commit_message: Apply cfformat changes
3544

@@ -40,5 +49,10 @@ jobs:
4049
uses: ./.github/workflows/release.yml
4150
needs: [ tests, format ]
4251
secrets: inherit
52+
permissions:
53+
checks: write
54+
pull-requests: write
55+
contents: write
56+
issues: write
4357
with:
4458
snapshot: true

.github/workflows/tests.yml

+12-19
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,16 @@ jobs:
1818
strategy:
1919
fail-fast: false
2020
matrix:
21-
cfengine: [ "lucee@5", "adobe@2018", "adobe@2021", "adobe@2023" ]
22-
coldboxVersion: [ "^6.0.0", "^7.0.0" ]
21+
cfengine: [ "boxlang-cfml@1", "lucee@5", "lucee@6", "adobe@2021", "adobe@2023" ]
22+
coldboxVersion: [ "^7.0.0" ]
2323
experimental: [ false ]
24-
# Here we tests all engines against ColdBox@BE
24+
# Experimental: ColdBox BE vs All Engines
2525
include:
2626
- coldboxVersion: "be"
2727
cfengine: "lucee@5"
2828
experimental: true
2929
- coldboxVersion: "be"
30-
cfengine: "adobe@2018"
30+
cfengine: "lucee@6"
3131
experimental: true
3232
- coldboxVersion: "be"
3333
cfengine: "adobe@2021"
@@ -36,26 +36,24 @@ jobs:
3636
cfengine: "adobe@2023"
3737
experimental: true
3838
- coldboxVersion: "be"
39-
cfengine: "boxlang@1"
39+
cfengine: "boxlang-cfml@1"
4040
experimental: true
4141
steps:
4242
- name: Checkout Repository
4343
uses: actions/checkout@v4
4444

45+
# DATABASE SETUP: uncomment if you need to setup a database
46+
# - name: Setup Database and Fixtures
47+
# run: |
48+
# sudo systemctl start mysql.service
49+
# mysql -u${{ env.DB_USER }} -p${{ env.DB_PASSWORD }} -e 'CREATE DATABASE mementifier;'
50+
# mysql -u${{ env.DB_USER }} -p${{ env.DB_PASSWORD }} < test-harness/tests/resources/coolblog.sql
4551

4652
- name: Setup Java
4753
uses: actions/setup-java@v4
4854
with:
4955
distribution: "temurin"
50-
java-version: "11"
51-
52-
- name: Setup Database and Fixtures
53-
run: |
54-
sudo systemctl start mysql.service
55-
# Create Database
56-
mysql -u${{ env.DB_USER }} -p${{ env.DB_PASSWORD }} -e 'CREATE DATABASE cbsecurity;'
57-
# Import Database
58-
mysql -u${{ env.DB_USER }} -p${{ env.DB_PASSWORD }} < test-harness/tests/resources/cbsecurity.sql
56+
java-version: "21"
5957

6058
- name: Setup Environment For Testing Process
6159
run: |
@@ -73,11 +71,6 @@ jobs:
7371
- name: Setup CommandBox CLI
7472
uses: Ortus-Solutions/[email protected]
7573

76-
- name: Update Commandbox Boxlang Module
77-
if: ${{ matrix.cfengine == 'boxlang@1' }}
78-
run:
79-
box install --force commandbox-boxlang
80-
8174
- name: Install Dependencies
8275
run: |
8376
box install

.markdownlint.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
"no-multiple-blanks": {
99
"maximum": 2
1010
},
11-
"no-duplicate-heading" : false,
1211
"no-duplicate-header" : {
1312
"siblings_only" : true
1413
},
14+
"no-duplicate-heading" : false,
1515
"no-inline-html" : false
1616
}

box.json

+2-9
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,9 @@
2828
"cbcsrf":"^3.0.0"
2929
},
3030
"devDependencies":{
31+
"commandbox-boxlang":"*",
3132
"commandbox-cfformat":"*",
32-
"commandbox-docbox":"*",
33-
"commandbox-dotenv":"*",
34-
"commandbox-cfconfig":"*"
33+
"commandbox-docbox":"*"
3534
},
3635
"ignore":[
3736
"**/.*",
@@ -50,16 +49,10 @@
5049
"format:check":"cfformat check handlers/,interceptors/,models/,test-harness/tests/specs,ModuleConfig.cfc",
5150
"install:dependencies":"install && cd test-harness && install",
5251
"start:lucee":"server start [email protected]",
53-
"start:2018":"server start [email protected]",
54-
"start:2021":"server start [email protected]",
5552
"start:2023":"server start [email protected]",
5653
"stop:lucee":"server stop [email protected]",
57-
"stop:2018":"server stop [email protected]",
58-
"stop:2021":"server stop [email protected]",
5954
"stop:2023":"server stop [email protected]",
6055
"logs:lucee":"server log [email protected] --follow",
61-
"logs:2018":"server log [email protected] --follow",
62-
"logs:2021":"server log [email protected] --follow",
6356
"logs:2023":"server log [email protected] --follow"
6457
},
6558
"installPaths":{

changelog.md

+5
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
## [Unreleased]
1111

12+
### Added
13+
14+
- BoxLang certification
15+
- Github Actions updates
16+
1217
## [3.4.3] - 2024-05-09
1318

1419
## [3.4.2] - 2024-01-10

[email protected]

+2-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@
1717
}
1818
},
1919
"jvm":{
20-
"heapSize":"1024"
20+
"heapSize":"1024",
21+
"javaVersion":"openjdk11_jre"
2122
},
2223
"openBrowser":"false",
2324
"cfconfig":{

[email protected]

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"name":"cbsecurity-boxlang@1",
3+
"app":{
4+
"serverHomeDirectory":".engine/boxlang",
5+
"cfengine":"boxlang@be"
6+
},
7+
"web":{
8+
"http":{
9+
"port":"60299"
10+
},
11+
"rewrites":{
12+
"enable":"true"
13+
},
14+
"webroot": "test-harness",
15+
"aliases":{
16+
"/moduleroot/cbsecurity":"../"
17+
}
18+
},
19+
"JVM":{
20+
"heapSize":"1024",
21+
"javaVersion":"openjdk21_jre",
22+
"args":"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8888"
23+
},
24+
"openBrowser":"false",
25+
"cfconfig":{
26+
"file":".cfconfig.json"
27+
},
28+
"env":{
29+
},
30+
"scripts":{
31+
"onServerInitialInstall":"install bx-compat-cfml,bx-esapi,bx-mysql --noSave"
32+
}
33+
}

0 commit comments

Comments
 (0)