diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000000..3bf0caa37f --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,43 @@ +# Use the latest 2.1 version of CircleCI pipeline process engine. +# See: https://circleci.com/docs/2.0/configuration-reference +version: 2.1 + +# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects. +orbs: + android: circleci/android@1.0.3 + +jobs: + # Below is the definition of your job to build and test your app, you can rename and customize it as you want. + build-and-test: + # These next lines define the Android machine image executor: https://circleci.com/docs/2.0/executor-types/ + executor: + name: android/android-machine + + steps: + # Checkout the code as the first step. + - checkout + + # The next step will run the unit tests + - android/run-tests: + test-command: ./gradlew -Pcoverage -PfirebaseDisable testFullDebugUnitTest jacocoTestFullDebugUnitTestReport + + # Then start the emulator and run the Instrumentation tests! +# - android/start-emulator-and-run-tests: +# test-command: ./gradlew connectedDebugAndroidTest +# system-image: system-images;android-25;google_apis;x86 + + # And finally run the release build + - run: + name: Assemble release build + command: | + bash <(curl -s https://codecov.io/bash) +# ./gradlew assembleRelease + +workflows: + # Below is the definition of your workflow. + # Inside the workflow, you provide the jobs you want to run, e.g this workflow runs the build-and-test job above. + # CircleCI will run this workflow on every commit. + # For more details on extending your workflow, see the configuration docs: https://circleci.com/docs/2.0/configuration-reference/#workflows + sample: + jobs: + - build-and-test