Updated changelog content

This commit is contained in:
dat-adi 2022-01-12 12:59:34 +05:30
parent 49b4c484b8
commit fde800b4ec
28 changed files with 79 additions and 2117 deletions

View File

@ -0,0 +1,22 @@
+++
title = "Events"
weight = 40
+++
# Events
Events are those operations that are performed on the Forge side,
such as Pull Requests, and Issues.
These events are operations of their own, and are handled within Interface
through Notifications.
The flow of processing an operation in the forge is done as follows,
1. We poll for Notifications through the [Job Runner](https://github.com/forgeflux-org/interface/blob/master/interface/runner/runner.py).
2. Proceed to send over this Notification to the Events Endpoint, where the Notification is parsed, and processed.
3. After identification, it is converted into a event, PR or Issue.
## References
- Events Endpoint :: [Info](https://github.com/forgeflux-org/interface/blob/master/interface/runner/events.py)

View File

@ -4,4 +4,17 @@ weight = 40
+++
# Interface
This page is under construction. Please come back later.
Interface is a service that acts as a connecting end of the bridge, listening
in for Notifications from a particular forge repository.
These notifications, which may be in the form of a Comment, Issue, or Pull Request,
are then further defined into [Events](@/getting-started/events.md) to create
a workable unit set, that the interface can use to translate operations from
one forge to another forge.
The procedure of the Notification-Event Translation System, works as follows,
1. Upon creation of the Interface, and set up of a forge repository to look for, the interface subscribes to the forge's notifications.
2. Every notification received by the interface from the forges, is then identified and translated into it's respective `Event` model, be it an Issue or PR.
3. Upon conversion into the respective model, Interface processes these `Events`, and converts them into the model required for the destination forge.

View File

@ -4,4 +4,15 @@ weight = 40
+++
# Northstar
This page is under construction. Please come back later.
Northstar is a lookup service, which acts as a source of information
for interfaces which hold particular forge information.
An [Interface](@/services/interface.md) connects and looks
through an instance of Northstar, to find the appropriate the forge
information that it seeks.
An instance of Northstar has the functionality to act as an API to
register and provide forge information.
These routes/payloads are covered in the [OpenAPI specification](https://northstar.forgeflux.org/docs/openapi/)
for Northstar.

View File

@ -1,11 +0,0 @@
+++
title = "November 2020"
weight = 40
+++
# November 2020
Errors were modularized at the back of [Northstar](https://github.com/forgeflux-org/northstar/).
A Docker CI was set up for the Northstar builds.
A [GitHub organization](https://github.com/forgeflux-org) was created for ForgeFedv2, and the repositories for the projects were
transferred over to it.

View File

@ -1,5 +1,5 @@
+++
title = "Solder"
title = "Updates"
weight = 1
sort_by = "weight"
+++

View File

@ -0,0 +1,30 @@
+++
title = "November 2020"
weight = 40
+++
# November 2020
Errors were modularized at the back of [Northstar](https://github.com/forgeflux-org/northstar/).
A Docker CI was set up for the Northstar builds.
A [GitHub organization](https://github.com/forgeflux-org) was created for ForgeFedv2, and the repositories for the projects were
transferred over to it.
A majority of the development on Interface was done during this time.
A Notification-Event Translation Mechanism was set up.
1. Northstar functionality was integrated into Interface, and tests were set up to ensure that it could be contacted through Interface's methods.
2. A locking mechanism was set up for concurrent operations on Git utilizing [Sled](https://sled.rs/).
3. Implementations of a basic job runner was set up to mimic retrieving requests from Forges, through periodically retrieving notifications.
4. The endpoints for notifications was subsequently set up, and responses to these Notifications were termed as [events](@/getting-started/events.md).
5. The endpoints for processing these events were then created.
Shifted over the configuration management to [Dynaconf](https://www.dynaconf.com/).
## References
- Integration with Northstar :: [Info](https://github.com/forgeflux-org/interface/commit/0c9d8bdff05e668d77a85fdfc89b37abe1ac86cb)
- Locking Mechanism with Sled :: [Info](https://github.com/forgeflux-org/interface/commit/d3e7c81c95d87b612ebb9562cac31d371fe8629e)
- Defining Events :: [Info](https://github.com/forgeflux-org/interface/commit/30547b783578a7a9548aca55b3b7c932ed8130e6)

View File

@ -1,3 +0,0 @@
<!doctype html>
<title>404 Not Found</title>
<h1>404 Not Found</h1>

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
@font-face{font-family:'FabricMDL2Icons';src:url("data:application/octet-stream;base64,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") format("truetype")}.ms-Icon{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-family:'FabricMDL2Icons';font-style:normal;font-weight:normal;speak:none}.ms-Icon--ChevronRightSmall:before{content:"\E970"}.ms-Icon--ChromeClose:before{content:"\E8BB"}.ms-Icon--Copy:before{content:"\E8C8"}.ms-Icon--GlobalNavButton:before{content:"\E700"}.ms-Icon--MiniLink:before{content:"\E732"}.ms-Icon--Page:before{content:"\E7C3"}.ms-Icon--ProductRelease:before{content:"\EE2E"}.ms-Icon--Save:before{content:"\E74E"}.ms-Icon--Search:before{content:"\E721"}

View File

@ -1,43 +0,0 @@
<html>
<head>
<title>Zola</title>
</head>
<body>
<div class="container">
<h1>Welcome to Zola!</h1>
<p>
You're seeing this page because we couldn't find a template to render.
</p>
<p>
To modify this page, create a <b>section.html</b> file in the templates directory or
<a href="https://www.getzola.org/documentation/themes/installing-and-using-themes/" target="_blank">install a theme</a>.
<br>
You can find what variables are available in this template in the <a href="https:&#x2F;&#x2F;www.getzola.org&#x2F;documentation&#x2F;templates&#x2F;pages-sections&#x2F;#section-variables" target="_blank">documentation</a>.
</p>
</div>
<footer>
<a href="https://www.getzola.org/documentation/getting-started/cli-usage/" target="_blank">Get started with Zola</a>
</footer>
<style>
html {
line-height: 1.5;
}
h1 {
margin-bottom: 2rem;
}
.container {
font-family: "sans-serif";
text-align: center;
margin-top: 20vh;
padding: 2rem;
background: #e9e9e9;
}
footer {
position: fixed;
width: 100%;
bottom: 1rem;
text-align: center;
}
</style>
</body>
</html>

View File

@ -1,203 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | How does it work? </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
/>
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
checked />
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
/>
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="how-does-it-work">How does it work?</h1>
<p>Interfaces are services that are run on the side of any user, and are used as connecting points of the bridge.
These interfaces are responsible for communicating with each other, and interact in the form of messages for a server-server model, and a REST API model for the server-user model.</p>
<p>Interfaces are geared towards performing various operations for the repository, which include but are not limited to,</p>
<ul>
<li>Pull Requests</li>
<li>Issues</li>
<li>Comments</li>
<li>Notifications</li>
<li>Forking</li>
</ul>
<p>However, as the count for interfaces go up in magnitudes, it becomes increasingly hard to keep track of them.
This is where Northstar comes to play, by implementing a lookup server that seeks to provide an indexed list of available forge interfaces.</p>
<p>ForgeFlux is currently in the Active Development phase, and is being worked on towards the alpha-testing stage.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,220 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | Services </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
/>
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
checked />
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
/>
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="services">Services</h1>
<p>The services that are currently in active development are Northstar, and Interface.
However, here's a few more details about them.</p>
<h2 id="northstar">Northstar</h2>
<ul>
<li>Repository :: <a href="https://github.com/forgeflux-org/northstar">Source Code</a></li>
<li>OpenAPI :: <a href="https://northstar.forgeflux.org/docs/openapi/">OpenAPI Specification</a></li>
</ul>
<p>ForgeFlux allows for multiple interfaces to be run against a single software forge.
Also, the protocol is flexible enough to support multiple types of software forges(GitLab, GitHub, etc).
The protocol's decentralised nature makes it impossible to create a constant record of which interfaces service forges.</p>
<p>So we created a discovery service which stores records of interfaces and the forges they service.
This is very similar to the way DNS works.
In DNS, hostname is resolved to IP address.</p>
<p>Here, software forge URL is resolved to URLs of <a href="https://github.com/forgeflux-org/interface">interfaces</a> that service the queried forge.</p>
<p>For an extensive view on Northstar, please check <a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar::Detailed</a></p>
<h2 id="interface">Interface</h2>
<ul>
<li>Repository :: <a href="https://github.com/forgeflux-org/interface">Source Code</a></li>
<li>OpenAPI :: <a href="https://github.com/forgeflux-org/interface/tree/master/docs/openapi">OpenAPI Specification</a></li>
</ul>
<p>Developing Free Software is about liberating users and giving them total control over how the programs they run should work.
It's only fair that developers of such software enjoy the same levels of liberty.</p>
<p>ForgeFlux is an attempt to enable federation for major software forges (GitLab, GitHub, Gitea, Source Hut, etc) entirely in API-space.
We believe our API-space implementation will allow for more organic growth as it will not require any involvement from the forge developers.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,209 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title>Docs</title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
/>
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
/>
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="forgeflux">ForgeFlux&nbsp;<a class="anchor" href="#forgeflux">&#xE732;</a></h1>
<p><a href="https://forgeflux.org/">ForgeFlux</a> aims to implement federation in <a href="https://en.wikipedia.org/wiki/Forge_(software)">software forges</a> , enabling
a decentralized development environment.</p>
<h2 id="why-is-this-significant">Why is this significant?&nbsp;<a class="anchor" href="#why-is-this-significant">&#xE732;</a></h2>
<p>There have been numerous forges that have popped
up over the course of time.
Each of these forges have their own community base,
and projects that are associated to the forge itself.</p>
<p>However, issues arise when a user wishes to contribute towards
a project that exists in another forge.
This would require them to charter into unknown forge territory,
to have to relearn the functionality that they're already at home with.</p>
<p>ForgeFlux, is an idea, that intends to get rid this problem.
Work on your own forge, but <strong>bridge</strong> the project.</p>
<p>Bridging a project would allow for a user to contribute towards projects that
exist in foreign forges, through the comfort of their own forge.</p>
<h2 id="has-this-been-done-before">Has this been done before?&nbsp;<a class="anchor" href="#has-this-been-done-before">&#xE732;</a></h2>
<p>The initial <a href="https://forgefed.peers.community/">forgefed</a> was
an attempt to bridge this gap, by introducing the concept
of bridging the gap between forges.
This approach required for the forge developers to actively
participate in the development of the software.</p>
<p>The present ForgeFlux, focuses on the implementation being present
in the API space instead.
This reduces the interference required on the side of the forges themselves,
and seeks to develop on existing utility and APIs provided.</p>
<p>ForgeFlux, consists of a terminology for the development and
utilization of it's software, which result in terms such as <code>forges</code>,
and <code>interfaces</code> being tossed around.
It is recommended for a reader to go through the <a href="https://github.com/forgeflux-org/spec/blob/master/rfc/1-ecosystem-architecture/1-ecosystem-architecture.md">ecosystem-architecture</a>, if there is any confusion regarding the usage of particular words in this documentation.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,295 +0,0 @@
// search script, borrowed from book theme
function debounce(func, wait) {
var timeout;
return function () {
var context = this;
var args = arguments;
clearTimeout(timeout);
timeout = setTimeout(function () {
timeout = null;
func.apply(context, args);
}, wait);
};
}
// Taken from mdbook
// The strategy is as follows:
// First, assign a value to each word in the document:
// Words that correspond to search terms (stemmer aware): 40
// Normal words: 2
// First word in a sentence: 8
// Then use a sliding window with a constant number of words and count the
// sum of the values of the words within the window. Then use the window that got the
// maximum sum. If there are multiple maximas, then get the last one.
// Enclose the terms in <b>.
function makeTeaser(body, terms) {
var TERM_WEIGHT = 40;
var NORMAL_WORD_WEIGHT = 2;
var FIRST_WORD_WEIGHT = 8;
var TEASER_MAX_WORDS = 30;
var stemmedTerms = terms.map(function (w) {
return elasticlunr.stemmer(w.toLowerCase());
});
var termFound = false;
var index = 0;
var weighted = []; // contains elements of ["word", weight, index_in_document]
// split in sentences, then words
var sentences = body.toLowerCase().split(". ");
for (var i in sentences) {
var words = sentences[i].split(" ");
var value = FIRST_WORD_WEIGHT;
for (var j in words) {
var word = words[j];
if (word.length > 0) {
for (var k in stemmedTerms) {
if (elasticlunr.stemmer(word).startsWith(stemmedTerms[k])) {
value = TERM_WEIGHT;
termFound = true;
}
}
weighted.push([word, value, index]);
value = NORMAL_WORD_WEIGHT;
}
index += word.length;
index += 1; // ' ' or '.' if last word in sentence
}
index += 1; // because we split at a two-char boundary '. '
}
if (weighted.length === 0) {
return body;
}
var windowWeights = [];
var windowSize = Math.min(weighted.length, TEASER_MAX_WORDS);
// We add a window with all the weights first
var curSum = 0;
for (var i = 0; i < windowSize; i++) {
curSum += weighted[i][1];
}
windowWeights.push(curSum);
for (var i = 0; i < weighted.length - windowSize; i++) {
curSum -= weighted[i][1];
curSum += weighted[i + windowSize][1];
windowWeights.push(curSum);
}
// If we didn't find the term, just pick the first window
var maxSumIndex = 0;
if (termFound) {
var maxFound = 0;
// backwards
for (var i = windowWeights.length - 1; i >= 0; i--) {
if (windowWeights[i] > maxFound) {
maxFound = windowWeights[i];
maxSumIndex = i;
}
}
}
var teaser = [];
var startIndex = weighted[maxSumIndex][2];
for (var i = maxSumIndex; i < maxSumIndex + windowSize; i++) {
var word = weighted[i];
if (startIndex < word[2]) {
// missing text from index to start of `word`
teaser.push(body.substring(startIndex, word[2]));
startIndex = word[2];
}
// add <em/> around search terms
if (word[1] === TERM_WEIGHT) {
teaser.push("<b>");
}
startIndex = word[2] + word[0].length;
teaser.push(body.substring(word[2], startIndex));
if (word[1] === TERM_WEIGHT) {
teaser.push("</b>");
}
}
teaser.push("…");
return teaser.join("");
}
function formatSearchResultItem(item, terms) {
var li = document.createElement("li");
li.classList.add("search-results__item");
li.innerHTML = `<a href="${item.ref}">${item.doc.title}</a>`;
li.innerHTML += `<div class="search-results__teaser">${makeTeaser(item.doc.body, terms)}</div>`;
return li;
}
// Go from the book view to the search view
function toggleSearchMode() {
var $wrapContent = document.querySelector("#wrap");
var $searchIcon = document.querySelector("#search-ico");
var $searchContainer = document.querySelector(".search-container");
if ($searchContainer.classList.contains("search-container--is-visible")) {
$searchContainer.classList.remove("search-container--is-visible");
$wrapContent.style.display = "";
$searchIcon.className = "ms-Icon--Search";
} else {
$searchContainer.classList.add("search-container--is-visible");
$wrapContent.style.display = "none";
$searchIcon.className = "ms-Icon--ChromeClose";
document.getElementById("search").focus();
}
}
function initSearch() {
var $searchInput = document.getElementById("search");
if (!$searchInput) {
return;
}
var $searchIcon = document.querySelector("#search-ico");
$searchIcon.addEventListener("click", toggleSearchMode);
var $searchResults = document.querySelector(".search-results");
var $searchResultsHeader = document.querySelector(".search-results__header");
var $searchResultsItems = document.querySelector(".search-results__items");
var MAX_ITEMS = 100;
var options = {
bool: "AND",
fields: {
title: {boost: 2},
body: {boost: 1},
}
};
var currentTerm = "";
var index = elasticlunr.Index.load(window.searchIndex);
$searchInput.addEventListener("keyup", debounce(function() {
var term = $searchInput.value.trim();
if (term === currentTerm || !index) {
return;
}
$searchResults.style.display = term === "" ? "none" : "block";
$searchResultsItems.innerHTML = "";
if (term === "") {
return;
}
var results = index.search(term, options).filter(function (r) {
return r.doc.body !== "";
});
if (results.length === 0) {
$searchResultsHeader.innerText = `Nothing like «${term}»`;
return;
}
currentTerm = term;
$searchResultsHeader.innerText = `${results.length} found for «${term}»:`;
for (var i = 0; i < Math.min(results.length, MAX_ITEMS); i++) {
if (!results[i].doc.body) {
continue;
}
// var item = document.createElement("li");
// item.innerHTML = formatSearchResultItem(results[i], term.split(" "));
console.log(results[i]);
$searchResultsItems.appendChild(formatSearchResultItem(results[i], term.split(" ")));
}
}, 150));
}
if (document.readyState === "complete" ||
(document.readyState !== "loading" && !document.documentElement.doScroll)
) {
initSearch();
} else {
document.addEventListener("DOMContentLoaded", initSearch);
}
// mobile
function burger() {
let x = document.querySelector("#trees");
let y = document.querySelector("#mobile");
if (x.style.display === "block") {
x.style.display = "none";
y.className = "ms-Icon--GlobalNavButton";
} else {
x.style.display = "block";
y.className = "ms-Icon--ChromeClose";
}
}
// https://aaronluna.dev/blog/add-copy-button-to-code-blocks-hugo-chroma/
function createCopyButton(highlightDiv) {
const button = document.createElement("button");
button.className = "copy-code-button ";
button.type = "button";
button.innerHTML = "&#xE8C8;";
button.addEventListener("click", () =>
copyCodeToClipboard(button, highlightDiv)
);
addCopyButtonToDom(button, highlightDiv);
}
async function copyCodeToClipboard(button, highlightDiv) {
const codeToCopy = highlightDiv.querySelector(":last-child > code")
.innerText;
try {
result = await navigator.permissions.query({ name: "clipboard-write" });
if (result.state == "granted" || result.state == "prompt") {
await navigator.clipboard.writeText(codeToCopy);
} else {
copyCodeBlockExecCommand(codeToCopy, highlightDiv);
}
} catch (_) {
copyCodeBlockExecCommand(codeToCopy, highlightDiv);
} finally {
codeWasCopied(button);
}
}
function copyCodeBlockExecCommand(codeToCopy, highlightDiv) {
const textArea = document.createElement("textArea");
textArea.contentEditable = "true";
textArea.readOnly = "false";
textArea.className = "copyable-text-area";
textArea.value = codeToCopy;
highlightDiv.insertBefore(textArea, highlightDiv.firstChild);
const range = document.createRange();
range.selectNodeContents(textArea);
const sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
textArea.setSelectionRange(0, 999999);
document.execCommand("copy");
highlightDiv.removeChild(textArea);
}
function codeWasCopied(button) {
button.blur();
button.innerHTML = "&#xE74E;";
setTimeout(function () {
button.innerHTML = "&#xE8C8;";
}, 2000);
}
function addCopyButtonToDom(button, highlightDiv) {
highlightDiv.insertBefore(button, highlightDiv.firstChild);
const wrapper = document.createElement("div");
wrapper.className = "highlight-wrapper";
highlightDiv.parentNode.insertBefore(wrapper, highlightDiv);
wrapper.appendChild(highlightDiv);
}
document
.querySelectorAll("pre")
.forEach((highlightDiv) => createCopyButton(highlightDiv));

View File

@ -1 +0,0 @@
<svg id="logo-11" width="119" height="30" viewBox="0 0 119 30" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M2.94098 27.825H28.591V2.175H2.94098V27.825ZM23.654 12.532H18.234V7.112H23.654V12.532ZM7.87698 7.112H13.3V17.468H23.654V22.888H7.87698V7.112ZM45.294 2.175C42.7574 2.175 40.2778 2.92718 38.1688 4.33641C36.0597 5.74564 34.4159 7.74863 33.4452 10.0921C32.4745 12.4356 32.2206 15.0142 32.7154 17.502C33.2103 19.9898 34.4317 22.275 36.2253 24.0686C38.0189 25.8623 40.3041 27.0837 42.7919 27.5786C45.2798 28.0734 47.8584 27.8195 50.2019 26.8488C52.5454 25.8781 54.5483 24.2343 55.9576 22.1252C57.3668 20.0161 58.119 17.5365 58.119 15C58.115 11.5998 56.7625 8.34004 54.3582 5.93575C51.9539 3.53145 48.6942 2.17897 45.294 2.175V2.175ZM45.294 22.888C43.7339 22.888 42.2088 22.4254 40.9116 21.5586C39.6145 20.6919 38.6034 19.46 38.0064 18.0186C37.4094 16.5773 37.2532 14.9913 37.5575 13.4611C37.8619 11.931 38.6132 10.5255 39.7163 9.42234C40.8195 8.31919 42.225 7.56793 43.7551 7.26357C45.2852 6.95921 46.8712 7.11542 48.3126 7.71244C49.7539 8.30946 50.9859 9.32049 51.8526 10.6177C52.7194 11.9148 53.182 13.4399 53.182 15C53.1788 17.0911 52.3467 19.0956 50.8681 20.5742C49.3895 22.0528 47.385 22.8848 45.294 22.888V22.888ZM104.013 2.175C101.476 2.17481 98.9967 2.92681 96.8875 4.33592C94.7783 5.74503 93.1344 7.74795 92.1635 10.0914C91.1927 12.4348 90.9385 15.0136 91.4333 17.5014C91.928 19.9893 93.1494 22.2746 94.943 24.0683C96.7365 25.862 99.0217 27.0836 101.51 27.5785C103.997 28.0734 106.576 27.8195 108.92 26.8489C111.263 25.8782 113.266 24.2344 114.675 22.1253C116.085 20.0162 116.837 17.5366 116.837 15C116.833 11.6 115.481 8.34036 113.077 5.9361C110.673 3.53183 107.413 2.17924 104.013 2.175V2.175ZM104.013 22.888C102.453 22.8882 100.928 22.4257 99.6304 21.5591C98.3331 20.6925 97.3219 19.4606 96.7247 18.0193C96.1275 16.578 95.9712 14.9919 96.2754 13.4617C96.5797 11.9316 97.3309 10.526 98.434 9.4227C99.5371 8.31944 100.943 7.56808 102.473 7.26364C104.003 6.9592 105.589 7.11535 107.03 7.71235C108.472 8.30934 109.704 9.32036 110.571 10.6176C111.437 11.9148 111.9 13.4399 111.9 15C111.897 17.0909 111.065 19.0952 109.586 20.5738C108.108 22.0524 106.104 22.8846 104.013 22.888V22.888ZM74.653 2.175C72.1164 2.175 69.6368 2.92718 67.5278 4.33641C65.4187 5.74564 63.7749 7.74863 62.8042 10.0921C61.8335 12.4356 61.5796 15.0142 62.0744 17.502C62.5693 19.9898 63.7907 22.275 65.5843 24.0686C67.3779 25.8623 69.6631 27.0837 72.1509 27.5786C74.6387 28.0734 77.2174 27.8195 79.5609 26.8488C81.9044 25.8781 83.9073 24.2343 85.3166 22.1252C86.7258 20.0161 87.478 17.5365 87.478 15C87.474 11.5998 86.1215 8.34004 83.7172 5.93575C81.3129 3.53145 78.0532 2.17897 74.653 2.175ZM74.653 22.888C73.1994 22.8887 71.774 22.4878 70.5339 21.7295C69.2939 20.9712 68.2874 19.8851 67.6257 18.5909C66.9641 17.2967 66.6728 15.8448 66.7842 14.3956C66.8956 12.9463 67.4052 11.556 68.2569 10.3781C69.1086 9.20026 70.2692 8.28061 71.6105 7.72071C72.9519 7.1608 74.4219 6.98242 75.8582 7.20524C77.2946 7.42807 78.6414 8.04343 79.7501 8.98342C80.8588 9.9234 81.6862 11.1515 82.141 12.532H74.653V17.468H82.141C81.6201 19.0433 80.6165 20.4147 79.2724 21.3875C77.9284 22.3604 76.3122 22.8853 74.653 22.888V22.888Z" class="ccustom" fill="#394149"></path> </svg>

Before

Width:  |  Height:  |  Size: 3.2 KiB

File diff suppressed because one or more lines are too long

View File

@ -1,3 +0,0 @@
User-agent: *
Allow: /
Sitemap: https://dat-adi.github.io/ff-zola/sitemap.xml

File diff suppressed because one or more lines are too long

View File

@ -1,43 +0,0 @@
<html>
<head>
<title>Zola</title>
</head>
<body>
<div class="container">
<h1>Welcome to Zola!</h1>
<p>
You're seeing this page because we couldn't find a template to render.
</p>
<p>
To modify this page, create a <b>section.html</b> file in the templates directory or
<a href="https://www.getzola.org/documentation/themes/installing-and-using-themes/" target="_blank">install a theme</a>.
<br>
You can find what variables are available in this template in the <a href="https:&#x2F;&#x2F;www.getzola.org&#x2F;documentation&#x2F;templates&#x2F;pages-sections&#x2F;#section-variables" target="_blank">documentation</a>.
</p>
</div>
<footer>
<a href="https://www.getzola.org/documentation/getting-started/cli-usage/" target="_blank">Get started with Zola</a>
</footer>
<style>
html {
line-height: 1.5;
}
h1 {
margin-bottom: 2rem;
}
.container {
font-family: "sans-serif";
text-align: center;
margin-top: 20vh;
padding: 2rem;
background: #e9e9e9;
}
footer {
position: fixed;
width: 100%;
bottom: 1rem;
text-align: center;
}
</style>
</body>
</html>

View File

@ -1,191 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | Interface </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
checked />
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
/>
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="interface">Interface&nbsp;<a class="anchor" href="#interface">&#xE732;</a></h1>
<p>This page is under construction. Please come back later.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,191 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | Northstar </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
checked />
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
/>
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="northstar">Northstar&nbsp;<a class="anchor" href="#northstar">&#xE732;</a></h1>
<p>This page is under construction. Please come back later.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,36 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://dat-adi.github.io/ff-zola/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/getting-started/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/getting-started/intro/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/getting-started/services/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/services/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/services/interface/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/services/northstar/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/solder/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/solder/november2020/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/solder/october2020/</loc>
</url>
<url>
<loc>https://dat-adi.github.io/ff-zola/solder/september2020/</loc>
</url>
</urlset>

View File

@ -1,43 +0,0 @@
<html>
<head>
<title>Zola</title>
</head>
<body>
<div class="container">
<h1>Welcome to Zola!</h1>
<p>
You're seeing this page because we couldn't find a template to render.
</p>
<p>
To modify this page, create a <b>section.html</b> file in the templates directory or
<a href="https://www.getzola.org/documentation/themes/installing-and-using-themes/" target="_blank">install a theme</a>.
<br>
You can find what variables are available in this template in the <a href="https:&#x2F;&#x2F;www.getzola.org&#x2F;documentation&#x2F;templates&#x2F;pages-sections&#x2F;#section-variables" target="_blank">documentation</a>.
</p>
</div>
<footer>
<a href="https://www.getzola.org/documentation/getting-started/cli-usage/" target="_blank">Get started with Zola</a>
</footer>
<style>
html {
line-height: 1.5;
}
h1 {
margin-bottom: 2rem;
}
.container {
font-family: "sans-serif";
text-align: center;
margin-top: 20vh;
padding: 2rem;
background: #e9e9e9;
}
footer {
position: fixed;
width: 100%;
bottom: 1rem;
text-align: center;
}
</style>
</body>
</html>

View File

@ -1,194 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | November 2020 </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
/>
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
checked />
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="november-2020">November 2020</h1>
<p>Errors were modularized at the back of <a href="https://github.com/forgeflux-org/northstar/">Northstar</a>.
A Docker CI was set up for the Northstar builds.</p>
<p>A <a href="https://github.com/forgeflux-org">GitHub organization</a> was created for ForgeFedv2, and the repositories for the projects were
transferred over to it.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,218 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | October 2020 </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
/>
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
checked />
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="october-2020">October 2020</h1>
<p>In the month of October, there were significant changes to the development in ForgeFedv2.
Starting off with the addition of the <a href="https://forgeflux-org.github.io/northstar/">OpenAPI Specification</a> for Northstar.</p>
<h2 id="northstar">Northstar</h2>
<p>A database model was created to store the details of the various forge interfaces,
having these details would be a prerequisite to looking up a server.</p>
<p>Endpoints were subsequently created, following the defined OpenAPI specification.
While the Lookup service was in the process of development, terminologies and the
concept for Forge Federation was also being <a href="https://github.com/forgeflux-org/spec/tree/master/rfc">discussed</a>.</p>
<p>Docker support as part of the CI process was added into the mix.
Keeping in mind, that the test suite was the method to work with the application for
the time being, an initial working model for the lookup service was established.</p>
<h2 id="interface">Interface</h2>
<p>Development of the <code>libgit</code> library had begun.
[libgit] is a library that processes the contributor's changes, and generates a patch.
Details regarding the implementation and feature set of libgit will be covered in another section.</p>
<h2 id="references">References</h2>
<ul>
<li>Database Initialization :: <a href="https://github.com/forgeflux-org/northstar/commit/6a82a1bc83d4733a5a077e33ad0c222aed496145">database init</a></li>
</ul>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>

View File

@ -1,197 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://dat-adi.github.io/ff-zola/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title> Docs | September 2020 </title>
</head>
<body>
<script>
fetch('https://api.github.com/repos/getzola/zola/releases/latest')
.then((response) => {
return response.json();
})
.then((data) => {
let release_name = data.name;
let html_url = data.html_url;
release.innerHTML = `<a href='${html_url}'>${release_name}</a>`;
});
</script>
<main>
<nav>
<a href="https:&#x2F;&#x2F;dat-adi.github.io&#x2F;ff-zola&#x2F;">
<img src="https://easydocs.codeandmedia.com/logo.svg" alt="" />
</a>
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
<input class="tree-toggle" type="checkbox" id="services"
/>
<label class="tree-toggle-label" for="services">Services</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/services/interface/">Interface</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/services/">Services</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/getting-started/intro/">How does it work?</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="solder"
checked />
<label class="tree-toggle-label" for="solder">Solder</label>
<ul class="subtree">
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/november2020/">November 2020</a>
</li>
<li >
<a href="https://dat-adi.github.io/ff-zola/solder/october2020/">October 2020</a>
</li>
<li class="active">
<a href="https://dat-adi.github.io/ff-zola/solder/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">
<h1 id="september-2020">September 2020</h1>
<p>In the month of September, project &quot;ForgeFedv2&quot; started off by
initializing the lookup service, <a href="https://github.com/forgeflux-org/northstar/">Northstar</a>.</p>
<p>The initialization mostly comprised of setting up the CI environment,
and focused more on defining the structure of the project, and how
we were to be going about it.</p>
<p>A discussion on the terminology and the primitive method of the
project's functionality were discussed.</p>
</div>
</article>
</main>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/elasticlunr.min.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/search_index.en.js" defer></script>
<script type="text/javascript" src="https://dat-adi.github.io/ff-zola/js.js" defer></script>
</body>
</html>