The Cider-CI project configuration undergoes several transformations from its
initial form as given in the cider-ci.yml
file to the final unit as an
executable part of a job. This article discusses the transformations and
shows how intermediate results can be inspected. Understanding this process
enables us to perform debugging efficiently and helps us to write better
project configurations.
Cider-CI enables you to parallelize tests without limits achieving speedups from several hours to a few minutes. We guide through the process from configuring a not parallelized test, over manual parallelization, to configure automatic parallelization with Cider-CI in this article.
The term boot storm origins from virtual computing infrastructure. When many systems boot in a narrow time interval the infrastructure is overwhelmed and becomes unresponsive. There is a similar effect in CI environments which we call a dispatch storm. Cider-CI has build in means to avoid dispatch storms as of version 3.14.
The new “My Workspace” page introduced in Cider-CI 3.6 “Peacock”, and extended in Cider-CI 3.13 “Frisco”, combines the information previously located in the “Commits” and “Jobs” pages. This article discusses the underlying rational and advanced usage.
Cider-CI encourages reproducibility in many ways. But sometimes a job can depend on external resources which may change over time in unpredictable ways. This article discusses how to configure a project for Cider-CI to work with a potentially volatile environment.
Cider-CI can integrate with GitHub in various ways. This articles discusses how to configure authentication via GitHub OAuth and how to publish job results automatically to GitHub. We will also have a look at existing and new account properties and how they relate to session handling.
Multiple scripts with non trivial dependencies can be run as part of one test in Cider-CI. We explore how this feature can be applied to improve multi service integration testing.