If your build fails on Bitrise, we often recommend to try and run it locally, on your machine. To do this, do the following:
- do a full clean git clone of your project’s online repository
- run the build on your machine with the Bitrise CLI
This helps to eliminate, among other things, a very common issue: that uncommitted or “gitignored” files are in your working directory but they haven’t been committed into your git repository online and therefore they are not available when Bitrise clones the repository for running the build. Other possible issues include:
- code signing files are present on your local machine but not uploaded to Bitrise
- a difference in the version of the tool(s) used for the build
Testing with a full clean git clone ⚓
- Open your Terminal / Command Line interface on your machine.
- Type in:
- Clone your repository with:
git clone REPOURL ./quick-repo-test --branch BRANCH-YOU-WANT-TO-TEST
git clone https://github.com/bitrise-io/bitrise.git ./quick-repo-test --branch master
Run the commands you want to test, to build your project, or to open the project file from this directory.
Testing with the Bitrise CLI ⚓
After doing a full clean git clone, run a build locally, using the Bitrise CLI.
- Install the Bitrise CLI.
- Download your app’s
bitrise.ymlfile from bitrise.io.
- Run the build with:
bitrise run <workflow-name>(for example,
bitrise run primary).
This should help reproducing the issues in most cases, and allows you to attempt to debug them on your own machine.
If the build succeeds under these conditions but still fails on Bitrise, contact our support!
Using the Android/Linux environment locally ⚓
If your project uses the Android/Linux environment, you can download and use the exact same environment as the one your build is running in on bitrise.io.
Follow our guide to make it work!
Build logs allow users to analyze their builds and find out what went wrong - and what went right! On Bitrise, build logs are easily accessible: they can be viewed...
The project scanner is a tool that identifies the given project's type and generates a basic Bitrise configuration. Each supported project type has its own scanner: these scanners are stored...
You can trigger and abort builds with the Bitrise API. Define parameters for the build: for example, branch, tag or git commit to use. Custom environment variables can be defined...