Skip to content

Commit 36a8737

Browse files
committed
### Added
* New module template support * ColdBox 5-6 Support * Modern Formatting ### Removed * Lucee 4.5 Support * ACF11 Support
1 parent f117687 commit 36a8737

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+2761
-1992
lines changed

.cfformat.json

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
{
2+
"array.empty_padding": false,
3+
"array.padding": true,
4+
"array.multiline.min_length": 40,
5+
"array.multiline.element_count": 2,
6+
"array.multiline.leading_comma.padding": true,
7+
"array.multiline.leading_comma": false,
8+
"alignment.consecutive.assignments": true,
9+
"alignment.consecutive.properties": true,
10+
"alignment.consecutive.params": true,
11+
"brackets.padding": true,
12+
"comment.asterisks": "align",
13+
"binary_operators.padding": true,
14+
"for_loop_semicolons.padding": true,
15+
"function_call.empty_padding": false,
16+
"function_call.padding": true,
17+
"function_call.multiline.leading_comma.padding": true,
18+
"function_call.casing.builtin": "cfdocs",
19+
"function_call.casing.userdefined": "camel",
20+
"function_call.multiline.element_count": 3,
21+
"function_call.multiline.leading_comma": false,
22+
"function_call.multiline.min_length": 40,
23+
"function_declaration.padding": true,
24+
"function_declaration.empty_padding": false,
25+
"function_declaration.multiline.leading_comma": false,
26+
"function_declaration.multiline.leading_comma.padding": true,
27+
"function_declaration.multiline.element_count": 3,
28+
"function_declaration.multiline.min_length": 40,
29+
"function_declaration.group_to_block_spacing": "spaced",
30+
"function_anonymous.empty_padding": false,
31+
"function_anonymous.group_to_block_spacing": "spaced",
32+
"function_anonymous.multiline.element_count": 3,
33+
"function_anonymous.multiline.leading_comma": false,
34+
"function_anonymous.multiline.leading_comma.padding": true,
35+
"function_anonymous.multiline.min_length": 40,
36+
"function_anonymous.padding": true,
37+
"indent_size": 4,
38+
"keywords.block_to_keyword_spacing": "spaced",
39+
"keywords.group_to_block_spacing": "spaced",
40+
"keywords.padding_inside_group": true,
41+
"keywords.spacing_to_block": "spaced",
42+
"keywords.spacing_to_group": true,
43+
"keywords.empty_group_spacing": false,
44+
"max_columns": 120,
45+
"metadata.multiline.element_count": 3,
46+
"metadata.multiline.min_length": 40,
47+
"newline":"\n",
48+
"property.multiline.element_count": 3,
49+
"property.multiline.min_length": 40,
50+
"parentheses.padding": true,
51+
"strings.quote": "double",
52+
"strings.convertNestedQuotes": false,
53+
"strings.attributes.quote": "double",
54+
"struct.separator": " : ",
55+
"struct.padding": true,
56+
"struct.empty_padding": false,
57+
"struct.multiline.leading_comma": false,
58+
"struct.multiline.leading_comma.padding": true,
59+
"struct.multiline.element_count": 2,
60+
"struct.multiline.min_length": 40,
61+
"tab_indent": true
62+
}

