Take core-credentials out of the bus's, the provisioner's and its client's manifests until the judge that knows it runs
mesh/delivery merged: source.main moved to novox/mesh-catalog@be24f5ac387f
mesh/delivery-group group fix/l3-words-after-judge merged: every member is merged
mesh/check being carried to f2eb54820469 on be24f5ac387f | from e6de42630355, mesh-delivery 4154c3040cee, mesh-tools 01ee2ef39488
mesh/delivery merged: source.main moved to novox/mesh-catalog@be24f5ac387f
mesh/delivery-group group fix/l3-words-after-judge merged: every member is merged
mesh/check being carried to f2eb54820469 on be24f5ac387f | from e6de42630355, mesh-delivery 4154c3040cee, mesh-tools 01ee2ef39488
The running indexer's judge refuses the word, a refused manifest holds the bus's user list, and so the indexer build that knows the word is never granted. The node-engine on main still finds these modules by its name list, and the vault keeps no list, so no credential is lost; the word comes back once the new judge runs (issue 774). Claude-Session: https://claude.ai/code/session_01JG73KG7AfSdh6FP8VrBqCn
This commit is contained in:
@@ -7,7 +7,6 @@
|
|||||||
"scope": "node"
|
"scope": "node"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"core-credentials": true,
|
|
||||||
"own-secrets": {
|
"own-secrets": {
|
||||||
"provisioner-broker": "${dir:state}/broker"
|
"provisioner-broker": "${dir:state}/broker"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -295,6 +295,11 @@ func TestTheManifestDeclaresWhatTheCodeKeeps(t *testing.T) {
|
|||||||
if err := json.Unmarshal(raw, &m); err != nil {
|
if err := json.Unmarshal(raw, &m); err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
// No "core-credentials" until the indexer whose judge knows the word runs (issue 774): the running judge refuses it,
|
||||||
|
// and a refused manifest holds the bus's user list, so the indexer that knows it is never granted. It comes back then.
|
||||||
|
if strings.Contains(string(raw), `"core-credentials"`) {
|
||||||
|
t.Error("the manifest says \"core-credentials\" before the judge that reads it runs")
|
||||||
|
}
|
||||||
if m.Module != "mesh-provisioner" || m.RunsAs != "mesh-provisioner" || m.OwnSecrets["broker"] == "" {
|
if m.Module != "mesh-provisioner" || m.RunsAs != "mesh-provisioner" || m.OwnSecrets["broker"] == "" {
|
||||||
t.Errorf("an account of its own: module %q, runs-as %q, own secrets %v", m.Module, m.RunsAs, m.OwnSecrets)
|
t.Errorf("an account of its own: module %q, runs-as %q, own secrets %v", m.Module, m.RunsAs, m.OwnSecrets)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,7 +46,6 @@
|
|||||||
"plans",
|
"plans",
|
||||||
"refused"
|
"refused"
|
||||||
],
|
],
|
||||||
"core-credentials": true,
|
|
||||||
"own-secrets": {
|
"own-secrets": {
|
||||||
"broker": "${dir:state}/broker"
|
"broker": "${dir:state}/broker"
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -43,6 +43,11 @@ func TestTheBussManifestMountsItsProgramsIntoTheUpstreamImage(t *testing.T) {
|
|||||||
if err := json.Unmarshal(raw, &m); err != nil {
|
if err := json.Unmarshal(raw, &m); err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
// No "core-credentials" until the indexer whose judge knows the word runs (issue 774): the running judge refuses it,
|
||||||
|
// and a refused manifest holds the bus's user list, so the indexer that knows it is never granted. It comes back then.
|
||||||
|
if strings.Contains(string(raw), `"core-credentials"`) {
|
||||||
|
t.Error("the manifest says \"core-credentials\" before the judge that reads it runs")
|
||||||
|
}
|
||||||
if m.Build.On != nil {
|
if m.Build.On != nil {
|
||||||
t.Error("build.on is declared: nothing is built on a base image any more")
|
t.Error("build.on is declared: nothing is built on a base image any more")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,6 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"bus-users": "/var/lib/nats-module/conf/accounts.conf",
|
"bus-users": "/var/lib/nats-module/conf/accounts.conf",
|
||||||
"core-credentials": true,
|
|
||||||
"own-secrets": {
|
"own-secrets": {
|
||||||
"broker": "${dir:mesh-state}/broker",
|
"broker": "${dir:mesh-state}/broker",
|
||||||
"broker-nats-tools": "${dir:tools-secret}/broker-nats-tools"
|
"broker-nats-tools": "${dir:tools-secret}/broker-nats-tools"
|
||||||
|
|||||||
Reference in New Issue
Block a user