Setup continuous deployment #8

Open
opened 2024-02-05 07:42:13 +00:00 by linus · 0 comments
Owner

Currently, I'm imagining the following for the API

  1. Push a new image version tagged "prod" to the container registry at https://git.fsfe.org/TEDective/-/packages with Gitea Actions: https://about.gitea.com/resources/tutorials/automating-release-versioning-with-gitea-actions-to-the-gitea-package-registry
  2. Setup tedective-server to run the API from an OCI-image via docker/podman. This is fairly simple via https://mynixos.com/options/virtualisation.oci-containers.containers.%3Cname%3E
  3. Have a deployer user on holmes which is only able to run sudo nixos-rebuild switch --flake .#holmes from /srv/tedective/server (or wherever the server code resides on holmes). Currently, I only deploy remotely.
  4. Add the deployer user's SSH key to Gitea actions and trigger the rebuild once the image tagged prod is successfully pushed.
Currently, I'm imagining the following for the API 1. Push a new image version tagged "prod" to the container registry at https://git.fsfe.org/TEDective/-/packages with Gitea Actions: https://about.gitea.com/resources/tutorials/automating-release-versioning-with-gitea-actions-to-the-gitea-package-registry 2. Setup [tedective-server](https://git.fsfe.org/TEDective/server/) to run the API from an OCI-image via docker/podman. This is fairly simple via https://mynixos.com/options/virtualisation.oci-containers.containers.%3Cname%3E 3. Have a deployer user on `holmes` which is only able to run `sudo nixos-rebuild switch --flake .#holmes` from /srv/tedective/server (or wherever the server code resides on holmes). Currently, I only deploy remotely. 4. Add the deployer user's SSH key to Gitea actions and trigger the rebuild once the image tagged `prod` is successfully pushed.
linus added the
Kind/Enhancement
label 2024-02-05 17:31:52 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: TEDective/api#8
No description provided.