feat: briefly explain ftest job workflow
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
Aravinth Manivannan 2023-10-02 13:15:21 +05:30
parent eca5989384
commit 07b6134f6d
Signed by: realaravinth
GPG key ID: F8F50389936984FF

View file

@ -15,6 +15,26 @@ weight = 1
An instance (will be) is hosted by ForgeFlux, that is run on renewable
energy.
## Mechanism
1. New jobs are fetched from the [control repository](@/ftest/terminology.md#control-repository). At any given time, ftest will run only one job. Therefore, each commit on the control repository must modify one [specimen](@/ftest/terminology.md#specimen) only.
2. TODO: create `ftest` Docker network (right now, this is done by hand)
3. The specimen test environment is deployed using `docker-compose.yml`
available in the test network. The specimen might have dependency
services (like a database or a chase), but the specimen service
should be added to the `ftest` network.
4. Get a list of initialization workflows from `ftest.toml` and run them
sequentially.
5. Run test suites sequentially. A test suite might contain more than
one tests, all of them are launched in parallel. They are added to
the `ftest` Docker net by the `ftest` server.
6. Wait for tests from previous test to run to completion, collect logs
and delete containers. And run next test suite.
7. Aggregate logs and write to [result repository](@/ftest/terminology.md#result-repository).
8. Push result repository.
9. Wait for next test job.
## Quick links
- [Add new specimen to ftest](@/ftest/tutorial-new-specimen.md)
- [Add new specimen to ftest](@/ftest/tutorial-new-specimen.md)
- [Terminology](@/ftest/terminology.md)