Introduction
This repository contains the source code and documentation for all of my APIs. It serves as a centralised location for my self-hosted services to use.
Structure
The repository is organised into the following main directories:
Deployment
The main branch build is controlled by .gitea/workflows/build.yml. On a
successful build it packages the Spring Boot jar, installs the project-owned
misc/org-backend.service unit into systemd, reloads systemd, enables the
service, and restarts it.
The service runs the stable build artifact at:
/home/zaine/master-folder/projects/java_projects/org_backend/target/org-backend.jar
Runtime configuration is loaded by systemd from:
/etc/org-backend/org-backend.env
Create that file once on the server with the production values required by the app. The Gitea deploy step verifies that it exists, but it does not create or overwrite it.
Protected API routes require the shared API key from ORG_BACKEND_API_KEY.
Clients send it as:
X-Org-Api-Key: <key>
The live systemd unit at /etc/systemd/system/org-backend.service is managed
as a symlink to misc/org-backend.service, so the project copy is the source of
truth.