1
- sudo : required # GCE VMs have better performance (will be upgrading to premium VMs soon)
1
+ # GCE VMs have better performance (will be upgrading to premium VMs soon)
2
+ sudo : required
2
3
3
4
language : scala
4
5
jdk : openjdk8
5
6
6
-
7
7
cache :
8
8
directories :
9
9
- $HOME/.ivy2/cache
10
10
- $HOME/.sbt
11
- - build/
12
-
13
-
14
- before_script :
15
- - ' if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then (cd admin && ./init.sh); fi'
16
11
17
12
stages :
18
- - name : build # also builds the spec using jekyll
19
- # tests are running into time limits (will re-enable once Jason's partest speedups are in)
20
- - name : test
21
- if : env(bla) = thisVarIsNotSet AND type != pull_request # just disabling tests for now, but commenting the stage here doesn't do the trick
22
- - name : publish
23
- if : type != pull_request
13
+ - name : build
24
14
25
- # see comment in `bootstrap_fun` for details on the procedure
26
- # env available in each stage
27
- # - by travis config (see below): secret env vars
28
- # - by `common` script: WORKSPACE, IVY2_DIR, SBT_CMD, integrationRepoUrl
29
- # - by `bootstrap_fun`: publishPrivateTask, ...
30
- # env computed in first stage, passed on to later stages with the `build/env` file
31
- # - by `determineScalaVersion`: SCALA_VER, publishToSonatype
32
- # - by `buildModules` / `constructUpdatedModuleVersions`: updatedModuleVersions
33
15
jobs :
34
16
include :
17
+
18
+ # full bootstrap and publish
35
19
- stage : build
36
- # currently, not touching PR validation
37
- # (also, we couldn't even, because the password to publish to artifactory is not there :-/)
38
20
if : type != pull_request
39
21
script :
22
+ # see comment in `bootstrap_fun` for details on the procedure
23
+ # env available in each stage
24
+ # - by travis config (see below): secret env vars
25
+ # - by `common` script: WORKSPACE, IVY2_DIR, SBT_CMD, integrationRepoUrl
26
+ # - by `bootstrap_fun`: publishPrivateTask, ...
27
+ - (cd admin && ./init.sh)
40
28
- source scripts/common
41
29
- source scripts/bootstrap_fun
42
30
- determineScalaVersion
@@ -45,38 +33,26 @@ jobs:
45
33
- if [ ! -z "$STARR_REF" ]; then buildStarr; fi
46
34
- buildLocker
47
35
- buildQuick
48
- - set | grep -E '^SCALA_VER=|^SCALA_BINARY_VER=|^XML_VER=|^PARTEST_VER=|^SCALACHECK_VER=|^XML_BUILT=|^PARTEST_BUILT=|^SCALACHECK_BUILT=|^updatedModuleVersions=|^publishToSonatype=' > build/env
49
- - cat build/env
50
36
- triggerScalaDist
51
37
52
- # this builds the spec using jekyll
53
- # based on http://www.paperplanes.de/2013/8/13/deploying-your-jekyll-blog-to-s3-with-travis-ci.html
38
+ # pull request validation (w/ mini-bootstrap)
39
+ - stage : build
40
+ if : type = pull_request
41
+ script :
42
+ - sbt -warn setupPublishCore generateBuildCharacterPropertiesFile publishLocal
43
+ - STARR=`cat buildcharacter.properties | grep ^maven.version.number | cut -d= -f2` && echo $STARR
44
+ - sbt -Dstarr.version=$STARR -warn setupValidateTest test:compile info testAll
45
+
46
+ # build the spec using jekyll
54
47
- stage : build
55
- script : bundle exec jekyll build -s spec/ -d build/spec
56
48
rvm : 2.2
57
49
install : bundle install
58
- # the key is restricted using forced commands so that it can only upload to the directory we need here
59
- after_success : ./scripts/travis-publish-spec.sh
60
-
61
- # be careful to not set any env vars, as this will result in a cache miss
62
- - &test
63
- stage : test
64
- before_script :
65
- - source build/env
66
- - if [ -z "$SCALA_VER" ]; then echo "Environment not propagated. Caching issue?"; cat build/env ; exit 1; fi
67
- - source scripts/common
68
- - source scripts/bootstrap_fun
69
- # - find build -type f -exec touch {} + # "set antStyle := true" seems to cause really long compiles for the test suite??
70
- script : invokeQuick testRest # shouldn't rebuild, since build/ is cached
71
- - << : *test
72
- script : invokeQuick testPosPres
73
- - << : *test
74
- script : invokeQuick testRun
75
- - script : testStability
50
+ script :
51
+ - ' if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then (cd admin && ./init.sh); fi'
52
+ - bundle exec jekyll build -s spec/ -d build/spec
53
+ after_success :
54
+ - ' if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then ./scripts/travis-publish-spec.sh; fi'
76
55
77
- # cat /dev/urandom | head -c 10000 | openssl sha1 > ./secret
78
- # openssl aes-256-cbc -pass "file:./secret" -in id_dsa_spec212_b4096 -out spec/id_dsa_travis.enc -a
79
- # travis encrypt "PRIV_KEY_SECRET=`cat ./secret`"
80
56
env :
81
57
global :
82
58
- secure : " TuJOUtALynPd+MV1AuMeIpVb8BUBHr7Ul7FS48XhS2PyuTRpEBkSWybYcNg3AXyzmWDAuOjUxbaNMQBvP8vvehTbIYls5H5wTGKvj0D0TNVaPIXjF8bA8KyNat9xGNzhnWm2/2BMaWpKBJWRF7Jb+zHhijMYCJEbkMtoiE5R/mY=" # PRIV_KEY_SECRET, for scripts/travis-publish-spec.sh
86
62
- secure : " dbAvl6KEuLwZ0MVQPZihFsPzCdiLbX0EFk3so+hcfEbksrmLQ1tn4X5ZM7Wy1UDR8uN9lxngEwHch7a7lKqpugzmXMew9Wnikr9WBWbJT77Z+XJ/jHI6YuiCRpRo+nvxXGp9Ry80tSIgx5eju0J83IaJL41BWlBkvyAd7YAHORI=" # GPG_SUBKEY_SECRET
87
63
- secure : " ee0z/1jehBjFa2M2JlBHRjeo6OEn/zmVl72ukBP1ISeKqz18Cswc4gDI5tV9RW9SlYFLkIlGsR2qnRCyJ/pqgQLcNdrpsCRFFc79oyLhfEtmPdAHlWfj4RSP68zINRtDdFuJ8iSy8XYP0NaqpVIYpkNdv9I6q7N85ljmMQpHO+U=" # TRAVIS_TOKEN (login with GitHub as lrytz)
88
64
89
-
90
- # using S3 would be simpler, but we want to upload to scala-lang.org
91
- # after_success: bundle exec s3_website push --headless
92
-
93
65
before_cache :
94
66
# Cleanup the cached directories to avoid unnecessary cache updates
95
67
- find $HOME/.ivy2/cache -name "ivydata-*.properties" -print -delete
0 commit comments