Skip to content

Commit 5761a11

Browse files
committed
ci: refactor to multiple jobs
It also adds a temp job that will be kept updated and is expected to pass for bblfsh#83 and track it's progress. Signed-off-by: Alexander Bezzubov <[email protected]>
1 parent 8f249f7 commit 5761a11

File tree

2 files changed

+48
-41
lines changed

2 files changed

+48
-41
lines changed

.travis.yml

+48-41
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,64 @@
11
dist: trusty
2-
sudo: false
3-
42
language: scala
5-
services:
6-
- docker
7-
83
jdk:
94
- openjdk8
10-
115
scala:
126
- 2.11.11
137

8+
services:
9+
- docker
10+
1411
cache:
1512
directories:
1613
- $HOME/.ivy2
1714
- $HOME/.sbt
1815

16+
stages:
17+
- name: test
18+
- name: release
19+
if: tag IS present
1920

20-
before_install:
21-
- docker run --privileged -d -p 9432:9432 --name bblfsh bblfsh/bblfshd
22-
- docker exec -it bblfsh bblfshctl driver install --recommended
23-
- sudo apt-get update
24-
- sudo apt-get install -y --no-install-recommends clang g++ gcc gcc-multilib libc6-dev libc6-dev-i386 mingw-w64 patch xz-utils
25-
26-
env:
27-
global:
28-
- OSXCROSS_PATH="$HOME/osxcross"
29-
- OSXCROSS_REV=3034f7149716d815bc473d0a7b35d17e4cf175aa
30-
- SDK_VERSION=10.11
31-
- DARWIN_VERSION=15
32-
- OSX_VERSION_MIN=10.6
33-
- OSXCROSS_SDK_URL="https://s3.dockerproject.org/darwin/v2/MacOSX10.11.sdk.tar.xz"
3421

35-
install:
36-
- mkdir -p /tmp/osxcross
37-
- cd /tmp/osxcross
38-
- curl -sSL "https://codeload.github.com/tpoechtrager/osxcross/tar.gz/${OSXCROSS_REV}" | tar -C /tmp/osxcross --strip=1 -xzf -
39-
- curl -s -S -L -o tarballs/MacOSX${SDK_VERSION}.sdk.tar.xz ${OSXCROSS_SDK_URL}
40-
- UNATTENDED=yes ./build.sh >/dev/null
41-
- mv target "${OSXCROSS_PATH}"
42-
- curl -S -L "https://github.com/karalabe/xgo/blob/647f256c447ee20f9bf13ebc42e612d55994a383/docker/base/patch.tar.xz?raw=true" | xz -dc - | tar -xf -
43-
- mv v1 "${OSXCROSS_PATH}/SDK/MacOSX${SDK_VERSION}.sdk/usr/include/c++/v1"
44-
- rm -rf /tmp/osxcross "${OSXCROSS_PATH}/SDK/MacOSX${SDK_VERSION}.sdk/usr/share/man"
22+
jobs:
23+
include:
24+
- name: 'All tests'
25+
stage: test
26+
install: &test_setup_anchor
27+
- docker run --privileged -d -p 9432:9432 --name bblfsh bblfsh/bblfshd
28+
- docker exec -it bblfsh bblfshctl driver install --recommended
29+
- sudo apt-get update
30+
- sudo apt-get install -y --no-install-recommends clang g++ gcc gcc-multilib libc6-dev libc6-dev-i386 mingw-w64 patch xz-utils
31+
script:
32+
- ./sbt assembly test
33+
after_failure: &failure_logs_anchor
34+
- docker logs bblfsh
4535

46-
script:
47-
- cd $TRAVIS_BUILD_DIR
48-
- ./sbt assembly test
49-
- if [[ -z "$TRAVIS_TAG" ]]; then echo "Skipping this build for non-tag builds."; exit 0; fi
50-
- ./sbt publishLocal
51-
- openssl aes-256-cbc -K $encrypted_97aef7f4ae04_key -iv $encrypted_97aef7f4ae04_iv -in key.asc.enc -out key.asc -d
52-
- gpg --no-default-keyring --primary-keyring ./project/.gnupg/pubring.gpg --secret-keyring ./project/.gnupg/secring.gpg --keyring ./project/.gnupg/pubring.gpg --fingerprint --import key.asc
53-
- ./sbt publishSigned
54-
- ./sbt sonatypeRelease
36+
- name: 'V2: passing tests' # TODO(#83): remove, after both tests sets converge
37+
install: *test_setup_anchor
38+
script:
39+
- ./sbt assembly
40+
- ./sbt "testOnly *Close* *ClientVersion* *SupportedLanguages*"
41+
- ./sbt "testOnly org.bblfsh.client.v2.BblfshClientParseTest -- -z \"Decoded UAST after parsing\""
42+
- ./sbt "testOnly org.bblfsh.client.v2.BblfshClientParseTest -- -z \"Decoded UAST RootNode\""
43+
after_failure: *failure_logs_anchor
5544

56-
after_failure:
57-
- docker logs bblfsh
45+
- name: 'Cross-compile, release & publish to Sonatype'
46+
stage: release
47+
before_install:
48+
- mkdir -p /tmp/osxcross
49+
- cd /tmp/osxcross
50+
- curl -sSL "https://codeload.github.com/tpoechtrager/osxcross/tar.gz/${OSXCROSS_REV}" | tar -C /tmp/osxcross --strip=1 -xzf -
51+
- curl -s -S -L -o tarballs/MacOSX${SDK_VERSION}.sdk.tar.xz ${OSXCROSS_SDK_URL}
52+
- UNATTENDED=yes ./build.sh >/dev/null
53+
- mv target "${OSXCROSS_PATH}"
54+
- curl -S -L "https://github.com/karalabe/xgo/blob/647f256c447ee20f9bf13ebc42e612d55994a383/docker/base/patch.tar.xz?raw=true" | xz -dc - | tar -xf -
55+
- mv v1 "${OSXCROSS_PATH}/SDK/MacOSX${SDK_VERSION}.sdk/usr/include/c++/v1"
56+
- rm -rf /tmp/osxcross "${OSXCROSS_PATH}/SDK/MacOSX${SDK_VERSION}.sdk/usr/share/man"
57+
script:
58+
- cd $TRAVIS_BUILD_DIR
59+
- ./sbt assembly
60+
- ./sbt publishLocal
61+
- openssl aes-256-cbc -K $encrypted_97aef7f4ae04_key -iv $encrypted_97aef7f4ae04_iv -in key.asc.enc -out key.asc -d
62+
- gpg --no-default-keyring --primary-keyring ./project/.gnupg/pubring.gpg --secret-keyring ./project/.gnupg/secring.gpg --keyring ./project/.gnupg/pubring.gpg --fingerprint --import key.asc
63+
- ./sbt publishSigned
64+
- ./sbt sonatypeRelease

0 commit comments

Comments
 (0)