Commit Graph
160 Commits
Author SHA1 Message Date
kevinveenbirkenbachandClaude Sonnet 4.6 74edf694bd refactor(environment): remove assert_http_status_not, expect 404 for disabled matomo
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 15:02:53 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 9d863f1ef4 feat(inventory): add SERVICES_DISABLED env var support and environment test flow
- Add services_disabler.py: parse SERVICES_DISABLED, disable services in host_vars,
  remove provider roles from inventory
- Wire apply_services_disabled_from_env into cli/create/inventory/cli.py after deploy
- Add unit tests for all services_disabler functions
- Update hardware.md and variables.md with SERVICES_DISABLED documentation
- Update environment.sh: deploy dashboard with SERVICES_DISABLED=matomo first,
  assert dashboard reachable + matomo not reachable, then deploy matomo and assert
  reachable; extract assert_http_status / assert_http_status_not helpers

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 15:00:24 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 e1362e5c6a feat(scripts): enhance environment.sh with comments, purge-all, and fixed APPS
- Add make purge-all before make install to simulate a fully cleaned state
- Fix APPS to always use web-app-matomo (fewest deps, fastest deploy)
- Add explanatory comments above every make command

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 13:03:58 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 721e599428 refactor(scripts): rename development.sh to environment.sh
Aligns the script name with the workflow and its purpose.
Updates all references in test-environment.yml and setup.md.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 12:42:02 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 15ac4f062a refactor(ci): rename test-development.yml to test-environment.yml
Aligns the workflow filename with its job name and purpose.
Updates all references in ci-orchestrator.yml and act/workflow.sh.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 12:39:15 +02:00
kevinveenbirkenbachandClaude Sonnet 4.6 06a688c59a refactor(deploy): rename APP to APPS throughout the project
Makes clear that multiple space- or comma-separated app ids are
supported. Renames the env var, CLI flag (--app → --apps), and all
references in scripts, workflows, and documentation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-29 11:41:31 +02:00
kevinveenbirkenbach 0200b22298 Normalize scripts layout and Make targets 2026-03-28 09:00:38 +01:00
kevinveenbirkenbach 620478e9dd fix local purge web script path 2026-03-28 07:45:11 +01:00
kevinveenbirkenbach e0f9ef1dd4 refactor: rename deploy ci and act scripts 2026-03-28 06:27:48 +01:00
kevinveenbirkenbach 6d98ca4cd0 refactor: normalize local deploy layout 2026-03-28 06:20:06 +01:00
kevinveenbirkenbach 67fadb57b8 refactor: normalize inventory filename to devices 2026-03-28 05:40:13 +01:00
kevinveenbirkenbach c456c7e4bd docs: centralize local deploy script index 2026-03-28 04:50:25 +01:00
kevinveenbirkenbach cb7b0cb4ec docs: centralize deploy iteration policy 2026-03-28 04:44:31 +01:00
kevinveenbirkenbach e9d0d207a9 docs: add local inspect wrapper 2026-03-28 03:07:24 +01:00
kevinveenbirkenbach bee5b2a382 chore: make local deploy lib executable 2026-03-28 02:03:04 +01:00
kevinveenbirkenbach 3fb1dc1207 refactor: rename local deploy targets 2026-03-28 00:22:51 +01:00
kevinveenbirkenbach f20c1cdbc6 Refactor CI deploy script entrypoint 2026-03-27 21:51:13 +01:00
kevinveenbirkenbach d072ffa664 refactor: share local deploy bool helper 2026-03-27 19:23:45 +01:00
kevinveenbirkenbach 83cf73c6a7 docs: refine local deploy guidance 2026-03-27 19:17:39 +01:00
kevinveenbirkenbach c1c9b90761 Refine CI integration test handling 2026-03-27 02:13:34 +01:00
kevinveenbirkenbach 76916b8a65 Pass GITHUB_ACTIONS to test container 2026-03-27 00:46:19 +01:00
kevinveenbirkenbachandClaude Sonnet 4.6 b50d84b5b3 feat: upload Playwright screenshots as GitHub Actions artifacts
- Add upload-artifact step to test-deploy-server.yml
- Copy reports from infinito container to runner in dedicated_distro.sh cleanup before volume prune

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-24 22:32:25 +01:00
kevinveenbirkenbach 189267496d Rename module_utils package to utils 2026-03-21 02:05:39 +01:00
kevinveenbirkenbach 003a3a0b84 Merge branch 'main' into feature/lint
Resolve merge conflicts, keep the cleanup script move to scripts/image, and fix the resulting lint regressions.
2026-03-21 01:36:58 +01:00
kevinveenbirkenbach 758bd2f2e2 test: switch development env smoke target from dashboard to matomo 2026-03-21 00:00:11 +01:00
kevinveenbirkenbach 617d73881d fix: avoid nested compose exec in local dedicated deploy 2026-03-20 22:26:13 +01:00
kevinveenbirkenbach c1a4660a8b refactor(env): split meta env into modular scripts
replace env.sh usage with scripts/meta/env/all.sh, add env directory README, and switch purge entity python resolution to scripts/meta/env/python.sh
2026-03-20 22:19:50 +01:00
kevinveenbirkenbach 5570be2b84 test(act): force single-job execution for local workflow runs 2026-03-20 21:38:44 +01:00
kevinveenbirkenbach 009e4e053f test(act): allow configurable concurrent jobs (default 5) 2026-03-20 21:08:10 +01:00
kevinveenbirkenbach 86a26f2b4b test(deploy): run pre-cleanup in host docker context 2026-03-20 19:53:59 +01:00
kevinveenbirkenbach 662c789d29 test(act): simplify workflow script and set platform image 2026-03-20 19:43:39 +01:00
kevinveenbirkenbach 3809a9c5af test: switch development script to dedicated local test target 2026-03-20 17:17:57 +01:00
kevinveenbirkenbach aded0c3bdd test(deploy): remove interactive flags from local docker exec 2026-03-20 16:36:32 +01:00
kevinveenbirkenbach 6f2dd46637 test(act): clean ignored files and repair ownership in fresh mode 2026-03-20 16:22:45 +01:00
kevinveenbirkenbach b31ffbd2c1 test(act): add reusable workflow runner target 2026-03-20 16:09:23 +01:00
kevinveenbirkenbach 0466359631 Merge branch 'main' into feature/lint
# Conflicts:
#	scripts/image/push.sh
#	scripts/meta/env.sh
#	scripts/meta/wait/mirrors.sh
#	scripts/tests/deploy/ci/all_distros.sh
2026-03-19 03:21:31 +01:00
kevinveenbirkenbach 3b11d7f469 feat(packaging): add distro packages and install via package metadata 2026-03-19 02:53:15 +01:00
kevinveenbirkenbach 6a1bc9c116 test: update development workflow runtimes 2026-03-19 00:00:40 +01:00
kevinveenbirkenbach 4b9ada25d4 Fix dev test script working directory 2026-03-18 22:52:31 +01:00
kevinveenbirkenbach 9c1a1b90ec Rename development test workflow and script 2026-03-18 20:15:28 +01:00
kevinveenbirkenbach 38b1d08ef7 Improve distro compatibility and dev environment testing 2026-03-18 20:00:33 +01:00
kevinveenbirkenbach 292feaa5da Add highest missing release workflow 2026-03-18 18:01:49 +01:00
kevinveenbirkenbach a715970506 Refactor lint tooling and shell scripts 2026-03-18 12:37:31 +01:00
Alejandro Roman 07488e8fa1 fix(ci-lowercase): Add a logic to handle usernames that are not lowercase 2026-03-17 10:50:25 +01:00
kevinveenbirkenbach 5141187783 ci(deploy): skip cleanup during second deploy pass
Second pass runs against an already active workspace and may race with Python/Ansible bytecode writes.\nWhen MODE_CLEANUP triggers make clean in pass 2, git clean -fdX can fail with 'Directory not empty' on __pycache__, causing a false CI failure after a successful playbook run.\n\nPass 1 keeps cleanup enabled; pass 2 now forwards --skip-cleanup to avoid this non-deterministic post-deploy failure.
2026-03-16 18:36:17 +01:00
kevinveenbirkenbach 8c21d13d05 test(local): add test-local-app wrapper and docs 2026-02-28 13:38:05 +01:00
kevinveenbirkenbach 720841a7cf ci: aggressively prune docker artifacts between distro runs 2026-02-26 16:41:54 +01:00
kevinveenbirkenbach b849976f2d fix(local-deploy): preserve container PATH for infinito CLI 2026-02-22 17:34:48 +01:00
kevinveenbirkenbach 8cbbfb4d06 fix(deploy): use infinito CLI for inventory creation in container flows 2026-02-22 14:09:48 +01:00
kevinveenbirkenbach 608c03d3c8 Fix distro-specific CI image and pip package selection 2026-02-20 20:08:33 +01:00