prole/tests
chrisfu ad36f4ee54 Stage 2: complete CNPG shell-to-Python cutover, remove init_cloudnative_pg.sh
All active runtime paths that previously shelled out to etc/init_cloudnative_pg.sh
now dispatch through Python. The shell script has been removed from git.

New files:
- knoe/core/ops/cloudnative_pg.py: canonical Python owner for CNPG lifecycle with
  public API (initialize, deploy, rollout, ensure_operator, pin_controller,
  install_barman_plugin) and internal helpers (_apply_manifest, _wait_cnpg_pods,
  _reconcile_instances, etc.)
- prole/tools/run_cnpg_coverage.py: coverage entry points for k3d/k3s modes,
  report sub-command, and check-shell scanner to confirm no live Python dispatch
  to the removed shell script

Modified files:
- knoe/core/actions.py: replace shell dispatch in _step_init_scripts,
  _step_cnpg_deploy, and repair pipeline with Python calls
- knoe/core/milestones.py: replace shell dispatch in InitializationScriptsMilestone
  and DeploymentMilestone
- knoe/ui/screens/services.py: replace shell dispatch for init-scripts step,
  deploy button, and rollout button
- prole/deployment.py: replace shell dispatch in _run_post_apply_scripts
- status.py: remove init_cloudnative_pg.sh from _STATUS_SCRIPTS list
- tests/installer/test_actions_helpers.py: mock Python functions, assert shell
  script is never dispatched
- tests/installer/test_milestones.py: same
- tests/installer/test_services_init_scripts.py: same

Removed:
- etc/init_cloudnative_pg.sh (git rm)

Verification:
- prole.tools.run_cnpg_coverage check-shell reports clean
- All 61 tests in the affected test files pass

Co-authored-by: Junie <junie@jetbrains.com>
2026-03-23 19:28:04 -07:00
..
etc Fix kube context handling and monitoring eligibility 2026-03-23 13:50:29 -07:00
fixtures Checkpoint: Refactor common services and monitoring initialization. Updates: etc/init_monitoring.sh (Grafana naming, legacy cleanup), etc/init_common_services.sh (migration/cleanup logic), added etc/init_registry.sh, updated etc/init_cloudnative_pg.sh (manifest filtering), updated configs, and enhanced tests. Fixed: excluded .ansible logs and added to .gitignore. 2026-02-09 18:50:44 -08:00
installer Stage 2: complete CNPG shell-to-Python cutover, remove init_cloudnative_pg.sh 2026-03-23 19:28:04 -07:00
ops Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
shellspec Refactor shell library structure; relocate helpers under etc/lib/shell/ and update references 2026-03-16 21:44:58 -07:00
conftest.py installer: stabilize retries + improve k3s inventory detection 2026-03-07 23:57:21 -08:00
final_comprehensive_test.sh Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
final_test.sh Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
run_tests.sh Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
silent_install_test.sh Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
test_all_prole_home_fixes.sh Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
test_argocd_manifest_idempotency.py k3s: eliminate localhost registry + dedupe common-core 2026-03-05 14:31:33 -08:00
test_build_context.py Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
test_build_system.sh Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
test_cluster_screen_observe_only.py Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
test_dashboard_systemd_unit.py test(dashboard): add unit tests for systemd unit and script validation 2026-03-13 01:49:57 -07:00
test_database_options.py Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
test_docker_build_fix.sh Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
test_embedded_resources.sh Update Prole-DB and improve Supabase integration 2026-02-01 23:56:25 -08:00
test_init_authority.sh Refactor project structure and update initialization scripts 2026-02-14 13:44:49 -08:00
test_init_kerberos_ad_forwarder_readiness.py checkpoint: improve init scripts, installer flows, and kube context handling 2026-03-14 20:07:54 -07:00
test_install_logic.py Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
test_k3s_common_core_namespace_and_repair.py Checkpoint: rename installer to knoe + harden db build context 2026-03-22 01:45:21 -07:00
test_navigation.py Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
test_network_scan_fix.sh Fix installer path portability (avoid hardcoded /Users paths) 2026-03-09 16:55:49 -07:00
test_no_common_services_literal_in_etc_scripts.py Fix installer ctx apply flow and registry namespace 2026-03-07 10:35:27 -08:00
test_reconcile_blocked_cluster_state.py Rename Prole storage objects to Synology and sync deployment updates 2026-03-22 21:50:02 -07:00
test_render_supabase_hostname.py Rename prole-db to knoe-db, add knoe-auth as cluster-internal KDC 2026-03-22 22:16:21 -07:00
test_render_supabase_placement.py k3s: enforce node placement for monitoring/CNPG/Supabase 2026-03-18 23:16:06 -07:00
test_repair_stale_released_pv_claimref.py Rename Prole storage objects to Synology and sync deployment updates 2026-03-22 21:50:02 -07:00
test_resource_paths.py Enhance build system with 'make test' and fix installer test debris. Added 'make test' to Makefile with 'pyconv' (black) integration and coverage summary. Reformatted codebase with black. Fixed 'install.py' test bug where MagicMock objects created directory debris by improving mocking and patching in 'tests/test_navigation.py', 'tests/test_service_layer_navigation.py', and 'tests/test_install_logic.py'. 2026-02-25 14:55:05 -08:00
test_service_layer_navigation.py Fix kube context handling and monitoring eligibility 2026-03-23 13:50:29 -07:00