Cloud#
This repo sets up provisioning and configuration for services.
/provision contains instructions for provisioning servers, dns, etc. usually with terraform.
/configure sets up those servers and has different playbooks. This isi done with ansible.
Tangled / Knot server#
We're running both gitea and knot on the same server, so we can't (?) use the same port for both. knot is on 2223, gitea is on 2222. So when you first connect to the knot server, you should run the following:
ssh -p 2223 git@knot.nagee.dev -i ...
Also, add the following to your ~/.ssh/config:
Host knot.nagee.dev
Port 2223
IdentifyFile /path/to/your/private/key
One thing you have to do when starting the knot server is chowning the /app directory :(
chown -R git:git /app
chown -R git:git /home
Building knot locally#
This turned out to be a little difficult. The easiest thing to do is to run it with docker
> cd .local-build/
> git clone https://tangled.org/@tangled.org/core
> cd core
> docker run --rm \
--platform linux/amd64 \
-v "$PWD":/src \
-w /src \
golang:1.25 \
bash -c '
apt-get update &&
apt-get install -y gcc libc6-dev &&
CGO_ENABLED=1 GOOS=linux GOARCH=amd64 \
go build -o knot ./cmd/knot'
Upgrading a service#
- Update
ServiceVersionsinconfigure/operations/services.pywith your new service version - Run
mise run op-release
Releasing a new service#
- Update
SERVICESinconfigure/operations/services.pywith your new service - Run
mise run op-add-service
Foundry and SigNoz#
This is experimental, so was installed manually.
First, foundry was installed using the instructions here https://github.com/SigNoz/foundry
I did have to do the following to get foundryctl to work and I followed the prerequesites here: https://github.com/SigNoz/foundry/tree/main/docs/examples/systemd/binary#prerequisites
I changed the storage option to sqlite instead of postgresql.
Secrets#
infra_do_space_json:
- Go to