18 Commits

Author SHA1 Message Date
Julia McGhee
58cd9e21db Fix deploy: use if/then instead of && to avoid pipefail exit
All checks were successful
CI / lint-and-test (push) Successful in 30s
Deploy Production / deploy (push) Successful in 34s
CI / build (push) Successful in 33s
The Dockerfile check in the while-read loop used `[ -f ... ] && echo`,
which exits non-zero for packages without Dockerfiles. With bash's
pipefail, this killed the entire step. Also remove unused GitHub
workflow copies since CI runs on Gitea only.
2026-03-21 21:26:23 +00:00
Julia McGhee
34e629d955 Fix deploy: filter out non-app packages from build matrix
Some checks failed
CI / lint-and-test (push) Successful in 37s
CI / build (push) Successful in 27s
Deploy Production / deploy (push) Failing after 27s
Turbo's change detection includes shared packages like @homelab/db,
which don't have Dockerfiles. Filter to only apps with a Dockerfile
to prevent 'path not found' errors during docker build.
2026-03-21 21:19:15 +00:00
Julia McGhee
f0d9482bc8 Fix Docker build for harness workspace dependency on @homelab/db
Some checks failed
CI / lint-and-test (push) Successful in 29s
CI / build (push) Has been cancelled
Deploy Production / deploy (push) Has been cancelled
Switch harness Dockerfile to pnpm with repo root build context so
workspace:^ dependency on @homelab/db resolves. Use .dockercontext
marker file to opt individual apps into root context builds while
keeping web/api on their local app context.
2026-03-21 20:24:02 +00:00
Julia McGhee
580c6dced7 Fix registry auth: use REGISTRY_TOKEN secret instead of gitea.token
All checks were successful
CI / lint-and-test (push) Successful in 18s
CI / build (push) Successful in 19s
2026-03-21 18:12:06 +00:00
Julia McGhee
8958372716 Fix cache: combine export + pnpm install in single step
Some checks failed
CI / lint-and-test (push) Successful in 42s
CI / build (push) Has been cancelled
2026-03-21 17:53:16 +00:00
Julia McGhee
4bf4c0f639 Fix pnpm cache: use inline export instead of workflow env block
All checks were successful
CI / lint-and-test (push) Successful in 19s
CI / build (push) Successful in 19s
act_runner v0.3.0 doesn't propagate workflow-level or job-level
env: blocks to job containers. Use export in run commands instead.
First run warms cache, subsequent runs will show reused packages.
2026-03-21 17:51:14 +00:00
Julia McGhee
dc46f8c54a Move cache env vars to workflow level, remove debug step
All checks were successful
CI / lint-and-test (push) Successful in 35s
CI / build (push) Successful in 20s
Move PNPM_STORE_DIR and COREPACK_HOME to workflow-level env
which may propagate differently than job-level in act_runner.
2026-03-21 17:48:59 +00:00
Julia McGhee
1ef3383ba1 debug: check if pnpm-store volume is mounted in job container
All checks were successful
CI / lint-and-test (push) Successful in 43s
CI / build (push) Successful in 19s
2026-03-21 17:46:21 +00:00
Julia McGhee
d8715e361f Fix CI matrix and pnpm cache: set env vars in workflow, drop matrix
All checks were successful
CI / lint-and-test (push) Successful in 27s
CI / build (push) Successful in 21s
- Set PNPM_STORE_DIR and COREPACK_HOME as job env vars instead of
  relying on container.options -e flags which act_runner may ignore
