-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.travis.yml
More file actions
115 lines (114 loc) · 3.7 KB
/
.travis.yml
File metadata and controls
115 lines (114 loc) · 3.7 KB
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
notifications:
email: false
git:
quiet: true
depth: 1
env:
global:
- TERM=dumb
language: java
jdk: openjdk8
install: true
services:
- docker
dist: xenial
python: 3
addons:
apt:
update: true
packages:
- jq
- zip
- curl
- bash
- unzip
- docker-ce
- python3-dev
- python3-pip
- python3-six
- python3-setuptools
before_install:
# gradle
- curl -s "https://get.sdkman.io" | bash
- source "$HOME/.sdkman/bin/sdkman-init.sh"
- sed -i -e 's/^sdkman_auto_answer=false$/sdkman_auto_answer=true/g' "$HOME/.sdkman/etc/config"
- sdk use gradle 5.5-rc-4
- source "$HOME/.sdkman/bin/sdkman-init.sh"
#
- export PATH=$HOME/.local/bin:$PATH
- pip3 install --user $(whoami) --upgrade pip >/dev/null # pip3 -> pip
- pip install --user $(whoami) --upgrade docker-compose httpie >/dev/null 2>&1
- http --version --debug
- docker-compose -v
#
- source <(curl -fsSL https://raw.github.com/daggerok/bash-functions/master/main.bash)
- stop_any 5432 5672 27017 8080 8000 8081 80 80
before_script:
- docker pull postgres:alpine
- cd $TRAVIS_BUILD_DIR && gradle :wrapper
- cd $TRAVIS_BUILD_DIR && gradle :wrapper --stop
- cd $TRAVIS_BUILD_DIR && ./gradlew up
- docker ps
after_script:
- cd $TRAVIS_BUILD_DIR && ./gradlew rm
jobs:
include:
- stage: test
jdk: openjdk8
name: Gradle tests (openjdk8)
script:
- cp -Rf $TRAVIS_BUILD_DIR/src/main/resources/logback-gradle.xml $TRAVIS_BUILD_DIR/src/main/resources/logback.xml
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayClean
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayMigrate
- cd $TRAVIS_BUILD_DIR && ./gradlew test
- stage: test
jdk: openjdk11
name: Gradle tests (openjdk11)
script:
- cp -Rf $TRAVIS_BUILD_DIR/src/main/resources/logback-gradle.xml $TRAVIS_BUILD_DIR/src/main/resources/logback.xml
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayClean
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayMigrate
- cd $TRAVIS_BUILD_DIR && ./gradlew test
- stage: test
jdk: openjdk8
name: Gradle integration tests (openjdk8)
script:
- cp -Rf $TRAVIS_BUILD_DIR/src/main/resources/logback-jar.xml $TRAVIS_BUILD_DIR/src/main/resources/logback.xml
- cd $TRAVIS_BUILD_DIR && ./gradlew assemble
- java -jar $TRAVIS_BUILD_DIR/build/libs/*-SNAPSHOT.jar &
- wait_for 8080
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayClean
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayMigrate
- http :8080/employees name=ololo
- http :8080/employees name=trololo salary=12345
- http :8080/employees
- stop_any 80 8080
- stage: test
jdk: openjdk11
name: Gradle integration tests (openjdk11)
script:
- cp -Rf $TRAVIS_BUILD_DIR/src/main/resources/logback-jar.xml $TRAVIS_BUILD_DIR/src/main/resources/logback.xml
- cd $TRAVIS_BUILD_DIR && ./gradlew assemble
- java -jar $TRAVIS_BUILD_DIR/build/libs/*-SNAPSHOT.jar &
- wait_for 8080
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayClean
- cd $TRAVIS_BUILD_DIR && ./gradlew flywayMigrate
- http :8080/employees name=ololo
- http :8080/employees name=trololo salary=12345
- http :8080/employees
- stop_any 80 8080
- stage: test
jdk: openjdk8
name: Gradle Java 8 Updates (openjdk8)
script: cd $TRAVIS_BUILD_DIR && ./gradlew dependencyUpdates -Drevision=release
- stage: test
jdk: openjdk11
name: Gradle Java 11 Updates (openjdk11)
script: cd $TRAVIS_BUILD_DIR && ./gradlew dependencyUpdates -Drevision=release
cache:
directories:
- ~/.docker
- ~/.gradle
- ~/.m2
packages: true
pip: true