forked from coldbox-modules/cbmailservices
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
101 lines (88 loc) · 3.35 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
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:
global:
- MODULE_ID=cbmailservices
matrix:
- ENGINE=lucee@5
- ENGINE=adobe@10
- ENGINE=adobe@11
- ENGINE=adobe@2016
branches:
only:
- development
- master
dist: trusty
sudo: required
before_install:
# CommandBox Keys
- sudo apt-key adv --keyserver keys.gnupg.net --recv 6DA70622
- sudo echo "deb http://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 rsync jq commandbox
# Test that the box binary is available and ready for our tests
- box version
# 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
# Setup for our tests
- mkdir tests/results
- sudo chmod -R 775 tests/results
# Build script - note module versioning is passed to ANT
script:
# run our dependency install to ensure the workbench is in place
- box install
# add our module-specific build properties
- printf "\nmodule.name=$MODULE_ID" >> workbench/build.properties
- printf "\ncfengine=$ENGINE" >> workbench/build.properties
# execute our build
- ant -DisTravis=true -Dbuild.number=$TRAVIS_BUILD_NUMBER -Dbuild.branch=$TRAVIS_BRANCH -f workbench/build.xml
after_failure:
- cd $TRAVIS_BUILD_DIR
# Display the contents of our root directory
# Spit out our Commandbox log in case we need to debug
- box server log name=$ENGINE
- cat `box system-log`
# Only executed when merging to master
before_deploy:
- cd $TRAVIS_BUILD_DIR
- mkdir -p s3deploy
- rsync -av ./artifacts/$MODULE_ID/ ./s3deploy/
- rm -f ./s3deploy/box-repo.json
deploy:
#Module Deployment
- provider: s3
on:
branch:
- master
- development
condition: "$ENGINE = [email protected]"
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: s3deploy
upload-dir: ortussolutions/coldbox-modules/$MODULE_ID
acl: public_read
#API Docs Deployment
- provider: s3
on:
branch:
- master
- development
condition: "$ENGINE = [email protected]"
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: build/apidocs
upload-dir: coldbox-modules/$MODULE_ID
acl: public_read
after_deploy:
- cd $TRAVIS_BUILD_DIR/build && box forgebox publish