diff --git a/docs/federation/resolutions/in-progress/022.md b/docs/federation/resolutions/in-progress/022.md new file mode 100644 index 0000000..f609e4d --- /dev/null +++ b/docs/federation/resolutions/in-progress/022.md @@ -0,0 +1,49 @@ +--- +title: "Resolution 022" +--- + +- Topic: Budget 10: Abra integration suite automation +- Date: 04-04-2024 +- Deadline: 18-04-2024 +- 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 10) + +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 | Free (on donation) | `@mirsal` | +| Server setup & docs | 1 hrs | `@d1` | +| R & D for breaking up tests | 5 hrs | `@d1` | +| Implementing CI/CD configs | 10 hrs | `@d1` | + +**Total: 16 hrs * 20 EUR = 320 EUR** + +Big thanks for `@mirsal` for donating the server 💘 diff --git a/mkdocs.yml b/mkdocs.yml index be32882..e4266a3 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -129,6 +129,7 @@ nav: - federation/resolutions/passed/019.md - "In Progress": - federation/resolutions/in-progress/013.md + - federation/resolutions/in-progress/022.md - "Minutes": - federation/minutes/index.md - "Recently":