Commit graph

24 commits

Author SHA1 Message Date
d3924ea395
bump upload-sarif version 2025-06-15 19:44:21 -05:00
221f7faaa9
ensure previous ci runs get stopped on new runs 2025-06-15 19:39:51 -05:00
5347c7afec
remove k3s deploy 2025-06-15 19:38:13 -05:00
2206ac1965
update horusec scan 2025-06-15 19:37:40 -05:00
b8f61a9a06
docker updates 2025-06-15 17:44:31 -05:00
7a8a5443f6
docker updates 2025-06-15 17:39:28 -05:00
c5617b6e8d
docker updates 2025-06-15 17:36:51 -05:00
e8e86eb5b5 add horusec to ci
Former-commit-id: 072958df9e98bf11911c067c1231d1080d80bf5c
2025-06-15 17:19:26 -05:00
1df2f4a716 add security scan for docker 2025-06-15 10:43:38 -05:00
4a6665ac76 remove fly deploy 2025-06-13 15:10:45 -05:00
8a38859990 fly things 2025-06-13 15:10:29 -05:00
58774baca1 ci test 2025-06-13 14:39:37 -05:00
c13acd6a6f ci test 2025-06-13 14:13:54 -05:00
bda6ec4d68 ci test 2025-06-13 14:09:15 -05:00
76b7ce427a ci test 2025-06-13 14:07:43 -05:00
8f8271af06 ci test 2025-06-13 14:01:17 -05:00
26a92381c6 ci test 2025-06-13 13:59:01 -05:00
a42676cd2e add tailscale 2025-06-13 13:38:51 -05:00
308e216fe0 bump elixir ci version 2025-06-13 13:27:14 -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
8b28c57a74 update github ci 2023-12-17 12:14:47 -06:00
9b51afa81c remove coveralls for now 2023-01-31 14:18:39 -06:00
4273ff6b2b add coveralls 2023-01-31 13:49:31 -06:00
ed014503e6 add github ci 2023-01-26 13:50:37 -06:00