|
1 | | -language: java |
2 | 1 | dist: trusty |
3 | 2 | os: linux |
4 | | -jdk: |
5 | | -- openjdk7 |
6 | | -- oraclejdk8 |
7 | 3 | branches: |
8 | 4 | except: |
9 | | - - gh-pages |
10 | | -before_cache: |
11 | | -- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock |
12 | | -- rm -fr $HOME/.gradle/caches/*/plugin-resolution/ |
13 | | -cache: |
14 | | - directories: |
15 | | - - "$HOME/.m2" |
16 | | - - "$HOME/.gradle/caches/" |
17 | | - - "$HOME/.gradle/wrapper/" |
18 | | -before_install: |
19 | | -- | |
20 | | - if [ "$TRAVIS_JDK_VERSION" == "openjdk7" ]; then |
21 | | - sudo wget "https://bouncycastle.org/download/bcprov-ext-jdk15on-158.jar" -O "${JAVA_HOME}/jre/lib/ext/bcprov-ext-jdk15on-158.jar" |
22 | | - sudo perl -pi.bak -e 's/^(security\.provider\.)([0-9]+)/$1.($2+1)/ge' /etc/java-7-openjdk/security/java.security |
23 | | - echo "security.provider.1=org.bouncycastle.jce.provider.BouncyCastleProvider" | sudo tee -a /etc/java-7-openjdk/security/java.security |
24 | | - fi |
25 | | -- sudo apt-get update |
26 | | -- sudo apt-get install python |
27 | | -install: |
28 | | -- if [ "${TRAVIS_TAG}" = "${TRAVIS_BRANCH}" ]; then cd appscan; make asoc-tool; cd |
29 | | - ../; fi |
30 | | -- pip install --user bumpversion |
31 | | -before_script: |
32 | | -- if [ "${TRAVIS_TAG}" = "${TRAVIS_BRANCH}" ]; then chmod a+x ./appscan/ASOC.sh; fi |
33 | | -- env |
34 | | -- echo "TRAVIS_TAG = '${TRAVIS_TAG}'" |
35 | | -script: |
36 | | -- '[ "${TRAVIS_PULL_REQUEST}" = "false" ] |
37 | | - && openssl aes-256-cbc -K $encrypted_42d9c68e608d_key -iv $encrypted_42d9c68e608d_iv -in secrets.tar.enc -out secrets.tar -d |
38 | | - && tar xvf secrets.tar |
39 | | - || true' |
40 | | -- if [ "${TRAVIS_TAG}" = "${TRAVIS_BRANCH}" ]; then ./appscan/ASOC.sh; fi |
41 | | -- "./gradlew install -x check" |
42 | | -- "./gradlew checkstyleMain" |
43 | | -- "./gradlew checkstyleTest" |
44 | | -- "./gradlew shadowJar" |
45 | | -- if [ "${TRAVIS_EVENT_TYPE}" == "push" ] && [ "${TRAVIS_BRANCH}" != "master" ] && [ "${TRAVIS_TAG}" != "${TRAVIS_BRANCH}" ]; then ./gradlew codeCoverageReport --continue; fi |
46 | | -- "./gradlew docs > /dev/null" |
47 | | -after_success: |
48 | | -- bash <(curl -s https://codecov.io/bash) |
49 | | -before_deploy: |
50 | | -- nvm install 12 |
51 | | -- npm install @semantic-release/changelog |
52 | | -- npm install @semantic-release/exec |
53 | | -- npm install @semantic-release/git |
54 | | -deploy: |
55 | | -- provider: script |
56 | | - skip_cleanup: true |
57 | | - script: npx semantic-release |
58 | | - on: |
59 | | - branch: master |
60 | | - jdk: openjdk7 |
61 | | -- provider: script |
62 | | - script: ".utility/push-javadoc-to-gh-pages.sh" |
63 | | - skip_cleanup: true |
64 | | - on: |
65 | | - repo: watson-developer-cloud/java-sdk |
66 | | - jdk: openjdk7 |
67 | | - tags: true |
68 | | -- provider: script |
69 | | - skip_cleanup: true |
70 | | - script: ".utility/deploy-travis-wrapper.sh" |
71 | | - on: |
72 | | - tags: true |
73 | | - jdk: openjdk7 |
| 5 | + - gh-pages |
| 6 | +stages: |
| 7 | + - Build and test |
| 8 | + - Semantic release |
| 9 | + - Publish javadoc |
| 10 | + - Release to bintray |
| 11 | + |
| 12 | +jobs: |
| 13 | + include: |
| 14 | + - stage: Build and test |
| 15 | + jdk: oraclejdk8 |
| 16 | + language: java |
| 17 | + before_install: |
| 18 | + - .utility/decrypt-service-instance-apikeys.sh |
| 19 | + script: |
| 20 | + - ./gradlew checkstyleMain |
| 21 | + - ./gradlew checkstyleTest |
| 22 | + - travis_retry .utility/travis-run-tests.sh |
| 23 | + after_success: |
| 24 | + - bash <(curl -s https://codecov.io/bash) |
| 25 | + - jdk: openjdk7 |
| 26 | + language: java |
| 27 | + before_install: |
| 28 | + - .utility/patch-openjdk7.sh |
| 29 | + - .utility/decrypt-service-instance-apikeys.sh |
| 30 | + script: |
| 31 | + - ./gradlew checkstyleMain |
| 32 | + - ./gradlew checkstyleTest |
| 33 | + - travis_retry .utility/travis-run-tests.sh |
| 34 | + after_success: |
| 35 | + - bash <(curl -s https://codecov.io/bash) |
| 36 | + |
| 37 | + - stage: Semantic release |
| 38 | + jdk: openjdk7 |
| 39 | + language: java |
| 40 | + if: branch = master AND type = push AND fork = false |
| 41 | + before_install: |
| 42 | + - pip install --user bumpversion |
| 43 | + - nvm install 12 |
| 44 | + - npm install @semantic-release/changelog |
| 45 | + - npm install @semantic-release/exec |
| 46 | + - npm install @semantic-release/git |
| 47 | + script: |
| 48 | + - ./gradlew shadowJar |
| 49 | + - npx semantic-release |
| 50 | + |
| 51 | + - stage: Publish javadoc |
| 52 | + jdk: openjdk7 |
| 53 | + language: java |
| 54 | + if: type = push AND fork = false |
| 55 | + script: |
| 56 | + - ./gradlew docs |
| 57 | + - .utility/push-javadoc-to-gh-pages.sh |
| 58 | + |
| 59 | + - stage: Release to bintray |
| 60 | + jdk: openjdk7 |
| 61 | + language: java |
| 62 | + if: tag IS present |
| 63 | + script: |
| 64 | + - .utility/deploy-travis-wrapper.sh |
| 65 | + |
74 | 66 | notifications: |
75 | 67 | email: true |
0 commit comments