new deploy: 2023-10-01T18:03:42+00:00

This commit is contained in:
Aravinth Manivannan 2023-10-01 18:03:42 +00:00 committed by realaravinth
parent 9007fec1e5
commit 80d130719c
14 changed files with 30 additions and 1531 deletions

View file

@ -1,225 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/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 | Events </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;docs.forgeflux.org">
<img src="/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://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/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://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li class="active">
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</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">
<h1 id="events">Events</h1>
<p>Events are those operations that are performed on the Forge side,
such as Pull Requests, and Issues.</p>
<p>These events are operations of their own, and are handled within Interface
through Notifications.</p>
<p>The flow of processing an operation in the forge is done as follows,</p>
<ol>
<li>We poll for Notifications through the <a href="https://github.com/forgeflux-org/interface/blob/master/interface/runner/runner.py">Job Runner</a>.</li>
<li>Proceed to send over this Notification to the Events Endpoint, where the Notification is parsed, and processed.</li>
<li>After identification, it is converted into a event, PR or Issue.</li>
</ol>
<h2 id="references">References</h2>
<ul>
<li>Events Endpoint :: <a href="https://github.com/forgeflux-org/interface/blob/master/interface/runner/events.py">Info</a></li>
</ul>
</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>

View file

@ -1,246 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/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;docs.forgeflux.org">
<img src="/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://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/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://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li class="active">
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</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">
<h1 id="how-does-it-work">How does it work?</h1>
<p>Bridges connect people, and so does ForgeFlux!</p>
<h2 id="interface">Interface</h2>
<p>The bridging component in ForgeFlux is called Interface.</p>
<p><a href="https://docs.forgeflux.org/services/interface/">Interfaces</a> are programs that run on either
side of the bridge, i.e, a bridge requires the participation of two
interfaces. Currently, Interfaces bridge the following operations:</p>
<ul>
<li>Pull Requests</li>
<li>Issues</li>
<li>Comments</li>
</ul>
<p>An Interface implementation for a software forge is able to
talk to the forge's API and speak <a href="https://activitypub.rocks/">ActivityPub
protocol</a> for server-to-server
communications. This architecture makes it possible to implement an
Interface for any forge setup.</p>
<h2 id="northstar">Northstar</h2>
<p>Since Interfaces run external to the forges, a method to find Interfaces
that service forges was required.</p>
<p><a href="https://docs.forgeflux.org/services/northstar/">Northstar</a> is a discovery service that maps an
Interface and the forge that it services. It acts very similar to DNS,
except instead of querying host names with intent to find corresponding
IP address, Northstar is queried with the forge's host name to discover
the Interfaces that service it.</p>
<h2 id="resources">Resources</h2>
<ul>
<li><a href="https://github.com/forgeflux-org/spec/blob/master/rfc/1-ecosystem-architecture/1-ecosystem-architecture.md">ecosystem-architecture</a>:
describes basic architecture and terminology used in ForgeFlux</li>
</ul>
</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>

View file

@ -1,238 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/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;docs.forgeflux.org">
<img src="/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://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/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://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</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">
<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://docs.forgeflux.org/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://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>

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<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</title>
@ -12,18 +12,6 @@
<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>
@ -38,8 +26,6 @@
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
@ -48,68 +34,23 @@
<input class="tree-toggle" type="checkbox" id="services"
<input class="tree-toggle" type="checkbox" id="interface"
/>
<label class="tree-toggle-label" for="services">Services</label>
<label class="tree-toggle-label" for="interface">Interface</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
<input class="tree-toggle" type="checkbox" id="northstar"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<label class="tree-toggle-label" for="northstar">Northstar</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</a>
</li>
</ul>

File diff suppressed because one or more lines are too long

View file

