Continuous Integration
GitHub Actions
We're running our CI with GitHub Actions, an automation tool by GitHub. It automatically runs our test suite on pushes to the Chemotion ELN GitHub repository. For more information visit the official GitHub documentation for Actions.
Our CI is configured in this following workflow file.
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. Our Docker image for CI is hosted at here. The CI image is built from the following Dockerfile.
We're using 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.).