Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Excavator: Render CircleCI file using template specified in .circleci…
…/template.sh
  • Loading branch information
svc-excavator-bot committed Oct 9, 2018
commit a3ddb4a85281320ac810c1849fbdc8030ca68707
78 changes: 44 additions & 34 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,53 +3,62 @@
# To manually manage the CircleCI configuration for this project, remove the .circleci/template.sh file.

version: 2

build-defaults: &build-defaults
resource_class: xlarge
environment:
GRADLE_OPTS: -Dorg.gradle.console=plain -Dorg.gradle.internal.launcher.welcomeMessageEnabled=false
CIRCLE_TEST_REPORTS: /home/circleci/junit
CIRCLE_ARTIFACTS: /home/circleci/artifacts

jobs:
build:
docker:
- image: circleci/openjdk:8u171-jdk-node-browsers
resource_class: xlarge
environment:
GRADLE_OPTS: -Dorg.gradle.console=plain -Dorg.gradle.internal.launcher.welcomeMessageEnabled=false
CIRCLE_TEST_REPORTS: /home/circleci/junit
CIRCLE_ARTIFACTS: /home/circleci/artifacts

docker: [{ image: 'circleci/openjdk:8u181-node' }]
<<: *build-defaults
steps:
- checkout
- restore_cache:
key: gradle-wrapper-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
- restore_cache:
key: gradle-cache-{{ checksum "versions.props" }}-{{ checksum "build.gradle" }}

- run: ./gradlew --profile --parallel resolveConfigurations

- restore_cache: { key: 'gradle-wrapper-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}' }
- restore_cache: { key: 'gradle-cache-{{ checksum "versions.props" }}-{{ checksum "build.gradle" }}' }
- run: ./gradlew --no-daemon --parallel --stacktrace --continue --max-workers=8 --profile build
- save_cache:
key: gradle-wrapper-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}
paths:
- ~/.gradle/wrapper
key: 'gradle-wrapper-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}'
paths: [ ~/.gradle/wrapper ]
- save_cache:
key: gradle-cache-{{ checksum "versions.props" }}-{{ checksum "build.gradle" }}
paths:
- ~/.gradle/caches

- run: ./gradlew --profile --parallel --continue build

key: 'gradle-cache-v2-{{ checksum "versions.props" }}-{{ checksum "build.gradle" }}'
paths: [ ~/.gradle/caches ]
- run:
command: |
mkdir -p ~/junit
find . -type f -regex ".*/build/.*TEST.*xml" -exec cp --parents {} ~/junit/ \;
command: mkdir -p ~/junit && find . -type f -regex ".*/build/.*TEST.*xml" -exec cp --parents {} ~/junit/ \;
when: always

- deploy:
command: |
# publishing snapshots to bintray does not work, so we only publish from tag builds (not develop)
if [[ "${CIRCLE_TAG}" =~ [0-9]+(\.[0-9]+)+(-[a-zA-Z]+[0-9]*)* ]]; then
./gradlew --profile --stacktrace --continue publish
./gradlew --no-daemon --parallel --stacktrace --continue --max-workers=8 --profile publish
else
./gradlew --profile --parallel --continue publishToMavenLocal
./gradlew --no-daemon --parallel --stacktrace --continue --max-workers=8 --profile publishToMavenLocal
mkdir -p $CIRCLE_ARTIFACTS/poms
find . -name 'pom-default.xml' -exec cp --parents {} $CIRCLE_ARTIFACTS/poms \;
fi
- store_test_results: { path: ~/junit }
- store_artifacts: { path: ~/artifacts }

build-11:
docker: [{ image: 'circleci/openjdk:11-node' }]
<<: *build-defaults
steps:
- checkout
- restore_cache: { key: 'gradle-wrapper-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}' }
- restore_cache: { key: 'gradle-cache-{{ checksum "versions.props" }}-{{ checksum "build.gradle" }}' }
- run: ./gradlew --no-daemon --parallel --stacktrace --continue --max-workers=8 --profile build
- save_cache:
key: 'gradle-wrapper-{{ checksum "gradle/wrapper/gradle-wrapper.properties" }}'
paths: [ ~/.gradle/wrapper ]
- save_cache:
key: 'gradle-cache-v2-{{ checksum "versions.props" }}-{{ checksum "build.gradle" }}'
paths: [ ~/.gradle/caches ]
- run:
command: mkdir -p ~/junit && find . -type f -regex ".*/build/.*TEST.*xml" -exec cp --parents {} ~/junit/ \;
when: always
- store_test_results: { path: ~/junit }
- store_artifacts: { path: ~/artifacts }

Expand All @@ -58,7 +67,8 @@ workflows:
build:
jobs:
- build:
filters:
# CircleCI2 will ignore tags without this. https://circleci.com/docs/2.0/workflows/#git-tag-job-execution
tags:
only: /.*/
# CircleCI2 will ignore tags without this. https://circleci.com/docs/2.0/workflows/#git-tag-job-execution
filters: { tags: { only: /.*/ } }
- build-11:
# CircleCI2 will ignore tags without this. https://circleci.com/docs/2.0/workflows/#git-tag-job-execution
filters: { tags: { only: /.*/ } }