@ -1,265 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/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;docs.forgeflux.org">
<img src="/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://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/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://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</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">
<h1 id="interface">Interface&nbsp;<a class="anchor" href="#interface">&#xE732;</a></h1>
<p>Interface is a service that acts as a connecting end of the bridge, listening
in for Notifications from a particular forge repository.</p>
<p>These notifications, which may be in the form of a Comment, Issue, or Pull Request,
are then further defined into <a href="https://docs.forgeflux.org/getting-started/events/">Events</a> to create
a workable unit set, that the interface can use to translate operations from
one forge to another forge.</p>
<p>The procedure of the Notification-Event Translation System, works as follows,</p>
<ol>
<li>Upon creation of the Interface, and set up of a forge repository to look for, the interface subscribes to the forge's notifications.</li>
<li>Every notification received by the interface from the forges, is then identified and translated into it's respective <code>Event</code> model, be it an Issue or PR.</li>
<li>Upon conversion into the respective model, Interface processes these <code>Events</code>, and converts them into the model required for the destination forge.</li>
</ol>
<h2 id="setting-up-the-development-environment">Setting up the Development Environment&nbsp;<a class="anchor" href="#setting-up-the-development-environment">&#xE732;</a></h2>
<p>In order to test out and utilise the Northstar lookup service, we will need to set
up an interface to be run on the local machine. There are a few configuration
changes that must be made for the interface to be recognized by the lookup service.</p>
<p>Changes to the <code>config/settings.toml</code>,</p>
<pre data-lang="toml" style="background-color:#eff1f5;color:#4f5b66;" class="language-toml "><code class="language-toml" data-lang="toml"><span>[default.system]
</span><span style="color:#bf616a;">northstar </span><span>= &quot;</span><span style="color:#a3be8c;">http://computer.domain.com:port</span><span>&quot;
</span><span>
</span><span>[default.server]
</span><span style="color:#bf616a;">url </span><span>= &quot;</span><span style="color:#a3be8c;">http://computer.domain.com:port</span><span>&quot;
</span></code></pre>
<p>Note that the port assigned to the interface and northstar must not already be in
use by another application/service, and that you can find out the hostname for
your system through the following command,</p>
<pre data-lang="sh" style="background-color:#eff1f5;color:#4f5b66;" class="language-sh "><code class="language-sh" data-lang="sh"><span style="color:#bf616a;">hostname --fqdn
</span></code></pre>
<p>There are a few more settings to add in, as a means to validate the user who hosts
the interface, this also depends on the forge of your choosing. As of right now,
<code>interface</code> supports only gitea, and we can fill up the <code>config/settings.toml</code>,
with the same.</p>
<pre data-lang="toml" style="background-color:#eff1f5;color:#4f5b66;" class="language-toml "><code class="language-toml" data-lang="toml"><span>[default]
</span><span style="color:#bf616a;">forge </span><span>= &quot;</span><span style="color:#a3be8c;">gitea</span><span>&quot;
</span><span>
</span><span>[default.gitea]
</span><span style="color:#bf616a;">host </span><span>= &quot;</span><span style="color:#a3be8c;">https://gitea.com</span><span>&quot;
</span><span style="color:#bf616a;">api_key </span><span>= &quot;</span><span style="color:#a3be8c;">generate-the-api-key-from-gitea-and-paste-here</span><span>&quot;
</span><span style="color:#bf616a;">username </span><span>= &quot;</span><span style="color:#a3be8c;">fluxer101</span><span>&quot;
</span><span style="color:#bf616a;">password </span><span>= &quot;</span><span style="color:#a3be8c;">flux101</span><span>&quot;
</span></code></pre>
<p>Note that the API key in Gitea is known as an access token, one which can be
generated <a href="https://gitea.com/user/settings/applications">here</a>.</p>
<h2 id="faq">FAQ&nbsp;<a class="anchor" href="#faq">&#xE732;</a></h2>
<h3 id="why-does-an-integrity-error-show-up">Why does an integrity error show up?&nbsp;<a class="anchor" href="#why-does-an-integrity-error-show-up">&#xE732;</a></h3>
<p>As ForgeFlux's Interface is an actively developing project, there are a few
errors that are caused by an upgrade to the database, in which case integrity errors
are bound to pop up. In this case, remove the <code>instance/</code> directory where the database
for the service would be stored, to rebuild it the next time the application is run.</p>
</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>

View file

@ -1,217 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/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;docs.forgeflux.org">
<img src="/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://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li class="active">
<a href="https://docs.forgeflux.org/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://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</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">
<h1 id="northstar">Northstar&nbsp;<a class="anchor" href="#northstar">&#xE732;</a></h1>
<p>Northstar is a lookup service, which acts as a source of information
for interfaces which hold particular forge information.</p>
<p>An <a href="https://docs.forgeflux.org/services/interface/">Interface</a> connects and looks
through an instance of Northstar, to find the appropriate the forge
information that it seeks.</p>
<p>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 <a href="https://northstar.forgeflux.org/docs/openapi/">OpenAPI specification</a>
for Northstar.</p>
</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>

View file

