@kici-dev/orchestrator 0.17.0 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/agent-version.d.ts +12 -21
- package/dist/agent/dispatcher.d.ts +283 -437
- package/dist/agent/host-roster-reaper.d.ts +8 -10
- package/dist/agent/host-roster.d.ts +77 -100
- package/dist/agent/ownership-refusal.d.ts +3 -5
- package/dist/agent/ownership-tracker.d.ts +42 -76
- package/dist/agent/registry.d.ts +137 -230
- package/dist/agent/token-store.d.ts +34 -77
- package/dist/agent-packaging/availability.d.ts +6 -9
- package/dist/agent-packaging/download.d.ts +6 -9
- package/dist/agent-packaging/install-closure.d.ts +9 -12
- package/dist/agent-packaging/node-binary.d.ts +6 -10
- package/dist/agent-packaging/node-runtime-members.d.ts +3 -5
- package/dist/agent-packaging/refresh.d.ts +12 -16
- package/dist/agent-packaging/store.d.ts +5 -6
- package/dist/agent-packaging/upload.d.ts +3 -4
- package/dist/app.d.ts +0 -3
- package/dist/approvals/apply-decision.d.ts +35 -52
- package/dist/approvals/approval-resolver.d.ts +11 -23
- package/dist/approvals/held-run-release-wiring.d.ts +14 -21
- package/dist/approvals/independent-wiring.d.ts +13 -20
- package/dist/approvals/resume-router.d.ts +1 -1
- package/dist/approvals/step-approval-bridge.d.ts +11 -21
- package/dist/approvals/triggerer-subject.d.ts +8 -10
- package/dist/artifacts/artifact-store.d.ts +55 -95
- package/dist/artifacts/failure-messages.d.ts +15 -20
- package/dist/audit/access-log.d.ts +27 -45
- package/dist/audit/sampling-rate-limiter.d.ts +11 -23
- package/dist/cache/agent-job-failed-error.d.ts +2 -3
- package/dist/cache/build-coordinator.d.ts +5 -28
- package/dist/cache/cache-upload-settle.d.ts +11 -11
- package/dist/cache/dep-cache.d.ts +32 -60
- package/dist/cache/dispatch-cache-ref-tracker.d.ts +15 -23
- package/dist/cache/global-eval-round-cache.d.ts +33 -41
- package/dist/cache/pending-builds.d.ts +2 -6
- package/dist/cache/pending-dynamics.d.ts +2 -7
- package/dist/cache/pending-global-evals.d.ts +9 -12
- package/dist/cache/pending-inits.d.ts +11 -22
- package/dist/cache/pending-precursor-db-watcher.d.ts +24 -32
- package/dist/cache/pending-tracker.d.ts +17 -45
- package/dist/cache/precursor-result.d.ts +17 -30
- package/dist/cache/source-cache.d.ts +36 -65
- package/dist/cache/user-cache.d.ts +21 -25
- package/dist/cancel/cancel-held-run.d.ts +13 -16
- package/dist/cancel/cancel-route-answer.d.ts +1 -2
- package/dist/cancel/cancel-run.d.ts +26 -50
- package/dist/cancel/dashboard-cancel-handler.d.ts +2 -2
- package/dist/cancel/peer-job-cancel.d.ts +11 -14
- package/dist/cancel/sweep-stuck-cancelling.d.ts +9 -13
- package/dist/cli/api-client.d.ts +25 -76
- package/dist/cli/commands/access-log.d.ts +4 -24
- package/dist/cli/commands/agent-package.d.ts +7 -15
- package/dist/cli/commands/agent-service/agent-env.d.ts +3 -6
- package/dist/cli/commands/agent-service/index.d.ts +4 -10
- package/dist/cli/commands/agent-service/install.d.ts +4 -11
- package/dist/cli/commands/agent-service/status.d.ts +4 -9
- package/dist/cli/commands/agent-service/upgrade.d.ts +4 -16
- package/dist/cli/commands/agent.d.ts +12 -25
- package/dist/cli/commands/api-key.d.ts +5 -12
- package/dist/cli/commands/attestations-list.d.ts +7 -17
- package/dist/cli/commands/attestations-retry.d.ts +5 -11
- package/dist/cli/commands/attestations-reverify.d.ts +4 -5
- package/dist/cli/commands/attestations.d.ts +3 -8
- package/dist/cli/commands/audit.d.ts +1 -5
- package/dist/cli/commands/backend.d.ts +2 -11
- package/dist/cli/commands/check-run.d.ts +7 -18
- package/dist/cli/commands/cluster-name.d.ts +5 -12
- package/dist/cli/commands/cluster-settings.d.ts +28 -53
- package/dist/cli/commands/cold-store.d.ts +7 -15
- package/dist/cli/commands/config.d.ts +9 -20
- package/dist/cli/commands/context.d.ts +8 -20
- package/dist/cli/commands/dashboard-encryption-key.d.ts +9 -14
- package/dist/cli/commands/db-backup.d.ts +17 -32
- package/dist/cli/commands/db.d.ts +3 -4
- package/dist/cli/commands/debug-bundle.d.ts +3 -10
- package/dist/cli/commands/diagnose.d.ts +3 -14
- package/dist/cli/commands/event-dlq.d.ts +4 -12
- package/dist/cli/commands/event-log.d.ts +2 -20
- package/dist/cli/commands/execution.d.ts +3 -9
- package/dist/cli/commands/firecracker/index.d.ts +3 -6
- package/dist/cli/commands/held-run.d.ts +23 -37
- package/dist/cli/commands/host.d.ts +4 -11
- package/dist/cli/commands/inspect-bundle.d.ts +3 -11
- package/dist/cli/commands/local-hook.d.ts +2 -10
- package/dist/cli/commands/local-trigger.d.ts +2 -2
- package/dist/cli/commands/orchestrator-service/drain.d.ts +3 -6
- package/dist/cli/commands/orchestrator-service/index.d.ts +6 -14
- package/dist/cli/commands/orchestrator-service/install-env.d.ts +25 -49
- package/dist/cli/commands/orchestrator-service/install.d.ts +2 -5
- package/dist/cli/commands/orchestrator-service/status.d.ts +10 -22
- package/dist/cli/commands/orchestrator-service/upgrade.d.ts +6 -15
- package/dist/cli/commands/org-settings.d.ts +5 -11
- package/dist/cli/commands/peer.d.ts +5 -10
- package/dist/cli/commands/queue.d.ts +3 -9
- package/dist/cli/commands/registration.d.ts +4 -8
- package/dist/cli/commands/remote-source.d.ts +6 -12
- package/dist/cli/commands/rotate.d.ts +1 -5
- package/dist/cli/commands/runs.d.ts +1 -30
- package/dist/cli/commands/scaler.d.ts +5 -12
- package/dist/cli/commands/secret.d.ts +1 -9
- package/dist/cli/commands/service-health.d.ts +5 -10
- package/dist/cli/commands/shared/admin-cli-access-log.d.ts +10 -19
- package/dist/cli/commands/shared/bare-metal-binary-check.d.ts +86 -0
- package/dist/cli/commands/shared/cli-action.d.ts +1 -4
- package/dist/cli/commands/shared/confirm.d.ts +5 -10
- package/dist/cli/commands/shared/db.d.ts +1 -12
- package/dist/cli/commands/shared/env-file-mode.d.ts +6 -9
- package/dist/cli/commands/shared/secret-input.d.ts +7 -21
- package/dist/cli/commands/shared/service-verbs.d.ts +6 -12
- package/dist/cli/commands/shared/unbound-context-warning.d.ts +2 -4
- package/dist/cli/commands/shared/upgrade-hooks.d.ts +7 -16
- package/dist/cli/commands/shared/upgrade-safety.d.ts +20 -31
- package/dist/cli/commands/shared/versioned-upgrade.d.ts +83 -161
- package/dist/cli/commands/signing-key.d.ts +4 -9
- package/dist/cli/commands/source-manifest.d.ts +11 -14
- package/dist/cli/commands/source.d.ts +7 -32
- package/dist/cli/commands/token.d.ts +4 -15
- package/dist/cli/commands/trust-policy.d.ts +35 -88
- package/dist/cli/commands/variable.d.ts +3 -5
- package/dist/cli/commands/workflow.d.ts +3 -24
- package/dist/cli/join.d.ts +3 -6
- package/dist/cli/kici-admin.d.ts +11 -29
- package/dist/cli/lazy-deps/cache.d.ts +1 -14
- package/dist/cli/lazy-deps/downloader.d.ts +4 -27
- package/dist/cli/lazy-deps/registry.d.ts +5 -25
- package/dist/cli/local-github-ingress-url.d.ts +5 -7
- package/dist/cli/loopback-callback.d.ts +6 -7
- package/dist/cli/open-browser.d.ts +4 -8
- package/dist/cli/root-option-routing.d.ts +17 -29
- package/dist/cli/service/backup-timer.d.ts +16 -39
- package/dist/cli/service/compose-path.d.ts +3 -7
- package/dist/cli/service/compose.d.ts +12 -30
- package/dist/cli/service/deploy-env.d.ts +6 -18
- package/dist/cli/service/entrypoint.d.ts +14 -25
- package/dist/cli/service/env-assignment.d.ts +6 -17
- package/dist/cli/service/image-digests.d.ts +6 -15
- package/dist/cli/service/index.d.ts +2 -18
- package/dist/cli/service/instance/index-file.d.ts +9 -16
- package/dist/cli/service/instance/manifest.d.ts +60 -60
- package/dist/cli/service/instance/resolve.d.ts +32 -68
- package/dist/cli/service/instance/types.d.ts +12 -29
- package/dist/cli/service/launchd.d.ts +29 -60
- package/dist/cli/service/platform-detect.d.ts +13 -68
- package/dist/cli/service/privilege.d.ts +12 -25
- package/dist/cli/service/shutdown-grace.d.ts +11 -20
- package/dist/cli/service/systemd.d.ts +7 -20
- package/dist/cli/service/types.d.ts +63 -114
- package/dist/cli/service/windows-acl.d.ts +14 -21
- package/dist/cli/service/windows-env-file.d.ts +10 -28
- package/dist/cli/service/windows.d.ts +15 -31
- package/dist/cli/webhook-url-notes.d.ts +4 -6
- package/dist/cli/wizard/agent-wizard.d.ts +3 -14
- package/dist/cli/wizard/orchestrator-wizard.d.ts +12 -37
- package/dist/cli/wizard/prompts.d.ts +6 -16
- package/dist/cli.js +8207 -10128
- package/dist/cluster/cluster-identity.d.ts +20 -32
- package/dist/cluster/cluster-settings-reader.d.ts +50 -77
- package/dist/cluster/coordinator-credential.d.ts +4 -5
- package/dist/cluster/coordinator.d.ts +76 -148
- package/dist/cluster/health-api.d.ts +2 -10
- package/dist/cluster/index.d.ts +1 -6
- package/dist/cluster/instance-heartbeat.d.ts +26 -42
- package/dist/cluster/join-client.d.ts +4 -7
- package/dist/cluster/join-handler.d.ts +3 -7
- package/dist/cluster/join-token.d.ts +13 -27
- package/dist/cluster/leader-gated-scheduler.d.ts +8 -17
- package/dist/cluster/orphan-recovery.d.ts +13 -35
- package/dist/cluster/peer-auth-coordinator.d.ts +2 -8
- package/dist/cluster/peer-client.d.ts +46 -76
- package/dist/cluster/peer-credentials.d.ts +24 -70
- package/dist/cluster/peer-crypto.d.ts +5 -26
- package/dist/cluster/peer-forget.d.ts +3 -3
- package/dist/cluster/peer-handler.d.ts +47 -71
- package/dist/cluster/peer-registry.d.ts +37 -106
- package/dist/cluster/plan-headroom-store.d.ts +4 -6
- package/dist/cluster/raft-state.d.ts +4 -13
- package/dist/cluster/raft.d.ts +18 -53
- package/dist/cluster/reconcile-identity.d.ts +8 -11
- package/dist/cluster/rerouted-job-guard.d.ts +7 -11
- package/dist/cluster/verified-issuer.d.ts +2 -3
- package/dist/cluster/worker-cluster-settings.d.ts +7 -10
- package/dist/cluster/worker-eviction.d.ts +16 -26
- package/dist/cold-store/load-access-log-range.d.ts +15 -31
- package/dist/cold-store/load-event-log-range.d.ts +13 -27
- package/dist/cold-store/load-secret-audit-log-range.d.ts +8 -12
- package/dist/cold-store/orchestrator-cold-store.d.ts +8 -28
- package/dist/cold-store/tables/access-log.d.ts +12 -14
- package/dist/cold-store/tables/event-log.d.ts +4 -8
- package/dist/cold-store/tables/execution-runs.d.ts +6 -11
- package/dist/cold-store/tables/secret-audit-log.d.ts +5 -12
- package/dist/concurrency/dispatch-next-queued.d.ts +13 -25
- package/dist/concurrency/queue-manager.d.ts +22 -54
- package/dist/concurrency/waiters.d.ts +15 -31
- package/dist/config/encryption.d.ts +0 -2
- package/dist/config/loader.d.ts +0 -1
- package/dist/config/reload.d.ts +0 -6
- package/dist/config/resolver.d.ts +0 -4
- package/dist/config/shared-store.d.ts +0 -2
- package/dist/config/types.d.ts +0 -3
- package/dist/content-requirements-cache.d.ts +0 -1
- package/dist/contexts/context-store.d.ts +0 -2
- package/dist/contexts/held-runs.d.ts +0 -2
- package/dist/contexts/variable-store.d.ts +0 -2
- package/dist/dashboard/attestation-filters.d.ts +13 -18
- package/dist/dashboard/handler.d.ts +145 -307
- package/dist/db/client.d.ts +2 -6
- package/dist/db/deferred-index-build.d.ts +8 -10
- package/dist/db/deferred-indexes.d.ts +15 -22
- package/dist/db/migration-provider.d.ts +2 -4
- package/dist/db/migration-test-harness.d.ts +26 -44
- package/dist/db/migrations/001_initial.d.ts +1 -4
- package/dist/db/migrations/002_config_versions_key_version.d.ts +5 -8
- package/dist/db/migrations/003_access_log.d.ts +10 -15
- package/dist/db/migrations/004_rename_bundle_to_source.d.ts +7 -9
- package/dist/db/migrations/005_cold_store_chunk_counter.d.ts +4 -10
- package/dist/db/migrations/006_runs_jobs_steps_archived_at.d.ts +9 -29
- package/dist/db/migrations/007_audit_logs_archived_at.d.ts +11 -30
- package/dist/db/migrations/008_event_log_archived_at.d.ts +14 -29
- package/dist/db/migrations/009_access_log_trigram.d.ts +4 -8
- package/dist/db/migrations/010_cold_store_chunks.d.ts +16 -26
- package/dist/db/migrations/011_drop_source_secrets_notify.d.ts +6 -14
- package/dist/db/migrations/012_peer_credentials_active_uniq.d.ts +9 -14
- package/dist/db/migrations/013_execution_log_bytes.d.ts +5 -13
- package/dist/db/migrations/014_kici_events_lease_retry.d.ts +14 -27
- package/dist/db/migrations/015_org_settings_customer_scoped.d.ts +12 -17
- package/dist/db/migrations/016_org_settings_allow_http_npm.d.ts +4 -6
- package/dist/db/migrations/019_generic_sources_change_notify.d.ts +13 -17
- package/dist/db/migrations/020_org_settings_dashboard_write_policy.d.ts +5 -8
- package/dist/db/migrations/021_check_run_tracking.d.ts +5 -17
- package/dist/db/migrations/022_scaler_manager_state.d.ts +10 -20
- package/dist/db/migrations/023_dispatch_queue_recovery_deadline.d.ts +7 -18
- package/dist/db/migrations/024_dispatch_queue_provisioning_error.d.ts +5 -11
- package/dist/db/migrations/025_init_failure.d.ts +5 -9
- package/dist/db/migrations/027_workflow_timeout.d.ts +5 -13
- package/dist/db/migrations/029_dispatch_queue_attempts.d.ts +4 -10
- package/dist/db/migrations/030_held_runs_env_set_null.d.ts +5 -6
- package/dist/db/migrations/031_dispatch_queue_ack_deadline.d.ts +6 -12
- package/dist/db/migrations/033_org_settings_approval.d.ts +7 -10
- package/dist/db/migrations/034_held_runs_generalize.d.ts +10 -18
- package/dist/db/migrations/035_pending_workflow_contexts.d.ts +4 -5
- package/dist/db/migrations/037_generic_sources_provider_type_local.d.ts +5 -6
- package/dist/db/migrations/038_remote_sources.d.ts +5 -7
- package/dist/db/migrations/045_host_properties.d.ts +5 -9
- package/dist/db/migrations/046_join_token_consumed_by_instance.d.ts +5 -10
- package/dist/db/migrations/048_host_reboot_pending.d.ts +6 -12
- package/dist/db/migrations/049_held_runs_payload.d.ts +3 -8
- package/dist/db/migrations/050_sources_slug.d.ts +4 -5
- package/dist/db/migrations/051_binding_host_pattern.d.ts +7 -10
- package/dist/db/migrations/052_host_reach_metadata.d.ts +8 -11
- package/dist/db/migrations/053_agent_token_single_use.d.ts +6 -10
- package/dist/db/migrations/054_local_working_tree.d.ts +4 -6
- package/dist/db/migrations/055_agent_token_mandatory_labels.d.ts +6 -11
- package/dist/db/migrations/056_execution_jobs_environments.d.ts +4 -11
- package/dist/db/migrations/064_execution_jobs_skipped_environments.d.ts +6 -9
- package/dist/db/migrations/065_pending_attestations.d.ts +9 -12
- package/dist/db/migrations/066_pending_attestations_rejected.d.ts +4 -7
- package/dist/db/migrations/068_request_idempotency.d.ts +7 -9
- package/dist/db/migrations/069_reroute_tunables.d.ts +6 -14
- package/dist/db/migrations/071_batch_accumulation.d.ts +8 -16
- package/dist/db/migrations/072_dispatch_queue_run_id_index.d.ts +3 -9
- package/dist/db/migrations/074_normalize_zero_concurrency_limit.d.ts +4 -7
- package/dist/db/migrations/076_artifacts.d.ts +7 -8
- package/dist/db/migrations/078_org_settings_backup_staleness.d.ts +3 -6
- package/dist/db/migrations/079_org_settings_scaler_spawn_timeout.d.ts +4 -8
- package/dist/db/migrations/080_cluster_settings.d.ts +6 -10
- package/dist/db/migrations/081_org_settings_queue_timeout.d.ts +7 -11
- package/dist/db/migrations/082_host_s3_reachable.d.ts +5 -10
- package/dist/db/migrations/083_org_settings_artifact_caps.d.ts +6 -8
- package/dist/db/migrations/084_orchestrator_signing_keys.d.ts +8 -13
- package/dist/db/migrations/085_cluster_settings_reroute_flap_grace_ms.d.ts +4 -5
- package/dist/db/migrations/086_cluster_settings_max_fanout_hosts.d.ts +3 -3
- package/dist/db/migrations/087_cluster_settings_event_router_rate_limit.d.ts +5 -3
- package/dist/db/migrations/088_cluster_settings_cache_max_tarball_bytes.d.ts +3 -3
- package/dist/db/migrations/089_cluster_settings_cache_ttl_days.d.ts +3 -5
- package/dist/db/migrations/090_cluster_settings_concurrency_wait_timeout_ms.d.ts +3 -6
- package/dist/db/migrations/091_cluster_settings_agent_token_ttl_ms.d.ts +3 -6
- package/dist/db/migrations/092_cluster_settings_version.d.ts +5 -9
- package/dist/db/migrations/094_dashboard_encryption_keys.d.ts +9 -14
- package/dist/db/migrations/095_dashboard_write_policy_tristate.d.ts +2 -6
- package/dist/db/migrations/099_cluster_settings_dashboard_verified_issuer.d.ts +8 -11
- package/dist/db/migrations/101_contexts_hold_expiry_drop_default.d.ts +9 -15
- package/dist/db/migrations/102_dispatch_queue_agent_id.d.ts +6 -11
- package/dist/db/migrations/103_cluster_settings_ownership_db_check_timeout_ms.d.ts +6 -12
- package/dist/db/migrations/104_check_run_terminal_sent.d.ts +8 -14
- package/dist/db/migrations/105_org_trust_policy.d.ts +5 -7
- package/dist/db/migrations/106_cluster_settings_check_run_tracking_ttl_days.d.ts +4 -12
- package/dist/db/migrations/107_check_run_tracking_updated_at_index.d.ts +8 -14
- package/dist/db/migrations/113_execution_runs_workflow_repo_index.d.ts +10 -19
- package/dist/db/migrations/115_global_workflows_cluster_switch.d.ts +2 -3
- package/dist/db/migrations/121_org_settings_allow_untrusted_dockerfile_builds.d.ts +7 -8
- package/dist/db/migrations/122_host_roster_scaler_managed.d.ts +9 -16
- package/dist/db/migrations/123_workflow_registrations_default_branch.d.ts +8 -16
- package/dist/db/migrations/125_org_trust_directory.d.ts +13 -21
- package/dist/db/migrations/126_held_runs_posted_pending_check.d.ts +10 -16
- package/dist/db/migrations/127_org_trust_policy_approval_expiry_seconds.d.ts +8 -16
- package/dist/db/migrations/128_execution_runs_global_eval_round.d.ts +6 -11
- package/dist/db/migrations/129_execution_runs_dispatch_routing_key.d.ts +8 -11
- package/dist/db/migrations/130_scaler_provision_outcomes.d.ts +13 -20
- package/dist/db/migrations/131_execution_jobs_git_credentials.d.ts +12 -22
- package/dist/db/migrations/132_execution_runs_trigger_event.d.ts +6 -16
- package/dist/db/migrations/133_dispatch_queue_source_tar_digest.d.ts +6 -9
- package/dist/db/migrations/140_dispatch_queue_canonical_labels.d.ts +22 -40
- package/dist/db/migrations/143_execution_jobs_precursor_result.d.ts +9 -18
- package/dist/db/migrations/144_execution_runs_registration_window.d.ts +12 -20
- package/dist/db/migrations/147_sealed_job_secrets.d.ts +5 -9
- package/dist/db/migrations/148_cluster_settings_sealed_secrets_retry_backoff_ms.d.ts +7 -13
- package/dist/db/migrations/150_execution_runs_status_epoch.d.ts +6 -11
- package/dist/db/migrations/152_org_settings_cache_upload_settle_timeout.d.ts +5 -8
- package/dist/db/migrations/157_host_roster_identity_source.d.ts +9 -13
- package/dist/db/migrations/159_org_id_widen_to_source_width.d.ts +5 -0
- package/dist/db/migrator.d.ts +17 -25
- package/dist/db/notify-listener.d.ts +8 -11
- package/dist/db/repos/dashboard-encryption-keys-repo.d.ts +9 -10
- package/dist/db/synthetic-job-ids.d.ts +6 -8
- package/dist/db/types.d.ts +531 -1058
- package/dist/deployment/deployment-identity.d.ts +42 -60
- package/dist/diagnostics/bundle-reader.d.ts +3 -15
- package/dist/diagnostics/bundle-writer.d.ts +5 -12
- package/dist/diagnostics/checks/agents.d.ts +1 -7
- package/dist/diagnostics/checks/backup.d.ts +7 -10
- package/dist/diagnostics/checks/certs.d.ts +1 -6
- package/dist/diagnostics/checks/config.d.ts +2 -5
- package/dist/diagnostics/checks/db.d.ts +1 -1
- package/dist/diagnostics/checks/disk.d.ts +1 -6
- package/dist/diagnostics/checks/firecracker-network.d.ts +3 -3
- package/dist/diagnostics/checks/index.d.ts +0 -6
- package/dist/diagnostics/checks/retention.d.ts +3 -6
- package/dist/diagnostics/checks/scaler.d.ts +3 -7
- package/dist/diagnostics/checks/ws.d.ts +1 -6
- package/dist/diagnostics/fleet-collector.d.ts +11 -14
- package/dist/diagnostics/fleet-constants.d.ts +1 -3
- package/dist/diagnostics/fleet-selection.d.ts +3 -7
- package/dist/diagnostics/fleet-topology.d.ts +2 -6
- package/dist/diagnostics/fleet-wiring.d.ts +6 -12
- package/dist/diagnostics/index.d.ts +0 -5
- package/dist/diagnostics/runner.d.ts +4 -8
- package/dist/diagnostics/types.d.ts +10 -21
- package/dist/drain/drain-controller.d.ts +16 -22
- package/dist/entry-helpers.d.ts +0 -2
- package/dist/events/circuit-breaker.d.ts +0 -3
- package/dist/events/event-router.d.ts +1 -2
- package/dist/events/event-store.d.ts +0 -9
- package/dist/events/trust-store.d.ts +0 -3
- package/dist/events/types.d.ts +0 -9
- package/dist/firecracker/host-network.d.ts +24 -30
- package/dist/firecracker/net-interfaces.d.ts +4 -7
- package/dist/helpers/rate-limiter.d.ts +0 -1
- package/dist/index.js +240 -482
- package/dist/metrics/agent-metrics-aggregator.d.ts +24 -67
- package/dist/metrics/metrics-reporter.d.ts +4 -13
- package/dist/metrics/prometheus.d.ts +47 -81
- package/dist/orchestrator-core.d.ts +3 -7
- package/dist/pipeline/content-filter.d.ts +20 -30
- package/dist/pipeline/cross-source-tally.d.ts +7 -8
- package/dist/pipeline/decorating-secret-resolver.d.ts +4 -8
- package/dist/pipeline/degraded-reason.d.ts +3 -4
- package/dist/pipeline/direct-ingress-deps.d.ts +15 -24
- package/dist/pipeline/dispatch-matched-workflow.d.ts +290 -526
- package/dist/pipeline/flatten-lock-steps.d.ts +4 -6
- package/dist/pipeline/global-dispatch-identity.d.ts +5 -10
- package/dist/pipeline/global-eval-round.d.ts +62 -156
- package/dist/pipeline/global-round-hold.d.ts +5 -7
- package/dist/pipeline/held-context-data.d.ts +5 -8
- package/dist/pipeline/held-round-registrations.d.ts +8 -11
- package/dist/pipeline/install-gate.d.ts +15 -25
- package/dist/pipeline/install-secrets-resolver.d.ts +24 -34
- package/dist/pipeline/internal-event-pipeline.d.ts +45 -62
- package/dist/pipeline/invoke-gate.d.ts +27 -40
- package/dist/pipeline/job-contexts.d.ts +19 -36
- package/dist/pipeline/manual-schedule.d.ts +7 -13
- package/dist/pipeline/needs-scheduler.d.ts +29 -46
- package/dist/pipeline/pending-workflow-context.d.ts +14 -28
- package/dist/pipeline/process-webhook.d.ts +88 -123
- package/dist/pipeline/processor.d.ts +209 -355
- package/dist/pipeline/remote-source-store.d.ts +5 -8
- package/dist/pipeline/request-idempotency.d.ts +10 -13
- package/dist/pipeline/rerun-global.d.ts +6 -7
- package/dist/pipeline/rerun-inputs.d.ts +23 -37
- package/dist/pipeline/rerun.d.ts +34 -57
- package/dist/pipeline/resolve-sandbox-grant.d.ts +5 -10
- package/dist/pipeline/resume-workflow.d.ts +28 -34
- package/dist/pipeline/route-or-dispatch-jobs.d.ts +19 -30
- package/dist/pipeline/run-event-context.d.ts +16 -21
- package/dist/pipeline/sandbox-allowlist-reader.d.ts +7 -11
- package/dist/pipeline/security-hold-check.d.ts +56 -80
- package/dist/pipeline/test-pipeline.d.ts +20 -46
- package/dist/pipeline/unbound-job-context.d.ts +6 -9
- package/dist/pipeline/undispatched-hold-checks.d.ts +4 -6
- package/dist/pipeline/wave-scheduler.d.ts +15 -22
- package/dist/pipeline/webhook-payload-store.d.ts +3 -10
- package/dist/pipeline/workflow-lock-at-sha.d.ts +14 -20
- package/dist/policy/dashboard-write-policy.d.ts +1 -1
- package/dist/provider-registry.d.ts +0 -19
- package/dist/providers/generic/index.d.ts +0 -2
- package/dist/providers/generic/normalizer.d.ts +0 -1
- package/dist/providers/generic/verification.d.ts +0 -8
- package/dist/providers/github/auth.d.ts +0 -1
- package/dist/providers/github/changed-files.d.ts +2 -1
- package/dist/providers/github/file-contents.d.ts +0 -4
- package/dist/providers/github/lock-file.d.ts +0 -4
- package/dist/providers/github/normalizer.d.ts +1 -9
- package/dist/providers/local/index.d.ts +1 -2
- package/dist/providers/local/lock-file-fetcher.d.ts +0 -4
- package/dist/providers/local/normalizer.d.ts +0 -10
- package/dist/providers/local/repo-url-builder.d.ts +0 -2
- package/dist/providers/universal-git/clone-token.d.ts +0 -2
- package/dist/providers/universal-git/lock-file.d.ts +0 -2
- package/dist/providers/universal-git/normalizer.d.ts +0 -2
- package/dist/queue/bootstrap.d.ts +3 -15
- package/dist/queue/cleanup.d.ts +29 -50
- package/dist/queue/depth-refresher.d.ts +21 -39
- package/dist/queue/job-queue.d.ts +112 -163
- package/dist/queue/retention.d.ts +23 -36
- package/dist/queue/scheduled-job.d.ts +17 -39
- package/dist/queue/terminalize-unroutable.d.ts +16 -18
- package/dist/queue/unroutable-probe.d.ts +15 -22
- package/dist/registration/extractor.d.ts +0 -6
- package/dist/registration/registration-index.d.ts +0 -6
- package/dist/registration/registration-store.d.ts +0 -9
- package/dist/reporting/agent-failure-category.d.ts +3 -5
- package/dist/reporting/check-run-reporter.d.ts +142 -316
- package/dist/reporting/check-run-summary.d.ts +16 -35
- package/dist/reporting/check-run-tracking-store.d.ts +54 -107
- package/dist/reporting/execution-tracker.d.ts +356 -526
- package/dist/reporting/fs-log-storage.d.ts +31 -33
- package/dist/reporting/job-check-run-completion.d.ts +14 -22
- package/dist/reporting/log-chunk-sink.d.ts +11 -16
- package/dist/reporting/log-pull-handler.d.ts +4 -13
- package/dist/reporting/log-retention.d.ts +3 -4
- package/dist/reporting/log-storage.d.ts +24 -52
- package/dist/reporting/log-writer.d.ts +28 -56
- package/dist/reporting/peer-log-normalize.d.ts +4 -8
- package/dist/reporting/run-aggregator.d.ts +6 -11
- package/dist/reporting/run-summary-fields.d.ts +5 -8
- package/dist/reporting/s3-log-storage.d.ts +31 -50
- package/dist/reporting/step-display-order.d.ts +11 -21
- package/dist/reporting/step-log-buffer.d.ts +7 -28
- package/dist/reporting/step-log-reader.d.ts +11 -19
- package/dist/routes/admin-access-log.d.ts +4 -6
- package/dist/routes/admin-auth.d.ts +17 -38
- package/dist/routes/admin-backends.d.ts +3 -14
- package/dist/routes/admin-cluster-name.d.ts +13 -21
- package/dist/routes/admin-cluster-settings.d.ts +6 -9
- package/dist/routes/admin-config.d.ts +7 -19
- package/dist/routes/admin-contexts.d.ts +6 -13
- package/dist/routes/admin-db.d.ts +5 -10
- package/dist/routes/admin-event-dlq.d.ts +3 -5
- package/dist/routes/admin-event-inspect.d.ts +3 -4
- package/dist/routes/admin-event-log.d.ts +3 -7
- package/dist/routes/admin-events.d.ts +16 -30
- package/dist/routes/admin-held-runs.d.ts +52 -76
- package/dist/routes/admin-maintenance.d.ts +3 -6
- package/dist/routes/admin-orchestrator-drain.d.ts +0 -2
- package/dist/routes/admin-org-settings.d.ts +8 -14
- package/dist/routes/admin-peer-forget.d.ts +0 -1
- package/dist/routes/admin-queue-execution.d.ts +3 -3
- package/dist/routes/admin-registrations.d.ts +3 -12
- package/dist/routes/admin-runs.d.ts +16 -29
- package/dist/routes/admin-scaler-orphans.d.ts +4 -4
- package/dist/routes/admin-scaler-reload.d.ts +5 -8
- package/dist/routes/admin-scheduled-jobs.d.ts +3 -4
- package/dist/routes/admin-sources.d.ts +20 -29
- package/dist/routes/admin-trust-policy.d.ts +31 -48
- package/dist/routes/admin.d.ts +67 -94
- package/dist/routes/caller-identity.d.ts +5 -12
- package/dist/routes/capabilities.d.ts +8 -13
- package/dist/routes/diagnostics.d.ts +2 -10
- package/dist/routes/fleet.d.ts +1 -2
- package/dist/routes/github-webhook.d.ts +2 -5
- package/dist/routes/health.d.ts +6 -19
- package/dist/routes/provenance-oidc.d.ts +3 -3
- package/dist/routes/uploads.d.ts +5 -11
- package/dist/routes/webhooks.d.ts +2 -24
- package/dist/scaler/agent-binary-location.d.ts +77 -0
- package/dist/scaler/agent-fit.d.ts +2 -2
- package/dist/scaler/backend-factory.d.ts +10 -18
- package/dist/scaler/bare-metal-backend.d.ts +30 -46
- package/dist/scaler/claim-store.d.ts +20 -43
- package/dist/scaler/config.d.ts +10 -37
- package/dist/scaler/container-backend.d.ts +22 -35
- package/dist/scaler/container-hostconfig.d.ts +19 -16
- package/dist/scaler/container-routing.d.ts +10 -13
- package/dist/scaler/disk-guard.d.ts +2 -3
- package/dist/scaler/event-backend.d.ts +33 -58
- package/dist/scaler/event-provision-reaper.d.ts +61 -84
- package/dist/scaler/failure-tracker.d.ts +6 -13
- package/dist/scaler/file-tail.d.ts +6 -19
- package/dist/scaler/firecracker-api.d.ts +19 -63
- package/dist/scaler/firecracker-backend.d.ts +142 -258
- package/dist/scaler/host-access.d.ts +7 -10
- package/dist/scaler/index.d.ts +3 -6
- package/dist/scaler/ip-allocator.d.ts +30 -82
- package/dist/scaler/label-matcher.d.ts +14 -35
- package/dist/scaler/log-forwarder.d.ts +6 -25
- package/dist/scaler/machine-ledger.d.ts +39 -86
- package/dist/scaler/manager.d.ts +517 -787
- package/dist/scaler/pending-scale-sweeper.d.ts +8 -11
- package/dist/scaler/reap-orphans.d.ts +8 -12
- package/dist/scaler/resolve-container-auth.d.ts +12 -21
- package/dist/scaler/scaler-events.d.ts +2 -5
- package/dist/scaler/scaler-state-store.d.ts +127 -189
- package/dist/scaler/spawn-errors.d.ts +1 -4
- package/dist/scaler/startup-orphan-sweep.d.ts +3 -4
- package/dist/scaler/startup-tools-check.d.ts +21 -0
- package/dist/scaler/types.d.ts +142 -255
- package/dist/scaler/vm-job-bindings.d.ts +5 -9
- package/dist/scaler/warm-pool.d.ts +49 -93
- package/dist/secrets/audit-logger.d.ts +0 -3
- package/dist/secrets/backend-health.d.ts +0 -9
- package/dist/secrets/backend-registry.d.ts +0 -9
- package/dist/secrets/cleanup.d.ts +0 -1
- package/dist/secrets/config.d.ts +0 -3
- package/dist/secrets/ephemeral-keys.d.ts +0 -3
- package/dist/secrets/pg-secret-store.d.ts +0 -3
- package/dist/secrets/rbac.d.ts +0 -6
- package/dist/secrets/secret-output-store.d.ts +0 -6
- package/dist/secrets/secret-resolver.d.ts +2 -6
- package/dist/secrets/token-manager.d.ts +0 -4
- package/dist/secrets/vault-secret-store.d.ts +0 -13
- package/dist/security/comment-handler.d.ts +0 -2
- package/dist/security/workflow-diff.d.ts +1 -1
- package/dist/server.js +8628 -13569
- package/dist/sources/source-manager.d.ts +0 -3
- package/dist/sources/source-store.d.ts +0 -9
- package/dist/sources/source-validator.d.ts +0 -3
- package/dist/stale-detector/all-terminal-runs.d.ts +8 -11
- package/dist/stale-detector/gate-deadline-detector.d.ts +14 -19
- package/dist/stale-detector/reboot-deadline-sweep.d.ts +7 -11
- package/dist/stale-detector/stale-dispatch-candidates.d.ts +13 -20
- package/dist/stale-detector/stale-run-detector.d.ts +74 -121
- package/dist/stale-detector/workflow-deadline-detector.d.ts +15 -43
- package/dist/standalone.js +7670 -12402
- package/dist/storage/blob-routes.d.ts +10 -19
- package/dist/storage/filesystem.d.ts +19 -29
- package/dist/storage/index.d.ts +2 -10
- package/dist/storage/key-discriminator.d.ts +8 -10
- package/dist/storage/loopback-guard.d.ts +27 -45
- package/dist/storage/s3.d.ts +25 -52
- package/dist/storage/sign-url.d.ts +7 -22
- package/dist/storage/types.d.ts +44 -70
- package/dist/webhook/event-log.d.ts +0 -2
- package/dist/webhook/generic-sources.d.ts +0 -21
- package/dist/webhook/ingest-admission.d.ts +0 -1
- package/dist/webhook/relay-buffer.d.ts +2 -2
- package/dist/webhook/verify-inbound.d.ts +0 -1
- package/dist/worker/in-memory-execution-tracker.d.ts +9 -31
- package/dist/worker/in-memory-job-queue.d.ts +32 -72
- package/dist/worker/peer-outbox.d.ts +5 -8
- package/dist/worker/reroute-dispatch.d.ts +4 -6
- package/dist/worker/static-agent-token-store.d.ts +6 -27
- package/dist/worker/worker-outbox-relay.d.ts +2 -2
- package/dist/worker/worker-status.d.ts +3 -20
- package/dist/ws/agent-api-registry.d.ts +8 -27
- package/dist/ws/agent-handler.d.ts +63 -110
- package/dist/ws/agent-heartbeat.d.ts +5 -12
- package/dist/ws/bringup-api.d.ts +31 -38
- package/dist/ws/dashboard-backends-handler.d.ts +12 -22
- package/dist/ws/dashboard-context-handler.d.ts +37 -80
- package/dist/ws/dashboard-diagnostics-handler.d.ts +8 -25
- package/dist/ws/dashboard-dispatch-guard.d.ts +3 -4
- package/dist/ws/dashboard-fleet-handler.d.ts +9 -13
- package/dist/ws/dashboard-fleet-write-handler.d.ts +7 -21
- package/dist/ws/dashboard-global-workflows-handler.d.ts +22 -44
- package/dist/ws/dashboard-registrations-handler.d.ts +10 -27
- package/dist/ws/dashboard-run-state-handler.d.ts +10 -13
- package/dist/ws/event-buffer.d.ts +3 -6
- package/dist/ws/execution-status-frame.d.ts +9 -11
- package/dist/ws/failure-messages.d.ts +9 -14
- package/dist/ws/fleet-agent-collector.d.ts +6 -12
- package/dist/ws/fleet-runs-on-all.d.ts +1 -6
- package/dist/ws/git-credential-relay.d.ts +12 -20
- package/dist/ws/inventory-api.d.ts +4 -5
- package/dist/ws/job-status-forward-frame.d.ts +30 -0
- package/dist/ws/observer-registry.d.ts +14 -59
- package/dist/ws/outbound-frame-guard.d.ts +4 -0
- package/dist/ws/ownership-gate.d.ts +1 -1
- package/dist/ws/platform-client.d.ts +32 -31
- package/dist/ws/replay-chunker.d.ts +7 -10
- package/dist/ws/server-options.d.ts +5 -9
- package/dist/ws/test-relay-handlers.d.ts +45 -59
- package/dist/ws/test-run-log-cursor.d.ts +18 -0
- package/installer-image-digests.json +3 -3
- package/package.json +6 -5
- package/sbom.spdx.json +53 -53
- package/dist/__test-helpers__/fake-scaler-state-store.d.ts +0 -24
- package/dist/__test-helpers__/mock-db-query.d.ts +0 -129
- package/dist/__test-helpers__/mock-db.d.ts +0 -134
- package/dist/__test-helpers__/mock-ws.d.ts +0 -13
- package/dist/__test-helpers__/peer-mutual-auth.d.ts +0 -42
- package/dist/__test-helpers__/scratch-db.d.ts +0 -16
- package/dist/__test-helpers__/test-db.d.ts +0 -34
- package/dist/pipeline/dispatch-matched-workflow.test-helpers.d.ts +0 -121
|
@@ -1,14 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Scheduled
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* with a `StartCalendarInterval`.
|
|
8
|
-
*
|
|
9
|
-
* Windows and Compose are refused: `sc.exe` has no timer concept, and a
|
|
10
|
-
* Compose orchestrator runs in a container whose host scheduler KiCI does not
|
|
11
|
-
* own. Both refusals name the platform-native equivalent.
|
|
2
|
+
* Scheduled database backups: a `kici-<instance>-db-backup` unit that runs
|
|
3
|
+
* `kici-admin db backup --output-dir <dir> --keep <n>` on a calendar (systemd
|
|
4
|
+
* `.service` + `.timer`; one launchd plist with `StartCalendarInterval`).
|
|
5
|
+
* Windows (`sc.exe` has no timers) and Compose (KiCI does not own the host
|
|
6
|
+
* scheduler) are refused with the platform-native equivalent.
|
|
12
7
|
*/
|
|
13
8
|
import type { ServicePlatform } from './types.js';
|
|
14
9
|
/** Default retention: keep the last week of daily dumps. */
|
|
@@ -20,33 +15,21 @@ export interface BackupTimerConfig {
|
|
|
20
15
|
serviceName: string;
|
|
21
16
|
/** Calendar spec: a systemd `OnCalendar=` value, or `daily` / `HH:MM`. */
|
|
22
17
|
schedule: string;
|
|
23
|
-
/** Directory the timestamped dumps are written to. */
|
|
24
18
|
outputDir: string;
|
|
25
|
-
/** How many dumps to retain after each run. */
|
|
26
19
|
keep: number;
|
|
27
|
-
/** Node binary the scheduled unit runs. */
|
|
28
20
|
nodeBinPath: string;
|
|
29
|
-
/** `kici-admin` entry script the scheduled unit runs. */
|
|
30
21
|
cliScriptPath: string;
|
|
31
22
|
/** Env file carrying `KICI_DATABASE_URL` for the scheduled run. */
|
|
32
23
|
envFilePath: string;
|
|
33
24
|
/** User-level (`systemctl --user`, LaunchAgent) vs system-level. */
|
|
34
25
|
isUserLevel: boolean;
|
|
35
|
-
/** Account a system-level unit runs as. */
|
|
36
26
|
user?: string;
|
|
37
27
|
}
|
|
38
|
-
/**
|
|
39
|
-
* `kici-orchestrator` -> `kici-orchestrator-db-backup`. A name that already
|
|
40
|
-
* carries the `kici-` prefix keeps exactly one, so the unit is always
|
|
41
|
-
* `kici-<instance>-db-backup`.
|
|
42
|
-
*/
|
|
28
|
+
/** `kici-orchestrator` -> `kici-orchestrator-db-backup`: always exactly one `kici-` prefix. */
|
|
43
29
|
export declare function backupTimerName(serviceName: string): string;
|
|
44
30
|
/** The argv the scheduled unit executes, after the node binary. */
|
|
45
31
|
export declare function backupCommandArgs(config: BackupTimerConfig): string[];
|
|
46
|
-
/**
|
|
47
|
-
* Explain why a platform cannot carry a KiCI-managed backup timer, and what to
|
|
48
|
-
* use instead. Returns null when the platform is supported.
|
|
49
|
-
*/
|
|
32
|
+
/** Why a platform cannot carry a KiCI backup timer and what to use instead; null when supported. */
|
|
50
33
|
export declare function unsupportedPlatformMessage(platform: ServicePlatform, outputDir: string, keep: number): string | null;
|
|
51
34
|
/** Throw the {@link unsupportedPlatformMessage} refusal, if there is one. */
|
|
52
35
|
export declare function assertTimerPlatformSupported(platform: ServicePlatform, outputDir: string, keep: number): void;
|
|
@@ -55,29 +38,23 @@ export declare function renderSystemdBackupService(config: BackupTimerConfig): s
|
|
|
55
38
|
/** Render the systemd `.timer` unit that schedules the backup service. */
|
|
56
39
|
export declare function renderSystemdBackupTimer(config: BackupTimerConfig): string;
|
|
57
40
|
/**
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
* cleanly are accepted; anything else is refused by name.
|
|
41
|
+
* Calendar spec to launchd `StartCalendarInterval` fields. launchd has no
|
|
42
|
+
* calendar-expression parser, so only `daily` and `HH:MM` are accepted.
|
|
61
43
|
*/
|
|
62
44
|
export declare function parseLaunchdSchedule(schedule: string): {
|
|
63
45
|
hour: number;
|
|
64
46
|
minute: number;
|
|
65
47
|
};
|
|
66
48
|
/**
|
|
67
|
-
* Read one key out of a `KEY=value` env file
|
|
68
|
-
* or the key is absent — the caller decides whether that is fatal.
|
|
49
|
+
* Read one key out of a `KEY=value` env file; undefined when absent.
|
|
69
50
|
*
|
|
70
|
-
* The value is trimmed and
|
|
71
|
-
*
|
|
72
|
-
* `
|
|
73
|
-
* and must read back the same way. Only the outer quote characters go — an
|
|
74
|
-
* embedded `=` stays, so `B=two=three` still reads as `two=three`.
|
|
51
|
+
* The value is trimmed and its outer quotes stripped, since these files are
|
|
52
|
+
* hand-edited: `"/etc/kici/scalers.yaml"` names the same file. An embedded `=`
|
|
53
|
+
* stays (`B=two=three` reads `two=three`).
|
|
75
54
|
*
|
|
76
|
-
* A duplicated key takes its **last** occurrence,
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* database the service never used, which is the opposite of what these readers
|
|
80
|
-
* are for. Every other env-file reader in the repo takes the last occurrence too.
|
|
55
|
+
* A duplicated key takes its **last** occurrence, the value the running process
|
|
56
|
+
* holds (systemd's `EnvironmentFile=` applies assignments in order), like every
|
|
57
|
+
* other env-file reader in the repo.
|
|
81
58
|
*/
|
|
82
59
|
export declare function readEnvValue(content: string, key: string): string | undefined;
|
|
83
60
|
/** Render the launchd plist that schedules the backup run. */
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* This sits in its own module because two callers need it and they cannot
|
|
6
|
-
* share `compose.ts` — that module also detects a container runtime, which the
|
|
7
|
-
* env-file writer has no business pulling in. One definition means the naming
|
|
8
|
-
* convention is written down once rather than re-derived at each site.
|
|
2
|
+
* The generated compose file sits beside the env file, named for the service.
|
|
3
|
+
* Its own module so the env-file writer need not import `compose.ts`, which
|
|
4
|
+
* also detects a container runtime.
|
|
9
5
|
*/
|
|
10
6
|
export declare function composeFilePath(envFilePath: string, serviceName: string): string;
|
|
11
7
|
//# sourceMappingURL=compose-path.d.ts.map
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* Generates compose YAML files and manages service lifecycle via
|
|
5
|
-
* `docker compose` or `podman compose` (auto-detected). Provides
|
|
6
|
-
* a container-based service management backend that works on any
|
|
7
|
-
* platform with Docker or Podman installed.
|
|
2
|
+
* Compose service manager: writes compose YAML and drives the lifecycle via
|
|
3
|
+
* `podman compose` or `docker compose` (auto-detected), on any platform.
|
|
8
4
|
*/
|
|
9
5
|
import type { ServiceManager, ServiceConfig, ServiceStatus, LogOptions, DiscoveredInstance, LaunchSpec } from './types.js';
|
|
10
6
|
/** Container runtime binary (`podman` or `docker`); compose form is `${runtime} compose`. */
|
|
11
7
|
type Runtime = 'podman' | 'docker';
|
|
12
8
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* Exported so the orchestrator installer can resolve the runtime once when
|
|
17
|
-
* injecting the `KICI_DEPLOY_CONTAINER_RUNTIME` env var for a compose deploy.
|
|
9
|
+
* Tries podman compose, then docker compose. Exported for the installer, which
|
|
10
|
+
* resolves it once to inject `KICI_DEPLOY_CONTAINER_RUNTIME` for a compose deploy.
|
|
18
11
|
*
|
|
19
12
|
* @throws When neither runtime is found.
|
|
20
13
|
*/
|
|
@@ -23,29 +16,18 @@ export declare class ComposeServiceManager implements ServiceManager {
|
|
|
23
16
|
readonly platform: 'compose';
|
|
24
17
|
private runtime;
|
|
25
18
|
/**
|
|
26
|
-
* True when the
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* discovery reads a `false` here as "do not touch this platform's index
|
|
30
|
-
* rows" rather than as an empty scan.
|
|
31
|
-
*
|
|
32
|
-
* Both halves are needed, and the second is the one that costs something.
|
|
33
|
-
* `<runtime> compose version` is answered by the compose client alone: with
|
|
34
|
-
* dockerd stopped it still exits 0 (measured), so a client-only probe reports
|
|
35
|
-
* available, `list()` then gets an error it cannot distinguish from an empty
|
|
36
|
-
* registry, and the reconcile prunes live rows. The `RUNTIME_PROBE_TIMEOUT_MS`
|
|
37
|
-
* bound does not cover this — the client answers instantly whether or not the
|
|
38
|
-
* daemon is there, so there is nothing for a timeout to catch.
|
|
19
|
+
* True when the runtime's registry answers. A host whose runtime is briefly
|
|
20
|
+
* down still holds its installs, so discovery reads `false` as "leave this
|
|
21
|
+
* platform's index rows alone", not as an empty scan.
|
|
39
22
|
*
|
|
40
|
-
* `
|
|
41
|
-
*
|
|
42
|
-
* the
|
|
43
|
-
*
|
|
23
|
+
* `compose version` alone is not enough: the client answers it with dockerd
|
|
24
|
+
* stopped (measured), so `list()` would then fail like an empty registry and
|
|
25
|
+
* the reconcile would prune live rows; no timeout catches an instant answer.
|
|
26
|
+
* `ps -q` is the cheapest registry-only question (0.02s docker / 0.07s
|
|
27
|
+
* podman), failing as the scan would: non-zero when down, timeout when hung.
|
|
44
28
|
*/
|
|
45
29
|
available(): Promise<boolean>;
|
|
46
|
-
/** Get the runtime binary (`podman` or `docker`), detecting it if not already done. */
|
|
47
30
|
private getRuntime;
|
|
48
|
-
/** Run a compose command for the given service config. */
|
|
49
31
|
private runCompose;
|
|
50
32
|
install(config: ServiceConfig): Promise<void>;
|
|
51
33
|
uninstall(config: ServiceConfig): Promise<void>;
|
|
@@ -1,30 +1,18 @@
|
|
|
1
1
|
import type { ServicePlatform } from './types.js';
|
|
2
|
-
/** Inputs the installer already has when it writes the env file. */
|
|
3
2
|
export interface DeployEnvInput {
|
|
4
3
|
platform: ServicePlatform;
|
|
5
|
-
/**
|
|
4
|
+
/** = ServiceConfig.name. */
|
|
6
5
|
serviceName: string;
|
|
7
|
-
/**
|
|
6
|
+
/** `compose` platform only. */
|
|
8
7
|
containerRuntime?: 'podman' | 'docker';
|
|
9
8
|
/**
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* `EnvironmentFile=` delivers the variables and not the filename, and a
|
|
13
|
-
* compose container never sees the host path at all.
|
|
9
|
+
* Stamped into the file because the process cannot derive it: systemd's
|
|
10
|
+
* `EnvironmentFile=` passes no filename, and a container never sees the host path.
|
|
14
11
|
*/
|
|
15
12
|
envFilePath: string;
|
|
16
13
|
}
|
|
17
|
-
/**
|
|
18
|
-
* Build the `KICI_DEPLOY_*` env lines for a given deployment shape. The mode
|
|
19
|
-
* and config-file lines are always emitted; the container name, runtime, and
|
|
20
|
-
* compose file are emitted only for the `compose` platform (the only shape
|
|
21
|
-
* with a container to `exec` into and a generated compose file to read).
|
|
22
|
-
*/
|
|
14
|
+
/** Container lines only for `compose`, the one shape with a container and a compose file. */
|
|
23
15
|
export declare function buildDeployEnvLines(input: DeployEnvInput): string[];
|
|
24
|
-
/**
|
|
25
|
-
* Append the freshly-computed deploy lines to existing env-file content,
|
|
26
|
-
* idempotently: any pre-existing `KICI_DEPLOY_*` line is stripped first so a
|
|
27
|
-
* re-install / upgrade heals the shape rather than duplicating it.
|
|
28
|
-
*/
|
|
16
|
+
/** Idempotent: existing `KICI_DEPLOY_*` lines are stripped so a re-install heals the shape. */
|
|
29
17
|
export declare function upsertDeployEnvLines(existingContent: string, lines: string[]): string;
|
|
30
18
|
//# sourceMappingURL=deploy-env.d.ts.map
|
|
@@ -1,32 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Resolves the command a service unit
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* separate module entry points (`dist/server.js` / `dist/standalone.js`) that
|
|
7
|
-
* must be launched with `node <script>`. These helpers turn an install's
|
|
8
|
-
* options into the `{ executablePath, args }` pair the platform service
|
|
9
|
-
* managers write into the unit's run command.
|
|
2
|
+
* Resolves the command a service unit runs. `npm install -g kici-admin` exposes
|
|
3
|
+
* only the `kici-admin` / `kici-agent` CLI bins; the orchestrator and agent
|
|
4
|
+
* servers are module entry points (`dist/server.js` / `dist/standalone.js`)
|
|
5
|
+
* launched with `node <script>`.
|
|
10
6
|
*/
|
|
11
|
-
/** Server entry point variant for the orchestrator. */
|
|
12
7
|
export type ServerEntry = 'server' | 'standalone';
|
|
13
|
-
/** Resolved run command for a service unit. */
|
|
14
8
|
export interface ServiceExecutable {
|
|
15
|
-
/**
|
|
9
|
+
/** The Node binary, or an explicit self-launching binary. */
|
|
16
10
|
executablePath: string;
|
|
17
|
-
/**
|
|
11
|
+
/** The resolved server script, or none. */
|
|
18
12
|
args: string[];
|
|
19
13
|
}
|
|
20
14
|
/**
|
|
21
|
-
*
|
|
22
|
-
* `
|
|
23
|
-
* the Platform-connected server.
|
|
15
|
+
* From `KICI_MODE`: `independent` runs the standalone server; `platform` /
|
|
16
|
+
* `hybrid` / unset run the Platform-connected server.
|
|
24
17
|
*/
|
|
25
18
|
export declare function selectServerEntry(envFileContent: string): ServerEntry;
|
|
26
19
|
/**
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* - Otherwise the Node binary runs the resolved server `entryScript`.
|
|
20
|
+
* An explicit `binary` runs directly (assumed self-launching), no args;
|
|
21
|
+
* otherwise the Node binary runs the resolved server `entryScript`.
|
|
30
22
|
*/
|
|
31
23
|
export declare function resolveServiceExecutable(opts: {
|
|
32
24
|
binary?: string;
|
|
@@ -34,12 +26,10 @@ export declare function resolveServiceExecutable(opts: {
|
|
|
34
26
|
entryScript?: string;
|
|
35
27
|
}): ServiceExecutable;
|
|
36
28
|
/**
|
|
37
|
-
* The path of a server entry script installed beside this CLI
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* or agent server. Either way the error names `--binary`, the launcher the
|
|
42
|
-
* service runs instead.
|
|
29
|
+
* The path of a server entry script installed beside this CLI. `resolve` is the
|
|
30
|
+
* caller's `import.meta.resolve`, undefined in a standalone-package kici-admin
|
|
31
|
+
* (a single CommonJS bundle with no orchestrator or agent server). The error
|
|
32
|
+
* names `--binary`, the launcher the service runs instead.
|
|
43
33
|
*/
|
|
44
34
|
export declare function resolveServerScript(specifier: string, component: ServerComponent, resolve: ModuleResolver | undefined): string;
|
|
45
35
|
/**
|
|
@@ -48,7 +38,6 @@ export declare function resolveServerScript(specifier: string, component: Server
|
|
|
48
38
|
*/
|
|
49
39
|
export declare function assertServerResolvable(component: ServerComponent, binary: string | undefined, resolve: ModuleResolver | undefined): void;
|
|
50
40
|
type ServerComponent = 'orchestrator' | 'agent';
|
|
51
|
-
/** A module's `import.meta.resolve`. */
|
|
52
41
|
export type ModuleResolver = (specifier: string) => string;
|
|
53
42
|
export {};
|
|
54
43
|
//# sourceMappingURL=entrypoint.d.ts.map
|
|
@@ -1,24 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Single-variable upsert
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* stripping the prefix and re-appending it. A variable an operator may also
|
|
6
|
-
* have set by hand needs the narrower shape: replace the assignment where it
|
|
7
|
-
* already sits, so the comment above it still describes the value below it.
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* Whether `content` carries an uncommented assignment of `name`.
|
|
11
|
-
*
|
|
12
|
-
* A `#`-prefixed mention does not count: it is documentation, and the readers
|
|
13
|
-
* that matter (systemd's `EnvironmentFile=`, `selectServerEntry`) skip it.
|
|
2
|
+
* Single-variable env-file upsert. Unlike {@link ./deploy-env.js}, which
|
|
3
|
+
* re-appends a whole `KICI_DEPLOY_*` block, it replaces a hand-settable
|
|
4
|
+
* variable in place, so the comment above still describes the value below.
|
|
14
5
|
*/
|
|
6
|
+
/** A `#` mention does not count: systemd's `EnvironmentFile=` and `selectServerEntry` skip it. */
|
|
15
7
|
export declare function hasEnvAssignment(content: string, name: string): boolean;
|
|
16
8
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* Every uncommented assignment of `name` is rewritten in place; a file that
|
|
20
|
-
* declares it nowhere gains the assignment on its last line. Commented lines
|
|
21
|
-
* are left alone, so a stub's explanatory `# KICI_MODE=...` survives.
|
|
9
|
+
* Rewrites every uncommented assignment of `name` in place, or appends one.
|
|
10
|
+
* Commented lines survive, such as a stub's `# KICI_MODE=...`.
|
|
22
11
|
*/
|
|
23
12
|
export declare function upsertEnvAssignment(content: string, name: string, value: string): string;
|
|
24
13
|
//# sourceMappingURL=env-assignment.d.ts.map
|
|
@@ -1,15 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* the record is missing (a dev tree that never ran a release) or lacks the
|
|
8
|
-
* image, falls back to the moving `:latest` tag and warns.
|
|
9
|
-
*
|
|
10
|
-
* The record resolves relative to this module's directory and works for both
|
|
11
|
-
* layouts: the source tree (`src/cli/service/` → the JSON is three dirs up at
|
|
12
|
-
* the package root) and the single-file bundle (`dist/cli.js` → one dir up).
|
|
2
|
+
* The installer's image reference, from the digest record at the package root.
|
|
3
|
+
* The ref is pinned to the manifest-list digest, so a `docker`/`podman pull`
|
|
4
|
+
* of substituted bits fails. Without a record (a dev tree that never ran a
|
|
5
|
+
* release) or the image in it, it falls back to the moving `:latest` tag and
|
|
6
|
+
* warns.
|
|
13
7
|
*/
|
|
14
8
|
import type { Component } from './instance/types.js';
|
|
15
9
|
/** The published image a component runs, whatever the service is named. */
|
|
@@ -21,10 +15,7 @@ export declare function installerImageName(component: Component): string;
|
|
|
21
15
|
export declare function pinnedImageVersion(name: string, opts?: {
|
|
22
16
|
filePath?: string;
|
|
23
17
|
}): string | null;
|
|
24
|
-
/**
|
|
25
|
-
* Resolve `quay.io/kici-dev/<name>:<version>@sha256:<digest>` for an installer
|
|
26
|
-
* image. Falls back to `:latest` (with a warning) when no recorded digest exists.
|
|
27
|
-
*/
|
|
18
|
+
/** The digest-pinned installer image ref, else `:latest` with a warning. */
|
|
28
19
|
export declare function resolveImageRef(name: string, opts?: {
|
|
29
20
|
filePath?: string;
|
|
30
21
|
}): string;
|
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Service management entry point.
|
|
3
|
-
*
|
|
4
|
-
* Re-exports all types and provides a factory function that returns
|
|
5
|
-
* the correct ServiceManager implementation for the detected (or
|
|
6
|
-
* specified) platform. Uses dynamic imports to avoid loading all
|
|
7
|
-
* platform-specific code on every platform.
|
|
8
|
-
*/
|
|
1
|
+
/** Service management entry point: re-exports and the per-platform ServiceManager factory. */
|
|
9
2
|
export type { ServiceManager, ServiceConfig, LaunchSpec, ServiceStatus, ServiceState, ServicePlatform, RestartPolicy, LogOptions, } from './types.js';
|
|
10
3
|
export { DEFAULT_RESTART_POLICY, SERVICE_TEXT } from './types.js';
|
|
11
4
|
export { detectPlatform, isRoot, kiciConfigRoot, getConfigDir, getLogDir, getCacheDir, } from './platform-detect.js';
|
|
@@ -19,15 +12,6 @@ export { indexPath, readIndex, writeIndex, appendIndexEntry, removeIndexEntry, }
|
|
|
19
12
|
export { candidatePlatforms, listInstances, resolveInstance, resolveInstanceTarget, formatRefusal, InstanceNotFoundError, } from './instance/resolve.js';
|
|
20
13
|
export type { ListedInstance, ResolveArgs, ListInstancesArgs, ResolveTargetArgs, ResolvedTarget, } from './instance/resolve.js';
|
|
21
14
|
import type { ServiceManager, ServicePlatform } from './types.js';
|
|
22
|
-
/**
|
|
23
|
-
* Create a ServiceManager for the given platform.
|
|
24
|
-
*
|
|
25
|
-
* Uses dynamic imports so only the relevant platform code is loaded.
|
|
26
|
-
* For example, on Linux only the systemd module is imported, not
|
|
27
|
-
* Windows or launchd code.
|
|
28
|
-
*
|
|
29
|
-
* @param platform - Target platform (from detectPlatform() or --platform flag)
|
|
30
|
-
* @returns The appropriate ServiceManager implementation
|
|
31
|
-
*/
|
|
15
|
+
/** Dynamic imports load only the target platform's driver. */
|
|
32
16
|
export declare function createServiceManager(platform: ServicePlatform): Promise<ServiceManager>;
|
|
33
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,28 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* index is convenience: discovery is authoritative against the init system
|
|
7
|
-
* (see resolve.ts#listInstances which reconciles this file against scans).
|
|
8
|
-
*
|
|
9
|
-
* Corrupt index → warn and treat as empty; the next install/uninstall
|
|
10
|
-
* rewrites it cleanly.
|
|
2
|
+
* `<kiciRoot>/instances.json`: a reconciled CACHE of the host's installed
|
|
3
|
+
* instances. Discovery against the init system is authoritative
|
|
4
|
+
* (resolve.ts#listInstances reconciles this file against scans). A corrupt
|
|
5
|
+
* index warns and reads as empty; the next install/uninstall rewrites it.
|
|
11
6
|
*/
|
|
12
7
|
import type { Component, IndexEntry } from './types.js';
|
|
13
|
-
/** Resolve <kiciRoot>/instances.json. */
|
|
14
8
|
export declare function indexPath(kiciRoot: string): string;
|
|
15
|
-
/**
|
|
9
|
+
/** Missing or corrupt → []. */
|
|
16
10
|
export declare function readIndex(kiciRoot: string): IndexEntry[];
|
|
17
|
-
/** Overwrite the index. */
|
|
18
11
|
export declare function writeIndex(kiciRoot: string, entries: IndexEntry[]): void;
|
|
19
12
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
13
|
+
* Idempotent for an exact (component,name,instanceDir) match. Throws on a
|
|
14
|
+
* (component,name) collision at another instanceDir: the caller picks another
|
|
15
|
+
* name or passes --force.
|
|
23
16
|
*/
|
|
24
17
|
export declare function appendIndexEntry(kiciRoot: string, entry: IndexEntry): void;
|
|
25
|
-
/**
|
|
18
|
+
/** No-op when absent. */
|
|
26
19
|
export declare function removeIndexEntry(kiciRoot: string, key: {
|
|
27
20
|
component: Component;
|
|
28
21
|
name: string;
|
|
@@ -1,56 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Instance manifest
|
|
3
|
-
*
|
|
4
|
-
*
|
|
2
|
+
* Instance manifest: the single source of truth for a folder-anchored install.
|
|
3
|
+
* `install` writes it into the deploy folder; every lifecycle command rebuilds
|
|
4
|
+
* the ServiceConfig from it.
|
|
5
5
|
*/
|
|
6
6
|
import type { Component, InstanceManifest } from './types.js';
|
|
7
7
|
import type { LaunchSpec } from '../types.js';
|
|
8
|
-
/** Per-component manifest filename. */
|
|
9
8
|
export declare function manifestFilename(component: Component): string;
|
|
10
|
-
/** Resolve the manifest path inside an instance directory. */
|
|
11
9
|
export declare function manifestPath(instanceDir: string, component: Component): string;
|
|
12
|
-
/**
|
|
13
|
-
* Read the manifest for `component` from `instanceDir`.
|
|
14
|
-
* Returns null when the file does not exist; throws on parse or schema errors.
|
|
15
|
-
*/
|
|
10
|
+
/** Null when the file does not exist; throws on parse or schema errors. */
|
|
16
11
|
export declare function readManifest(instanceDir: string, component: Component): InstanceManifest | null;
|
|
17
|
-
/**
|
|
18
|
-
* Write the manifest for `manifest.component` into `instanceDir`.
|
|
19
|
-
* Returns the full path written.
|
|
20
|
-
*/
|
|
12
|
+
/** Returns the path written. */
|
|
21
13
|
export declare function writeManifest(instanceDir: string, manifest: InstanceManifest): string;
|
|
22
14
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
* undefined when kici-admin runs as a globally-installed binary, which is the
|
|
27
|
-
* actual install path. Reading from the package.json on disk is the only
|
|
28
|
-
* reliable source.
|
|
15
|
+
* The running kici-admin's version, from the orchestrator package.json on
|
|
16
|
+
* disk: `npm_package_version` is set only under `npm run`, never for the
|
|
17
|
+
* globally installed binary.
|
|
29
18
|
*/
|
|
30
19
|
export declare function readKiciVersion(): string;
|
|
31
20
|
/**
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
* Returns null when no resolvable entry script is present (e.g. an opaque
|
|
37
|
-
* `--binary` install) or the owning package.json is missing / name-mismatched.
|
|
38
|
-
* This is what lets the npm-source upgrade refuse to report a version it can't
|
|
39
|
-
* stand behind.
|
|
21
|
+
* The `@kici-dev/<component>` version a {@link LaunchSpec} executes, read from
|
|
22
|
+
* the package.json owning its entry script. Null when there is no entry script
|
|
23
|
+
* (an opaque `--binary` install) or the package.json is missing or
|
|
24
|
+
* name-mismatched, so the npm-source upgrade never reports an unverified version.
|
|
40
25
|
*/
|
|
41
26
|
export declare function resolveVersionFromLaunchSpec(spec: LaunchSpec, component: Component): string | null;
|
|
42
27
|
/**
|
|
43
|
-
* The version of the launcher a service definition starts, or null
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
* install base resolves into the `<component>-<version>` folder an archive
|
|
49
|
-
* upgrade extracted: through the `<component>` symlink on Linux and macOS, or
|
|
50
|
-
* directly where Windows registers it. A `--binary` anywhere else shows none.
|
|
28
|
+
* The version of the launcher a service definition starts, or null. An npm
|
|
29
|
+
* entry script names it in its package.json ({@link resolveVersionFromLaunchSpec});
|
|
30
|
+
* a launcher under the install base resolves into its `<component>-<version>`
|
|
31
|
+
* folder (through the symlink on Linux and macOS, directly on Windows). A
|
|
32
|
+
* `--binary` anywhere else shows none.
|
|
51
33
|
*/
|
|
52
34
|
export declare function resolveLauncherVersion(spec: LaunchSpec, component: Component, installBase: string): string | null;
|
|
53
|
-
/** What {@link writeInstallManifest} wrote. */
|
|
54
35
|
export interface InstallManifestWrite {
|
|
55
36
|
file: string;
|
|
56
37
|
manifest: InstanceManifest;
|
|
@@ -58,41 +39,60 @@ export interface InstallManifestWrite {
|
|
|
58
39
|
warning?: string;
|
|
59
40
|
}
|
|
60
41
|
/**
|
|
61
|
-
* Write the manifest `install` built
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
* the `
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
* compose file pins, whatever `launch` names, so a compose re-install records
|
|
72
|
-
* the release of that image (`opts.digestRecordPath` overrides the digest
|
|
73
|
-
* record it reads, for tests).
|
|
74
|
-
*
|
|
75
|
-
* A manifest that cannot be read, or that names another instance, is
|
|
76
|
-
* replaced, and the result carries a warning.
|
|
42
|
+
* Write the manifest `install` built. A first install writes `fresh`. A
|
|
43
|
+
* re-install of the same instance (readable manifest, same component and name)
|
|
44
|
+
* keeps `createdAt`, the `migrationHeads` the rollback schema guard reads, and
|
|
45
|
+
* any field a newer CLI wrote, and takes the rest from `fresh`. `kiciVersion`
|
|
46
|
+
* is the version of the launcher `launch` starts, else the recorded one stands,
|
|
47
|
+
* because the CLI running `install` need not be the version the service runs.
|
|
48
|
+
* A compose re-install records the release of the image its compose file pins,
|
|
49
|
+
* whatever `launch` names (`opts.digestRecordPath` overrides the record, for
|
|
50
|
+
* tests). An unreadable manifest, or one naming another instance, is replaced
|
|
51
|
+
* with a warning.
|
|
77
52
|
*/
|
|
78
53
|
export declare function writeInstallManifest(instanceDir: string, fresh: InstanceManifest, launch: LaunchSpec, opts?: {
|
|
79
54
|
digestRecordPath?: string;
|
|
80
55
|
}): InstallManifestWrite;
|
|
81
56
|
/**
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
* component is
|
|
86
|
-
*
|
|
87
|
-
*
|
|
88
|
-
*
|
|
57
|
+
* Where an npm-source upgrade installs, from a unit's launch spec.
|
|
58
|
+
* `owningPackage` is the top-level global package ExecStart runs (`kici-admin`
|
|
59
|
+
* when the component loads through its nested node_modules, else
|
|
60
|
+
* `@kici-dev/<component>`). `globalPrefix` is the npm prefix the launch entry
|
|
61
|
+
* lives in; every npm call passes it as `--prefix`, because the caller's
|
|
62
|
+
* environment can name another one (`npx` exports `npm_config_prefix`).
|
|
63
|
+
* `npmInvocation` runs `npm-cli.js` with the pinned node when it sits beside
|
|
64
|
+
* that node, so a version-manager wrapper at `npmPath` (mise's reshim needs
|
|
65
|
+
* mise on PATH) is never started.
|
|
89
66
|
*/
|
|
90
67
|
export interface NpmInstallTarget {
|
|
91
68
|
nodeExecPath: string;
|
|
92
69
|
npmPath: string;
|
|
93
70
|
owningPackage: string;
|
|
71
|
+
globalPrefix: string;
|
|
72
|
+
npmInvocation: {
|
|
73
|
+
cmd: string;
|
|
74
|
+
preArgs: string[];
|
|
75
|
+
};
|
|
94
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* The resolution of a launch spec to an install target. `no-entry` covers an
|
|
79
|
+
* opaque `--binary` install and a path outside `node_modules`; `not-global`
|
|
80
|
+
* an entry under a local `node_modules` tree, whose prefix the unit's npm
|
|
81
|
+
* cannot install into with `-g`.
|
|
82
|
+
*/
|
|
83
|
+
export type NpmInstallResolution = {
|
|
84
|
+
ok: true;
|
|
85
|
+
target: NpmInstallTarget;
|
|
86
|
+
} | {
|
|
87
|
+
ok: false;
|
|
88
|
+
reason: 'no-entry';
|
|
89
|
+
} | {
|
|
90
|
+
ok: false;
|
|
91
|
+
reason: 'not-global';
|
|
92
|
+
entry: string;
|
|
93
|
+
};
|
|
95
94
|
export declare function resolveNpmInstallTarget(spec: LaunchSpec, component: Component, opts: {
|
|
96
95
|
windows: boolean;
|
|
97
|
-
|
|
96
|
+
exists?: (p: string) => boolean;
|
|
97
|
+
}): NpmInstallResolution;
|
|
98
98
|
//# sourceMappingURL=manifest.d.ts.map
|