wiki/Infrastructure/maintenance-workflow.md

1.4 KiB

title description published date tags editor dateCreated
Maintenance workflow true 2025-02-15T22:05:51.789Z markdown 2025-02-15T21:28:29.716Z

Maintenance workflow

For the most part, our services are hosted on Alpine Linux LXC containers. We rely almost exclusively on APK to manage are applications, rather than relaying on Docker containers. This was done to have more control over our infrastructure, and to rely on either Alpine maintainers, or our own packages. Since not everything is packaged and available on Alpine's repos, we package the rest ourselves. Applications that packages ourselves are tracked on our iports repo. Each directory of that repo has APKBUILD files that define the building instructions.

When a new update is out, a Forgejo Actions creates an issue in that repo. This alerts the technical working group so that they can work on updating the packages, and then the servers. Once the APKBUILD is updated, a merge request can be made. It is within Merge requests that packages are built and sent to our Alpine Linux repo using Forgejo Actions. Many packages also have test suites to catch possible issues. Once they are pushed to the repo, the relevant servers can be updated using apk upgrade.

The Maintenance project gives a good overview of the status of each task.