@ -4,25 +4,10 @@
<loc>https://docs.forgeflux.org/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/getting-started/</loc>
<loc>https://docs.forgeflux.org/Interface/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/getting-started/events/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/getting-started/how/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/getting-started/services/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/services/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/services/interface/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/services/northstar/</loc>
<loc>https://docs.forgeflux.org/Northstar/</loc>
</url>
<url>
<loc>https://docs.forgeflux.org/updates/</loc>

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<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 | December 2020 </title>
@ -12,18 +12,6 @@
<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>
@ -38,8 +26,6 @@
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
@ -48,68 +34,23 @@
<input class="tree-toggle" type="checkbox" id="services"
<input class="tree-toggle" type="checkbox" id="interface"
/>
<label class="tree-toggle-label" for="services">Services</label>
<label class="tree-toggle-label" for="interface">Interface</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
<input class="tree-toggle" type="checkbox" id="northstar"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<label class="tree-toggle-label" for="northstar">Northstar</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</a>
</li>
</ul>
@ -201,7 +142,7 @@
<h1 id="december-2020">December 2020</h1>
<h2 id="northstar">Northstar</h2>
<p>As the development on <a href="https://docs.forgeflux.org/services/northstar/">Northstar</a> nears the completion phase,
<p>As the development on <a href="https://docs.forgeflux.org/Northstar/">Northstar</a> nears the completion phase,
updates on it have slowed down, and the only updates that were made during this
stage mostly comprises of configuration updates.
These updates were mostly related to bootstrapping <a href="https://www.dynaconf.com/">DynaConf</a>,

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<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 | November 2020 </title>
@ -12,18 +12,6 @@
<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>
@ -38,8 +26,6 @@
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
@ -48,68 +34,23 @@
<input class="tree-toggle" type="checkbox" id="services"
<input class="tree-toggle" type="checkbox" id="interface"
/>
<label class="tree-toggle-label" for="services">Services</label>
<label class="tree-toggle-label" for="interface">Interface</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
<input class="tree-toggle" type="checkbox" id="northstar"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<label class="tree-toggle-label" for="northstar">Northstar</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</a>
</li>
</ul>
@ -203,7 +144,7 @@ and the repositories for the projects were transferred over to it.</p>
<li>Northstar functionality was integrated into Interface, and tests were set up to ensure that it could be contacted through Interface's methods.</li>
<li>A locking mechanism was set up for concurrent operations on Git utilizing <a href="https://sled.rs/">Sled</a>.</li>
<li>Implementations of a basic job runner was set up to mimic retrieving requests from Forges, through periodically retrieving notifications.</li>
<li>The endpoints for notifications was subsequently set up, and responses to these Notifications were termed as <a href="https://docs.forgeflux.org/getting-started/events/">events</a>.</li>
<li>The endpoints for notifications was subsequently set up, and responses to these Notifications were termed as events.</li>
<li>The endpoints for processing these events were then created.</li>
</ol>
<p>Shifted over the configuration management to <a href="https://www.dynaconf.com/">Dynaconf</a>.</p>

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<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 | October 2020 </title>
@ -12,18 +12,6 @@
<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>
@ -38,8 +26,6 @@
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
@ -48,68 +34,23 @@
<input class="tree-toggle" type="checkbox" id="services"
<input class="tree-toggle" type="checkbox" id="interface"
/>
<label class="tree-toggle-label" for="services">Services</label>
<label class="tree-toggle-label" for="interface">Interface</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
<input class="tree-toggle" type="checkbox" id="northstar"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<label class="tree-toggle-label" for="northstar">Northstar</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</a>
</li>
</ul>

View file

@ -4,7 +4,7 @@
<meta charset="UTF-8">
<link rel="stylesheet" href="https://docs.forgeflux.org/main.css">
<link rel="icon" href="https://www.getzola.org/favicon.ico">
<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 | September 2020 </title>
@ -12,18 +12,6 @@
<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>
@ -38,8 +26,6 @@
<div id="release"></div>
<a href="javascript:void(0);" onclick="burger()" id="mobile" class="ms-Icon--GlobalNavButton"></a>
<div id="trees">
@ -48,68 +34,23 @@
<input class="tree-toggle" type="checkbox" id="services"
<input class="tree-toggle" type="checkbox" id="interface"
/>
<label class="tree-toggle-label" for="services">Services</label>
<label class="tree-toggle-label" for="interface">Interface</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/services/interface/">Interface</a>
</li>
<li >
<a href="https://docs.forgeflux.org/services/northstar/">Northstar</a>
</li>
</ul>
<input class="tree-toggle" type="checkbox" id="getting-started"
<input class="tree-toggle" type="checkbox" id="northstar"
/>
<label class="tree-toggle-label" for="getting-started">Getting Started</label>
<label class="tree-toggle-label" for="northstar">Northstar</label>
<ul class="subtree">
<li >
<a href="https://docs.forgeflux.org/getting-started/services/">Services</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/events/">Events</a>
</li>
<li >
<a href="https://docs.forgeflux.org/getting-started/how/">How does it work?</a>
</li>
</ul>