Minishift uses the following CI build systems: CentOS CI, AppVeyor, Circle CI, and Travis CI. These systems build the master branch when a commit occurs as well as the incoming pull requests. Except for Travis CI, they also archive build artifacts.
The following table describes the various CI systems Minishift utilizes and the locations of their build and configuration files:
CI Systems | Description | CI Builds | Configuration files |
---|---|---|---|
CentOS CI is the only CI system which can run integration tests, as it supports nested virtualization. Thus it is used to run integration tests in addition to unit tests. The artifacts of a successful master build can be found at artifacts.ci.centos.org/minishift/minishift/master/<BUILD_ID>. The artifacts of a successful pull request build can be found at artifacts.ci.centos.org/minishift/minishift/pr/<PR_ID>. As part of master build, Minishift documentation which is compiled from the master branch and integrated with OpenShift documentation is hosted at artifacts.ci.centos.org/minishift/minishift/docs/master/openshift-origin/latest/minishift/. On top of building the master branch and pull requests, CentOS CI is also used to build the tar bundle used for integration with docs.openshift.org, as well as to build releases. Nightly jobs(b2d, centos, minikube) run daily at midnight. These jobs execute all integration tests against the master branch of the Minishift GitHub repository with their respective ISOs. |
master, pull requests, docs, release, b2d-nightly, centos-nightly, minikube-nightly |
||
This system is used for compilation and unit testing on macOS. It is the only CI system which validates the Commit Message Requirements on each pull request. |
|||
This server is used for compilation and unit testing on Windows. |
|||
This server is used for compilation and unit testing on Linux (Ubuntu). |