forked from toolshed/docs.coopcloud.tech
		
	
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: "Resolution 020"
 | 
						|
---
 | 
						|
 | 
						|
- Topic: Budget 10: Abra integration suite automation
 | 
						|
- Date: 04-04-2024
 | 
						|
- Deadline: 18-04-2024
 | 
						|
- Size: Large
 | 
						|
 | 
						|
### 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.
 | 
						|
 | 
						|
A server has been provided by `@mirsal` on donation (💘). This machine will be
 | 
						|
be wiped clean each day (`docker <command> prune ....`) and will have the usual
 | 
						|
DNS machinery attached to it, e.g. `int.coopcloud.tech`, `*.int.coopcloud.tech`.
 | 
						|
 | 
						|
Once that is all 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 hour | `@d1` |
 | 
						|
| R & D for breaking up tests | 5 hours | `@d1` | 
 | 
						|
| Implementing CI/CD configs | 10 hours | `@d1` |
 | 
						|
 | 
						|
**Total: 16 hrs * 20 EUR = 320 EUR**
 |