docs/content/ftest/terminology.md

59 lines
1.6 KiB
Markdown
Raw Normal View History

2023-10-02 00:27:41 +05:30
+++
title = "Terminology"
insert_anchor_links = "right"
2023-10-05 02:10:03 +05:30
weight = 3
2023-10-02 00:27:41 +05:30
+++
## Specimen
2023-10-02 13:15:07 +05:30
The target of a ftest test job. These are the ActityPub or ForgeFlux
implementations that must be tested for compliance.
2023-10-02 00:27:41 +05:30
## Job Manifest
or `ftest.toml`
Contains information on the test environment, initialization code and
the test suites that has to be run on the [specimen](/ftest/terminology.md#specimen)
## Control Repository
- Flagship instance: [git.batsense.net/ForgeFlux/ftest-control](https://forgeflux.org/ForgeFlux/ftest-control)
A Repository that houses [job manifests](@/ftest/terminology.md#job-manifest), and Infrastructure-as-Code
(docker-compose, currently) to spin up a test environment containing the
[specimen](@/ftest/terminology.md#specimen).
### Directory structure
Each specimen has it's own directory in the control repository:
```bash
23:50 atm@lab ftest-control ±|gotosocial ✗|→ tree
└── targets
├── forgejo
│   ├── conf
│   │   └── app.ini
│   ├── docker-compose.yml
│   └── ftest.toml
└── gotosocial
├── data
│   └── config
│   └── config.yaml
├── docker-compose.yaml
└── Dockerfile
```
2023-10-02 13:15:07 +05:30
### Specimen docker-compose.yml
2023-10-02 00:27:41 +05:30
The control repository _MUST_ contain a `docker-compose.yml` to spin up
the specimen. It may include configuration files in the same directory,
which to docker-compose file can rely on using bind mounts within the container.
2023-10-02 13:15:07 +05:30
## Result Repository
Result repository contains the results of all the targets' jobs in JSON
format.