1
1
version : 2
2
2
3
+ machine-config : &machine-config
4
+ machine : true
5
+ working_directory : ~/repo
6
+ environment :
7
+ TERM : dumb
8
+ GRADLE_OPTS : -Xmx256m
9
+
10
+ shared-steps :
11
+ open-jdk : &open-jdk
12
+ run :
13
+ name : Update Java to OpenJDK
14
+ command : |
15
+ sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
16
+ sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/bin/javac
17
+ export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
18
+ java -version
19
+ save-gradle-cache : &save-gradle-cache
20
+ save_cache :
21
+ key : gcache-{{ .Branch }}-{{ checksum ".circleci/config.yml" }}-{{ checksum "build.gradle" }}-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
22
+ paths :
23
+ - ~/.gradle
24
+ - ~/.m2
25
+ restore-gradle-cache : &restore-gradle-cache
26
+ restore_cache :
27
+ keys :
28
+ - gcache-{{ .Branch }}-{{ checksum ".circleci/config.yml" }}-{{ checksum "build.gradle" }}-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
29
+
3
30
jobs :
4
- scala_style_check :
5
- machine : true
6
- working_directory : ~/repo
7
- environment :
8
- TERM : dumb
9
- GRADLE_OPTS : -Xmx256m
31
+ scala-style :
32
+ << : *machine-config
10
33
steps :
11
34
- checkout
35
+ - *open-jdk
12
36
- run :
13
37
name : Scala style check
14
- command : ./gradlew --parallel scalaStyle
15
- clone_repo_and_compile_project :
16
- machine : true
17
- working_directory : ~/repo
18
- environment :
19
- TERM : dumb
20
- GRADLE_OPTS : -Xmx256m
38
+ command : java -version && ./gradlew -v && ./gradlew --parallel scalaStyle
39
+ compile :
40
+ << : *machine-config
21
41
steps :
22
42
- checkout
23
- - restore_cache :
24
- keys :
25
- - gcache-{{ .Branch }}-{{ checksum ".circleci/config.yml" }}-{{ checksum "build.gradle" }}-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
26
- - run :
27
- name : Java version
28
- command : java -version
43
+ - *open-jdk
44
+ - *restore-gradle-cache
29
45
- run :
30
46
name : Clone repo & compile project
31
- command : ./gradlew --parallel testScoverageClasses
32
- - save_cache :
33
- key : gcache-{{ .Branch }}-{{ checksum ".circleci/config.yml" }}-{{ checksum "build.gradle" }}-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
34
- paths :
35
- - ~/.gradle
36
- - ~/.m2
37
- build :
38
- machine : true
39
- working_directory : ~/repo
40
- environment :
41
- TERM : dumb
42
- GRADLE_OPTS : -Xmx256m
47
+ command : java -version && ./gradlew -v && ./gradlew --parallel testScoverageClasses
48
+ - *save-gradle-cache
49
+ test :
50
+ << : *machine-config
43
51
parallelism : 4
44
52
steps :
45
53
- checkout
46
- - restore_cache :
47
- keys :
48
- - gcache-{{ .Branch }}-{{ checksum ".circleci/config.yml" }}-{{ checksum "build.gradle" }}-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
54
+ - *open-jdk
55
+ - *restore-gradle-cache
49
56
- run :
50
57
name : Build project
51
58
command : |
55
62
TEST_FILES=$(echo "$TEST_FILES" | circleci tests split --split-by=timings --timings-type=classname --index=$CIRCLE_NODE_INDEX | tr ' ' '\n' | cut -d "/" -f5-$2 | sed 's/.\{6\}$/\*/g')
56
63
echo -e "Test files running on this container : `eval $COUNT_TEST_FILE_CMD`\n$TEST_FILES\n"
57
64
export TEST_FILES=$(echo "$TEST_FILES" | sed 's/\\n$//' )
58
- ./gradlew reportScoverage
65
+ java -version && ./gradlew -v && ./gradlew reportScoverage
59
66
- run :
60
67
name : Collect test results
61
68
command : |
@@ -76,9 +83,9 @@ workflows:
76
83
version : 2
77
84
build :
78
85
jobs :
79
- - scala_style_check
80
- - clone_repo_and_compile_project
81
- - build :
86
+ - scala-style
87
+ - compile
88
+ - test :
82
89
requires :
83
- - scala_style_check
84
- - clone_repo_and_compile_project
90
+ - scala-style
91
+ - compile
0 commit comments