--- title: "Resolution 022" --- - Topic: Budget XXX: Abra integration suite automation - Date: ... - Deadline: ... - Size: Medium ### Summary Motivated by the collective release planning: [`#583`](https://git.coopcloud.tech/coop-cloud/organising/issues/583) under "Automate Integration Test Suite". The latest `abra` release (`0.9.x`) was heavily delayed due to several issues. One of those was the need to fix the integration test suite which wasn't run in some time. Many breakages had crept into the test suite over time. This can avoided in the future by automating the running of the integration test suite. This proposal describes a way to do this and includes a budget for doing so. ### Details (Budget XXX) The `abra` test suite takes around 1.30 hrs to run on a modest machine. Therefore, we propose to run it only once daily. Some parts of the tests are slow, fast and only a few require public DNS. This means we can break up the tests and run them in separate "builds" to speed things up. This involves some research & experimentation. Also, we need a server to run the tests on. This machine should be wiped clean each day (`docker prune ....`) and have the usual DNS machinery attached to it, e.g. `int.coopcloud.tech`, `*.int.coopcloud.tech`. Ideally some federation members will also be provided shell access with root permissions. Once all this is wired up, we can implement the CI/CD configuration to make the test suite run automatically once a day. This will be triggered via the `.drone.yml` in the `abra` Git repository. Budget details: | Item | Cost | Who? | | ---- | ---- | ---- | | Server | ??? | ??? | | Server setup | 2 hrs | `@d1` | | R&D for breaking up tests | 5 hrs | `@d1` | | Implementing CI configs | 10 hrs | `@d1` | **NOTE**: budget for server includes yearly costs of server and ongoing maintenance.