Commit graph

29 commits

Author SHA1 Message Date
062489f5ae
staging fix 2025-07-11 13:19:24 -05:00
711d92ebb6
performance improvements 2025-07-08 10:03:52 -05:00
79fa7713ab
release tweak 2025-07-07 17:12:42 -05:00
5a6a782a03
release tweak 2025-07-07 17:09:46 -05:00
06efe1834b
release tweak 2025-07-07 17:02:17 -05:00
0bee0228b0
fix app name 2025-07-07 16:46:48 -05:00
9a6f649157
add clustering 2025-07-07 16:41:14 -05:00
b2f9352091
parser hash fix 2025-07-07 13:02:49 -05:00
294a54823d
cors fix 2025-07-05 13:03:27 -05:00
172da7d393
upgrade more with modern phoenix 2025-07-05 08:04:06 -05:00
9c69141db5
postgres tweaks 2025-06-25 12:10:04 -05:00
d8d69560a3
cleanup to redeploy 2025-06-25 09:31:23 -05:00
91cd2688f7
db timeout increase 2025-06-25 08:57:45 -05:00
ce7c50caa1
refactor to use external parser 2025-06-24 14:22:09 -05:00
464920fbed
test cleanup 2025-06-17 11:26:35 -05:00
03284d94ef
postgis fix 2025-06-16 11:46:51 -05:00
445c9899cf
fix bounds error 2025-06-16 11:36:49 -05:00
e107cd7a4b
dokku port fixes 2025-06-16 10:43:37 -05:00
74fe164c5b distroless 2025-06-15 15:14:11 -05:00
8a38859990 fly things 2025-06-13 15:10:29 -05:00
google-labs-jules[bot]
1badb192b5 feat: Implement K3s deployment with GitHub Actions CI/CD
This commit introduces a complete setup for deploying the Phoenix application
to a K3s Kubernetes cluster, along with a GitHub Actions workflow for
automated builds and deployments.

Key changes include:

- **Kubernetes Manifests (`k8s/`)**:
    - Namespace (`aprs-app`) for isolating application resources.
    - PostgreSQL setup: PersistentVolumeClaim, Deployment, and Service.
    - Application setup: Deployment (with init container for migrations) and
      Service (NodePort).
    - An example secrets file (`k8s/secrets.yaml.example`) for configuration.
    - `.gitignore` updated to exclude `k8s/secrets.yaml`.

- **GitHub Actions Workflow (`.github/workflows/deploy-k3s.yaml`)**:
    - Builds the Docker image on pushes to the main branch.
    - Pushes the image to GitHub Container Registry (GHCR).
    - Deploys the application to K3s by applying the manifests.
    - Dynamically updates the application deployment with the correct image tag.
    - Requires `KUBE_CONFIG_DATA` GitHub secret for K3s authentication.

- **Application Configuration (`config/runtime.exs`)**:
    - Commented out `libcluster` configuration specific to Fly.io to prevent
      issues in a standard K3s environment.

- **Documentation (`README.md`)**:
    - Added a new "Kubernetes (K3s) Deployment" section detailing:
        - Prerequisites and initial setup (GitHub & K8s secrets).
        - Workflow overview.
        - Application configuration notes (health checks, migrations).
        - Instructions for accessing the application.

This setup provides a robust foundation for CI/CD and running the
application in a self-hosted K3s environment.
2025-06-13 18:18:34 +00:00
47437424d9 try docker build 2025-01-27 13:59:42 -06:00
ff9eb9c614 update everything 2025-01-22 12:12:39 -06:00
04e09e03af update more 2024-01-14 17:45:31 -06:00
da296d852d auto style things 2023-12-17 12:11:57 -06:00
ba3436fc7c remove more fly things and tweak dockerfile 2023-01-29 12:56:28 -06:00
fadfacaf2d add clustering 2023-01-26 13:46:21 -06:00
182f3e9cb2 add aprs-is stuff 2023-01-26 13:38:37 -06:00
d40567dfeb initial 2023-01-26 13:20:23 -06:00