Continuous Integration
GitHub Actions​
The Chemotion ELN's CI runs with GitHub Actions, an automation tool by GitHub. It automatically runs the test suite on pushes to the Chemotion ELN GitHub repository. For more information visit the official GitHub documentation for Actions.
The CI is configured in the following workflows.
Docker​
Because of large Ruby and npm dependencies, the CI is running inside a Docker container with prebuilt libraries in order to speed up CI runs. The Docker image for CI is hosted here. The CI image is built from the following Dockerfile.
The CI uses a PostgreSQL container to run the database alongside the ELN application.
Troubleshooting​
GitHub Actions services can be down​
If some GitHub services are not working, have a look at the status page.
Flaky tests​
Currently, the acceptance tests are flaky, meaning they fail in non-deterministic ways because they are sensitive to timing (i.e., clicking on buttons that aren't rendered yet etc.).