97 lines
6.9 KiB
XML
97 lines
6.9 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
|
|
<title> - monthly-report</title>
|
|
<link href="https://librepages.org/tags/monthly-report/atom.xml" rel="self" type="application/atom+xml"/>
|
|
<link href="https://librepages.org"/>
|
|
<generator uri="https://www.getzola.org/">Zola</generator>
|
|
<updated>2022-12-31T00:00:00+00:00</updated>
|
|
<id>https://librepages.org/tags/monthly-report/atom.xml</id>
|
|
<entry xml:lang="en">
|
|
<title>December 2022 Monthly Report</title>
|
|
<published>2022-12-31T00:00:00+00:00</published>
|
|
<updated>2022-12-31T00:00:00+00:00</updated>
|
|
<link href="https://librepages.org/blog/december-2022-monthly-report/" type="text/html"/>
|
|
<id>https://librepages.org/blog/december-2022-monthly-report/</id>
|
|
<content type="html"><p>These past couple of months have been very busy interesting, LibrePages
|
|
went from being a simple <code>git pull</code> webhook to fully-fledged platform
|
|
that can deploy static sites from <em>any</em> Git forge.</p>
|
|
<p>This month, the following things were accomplished:</p>
|
|
<h2 id="1-deploy-site-from-dashboard">1. Deploy site from dashboard<a class="zola-anchor" href="#1-deploy-site-from-dashboard" aria-label="Anchor link for: 1-deploy-site-from-dashboard"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p>It is now possible to deploy and manage websites with log inspection
|
|
right from the dashboard. LibrePages will automatically assign a
|
|
randomly generated, but friendly-sounding subdomain on a domain that the
|
|
LibrePages system manages. It is also possible to inspect deployment
|
|
events, like site updates, to troubleshoot errors in the deployment
|
|
pipelines.</p>
|
|
<p>Custom domain support isn't available at the moment but will be
|
|
implemented soon.</p>
|
|
<h2 id="2-forms-support">2. Forms support<a class="zola-anchor" href="#2-forms-support" aria-label="Anchor link for: 2-forms-support"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p>Forms are useful but creating a separate backed or relying on
|
|
privacy-invasive tech like Google Forms is very inconvenient. Popular
|
|
JAMStack platforms like Netlify provide forms support, so we thought
|
|
implementing forms support will be useful.</p>
|
|
<p>LibrePages Forms is a <a href="https://git.batsense.net/LibrePages/forms">separate
|
|
service</a> that can be
|
|
integrated into the system. It accepts form submissions in both JSON and
|
|
<code>application/x-www-form-urlencode</code>. Adding it to your
|
|
LibrePages-deployed website is very simple, please see
|
|
<a href="https://docs.librepages.org/forms/add/">here</a> for instructions.</p>
|
|
<h2 id="3-forgejo-and-gitea-integration">3. Forgejo and Gitea integration<a class="zola-anchor" href="#3-forgejo-and-gitea-integration" aria-label="Anchor link for: 3-forgejo-and-gitea-integration"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p>LibrePages exposes an endpoint which users can call to update their
|
|
deployments. This allows us to support all types of Git-based forges. In
|
|
addition to the endpoint, we now expose a webhook that is compatible
|
|
with Forgejo and Gitea. This way, the deployment will automatically be
|
|
updated when a push event is received at the deployed branch, without the
|
|
user (or their CI) requiring to call the endpoint.</p>
|
|
<h2 id="4-sysadmin-logging-and-debugging">4. Sysadmin: logging and debugging<a class="zola-anchor" href="#4-sysadmin-logging-and-debugging" aria-label="Anchor link for: 4-sysadmin-logging-and-debugging"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p>LibrePages is complicated system made of multiple services. It also uses
|
|
several third-party applications, like Nginx, to serve websites.
|
|
Debugging an issue that affecting multiple services used be complicated
|
|
but LibrePages now includes instrumentation to monitor with
|
|
<a href="https://prometheus.io">Prometheus</a> and provides distributed tracing via
|
|
OpenTelemetry-based based utilities like <a href="https://www.jaegertracing.io/">Jagger</a>.</p>
|
|
<h2 id="5-nginx-bind-and-let-s-encrypt">5. Nginx, bind and Let's Encrypt<a class="zola-anchor" href="#5-nginx-bind-and-let-s-encrypt" aria-label="Anchor link for: 5-nginx-bind-and-let-s-encrypt"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p>LibrePages is modular, it can be integrated into any existing system,
|
|
like <a href="https://gna.org">Gna!</a> and <a href="https://enough.community/">Enough
|
|
Community</a> to provide static site hosting. We
|
|
do this using
|
|
<a href="https://git.batsense.net/LibrePages/conductor">Conductor</a>, which allows
|
|
LibrePages to integrate with multiple DNS servers/providers, reverse
|
|
proxies and other third-party applications that LibrePages would depend
|
|
on.</p>
|
|
<p>Currently, we are working on supporting a system based on Nginx, Bind9 and Let's Encrypt.</p>
|
|
<h2 id="6-infrastructure-as-code">6. Infrastructure-as-Code<a class="zola-anchor" href="#6-infrastructure-as-code" aria-label="Anchor link for: 6-infrastructure-as-code"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p><a href="https://git.batsense.net/LibrePages/Infrastructure-as-Code">Infrastructure as code to deploy the full
|
|
system</a> is
|
|
being worked on. So far, we've implemented deploying a Debian server
|
|
using Terraform and libvirt. Installing and and configuring LibrePages
|
|
is being worked on.</p>
|
|
<h2 id="thanks">Thanks<a class="zola-anchor" href="#thanks" aria-label="Anchor link for: thanks"
|
|
><span class="anchor-icon">#</span></a
|
|
>
|
|
</h2>
|
|
<p>I would like to thank the <a href="https://www.easter-eggs.com/">Easter-eggs</a>
|
|
for funding team for funding <a href="https://forum.gna.org/t/5-000-contract-aravinth-manivannan-easter-eggs/58">my work on
|
|
LibrePages</a> &lt;3</p>
|
|
</content>
|
|
</entry>
|
|
</feed>
|