.cflintrc

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
{
2+
"rule": [],
3+
"includes": [
4+
{ "code": "AVOID_USING_CFINCLUDE_TAG" },
5+
{ "code": "AVOID_USING_CFABORT_TAG" },
6+
{ "code": "AVOID_USING_CFEXECUTE_TAG" },
7+
{ "code": "AVOID_USING_DEBUG_ATTR" },
8+
{ "code": "AVOID_USING_ABORT" },
9+
{ "code": "AVOID_USING_ISDATE" },
10+
{ "code": "AVOID_USING_ISDEBUGMODE" },
11+
{ "code": "AVOID_USING_CFINSERT_TAG" },
12+
{ "code": "AVOID_USING_CFUPDATE_TAG" },
13+
{ "code": "ARG_VAR_CONFLICT" },
14+
{ "code": "ARG_HINT_MISSING" },
15+
{ "code": "ARG_HINT_MISSING_SCRIPT" },
16+
{ "code" : "ARGUMENT_INVALID_NAME" },
17+
{ "code" : "ARGUMENT_ALLCAPS_NAME" },
18+
{ "code" : "ARGUMENT_TOO_WORDY" },
19+
{ "code" : "ARGUMENT_IS_TEMPORARY" },
20+
{ "code": "CFQUERYPARAM_REQ" },
21+
{ "code": "COMPARE_INSTEAD_OF_ASSIGN" },
22+
{ "code": "COMPONENT_HINT_MISSING" },
23+
{ "code" : "COMPONENT_INVALID_NAME" },
24+
{ "code" : "COMPONENT_ALLCAPS_NAME" },
25+
{ "code" : "COMPONENT_TOO_SHORT" },
26+
{ "code" : "COMPONENT_TOO_LONG" },
27+
{ "code" : "COMPONENT_TOO_WORDY" },
28+
{ "code" : "COMPONENT_IS_TEMPORARY" },
29+
{ "code" : "COMPONENT_HAS_PREFIX_OR_POSTFIX" },
30+
{ "code": "COMPLEX_BOOLEAN_CHECK" },
31+
{ "code": "EXCESSIVE_FUNCTION_LENGTH" },
32+
{ "code": "EXCESSIVE_COMPONENT_LENGTH" },
33+
{ "code": "EXCESSIVE_ARGUMENTS" },
34+
{ "code": "EXCESSIVE_FUNCTIONS" },
35+
{ "code": "EXPLICIT_BOOLEAN_CHECK" },
36+
{ "code": "FUNCTION_TOO_COMPLEX" },
37+
{ "code": "FUNCTION_HINT_MISSING" },
38+
{ "code": "FILE_SHOULD_START_WITH_LOWERCASE" },
39+
{ "code": "LOCAL_LITERAL_VALUE_USED_TOO_OFTEN" },
40+
{ "code": "GLOBAL_LITERAL_VALUE_USED_TOO_OFTEN" },
41+
{ "code": "MISSING_VAR" },
42+
{ "code" : "METHOD_INVALID_NAME" },
43+
{ "code" : "METHOD_ALLCAPS_NAME" },
44+
{ "code" : "METHOD_IS_TEMPORARY" },
45+
{ "code": "NESTED_CFOUTPUT" },
46+
{ "code": "NEVER_USE_QUERY_IN_CFM" },
47+
{ "code": "OUTPUT_ATTR" },
48+
{ "code" : "QUERYPARAM_REQ" },
49+
{ "code": "UNUSED_LOCAL_VARIABLE" },
50+
{ "code": "UNUSED_METHOD_ARGUMENT" },
51+
{ "code": "SQL_SELECT_STAR" },
52+
{ "code": "SCOPE_ALLCAPS_NAME" },
53+
{ "code": "VAR_ALLCAPS_NAME" },
54+
{ "code": "VAR_INVALID_NAME" },
55+
{ "code": "VAR_TOO_WORDY" }
56+
],
57+
"inheritParent": false,
58+
"parameters": {
59+
"TooManyFunctionsChecker.maximum" : 20
60+
}
61+
}

.editorconfig

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# http://editorconfig.org
2+
3+
root = true
4+
5+
[*]
6+
end_of_line = lf
7+
charset = utf-8
8+
trim_trailing_whitespace = true
9+
insert_final_newline = false
10+
indent_style = tab
11+
indent_size = 4
12+
tab_width = 4
13+
14+
[*.yml]
15+
indent_style = space
16+
indent_size = 2
17+
18+
[*.{md,markdown}]
19+
trim_trailing_whitespace = false
20+
insert_final_newline = false

.gitignore

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,14 @@
1-
# IDE Stuff
2-
.settings
3-
settings.xml
1+
.vscode
42

