From a82f76f80e9942fea9bb0d5fa4404a000a9e64bc Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 2 Oct 2018 12:21:59 +0200 Subject: [PATCH] Upgrade build to CircleCI 2.0. Closes gh-252. --- .circleci/config.yml | 57 ++++++++++++++++++++++++++++++++++++++++++++ circle.yml | 56 ------------------------------------------- 2 files changed, 57 insertions(+), 56 deletions(-) create mode 100644 .circleci/config.yml delete mode 100644 circle.yml diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 00000000..8bc8d809 --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,57 @@ +version: 2 + +jobs: + build: + docker: + - image: circleci/openjdk:8u151-jdk + environment: + JAVA_TOOL_OPTIONS: "-Xms512m -Xmx768m" + TERM: dumb + branches: + ignore: + - gh-pages # list of branches to ignore + resource_class: large + steps: + - setup_remote_docker + - checkout + - restore_cache: + key: sc-vault-{{ .Branch }} + - run: + name: "Download dependencies" + command: ./mvnw -s .settings.xml -B -U --fail-never dependency:go-offline || true + - run: + name: "Download Vault" + command: src/test/bash/install_vault.sh + - save_cache: + key: sc-vault-{{ .Branch }} + paths: + - ~/.m2 + - "download" + - run: + name: "Create Certificates" + command: src/test/bash/create_certificates.sh + - run: + name: "Starting Vault" + command: src/test/bash/local_run_vault.sh + background: true + - run: + name: "Running build" + command: ./mvnw -s .settings.xml clean org.jacoco:jacoco-maven-plugin:prepare-agent install install -U -P sonar -nsu -B -Dmaven.test.redirectTestOutputToFile=true -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn + - run: + name: "Starting Vault" + command: pkill vault + when: always + - run: + name: "Aggregate test results" + when: always + command: | + mkdir -p junit/ + find . -type f -regex ".*/target/.*-reports/.*" -exec cp {} junit/ \; + find . -type f -regex ".*/build/test-results/.*" -exec cp {} junit/ \; + bash <(curl -s https://codecov.io/bash) + - store_artifacts: + path: junit/ + destination: artifacts + - store_test_results: + path: junit/ + destination: testartifacts diff --git a/circle.yml b/circle.yml deleted file mode 100644 index 3d37169f..00000000 --- a/circle.yml +++ /dev/null @@ -1,56 +0,0 @@ -general: - branches: - ignore: - - gh-pages # list of branches to ignore - -machine: - services: - - rabbitmq-server - java: - version: oraclejdk8 - -dependencies: - override: - - ./mvnw -s .settings.xml -B -U --fail-never dependency:go-offline || true - cache_directories: - - "download" - - "~/.m2" - -database: - override: - - mkdir -p download - - test -f download/apache-cassandra-2.2.8-bin.tar.gz || wget https://archive.apache.org/dist/cassandra/2.2.8/apache-cassandra-2.2.8-bin.tar.gz -O download/apache-cassandra-2.2.8-bin.tar.gz - - tar xzf download/apache-cassandra-2.2.8-bin.tar.gz - - cp -f spring-cloud-vault-config-databases/src/test/resources/cassandra.yaml apache-cassandra-2.2.8/conf - - mkdir -p apache-cassandra-2.2.8/data - - apache-cassandra-2.2.8/bin/cassandra -f: - background: true - - sudo rabbitmq-plugins enable rabbitmq_management - - sudo service rabbitmq-server restart - - mysql -e "CREATE USER 'springvault' IDENTIFIED by 'springvault';" - - mysql -uroot -e "GRANT ALL PRIVILEGES ON *.* TO 'springvault'@'%' WITH GRANT OPTION;"; - - psql -U postgres -c "CREATE ROLE springvault WITH LOGIN PASSWORD 'springvault' CREATEROLE CREATEUSER;" - - |- - mongo admin --eval "db.createUser({user: 'springvault', pwd:'springvault', roles:['root']});" - - apache-cassandra-2.2.8/bin/cqlsh localhost -u cassandra -p cassandra -e "CREATE USER 'springvault' WITH PASSWORD 'springvault' SUPERUSER" - - src/test/bash/install_vault.sh - - src/test/bash/install_consul.sh - -test: - pre: - - src/test/bash/create_certificates.sh - - src/test/bash/local_run_vault.sh: - background: true - - src/test/bash/local_run_consul.sh: - background: true - override: - - ./mvnw -s .settings.xml clean install -U -P sonar -nsu -B -Dmaven.test.redirectTestOutputToFile=true -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn - - ./mvnw -s .settings.xml org.jacoco:jacoco-maven-plugin:report -U -P sonar -Djacoco.dataFile=$(pwd)/target/jacoco.exec - post: - - apache-cassandra-2.2.8/bin/nodetool stopdaemon || true - - pkill vault || true - - pkill consul || true - - find . -type f -regex ".*/spring-cloud-*.*/target/*.*" | cpio -pdm $CIRCLE_ARTIFACTS - - mkdir -p $CIRCLE_TEST_REPORTS/junit/ - - find . -type f -regex ".*/target/.*-reports/.*" -exec cp {} $CIRCLE_TEST_REPORTS/junit/ \; - - bash <(curl -s https://codecov.io/bash)