# Setup Buildkite for Android
1. Create new pipeline on Buildkite.
Make sure the steps is set to upload pipeline specs from the repo i.e.
```
steps:
- command: '.buildkite/upload-pipeline'
agents: queue=pipeline-uploader
```
2. Create .buildkite folder (or whatever other name depending on what's used in the previous step) in repo that has:
* `upload-pipeline` file (has command to upload pipeline specs)
* `pipeline.yml` file (which defines build steps)
3. Create `Dockerfile` to run the steps in Docker
4. Add steps to `pipeline.yml`, each with a script to define what to run.
### Questions:
1. Which agent to use?
# Typical steps in an Android project
1. Run unit tests
2. Run Lint check (if interested)
3. Run UI tests (if any)
4. Publish Internal build to REA App Library
5. Publish Release build to Alpha channel in Google Play Store
6. `block` step if required between any of the above steps
## Good References
[Nautilus](https://git.realestate.com.au/consumer-experience/nautilus-android): for up-to-date Buildkite setup with Docker
[ResiAndroid](https://git.realestate.com.au/consumer-experience/resi-mobile-android): for build steps in an Android project