5-
# Logs
6-
logs/*.log
3+
.artifacts/**
4+
.tmp/**
75

8-
# Test Results
9-
tests/results/*
6+
test-harness/.engine/**
7+
test-harness/coldbox/**
8+
test-harness/docbox/**
9+
test-harness/testbox/**
10+
test-harness/logs/**
11+
test-harness/modules/**
1012

11-
# Dependenncies
12-
coldbox/*
13-
testbox/*
14-
artifacts/*
15-
apidocs/docbox/*
16-
workbench/*
17-
build/*
18-
19-
# Engines
20-
.engine/**
21-
.project
13+
# log files
14+
logs/**

.markdownlintrc.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"line-length": false,
3+
"single-h1": false,
4+
"first-line-h1": false,
5+
"no-multiple-blanks": {
6+
"maximum": 2
7+
}
8+
}

.module.properties

Lines changed: 0 additions & 3 deletions
This file was deleted.

.travis.yml

Lines changed: 59 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ notifications:
55
secure: FIHlTn/YO7Wgumm1uIqmoEsqjQA7fV0AE94Rjc5yKzM3AquQa8HicgDVVk0d2GrKRnl0xt3j4ZJV//VJyIjlCd/QVKuj48R2ChjEY2im3+99HFPafCUI5/S2uyowKU6mJTFonH9v6p41eqxdbiAxJdDGOT0V2Gpt3UBSNuHz8ED9/aIHqv+P7M+VD6Xd2XYwctPniWlaSWx57sWcnG/VkFG45qFQAyha64uxOOe4M3ZmG/n5FfauZ8cBVLiRKEIr+CyNhh1ujfzi7+4uzMlSNL5t/BbZamAQuZzqGzGQ9RVvIlyPgUGNJtDEE/hWS09aagXF5T6EMj00szizErh4J1/x4qZwml5+TcBN31E0QmAhCtZe85sr3tYgic+hEz9XX1yymQzf/C7n4to2yNvq0r4g51xDk8IuP95WEh7zaqLlvFZvBFgxpHZBMYlRvhytjOYDeIFRMcGwHZcXosaG2ejqDwcGq/LC4oeG4sSwmg9sdRrtcmcanrNqrBka86WYO6LntI3JdZ86/1ACEUHzhCCwvrKELc9Ji1xxGAgS7QKH+s2/hnJuiMyv73gOVLKYC+wPMLt+fvOmPLSEl+PJiAIlToBq1KUBg03RSQLfPOLD7OrJ8VvDZsEPwejqlGDyc4wRglS9OTi7SnN5LYHSDNDdGdREegWqq9qDHEYEVLI=
66

77
env:
8+
# Fill out these global variables for build process
89
global:
910
- MODULE_ID=cbjavaloader
1011
matrix:
11-
1212
- ENGINE=lucee@5
13-
- ENGINE=adobe@11
1413
- ENGINE=adobe@2016
14+
- ENGINE=adobe@2018
1515

1616
branches:
1717
only:
@@ -24,75 +24,103 @@ sudo: required
2424

2525
before_install:
2626
# CommandBox Keys
27-
- sudo apt-key adv --keyserver keys.gnupg.net --recv 6DA70622
27+
- curl -fsSl https://downloads.ortussolutions.com/debs/gpg | sudo apt-key add -
2828
- sudo echo "deb http://downloads.ortussolutions.com/debs/noarch /" | sudo tee -a
2929
/etc/apt/sources.list.d/commandbox.list
3030

3131
install:
3232
# Install Commandbox
3333
- sudo apt-get update && sudo apt-get --assume-yes install rsync jq commandbox
34+
# Install CommandBox Supporting Librarires
35+
- box install commandbox-cfconfig,commandbox-dotenv,commandbox-docbox
3436
# If using auto-publish, you will need to provide your API token with this line:
3537
- box config set endpoints.forgebox.APIToken=$FORGEBOX_API_TOKEN > /dev/null
36-
# Setup for our tests
37-
- mkdir tests/results
38-
- sudo chmod -R 775 tests/results
3938

40-
# Build script - note module versioning is passed to ANT
4139
script:
40+
# Set Current Version and Travis Tag
41+
- TARGET_VERSION=`cat $TRAVIS_BUILD_DIR/box.json | jq '.version' -r`
42+
- TRAVIS_TAG=${TARGET_VERSION}
43+
- echo "Starting build for ${MODULE_ID} v${TARGET_VERSION}"
44+
# Replace version so builder can issue it
45+
46+
# Startup the harness
47+
- cd test-harness
4248
# run our dependency install to ensure the workbench is in place
4349
- box install
44-
# add our module-specific build properties
45-
- printf "\nmodule.name=$MODULE_ID" >> workbench/build.properties
46-
- printf "\ncfengine=$ENGINE" >> workbench/build.properties
47-
# execute our build
48-
- ant -DisTravis=true -Dbuild.number=$TRAVIS_BUILD_NUMBER -Dbuild.branch=$TRAVIS_BRANCH -f workbench/build.xml
50+
# run our matrix server
51+
- box server start serverConfigFile="server-${ENGINE}.json"
52+
# Startup the app
53+
- curl http://localhost:60299
54+
# Debugging of tests
55+
#- curl http://localhost:60299/tests/runner.cfm?reporter=json -o testresults.json && cat testresults.json
56+
# move back to build dir to build it
57+
- cd $TRAVIS_BUILD_DIR
58+
# Build Project
59+
- box task run taskfile=build/Build target=run :version=${TARGET_VERSION} :projectName=${MODULE_ID} :buildID=${TRAVIS_BUILD_NUMBER} :branch=${TRAVIS_BRANCH}
60+
# Cat results for debugging
61+
#- cat build/results.json
4962

5063
after_failure:
51-
- cd $TRAVIS_BUILD_DIR
64+
- cd $TRAVIS_BUILD_DIR/test-harness
5265
# Display the contents of our root directory
5366
# Spit out our Commandbox log in case we need to debug
54-
- box server log name=$ENGINE
67+
- box server log server-${ENGINE}.json
5568
- cat `box system-log`
5669

57-
# Only executed when merging to master
58-
before_deploy:
59-
- cd $TRAVIS_BUILD_DIR
60-
- mkdir -p s3deploy
61-
- rsync -av ./artifacts/$MODULE_ID/ ./s3deploy/
62-
- rm -f ./s3deploy/box-repo.json
63-
6470
deploy:
65-
#Module Deployment
71+
# Module Deployment
6672
- provider: s3
6773
on:
68-
branch:
74+
branch:
6975
- master
7076
- development
71-
condition: "$ENGINE = lucee@4.5"
77+
condition: "$ENGINE = lucee@5"
7278
skip_cleanup: true
7379
#AWS Credentials need to be set in Travis
7480
access_key_id: $AWS_ACCESS_KEY
7581
secret_access_key: $AWS_ACCESS_SECRET
82+
# Destination
7683
bucket: "downloads.ortussolutions.com"
77-
local-dir: s3deploy
84+
local-dir: $TRAVIS_BUILD_DIR/.artifacts/$MODULE_ID
7885
upload-dir: ortussolutions/coldbox-modules/$MODULE_ID
7986
acl: public_read
80-
#API Docs Deployment
87+
88+
# API Docs Deployment
8189
- provider: s3
8290
on:
83-
branch:
91+
branch:
8492
- master
8593
- development
86-
condition: "$ENGINE = lucee@4.5"
94+
condition: "$ENGINE = lucee@5"
8795
skip_cleanup: true
8896
#AWS Credentials need to be set in Travis
8997
access_key_id: $AWS_ACCESS_KEY
9098
secret_access_key: $AWS_ACCESS_SECRET
9199
bucket: "apidocs.ortussolutions.com"
92-
local-dir: build/apidocs
93-
upload-dir: coldbox-modules/$MODULE_ID
100+
local-dir: $TRAVIS_BUILD_DIR/.tmp/apidocs
101+
upload-dir: coldbox-modules/$MODULE_ID/$TARGET_VERSION
94102
acl: public_read
95103

104+
# Github Release only on Master
105+
- provider: releases
106+
api_key: ${GITHUB_TOKEN}
107+
on:
108+
branch:
109+
- master
110+
condition: "$ENGINE = lucee@5"
111+
skip_cleanup: true
112+
edge: true
113+
file_glob: true
114+
file: $TRAVIS_BUILD_DIR/.artifacts/$MODULE_ID/**/*
115+
release_notes_file: changelog.md
116+
name: v${TRAVIS_TAG}
117+
tag_name: v${TRAVIS_TAG}
118+
overwrite: true
96119

120+
# Once API Docs and Binaries are deployed to S3 Publish to ForgeBox
97121
after_deploy:
98-
- cd $TRAVIS_BUILD_DIR/build && box forgebox publish
122+
# Move to build out artifact
123+
- cd ${TRAVIS_BUILD_DIR}/.tmp/${MODULE_ID}
124+
- cat box.json
125+
# Only publish once using the lucee matrix
126+
- if [ ${ENGINE} = 'lucee@5' ]; then box forgebox publish; fi

0 commit comments

Comments
 (0)