Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
0ea56cc
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
aa97553
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
d65e452
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
0ebbcac
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
be48c5f
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
108c4b9
Propagate host_effect NotConverged reasons and unify observe path aut…
briansrls Jul 14, 2026
cafb956
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
59d0765
Retire dead toolchain script witnesses; coalesce reconcile imports.
briansrls Jul 14, 2026
a914a32
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
d9cbc33
Honest toolchain scaffold: WitnessBin argv, not extdeps PM dispatch yet.
briansrls Jul 14, 2026
6c0e287
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
f30d227
Add toolchain transport mismatch witness for EmitArtifactThenThinRun.
briansrls Jul 14, 2026
efb6beb
Merge remote-tracking branch 'origin/main' into session/deep-newt-523…
briansrls Jul 14, 2026
1968363
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
a71b942
Resolve merge conflicts with main (P5a + P5b host_effect union).
briansrls Jul 14, 2026
ba4d3ff
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
e7b516d
Merge remote-tracking branch 'origin/main' into session/deep-newt-523…
briansrls Jul 14, 2026
7423844
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
feb5a07
Honest toolchain reconcile header and document SSH argv composer limits.
briansrls Jul 14, 2026
7831c66
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
3ed36d1
WIP: Shell→dag P5b: the 2 HEAVY srv3 files — srv3_install_diagnostic_…
briansrls Jul 14, 2026
986b13a
Fix host_effect_realize merge: union P5b + SetHostnameCas (#6619)
briansrls Jul 14, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions dag/extdeps/bmc/os_install_actuator_toolchain.dag
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@ data os_install_actuator_toolchain_requirement: ActuatorToolchainRequirement = A

data srv3_os_install_actuator_host_label: NonEmptyStr = "install-actuator-host"

data gunbc_bin_dir: NonEmptyStr = "/var/lib/gunbc/bin"

data srv3_os_install_actuator_toolchain_grant: ActuatorToolchainRequirement = os_install_actuator_toolchain_requirement

fn actuator_toolchain_requirement_includes_tool(
Expand Down
2 changes: 2 additions & 0 deletions dag/extdeps/package_managers/apt.dag
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ data package_socat: NonEmptyStr = "socat"
data package_websocat: NonEmptyStr = "websocat"
data package_xorriso: NonEmptyStr = "xorriso"

data apt_get_binary_path: NonEmptyStr = "/usr/bin/apt-get"

data apt_man_url: NonEmptyStr = "https://manpages.debian.org/testing/apt/apt.8.en.html"


Expand Down
23 changes: 22 additions & 1 deletion dag/gunbc/fleet_converge_cli.dag
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,28 @@ import gunbc.host_converge {
fleet_converge_policy,
find_by_identity,
}
import gunbc.host_effect { LocalShell, HostEffectIntent, HostEffect, ConvergePlan, ShellCommand, RedfishAction }
import gunbc.host_effect {
LocalShell,
HostEffectIntent,
HostEffect,
ConvergePlan,
ShellCommand,
RedfishAction,
Srv3InstallDiagnosticObserve,
OsInstallActuatorToolchainEnsure,
Srv3InstallReconcileObserve,
DurableApprovalGrantRecord,
DurableApprovalGrantRead,
Srv3InstallMediaFetch,
Srv3SeededInstallMediaRemaster,
Srv3SeededInstallMediaToolchainEnsure,
Srv3SolConsoleCapture,
Srv3BmcwebSessionLogin,
Srv3BmcwebTokenExtract,
Srv3NbdProxyServe,
Srv3BootOnceReadBackSleep,
Srv3ReceiptEmit,
}
import gunbc.fleet_converge_apply { converge_apply_for_host }
import std.realization_reconcile { Converged, NotConverged }

Expand Down
9 changes: 8 additions & 1 deletion dag/gunbc/host_effect.dag
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module gunbc.host_effect

import std.types { String, Int, NonEmptyStr, List }
import std.types { String, Int, NonEmptyStr, List, ContentHash }
import std.access { AccessDecision }
import std.disposition { Disposition, RealizationDispatch, Scaffold, Terminal }
import std.decl_ref { DeclarationRef, WholeDeclaration }
Expand All @@ -22,6 +22,13 @@ type HostEffect =
ShellCommand { script: String }
| RedfishAction { action: RedfishSystemAction }
| ConvergePlan { policy: HostConverge }
| Srv3InstallDiagnosticObserve {
bmc: NonEmptyStr,
port: Int,
iso_path: NonEmptyStr,
iso_content_hash: ContentHash,
}
| OsInstallActuatorToolchainEnsure {}
| SetHostnameCas { hostnamectl_path: NonEmptyStr, base: DnsLabel, desired: DnsLabel }
| Srv3InstallReconcileObserve { include_git_meta: Bool }
| DurableApprovalGrantRecord
Expand Down
565 changes: 511 additions & 54 deletions dag/gunbc/host_effect_realize.dag

Large diffs are not rendered by default.

12 changes: 9 additions & 3 deletions dag/gunbc/srv3_host_effect_script.dag
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ module gunbc.srv3_host_effect_script

import gunbc.host_effect {
HostEffect,
Srv3InstallDiagnosticObserve,
OsInstallActuatorToolchainEnsure,
Srv3InstallReconcileObserve,
DurableApprovalGrantRecord,
DurableApprovalGrantRead,
Expand All @@ -19,8 +21,10 @@ import gunbc.host_effect {
ConvergePlan,
}
import gunbc.shell_bash_runner { shell_exec_via_bash, shell_printf_line }
import gunbc.srv3_install_diagnostic_checklist { srv3_install_diagnostic_observe_script }
import gunbc.srv3_os_install_diagnostic { srv3_os_install_attempt_intent }
import gunbc.srv3_os_install_diagnostic {
srv3_os_install_attempt_intent,
srv3_install_diagnostic_observe_script_for_intent,
}
import gunbc.srv3_os_install_reconcile_receipt { srv3_install_record_boot_once_approval_script }
import gunbc.srv3_os_install_reconcile_types {
srv3_boot_once_approval_grant_path,
Expand Down Expand Up @@ -120,7 +124,7 @@ fn install_media_remaster_toolchain_ensure_script() -> String {
}

fn srv3_install_reconcile_observe_script(include_git_meta: Bool) -> String {
let diagnostic = srv3_install_diagnostic_observe_script(intent: srv3_os_install_attempt_intent)
let diagnostic = srv3_install_diagnostic_observe_script_for_intent(intent: srv3_os_install_attempt_intent)
if include_git_meta {
concat(diagnostic, srv3_install_reconcile_observe_meta_script())
} else {
Expand Down Expand Up @@ -248,6 +252,8 @@ fn srv3_host_effect_script_for(effect: HostEffect) -> String? {
}
Srv3ReceiptEmit { lines: lines } =>
Present { value: shell_exec_via_bash(body: srv3_receipt_emit_script(lines: lines)) }
Srv3InstallDiagnosticObserve { bmc: _, port: _, iso_path: _, iso_content_hash: _ } => Absent
OsInstallActuatorToolchainEnsure {} => Absent
ShellCommand { script: _ } => Absent
RedfishAction { action: _ } => Absent
ConvergePlan { policy: _ } => Absent
Expand Down
Loading
Loading