Commit Graph

11 Commits

Author SHA1 Message Date
davidmonterocrespo24 4dbb860237 fix(ci): pass VELXIO_LICENSE_KEY to publish workflow
After the Dockerfile.standalone refactor (PR #182), the qemu-provider
stage requires VELXIO_LICENSE_KEY to fetch libqemu .so + ESP32 ROM
blobs from velxio.dev's gated download endpoint. The Publish Docker
Image workflow was missing the build-arg, so it failed on every push
to master and the GHCR / Docker Hub :master image went stale.

Plumbs the existing repo secret VELXIO_BUILD_LICENSE_KEY into
docker/build-push-action@v6's build-args list. Same secret the
backend-e2e-tests workflow already consumes — single source of truth.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 06:26:29 +02:00
davidmonterocrespo24 5a00f1a380 ci: cap Actions storage growth — buildx mode=min + auto-cleanup workflow
Hit the 0.5 GB Actions storage quota today. Two-pronged fix.

1. docker-publish.yml: cache-to switched from mode=max to mode=min.
   With mode=max, buildx pushes every intermediate layer of the
   multi-stage build (qemu-provider, espidf-builder, frontend-builder,
   final stage) into the GHA cache. For our image that's easily
   500 MB-1 GB per cache update. mode=min stores only the layers used
   by the final image; incremental rebuilds still hit the cache for
   the meaningful steps but the footprint drops by roughly 60-70%.

2. actions-cache-cleanup.yml (new workflow):
   - Weekly schedule (Sun 04:00 UTC): deletes every cache older than
     14 days. Catches stale entries from deleted branches.
   - On `pull_request: closed`: deletes caches scoped to that PR's
     branch ref AND the merge ref. Buildx + actions/cache scope per
     branch, so a closed PR's caches are immediately stale — without
     this they linger until the GHA-default 7-day eviction.
   - Manual `workflow_dispatch` for one-shot runs when storage is
     already over.

Permissions: each job sets `actions: write` (the minimum needed for
cache deletion). No GH_TOKEN secret required; the default
GITHUB_TOKEN already has the scope.

Quota math after this lands:
  Before: every push to master = +500 MB-1 GB cache, kept 7 days
          → quota fills in 1-2 builds.
  After:  every push to master = +200-400 MB cache, plus old branches
          actively swept; 0.5 GB stays comfortable.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 23:27:02 +02:00
David Montero Crespo a3db014d2d feat: multi-arch Docker (amd64+arm64) and fix LED ground check
Docker multi-arch:
- Dockerfile downloads arch-specific QEMU .so via TARGETARCH
- docker-publish.yml adds setup-qemu-action and platforms: linux/amd64,linux/arm64
- qemu-lcgamboa submodule updated (matrix build for both architectures)

LED fix:
- LEDs now require cathode wired to GND (or LOW GPIO) to light up
- Previously LEDs turned on with anode HIGH regardless of cathode connection
- Updated tests to verify anode+cathode behavior
2026-04-07 03:58:52 -03:00
David Montero Crespo 826c207970 feat: update workflows for ESP-IDF toolchain and Docker image publishing 2026-04-04 23:28:06 -03:00
David Montero Crespo b4365ec877 feat: implement sitemap generation and search engine pinging in build process 2026-03-23 18:52:35 -03:00
David Montero Crespo 23186baf04 feat: redesign landing page with PCB schematic aesthetic and update Docker Hub description
- Remove gradient text, floating chips and heart icon from landing page
- Add circuit schematic SVG hero (Arduino + R1 + LED + oscilloscope window)
- Add peter-evans/dockerhub-description step to CI workflow

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-06 17:30:51 -03:00
David Montero Crespo 22de9173ba fix: update Dockerfile to clone wokwi-libs directly and streamline build process 2026-03-06 13:53:26 -03:00
David Montero Crespo 0d5d440a56 fix: enhance Docker build process and improve file explorer resizing functionality 2026-03-06 11:20:47 -03:00
David Montero Crespo 8f0c431f8d fix: checkout submodules and use robust docker build stage 2026-03-06 10:59:22 -03:00
David Montero Crespo f071830ab5 fix: change branch to master in docker-publish workflow 2026-03-06 10:50:55 -03:00
David Montero Crespo a5c6987aca feat: implement user authentication and project management features
- Add LoginPage and RegisterPage for user authentication.
- Create UserProfilePage to display user projects.
- Implement ProjectPage for viewing and editing individual projects.
- Introduce authService for handling user login, registration, and session management.
- Add projectService for managing project data retrieval and manipulation.
- Enhance EditorPage with file management capabilities and save prompts.
- Introduce Zustand stores for managing authentication, editor state, and project state.
- Add reserved usernames utility to prevent certain usernames during registration.
- Update compilation service to handle multiple files for Arduino sketches.
2026-03-06 10:14:50 -03:00