- Replace fragile cross-job matrix with single-job loop for builds
- Both fixes: empty matrix app name and 0 reused packages
2026-03-21 17:29:26 +00:00
Julia McGhee
d13bc9103a Fix CI changes detection: build JSON array without jq
All checks were successful
CI / changes (push) Successful in 2s
CI / lint-and-test (push) Successful in 43s
CI / build (push) Has been skipped
2026-03-21 17:22:16 +00:00
Julia McGhee
b6bd2dbae0 Add workflow_dispatch trigger to deploy-production
All checks were successful
CI / changes (push) Successful in 2s
CI / lint-and-test (push) Successful in 31s
CI / build (push) Has been skipped
Allows manual trigger to build all apps (or specific ones).
Empty input builds web, api, harness. Useful for initial
registry population after migration.
2026-03-21 16:49:47 +00:00
Julia McGhee
98ab851b60 Use custom runner image with jq, kustomize, docker pre-installed
Some checks failed
CI / changes (push) Successful in 1s
Deploy Production / deploy (push) Failing after 26s
CI / build (push) Has been skipped
CI / lint-and-test (push) Successful in 35s
Build a runner-image based on node:20-bookworm with all CI tools
baked in, avoiding apt-get install in every workflow run. Runner
labels now point to gitea.coreworlds.io/lazorgurl/runner-image.
2026-03-21 16:39:34 +00:00
Julia McGhee
eb8e090283 Fix kustomize install: download binary, not apt package
Some checks failed
CI / changes (push) Successful in 5s
CI / lint-and-test (push) Successful in 23s
Deploy Production / deploy (push) Failing after 2m35s
CI / build (push) Has been skipped
kustomize isn't in Debian repos. Download from GitHub releases.
2026-03-21 16:36:06 +00:00
Julia McGhee
22488d5bf5 Fix CI: install jq/kustomize, fetch-depth 2 for deploy-production
Some checks failed
CI / changes (push) Successful in 5s
CI / lint-and-test (push) Successful in 41s
Deploy Production / deploy (push) Failing after 5s
CI / build (push) Has been skipped
node:20-bookworm doesn't include jq or kustomize. Also need
fetch-depth: 2 so HEAD~1 exists for turbo's change detection.
2026-03-21 16:34:22 +00:00
Julia McGhee
0b69d6c6f4 Simplify workflows: drop setup-node/pnpm-action, use corepack
Some checks failed
CI / changes (push) Successful in 1s
CI / lint-and-test (push) Successful in 32s
Deploy Production / deploy (push) Failing after 19s
CI / build (push) Has been skipped
The runner containers use node:20-bookworm which already has Node
and corepack. Remove actions/setup-node and pnpm/action-setup
which hang in Gitea Actions. Use corepack enable + pnpm directly.
Also fix preview comment to use Gitea API instead of github-script.
2026-03-21 16:31:01 +00:00
Julia McGhee
b28b1fcae2 Use gitea.token instead of secrets.GITEA_TOKEN in workflows
Some checks failed
CI / build (push) Blocked by required conditions
Deploy Production / deploy (push) Waiting to run
CI / changes (push) Successful in 2s
CI / lint-and-test (push) Has been cancelled
The built-in gitea.token is automatically available in Gitea
Actions without needing a repo secret configured.
2026-03-21 16:26:39 +00:00
Julia McGhee
e0fcf2b756 Fix Gitea username: julia → lazorgurl in all registry/API refs
Some checks are pending
CI / changes (push) Waiting to run
CI / lint-and-test (push) Waiting to run
CI / build (push) Blocked by required conditions
Deploy Production / deploy (push) Waiting to run
Gitea admin username is julia but the Gitea account name is
lazorgurl. Update container registry URLs, workflow refs,
Taskfile API calls, and pull secret placeholders.
2026-03-21 16:06:58 +00:00
Julia McGhee
f04ecbf5cd Add Gitea self-hosted git/CI/registry to replace GitHub
Deploy Gitea via Helm with dedicated CloudNativePG database,
in-cluster Actions runner (DinD), and built-in container registry.
ArgoCD repoURLs updated to use in-cluster Gitea SSH. Preview
ApplicationSet switched from GitHub PR generator to Gitea PR
generator. App images now pull from gitea.coreworlds.io registry.

Remaining setup after deploy: seal runner token, ArgoCD API token,
and registry pull secret once Gitea is running. Add ArgoCD deploy
key to Gitea repo settings.
2026-03-21 15:43:30 +00:00