forked from Ortus-Solutions/TestBox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
108 lines (96 loc) · 3.73 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
language: java
notifications:
slack:
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=
env:
matrix:
- ENGINE=lucee@5
- ENGINE=adobe@2016
- ENGINE=adobe@2018
- ENGINE=adobe@2021
branches:
only:
- development
- master
sudo: required
dist: focal
before_install:
# CommandBox Keys
- curl -fsSl https://downloads.ortussolutions.com/debs/gpg | sudo apt-key add -
- sudo echo "deb https://downloads.ortussolutions.com/debs/noarch /" | sudo tee -a
/etc/apt/sources.list.d/commandbox.list
install:
# Install Commandbox
- sudo apt-get update && sudo apt-get --assume-yes install jq commandbox ant-optional
# Install env dependencies
- box install commandbox-docbox,commandbox-cfformat
# If using auto-publish, you will need to provide your API token with this line:
- box config set endpoints.forgebox.APIToken=$FORGEBOX_API_TOKEN > /dev/null
script:
# Set Current Version
- TARGET_VERSION=`cat $TRAVIS_BUILD_DIR/box.json | jq '.version' -r`
- TRAVIS_TAG=${TARGET_VERSION}
- echo "Starting build TestBox v${TARGET_VERSION}"
# Replace version so builder can issue it
- box package set [email protected]@[email protected]@
# Install TestBox deps
- box install --production
# Execute build via ANT
- ant -DisTravis=true -Dversion=$TARGET_VERSION -Dcfengine=$ENGINE -Dbuild.number=$TRAVIS_BUILD_NUMBER -Dbuild.branch=$TRAVIS_BRANCH -f build/build.xml
after_failure:
- cd $TRAVIS_BUILD_DIR
# Get response from test server to see what went wrong
- curl http://localhost:49616/tests/runner.cfm?reporter=text
# Display the contents of our root directory
# Spit out our Commandbox log in case we need to debug
- box server log name=server-${ENGINE}.json
- cat `box system-log`
deploy:
# Binary Deployments
- provider: s3
on:
branch:
- master
- development
condition: "$ENGINE = lucee@5"
skip_cleanup: true
#AWS Credentials need to be set in Travis
access_key_id: $AWS_ACCESS_KEY
secret_access_key: $AWS_ACCESS_SECRET
bucket: "downloads.ortussolutions.com"
local-dir: $TRAVIS_BUILD_DIR/artifacts/testbox
upload-dir: ortussolutions/testbox
acl: public_read
#API Docs Deployment
- provider: s3
on:
branch:
- master
- development
condition: "$ENGINE = lucee@5"
skip_cleanup: true
#AWS Credentials need to be set in Travis
access_key_id: $AWS_ACCESS_KEY
secret_access_key: $AWS_ACCESS_SECRET
bucket: "apidocs.ortussolutions.com"
local-dir: $TRAVIS_BUILD_DIR/build-testbox/testbox/apidocs
upload-dir: testbox/$TARGET_VERSION
acl: public_read
# Github Release only on Master
- provider: releases
api_key: ${GITHUB_TOKEN}
on:
branch:
- master
condition: "$ENGINE = lucee@5"
skip_cleanup: true
edge: true
file_glob: true
file: $TRAVIS_BUILD_DIR/artifacts/testbox/**/*
release_notes_file: $TRAVIS_BUILD_DIR/changelog.md
name: v${TRAVIS_TAG}
tag_name: v${TRAVIS_TAG}
overwrite: true
after_deploy:
- cd $TRAVIS_BUILD_DIR/build-testbox/testbox
- if [ ${ENGINE} = 'lucee@5' ]; then box forgebox publish; fi