-
Notifications
You must be signed in to change notification settings - Fork 111
Continuous Integration
The OpenOrienteering Mapper and Superbuild Github repositories use continuous integration via Azure Pipelines on:
https://dev.azure.com/OpenOrienteering/Mapper
Builds are triggered automatically for commits to regular branches and for pull requests. Pull requests build results are reported back to Github as "Check" results.
"Collaborators" may trigger builds for pull requests manually from comments with the following command:
/AzurePipelines run
- macOS: Xcode 10.1 Debug, with tests
- Linux clazy 1.5 Release, with tests
- Linux Coverage g++-5, with tests and coverage analysis
- Android armv7 Release, no tests, not signed, cross build on macOS
- MinGW x64 Windows Release build, no tests, not signed, cross build on Linux
CI scripts are stored in the ci
directory. Each pipeline has some configuration variables which may be edited permanently or when queueing manually.
The Superbuild repository CI build creates "Pipeline Artifacts" with all dependencies for building Mapper on macOS, Ubuntu 16.04 and MinGW. The Mapper repository CI downloads these artifacts, thus limiting the build time to Mapper itself. Tests are run for the native builds (macOS, Ubuntu). The actual "buildId" of the superbuild pipeline artifacts is a configuration variable in the Mapper pipeline, and the respective Superbuild pipeline build should be marked for retention until migrating to a new build.