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.
|