docs/ftest/terminology/index.html

313 lines
9.5 KiB
HTML
Raw Normal View History

2023-10-02 00:28:03 +05:30
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/main.css">
<link rel="icon" href="https://forgeflux.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | Terminology </title>
</head>
<body>
<main>
<nav>
<a href="https:&#x2F;&#x2F;docs.forgeflux.org">
<img src="/logo.svg" alt="" />
</a>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="ftest"
checked />
<label class="tree-toggle-label" for="ftest">ftest</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/ftest/about/">About ftest</a>
</li>
<li class="active">
<a href="https://docs.forgeflux.org/ftest/terminology/">Terminology</a>
</li>
2023-10-02 13:16:01 +05:30
2023-10-02 00:28:03 +05:30
<ul id="toc">
<li><a href="https://docs.forgeflux.org/ftest/terminology/#specimen">Specimen</a>
</li>
<li><a href="https://docs.forgeflux.org/ftest/terminology/#job-manifest">Job Manifest</a>
</li>
<li><a href="https://docs.forgeflux.org/ftest/terminology/#control-repository">Control Repository</a>
<ul>
<li><a href="https://docs.forgeflux.org/ftest/terminology/#directory-structure">Directory structure</a></li>
2023-10-02 13:16:01 +05:30
<li><a href="https://docs.forgeflux.org/ftest/terminology/#specimen-docker-compose-yml">Specimen docker-compose.yml</a></li>
2023-10-02 00:28:03 +05:30
</ul>
</li>
2023-10-02 13:16:01 +05:30
<li><a href="https://docs.forgeflux.org/ftest/terminology/#result-repository">Result Repository</a>
</li>
2023-10-02 00:28:03 +05:30
</ul>
<li >
<a href="https://docs.forgeflux.org/ftest/quick-links/">Quick Links</a>
</li>
<li >
<a href="https://docs.forgeflux.org/ftest/ftest-toml/">ftest.toml</a>
</li>
<li >
<a href="https://docs.forgeflux.org/ftest/tests/">Tests</a>
</li>
<li >
<a href="https://docs.forgeflux.org/ftest/tutorial-new-specimen/">[Tutorial] Add new specimen</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="interface"
/>
<label class="tree-toggle-label" for="interface">Interface</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/Interface/about/">About Interface</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="northstar"
/>
<label class="tree-toggle-label" for="northstar">Northstar</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/Northstar/about/">About Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="updates"
/>
<label class="tree-toggle-label" for="updates">Updates</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/updates/december2020/">December 2020</a>
</li>
<li >
<a href="https://docs.forgeflux.org/updates/november2020/">November 2020</a>
</li>
<li >
<a href="https://docs.forgeflux.org/updates/october2020/">October 2020</a>
</li>
<li >
<a href="https://docs.forgeflux.org/updates/september2020/">September 2020</a>
</li>
</ul>
</div>
</nav>
<article>
<div id="on_right">
<span id="search-ico" class="ms-Icon--Search"></span>
</div>
<div class="search-container">
<input id="search" type="search" placeholder="Search as you type...">
<div class="search-results">
<div class="search-results__header"></div>
<ul class="search-results__items"></ul>
</div>
</div>
<div id="wrap">
<h2 id="specimen">Specimen&nbsp;<a class="anchor" href="#specimen">&#xE732;</a></h2>
2023-10-02 13:16:01 +05:30
<p>The target of a ftest test job. These are the ActityPub or ForgeFlux
implementations that must be tested for compliance.</p>
2023-10-02 00:28:03 +05:30
<h2 id="job-manifest">Job Manifest&nbsp;<a class="anchor" href="#job-manifest">&#xE732;</a></h2>
<p>or <code>ftest.toml</code></p>
<p>Contains information on the test environment, initialization code and
the test suites that has to be run on the <a href="/ftest/terminology.md#specimen">specimen</a></p>
<h2 id="control-repository">Control Repository&nbsp;<a class="anchor" href="#control-repository">&#xE732;</a></h2>
<ul>
<li>Flagship instance: <a href="https://forgeflux.org/ForgeFlux/ftest-control">git.batsense.net/ForgeFlux/ftest-control</a></li>
</ul>
<p>A Repository that houses <a href="https://docs.forgeflux.org/ftest/terminology/#job-manifest">job manifests</a>, and Infrastructure-as-Code
(docker-compose, currently) to spin up a test environment containing the
<a href="https://docs.forgeflux.org/ftest/terminology/#specimen">specimen</a>.</p>
<h3 id="directory-structure">Directory structure&nbsp;<a class="anchor" href="#directory-structure">&#xE732;</a></h3>
<p>Each specimen has it's own directory in the control repository:</p>
<pre data-lang="bash" style="background-color:#eff1f5;color:#4f5b66;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#bf616a;">23:50</span><span> atm@lab ftest-control ±|</span><span style="color:#bf616a;">gotosocial</span><span> ✗|</span><span style="color:#bf616a;"></span><span> tree
</span><span>
</span><span style="color:#bf616a;">└──</span><span> targets
</span><span> </span><span style="color:#bf616a;">├──</span><span> forgejo
</span><span> </span><span style="color:#bf616a;"></span><span>   ├── conf
</span><span> </span><span style="color:#bf616a;"></span><span>   │   └── app.ini
</span><span> </span><span style="color:#bf616a;"></span><span>   ├── docker-compose.yml
</span><span> </span><span style="color:#bf616a;"></span><span>   └── ftest.toml
</span><span> </span><span style="color:#bf616a;">└──</span><span> gotosocial
</span><span> </span><span style="color:#bf616a;">├──</span><span> data
</span><span> </span><span style="color:#bf616a;"></span><span>   └── config
</span><span> </span><span style="color:#bf616a;"></span><span>   └── config.yaml
</span><span> </span><span style="color:#bf616a;">├──</span><span> docker-compose.yaml
</span><span> </span><span style="color:#bf616a;">└──</span><span> Dockerfile
</span></code></pre>
2023-10-02 13:16:01 +05:30
<h3 id="specimen-docker-compose-yml">Specimen docker-compose.yml&nbsp;<a class="anchor" href="#specimen-docker-compose-yml">&#xE732;</a></h3>
2023-10-02 00:28:03 +05:30
<p>The control repository <em>MUST</em> contain a <code>docker-compose.yml</code> 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.</p>
2023-10-02 13:16:01 +05:30
<h2 id="result-repository">Result Repository&nbsp;<a class="anchor" href="#result-repository">&#xE732;</a></h2>
<p>Result repository contains the results of all the targets' jobs in JSON
format.</p>
2023-10-02 00:28:03 +05:30
</div>
</article>
</main>
<script type="text/javascript" src="https://docs.forgeflux.org/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://docs.forgeflux.org/search_index.en.js" defer></script>
<script type="text/javascript" src="https://docs.forgeflux.org/js.js" defer></script>
</body>
</html>