version: 2 jobs: build: docker: - image: circleci/android:api-27-alpha working_directory: ~/ultrasonic envoronment: JVM_OPTS: -Xmx3200m steps: - checkout - restore_cache: key: gradle-cache-{{ checksum "dependencies.gradle" }} - run: name: checkstyle command: ./gradlew -Pqc ktlintCheck - run: name: build command: ./gradlew assembleDebug - run: name: unit-tests command: | ./gradlew :subsonic-api:test :ultrasonic:testDebugUnitTest ./gradlew jacocoFullReport bash <(curl -s https://codecov.io/bash) - run: name: lint command: ./gradlew lint - run: name: static analysis command: ./gradlew -Pqc detektCheck - save_cache: paths: - ~/.gradle key: gradle-cache-{{ checksum "dependencies.gradle" }} - store_artifacts: path: ultrasonic/build/reports path: subsonic-api/build/reports destination: reports - store_artifacts: path: build/reports/jacoco/jacocoFullReport/ push_translations: docker: - image: circleci/python:3.6 working_directory: ~/ultrasonic steps: - checkout - run: name: install transifex client command: | python -m venv ~/venv . ~/venv/bin/activate pip install transifex-client - run: name: configure transifex client command: echo $'[https://www.transifex.com]\nhostname = https://www.transifex.com\nusername = api\npassword = '"${TRANSIFEX_PASSWORD}"$'\n' > ~/.transifexrc - run: name: push changes in translation files command: | . ~/venv/bin/activate tx push -st workflows: version: 2 build_and_push_translations: jobs: - build - push_translations: requires: - build