Commit graph

20 commits

Author SHA1 Message Date
a793f064cd
chore: ignore .worktrees directory for git worktree isolation 2026-03-01 15:01:08 -06:00
9b1fa3ce50
Add mix parse_file task, fix datetime deprecation, update gitignore, fix cleanup worker test
- Fix PacketCleanupWorkerTest to use relative timestamps based on
  configured retention period rather than hardcoded 365-day assumption
  (was failing when PACKET_RETENTION_DAYS env var is set to a small value)
- Fix capture_aprs.py to use timezone-aware datetime.now(timezone.utc)
  instead of deprecated datetime.utcnow()
- Add bad_packets.txt to .gitignore
- Add mix task aprs.parse_file
2026-02-18 14:49:14 -06:00
447a76b3cc
update 2026-02-18 14:14:49 -06:00
a39059e14a
Add .envrc to gitignore 2026-02-18 12:39:41 -06:00
070b8870df
refactor 2025-10-12 10:56:49 -05:00
130f9a39d2
updates 2025-09-06 11:12:06 -05:00
cc5ecde197
Add test/screenshots to .gitignore 2025-07-29 12:40:35 -05:00
9b034cd211
vendor all js 2025-07-21 11:09:14 -05:00
7dc6c616a2
Bundle all vendor JavaScript files locally instead of loading from CDNs
This change eliminates all external CDN dependencies by bundling JavaScript
libraries locally using esbuild. All vendor files are now served from the
application's own assets, improving reliability and privacy.

Changes:
- Created assets/js/vendor.js to bundle all external libraries
- Added vendor bundle configuration to esbuild in config files
- Updated all templates to use local vendor.js instead of CDN scripts
- Created download-vendor-files.sh script to fetch vendor libraries
- Added vendor files to .gitignore (they're downloaded during setup)
- Updated CSS imports to include vendor stylesheets
- Added vendor build step to assets.deploy mix task

Bundled libraries:
- Leaflet 1.9.4 (mapping library)
- Leaflet.heat 0.2.0 (heatmap plugin)
- Leaflet.markercluster 1.5.3 (marker clustering)
- OverlappingMarkerSpiderfier 0.2.6 (overlapping marker handling)
- Chart.js 4.5.0 (charting library)
- chartjs-adapter-date-fns 3.0.0 (date adapter for Chart.js)

All functionality tested and working correctly with local bundles.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-21 09:52:39 -05:00
177f0746bc
Fix Gleam compile script error
- Remove gleam@@compile.erl from erlc paths to prevent compilation errors
- Add gleam@@compile.erl to .gitignore
- Update erlc_paths to only include 'src' directory
- This prevents Erlang from trying to compile Gleam's escript files

The error was caused by Erlang trying to compile a shell script that
starts with #\!/usr/bin/env escript as an Erlang source file.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 14:50:22 -05:00
05d35150c3
Add build directory to .gitignore
Prevent tracking of Gleam build artifacts and cache files

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-18 14:16:03 -05:00
ac1390ba12
alawys use vendored aprs library 2025-07-11 14:29:41 -05:00
38f240b3eb
fix info/neighbor page loading 2025-07-10 14:43:00 -05:00
5e48a7be8a
gitignore and drop existing users table 2025-07-04 16:22:51 -05:00
f08330b46c
weather fixing 2025-06-25 11:40:04 -05:00
ce7c50caa1
refactor to use external parser 2025-06-24 14:22:09 -05:00
158ec1ec2b clean up and ignore horusec files
Former-commit-id: 45134235a5cf4dd41c42e618c243b84fba5213e2
2025-06-15 17:20:13 -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
6c48b997c0 fix all tests 2025-06-13 09:59:24 -05:00
d40567dfeb initial 2023-01-26 13:20:23 -06:00