forked from coursier/coursier
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.travis.yml
95 lines (95 loc) · 3.3 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
language: java
os: linux
jdk: openjdk8
git:
depth: false # https://stackoverflow.com/a/51727114/3714539
before_install:
- source scripts/website/setup-build-tools.sh
script: scripts/travis.sh
addons:
apt:
update: true
stages:
- name: test
- name: release-snapshot
if: (branch = master AND type = push) AND (tag IS NOT present)
- name: release
if: tag IS present
- name: upload-launcher
if: tag IS present
- name: upload-launcher-gh-pages
if: tag IS present
- name: update-brew-formula
if: tag IS present
- name: update-versioned-docs
if: tag IS present
- name: update-website
if: (branch = master AND type = push) OR (tag IS present)
jobs:
include:
- env: SCALA_VERSION=2.12 BOOTSTRAP=1
addons:
apt:
packages:
- nailgun
- env: SCALA_VERSION=2.13
sudo: required
services: docker
- env: SCALA_VERSION=2.12
sudo: required
services: docker
- env: SCALA_VERSION=2.12
jdk: openjdk11
script: sbt scala212 test:compile testsJVM/test
- env: SCALA_VERSION=2.11
sudo: required
services: docker
- env: SCALA_VERSION=2.12 NATIVE=1
before_script: curl https://raw.githubusercontent.com/scala-native/scala-native/master/scripts/travis_setup.sh | bash -x
- env: SCALA_VERSION=2.12 SCALA_JS=1
- name: "Website"
script: amm scripts/site.sc --publishLocal true
# Disabled for now, need to add the Typesafe releases Ivy repo to the publish module in the pants build
# - name: "Pants"
# - # Sanity check for Pants build path.
# - script: cd modules && ./pants run cli:coursier-cli -- fetch --help
- stage: release-snapshot
env: DUMMY_PROGUARD=1
script: sbt ci-release
- stage: release
# publishLocal so that proguard and all compilation run before any publishing
script: sbt +publishLocal ci-release
- stage: upload-launcher
env: REPO="coursier/coursier" NAME="coursier" CMD="./scripts/generate-launcher.sh -f --bat=true"
script: scripts/upload-launcher/upload-gh-release.sh
- stage: upload-launcher-gh-pages
env: REPO="coursier/coursier" NAME="coursier"
script: scripts/upload-launcher/upload-gh-pages.sh
- stage: update-brew-formula
env: REPO="coursier/coursier" FORMULA_REPO="coursier/homebrew-formulas" NAME=coursier TEMPLATE=scripts/coursier.rb.template
script: scripts/upload-launcher/update-brew-formula.sh
- stage: update-versioned-docs
env: WEBSITE_DIR=doc/website VERSIONED_DOCS_REPO=coursier/versioned-docs
script:
- amm scripts/site.sc --publishLocal true --npmInstall true --yarnRunBuild true
- scripts/website/versioned-docs.sh --update
- stage: update-website
env: WEBSITE_DIR=doc/website REPO=coursier/coursier VERSIONED_DOCS_REPO=coursier/versioned-docs
name: "Push website"
script:
- npm install
- export PATH="$PATH:$(pwd)/node_modules/bower/bin"
- scripts/website/versioned-docs.sh
- amm scripts/site.sc --publishLocal true --npmInstall true --yarnRunBuild true --relativize true
- scripts/copy-demo.sh
- scripts/website/push-website.sh
branches:
only:
- master
- /^v\d+\.\d+.*$/ # tagged versions
cache:
directories:
- $HOME/.m2
- $HOME/.ivy2/cache
- $HOME/.sbt
- $HOME/.cache