swarm containers: run the claude-code the hive pins for agents
This commit is contained in:
parent
1302288474
commit
a169947f15
6 changed files with 65 additions and 2 deletions
|
|
@ -158,6 +158,12 @@
|
|||
`nix-collect-garbage` cannot reclaim an old `claude-code` until
|
||||
every agent has been rebuilt past it and the old generations
|
||||
are gone.
|
||||
|
||||
The swarm's `swarm-claude-login` and `swarm-review-classifier`
|
||||
containers, where this host runs them, follow the same pin and
|
||||
keep their own nixpkgs' `claude-code` when it is `null`. They are
|
||||
not agents, so pinning an older build for an agent-side
|
||||
regression pins them too.
|
||||
'';
|
||||
};
|
||||
dashboardPort = lib.mkOption {
|
||||
|
|
|
|||
|
|
@ -21,6 +21,16 @@
|
|||
}:
|
||||
let
|
||||
hyperhiveCfg = config.services.hyperhive;
|
||||
|
||||
# The `claude-code` the agents run, so this container does not trail them on
|
||||
# the CLI; `fallback`, the container's own nixpkgs', only where the hive pins
|
||||
# none.
|
||||
claudeCode =
|
||||
fallback:
|
||||
if hyperhiveCfg.c0re.claudeCodePackage != null then
|
||||
hyperhiveCfg.c0re.claudeCodePackage
|
||||
else
|
||||
fallback;
|
||||
cfg = hyperhiveCfg.deploy.claude-login;
|
||||
baoCfg = hyperhiveCfg.swarm.bao;
|
||||
baoDeploy = hyperhiveCfg.deploy.bao;
|
||||
|
|
@ -175,7 +185,7 @@ in
|
|||
SWARM_CLAUDE_LOGIN_NATS_URL = "tls://${natsCfg.domain}:${toString natsCfg.port}";
|
||||
SWARM_CLAUDE_LOGIN_OIDC_TOKEN_ENDPOINT = "${autheliaCfg.url}/api/oidc/token";
|
||||
SWARM_CLAUDE_LOGIN_OIDC_CLIENT_ID = clientId;
|
||||
SWARM_CLAUDE_LOGIN_CLAUDE = "${pkgs.claude-code}/bin/claude";
|
||||
SWARM_CLAUDE_LOGIN_CLAUDE = "${claudeCode pkgs.claude-code}/bin/claude";
|
||||
}
|
||||
// lib.optionalAttrs (storeFiles ? claude-login-bao-server-ca) {
|
||||
BAO_CACERT = credential "claude-login-bao-server-ca";
|
||||
|
|
|
|||
|
|
@ -22,6 +22,16 @@
|
|||
}:
|
||||
let
|
||||
hyperhiveCfg = config.services.hyperhive;
|
||||
|
||||
# The `claude-code` the agents run, so this container does not trail them on
|
||||
# the CLI; `fallback`, the container's own nixpkgs', only where the hive pins
|
||||
# none.
|
||||
claudeCode =
|
||||
fallback:
|
||||
if hyperhiveCfg.c0re.claudeCodePackage != null then
|
||||
hyperhiveCfg.c0re.claudeCodePackage
|
||||
else
|
||||
fallback;
|
||||
cfg = hyperhiveCfg.deploy.review-classifier;
|
||||
baoCfg = hyperhiveCfg.swarm.bao;
|
||||
baoDeploy = hyperhiveCfg.deploy.bao;
|
||||
|
|
@ -195,7 +205,7 @@ in
|
|||
SWARM_REVIEW_CLASSIFIER_NATS_URL = "tls://${natsCfg.domain}:${toString natsCfg.port}";
|
||||
SWARM_REVIEW_CLASSIFIER_OIDC_TOKEN_ENDPOINT = "${autheliaCfg.url}/api/oidc/token";
|
||||
SWARM_REVIEW_CLASSIFIER_OIDC_CLIENT_ID = clientId;
|
||||
SWARM_REVIEW_CLASSIFIER_CLAUDE = "${pkgs.claude-code}/bin/claude";
|
||||
SWARM_REVIEW_CLASSIFIER_CLAUDE = "${claudeCode pkgs.claude-code}/bin/claude";
|
||||
SWARM_REVIEW_CLASSIFIER_OPENCODE = "${pkgs.opencode}/bin/opencode";
|
||||
}
|
||||
// lib.optionalAttrs (storeFiles ? review-classifier-bao-server-ca) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue