Name packages by their module path in 15 manifests (issue 1966)
Kind: short package names (builds, sshkeys, forgemsg, backupgood, diskreadings, grantsstate, busgrants) in `packages`, which the indexer's judge refuses by design 32's rule (a Go package is named by its go.mod's module path). This held mesh-delivery-gate, the build modules, mounts and restic. Each key is now the import path the module's code uses, with its series kept; the manifest tests read the new keys, and the host/machine-name word tests in mounts, nfs-server, mesh-build-node and mesh-delivery-gate look past the path's `git.novox.be/novox/` prefix. Quick fix: only the gate's manifest. Thorough fix (chosen): all 15, since the same refusal holds each. Follow-up for the checker: the candidate verdict lets such a name through (J7(3)), so the merge check did not stop it. Claude-Session: https://claude.ai/code/session_01NcbgfFfQ4Z9UE5jK32PmE5
This commit is contained in:
@@ -43,7 +43,7 @@ func TestEveryFileTakesItsTextFromATemplate(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
// The builder's keys are read through its published package, taken by its series (ADR 0634 §1).
|
// The builder's keys are read through its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
for _, r := range m.Resources {
|
for _, r := range m.Resources {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "artifact-store-tools",
|
"module": "artifact-store-tools",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1"
|
||||||
},
|
},
|
||||||
"claims": [
|
"claims": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -840,7 +840,7 @@ func TestTheHolderOfTheTwoImageSeats(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
// The builder's question is its published package, taken by its series (ADR 0634 §1).
|
// The builder's question is its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
// E15: the provision artifact-store retired (ADR 0632 §3): distribution provides and serves nothing, and the
|
// E15: the provision artifact-store retired (ADR 0632 §3): distribution provides and serves nothing, and the
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "distribution",
|
"module": "distribution",
|
||||||
"version": "2",
|
"version": "2",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1"
|
||||||
},
|
},
|
||||||
"provides": [
|
"provides": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -451,7 +451,7 @@ func TestToolsAreTheOnesTheReadmeNamesAndSayWhatTheyDo(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
// The builder's question is its published package, taken by its series (ADR 0634 §1).
|
// The builder's question is its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
// Both package seats are claimed serving the four verbs this bundle answers as <seat>.<verb>, over its own incoming
|
// Both package seats are claimed serving the four verbs this bundle answers as <seat>.<verb>, over its own incoming
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "gitea",
|
"module": "gitea",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1"
|
||||||
},
|
},
|
||||||
"moved": true,
|
"moved": true,
|
||||||
"requires": [
|
"requires": [
|
||||||
|
|||||||
@@ -53,10 +53,10 @@ func TestManifestDeclaresTheAccountTheCapabilityAndThePackages(t *testing.T) {
|
|||||||
m := readManifest(t)
|
m := readManifest(t)
|
||||||
// The key keeper is ssh-client's published package, taken by its series (ADR 0634 §1).
|
// The key keeper is ssh-client's published package, taken by its series (ADR 0634 §1).
|
||||||
// The builder's step, answer and key forms are read through its published package, taken by its series (ADR 0634 §1).
|
// The builder's step, answer and key forms are read through its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Packages["sshkeys"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-catalog/modules/ssh-client/sshkeys"] != "0.1" {
|
||||||
t.Errorf("packages %v: want sshkeys of series 0.1", m.Packages)
|
t.Errorf("packages %v: want sshkeys of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Module != "mesh-build-go" || m.RunsAs != "mesh-build-go" {
|
if m.Module != "mesh-build-go" || m.RunsAs != "mesh-build-go" {
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
"module": "mesh-build-go",
|
"module": "mesh-build-go",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1",
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1",
|
||||||
"sshkeys": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/ssh-client/sshkeys": "0.1"
|
||||||
},
|
},
|
||||||
"moved": true,
|
"moved": true,
|
||||||
"runs-as": "mesh-build-go",
|
"runs-as": "mesh-build-go",
|
||||||
|
|||||||
@@ -55,10 +55,10 @@ func TestManifestDeclaresTheAccountTheCapabilityAndThePackages(t *testing.T) {
|
|||||||
m := readManifest(t)
|
m := readManifest(t)
|
||||||
// The key keeper is ssh-client's published package, taken by its series (ADR 0634 §1).
|
// The key keeper is ssh-client's published package, taken by its series (ADR 0634 §1).
|
||||||
// The builder's step, answer and key forms are read through its published package, taken by its series (ADR 0634 §1).
|
// The builder's step, answer and key forms are read through its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Packages["sshkeys"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-catalog/modules/ssh-client/sshkeys"] != "0.1" {
|
||||||
t.Errorf("packages %v: want sshkeys of series 0.1", m.Packages)
|
t.Errorf("packages %v: want sshkeys of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Module != "mesh-build-image" || m.RunsAs != "mesh-build-image" {
|
if m.Module != "mesh-build-image" || m.RunsAs != "mesh-build-image" {
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
"module": "mesh-build-image",
|
"module": "mesh-build-image",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1",
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1",
|
||||||
"sshkeys": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/ssh-client/sshkeys": "0.1"
|
||||||
},
|
},
|
||||||
"moved": true,
|
"moved": true,
|
||||||
"runs-as": "mesh-build-image",
|
"runs-as": "mesh-build-image",
|
||||||
|
|||||||
@@ -48,10 +48,10 @@ func TestManifestDeclaresTheAccountTheCapabilityAndThePackages(t *testing.T) {
|
|||||||
m := readManifest(t)
|
m := readManifest(t)
|
||||||
// The key keeper is ssh-client's published package, taken by its series (ADR 0634 §1).
|
// The key keeper is ssh-client's published package, taken by its series (ADR 0634 §1).
|
||||||
// The builder's step, answer and key forms are read through its published package, taken by its series (ADR 0634 §1).
|
// The builder's step, answer and key forms are read through its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Packages["sshkeys"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-catalog/modules/ssh-client/sshkeys"] != "0.1" {
|
||||||
t.Errorf("packages %v: want sshkeys of series 0.1", m.Packages)
|
t.Errorf("packages %v: want sshkeys of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Module != "mesh-build-node" || m.RunsAs != "mesh-build-node" {
|
if m.Module != "mesh-build-node" || m.RunsAs != "mesh-build-node" {
|
||||||
@@ -191,7 +191,7 @@ func TestNoResourceCarriesContentNamingAHost(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
raw, _ := os.ReadFile(filepath.Join(moduleDir, "module.json"))
|
raw, _ := os.ReadFile(filepath.Join(moduleDir, "module.json"))
|
||||||
if h := host.FindString(string(raw)); h != "" {
|
if h := host.FindString(strings.ReplaceAll(string(raw), "git.novox.be/novox/", "")); h != "" {
|
||||||
t.Errorf("module.json names %q", h)
|
t.Errorf("module.json names %q", h)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
"module": "mesh-build-node",
|
"module": "mesh-build-node",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1",
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1",
|
||||||
"sshkeys": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/ssh-client/sshkeys": "0.1"
|
||||||
},
|
},
|
||||||
"moved": true,
|
"moved": true,
|
||||||
"runs-as": "mesh-build-node",
|
"runs-as": "mesh-build-node",
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ func TestEveryStateAndActHasItsTool(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
// The builder's keys are read through its published package, taken by its series (ADR 0634 §1).
|
// The builder's keys are read through its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
via := map[string]string{
|
via := map[string]string{
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "mesh-config",
|
"module": "mesh-config",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1"
|
||||||
},
|
},
|
||||||
"runs-as": "mesh-config",
|
"runs-as": "mesh-config",
|
||||||
"claims": [
|
"claims": [
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ func TestItClaimsTheDeliverySeatAndFollowsWhatItHandles(t *testing.T) {
|
|||||||
t.Fatalf("serves %v, wanted %v", m.Claims[0].Serves, want)
|
t.Fatalf("serves %v, wanted %v", m.Claims[0].Serves, want)
|
||||||
}
|
}
|
||||||
// The forge messages' layout is the bridge's published package forgemsg, taken by its series (ADR 0634 §3, design 32).
|
// The forge messages' layout is the bridge's published package forgemsg, taken by its series (ADR 0634 §3, design 32).
|
||||||
if m.Packages["forgemsg"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-forge-bridge/forgemsg"] != "0.1" {
|
||||||
t.Errorf("packages %v: the gate accepts forgemsg of series 0.1", m.Packages)
|
t.Errorf("packages %v: the gate accepts forgemsg of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
// R6-C1: no controller verb is invoked and no plan event is consumed.
|
// R6-C1: no controller verb is invoked and no plan event is consumed.
|
||||||
@@ -121,7 +121,7 @@ func TestItClaimsTheDeliverySeatAndFollowsWhatItHandles(t *testing.T) {
|
|||||||
t.Fatalf("invokes %v, wanted %v", m.Invokes, want)
|
t.Fatalf("invokes %v, wanted %v", m.Invokes, want)
|
||||||
}
|
}
|
||||||
for _, never := range []string{"/home/", "jochen", "g14", "shanks", "novox", "zurag", "anchor"} {
|
for _, never := range []string{"/home/", "jochen", "g14", "shanks", "novox", "zurag", "anchor"} {
|
||||||
if strings.Contains(strings.ToLower(raw), never) {
|
if strings.Contains(strings.ToLower(strings.ReplaceAll(raw, "git.novox.be/novox/", "")), never) {
|
||||||
t.Errorf("module.json names %q", never)
|
t.Errorf("module.json names %q", never)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
"operator-channel"
|
"operator-channel"
|
||||||
],
|
],
|
||||||
"packages": {
|
"packages": {
|
||||||
"forgemsg": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-forge-bridge/forgemsg": "0.1"
|
||||||
},
|
},
|
||||||
"invokes": [
|
"invokes": [
|
||||||
"gitea.gitea_commit_statuses",
|
"gitea.gitea_commit_statuses",
|
||||||
|
|||||||
@@ -302,7 +302,7 @@ func TestTheManifestDeclaresWhatTheCodeKeeps(t *testing.T) {
|
|||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
// The builder's keys are read through its published package, taken by its series (ADR 0634 §1).
|
// The builder's keys are read through its published package, taken by its series (ADR 0634 §1).
|
||||||
if m.Packages["builds"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds"] != "0.1" {
|
||||||
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
t.Errorf("packages %v: want builds of series 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
if m.Module != "mesh-provisioner" || m.RunsAs != "mesh-provisioner" || m.OwnSecrets["broker"] == "" {
|
if m.Module != "mesh-provisioner" || m.RunsAs != "mesh-provisioner" || m.OwnSecrets["broker"] == "" {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "mesh-provisioner",
|
"module": "mesh-provisioner",
|
||||||
"version": "2",
|
"version": "2",
|
||||||
"packages": {
|
"packages": {
|
||||||
"builds": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-builder/builds": "0.1"
|
||||||
},
|
},
|
||||||
"runs-as": "mesh-provisioner",
|
"runs-as": "mesh-provisioner",
|
||||||
"claims": [
|
"claims": [
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ func readManifest(t *testing.T) manifest {
|
|||||||
func TestTheManifestSaysWhatTheCodeDoes(t *testing.T) {
|
func TestTheManifestSaysWhatTheCodeDoes(t *testing.T) {
|
||||||
m := readManifest(t)
|
m := readManifest(t)
|
||||||
// The readings' layouts are the owners' published packages, taken by their series (ADR 0634 §4).
|
// The readings' layouts are the owners' published packages, taken by their series (ADR 0634 §4).
|
||||||
for _, pk := range []string{"diskreadings", "backupgood"} {
|
for _, pk := range []string{"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings", "git.novox.be/novox/mesh-catalog/modules/restic/backupgood"} {
|
||||||
if m.Packages[pk] != "0.1" {
|
if m.Packages[pk] != "0.1" {
|
||||||
t.Errorf("packages %v: want %s of series 0.1", m.Packages, pk)
|
t.Errorf("packages %v: want %s of series 0.1", m.Packages, pk)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
"module": "mesh-self-check",
|
"module": "mesh-self-check",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"backupgood": "0.1",
|
"git.novox.be/novox/mesh-catalog/modules/restic/backupgood": "0.1",
|
||||||
"diskreadings": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings": "0.1"
|
||||||
},
|
},
|
||||||
"runs-as": "mesh-self-check",
|
"runs-as": "mesh-self-check",
|
||||||
"claims": [
|
"claims": [
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "mesh-vault",
|
"module": "mesh-vault",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"grantsstate": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-grants/grantsstate": "0.1"
|
||||||
},
|
},
|
||||||
"runs-as": "mesh-vault",
|
"runs-as": "mesh-vault",
|
||||||
"provides": [
|
"provides": [
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ func readManifest(t *testing.T) (manifest, string) {
|
|||||||
func TestTheManifestNamesWhatTheBundleServesAndWhatItNeeds(t *testing.T) {
|
func TestTheManifestNamesWhatTheBundleServesAndWhatItNeeds(t *testing.T) {
|
||||||
m, raw := readManifest(t)
|
m, raw := readManifest(t)
|
||||||
// The readings' layouts are the owners' published packages, taken by their series (ADR 0634 §4).
|
// The readings' layouts are the owners' published packages, taken by their series (ADR 0634 §4).
|
||||||
for _, pk := range []string{"diskreadings"} {
|
for _, pk := range []string{"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings"} {
|
||||||
if m.Packages[pk] != "0.1" {
|
if m.Packages[pk] != "0.1" {
|
||||||
t.Errorf("packages %v: want %s of series 0.1", m.Packages, pk)
|
t.Errorf("packages %v: want %s of series 0.1", m.Packages, pk)
|
||||||
}
|
}
|
||||||
@@ -115,7 +115,7 @@ func TestTheManifestNamesWhatTheBundleServesAndWhatItNeeds(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// A machine's or a person's name, as a word: "novox/hq" names the record, not the machine.
|
// A machine's or a person's name, as a word: "novox/hq" names the record, not the machine.
|
||||||
if hit := regexp.MustCompile(`\b(g14|novox|ace|shanks|jochen|recalbox)\b|/home/|/storage`).FindString(strings.ReplaceAll(raw, "novox/hq", "")); hit != "" {
|
if hit := regexp.MustCompile(`\b(g14|novox|ace|shanks|jochen|recalbox)\b|/home/|/storage`).FindString(strings.ReplaceAll(strings.ReplaceAll(raw, "novox/hq", ""), "git.novox.be/novox/", "")); hit != "" {
|
||||||
t.Errorf("the manifest says %q", hit)
|
t.Errorf("the manifest says %q", hit)
|
||||||
}
|
}
|
||||||
if strings.Contains(raw, "/etc/fstab") {
|
if strings.Contains(raw, "/etc/fstab") {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "mounts",
|
"module": "mounts",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"diskreadings": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings": "0.1"
|
||||||
},
|
},
|
||||||
"requires": [
|
"requires": [
|
||||||
"nfs-share"
|
"nfs-share"
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ func TestTheBussManifestMountsItsProgramsIntoTheUpstreamImage(t *testing.T) {
|
|||||||
}
|
}
|
||||||
// The removal grant the tests compose is the grants part's published package busgrants (series 0.1), which the
|
// The removal grant the tests compose is the grants part's published package busgrants (series 0.1), which the
|
||||||
// manifest names so the build resolves it (ADR 0634 §4).
|
// manifest names so the build resolves it (ADR 0634 §4).
|
||||||
if m.Packages["busgrants"] != "0.1" {
|
if m.Packages["git.novox.be/novox/mesh-delivery/modules/mesh-grants/busgrants"] != "0.1" {
|
||||||
t.Errorf("packages = %v, want busgrants at 0.1", m.Packages)
|
t.Errorf("packages = %v, want busgrants at 0.1", m.Packages)
|
||||||
}
|
}
|
||||||
// The bus provides "bus-state" beside "mesh-bus" (ADR 0614 §5): a module whose manifest keeps bus state requires it.
|
// The bus provides "bus-state" beside "mesh-bus" (ADR 0614 §5): a module whose manifest keeps bus state requires it.
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "nats",
|
"module": "nats",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"busgrants": "0.1"
|
"git.novox.be/novox/mesh-delivery/modules/mesh-grants/busgrants": "0.1"
|
||||||
},
|
},
|
||||||
"upgrade": {
|
"upgrade": {
|
||||||
"policy": "record",
|
"policy": "record",
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ func readManifest(t *testing.T) (manifest, string) {
|
|||||||
func TestTheSeatsVerbsAreAllServedAndTheHealthToolListed(t *testing.T) {
|
func TestTheSeatsVerbsAreAllServedAndTheHealthToolListed(t *testing.T) {
|
||||||
m, _ := readManifest(t)
|
m, _ := readManifest(t)
|
||||||
// The readings' layouts are the owners' published packages, taken by their series (ADR 0634 §4).
|
// The readings' layouts are the owners' published packages, taken by their series (ADR 0634 §4).
|
||||||
for _, pk := range []string{"diskreadings"} {
|
for _, pk := range []string{"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings"} {
|
||||||
if m.Packages[pk] != "0.1" {
|
if m.Packages[pk] != "0.1" {
|
||||||
t.Errorf("packages %v: want %s of series 0.1", m.Packages, pk)
|
t.Errorf("packages %v: want %s of series 0.1", m.Packages, pk)
|
||||||
}
|
}
|
||||||
@@ -107,7 +107,7 @@ func TestItListensOnTwoThousandFortyNineFromTheMeshOnlyAndProvidesTheShare(t *te
|
|||||||
// assignment's config value, required and with no default (ADR 0348 §4), and the range the mesh's.
|
// assignment's config value, required and with no default (ADR 0348 §4), and the range the mesh's.
|
||||||
func TestTheDefinitionNamesNoFolderNoMachineAndGivesTheSharesNoDefault(t *testing.T) {
|
func TestTheDefinitionNamesNoFolderNoMachineAndGivesTheSharesNoDefault(t *testing.T) {
|
||||||
m, raw := readManifest(t)
|
m, raw := readManifest(t)
|
||||||
if hit := regexp.MustCompile(`\b(g14|novox|ace|shanks|jochen)\b|/home/|/storage|/srv/`).FindString(strings.ReplaceAll(raw, "novox/hq", "")); hit != "" {
|
if hit := regexp.MustCompile(`\b(g14|novox|ace|shanks|jochen)\b|/home/|/storage|/srv/`).FindString(strings.ReplaceAll(strings.ReplaceAll(raw, "novox/hq", ""), "git.novox.be/novox/", "")); hit != "" {
|
||||||
t.Errorf("the manifest says %q", hit)
|
t.Errorf("the manifest says %q", hit)
|
||||||
}
|
}
|
||||||
if s := m.Config["shares"]; s["required"] != true || s["default"] != nil || s["type"] != "string" {
|
if s := m.Config["shares"]; s["required"] != true || s["default"] != nil || s["type"] != "string" {
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "nfs-server",
|
"module": "nfs-server",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"diskreadings": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings": "0.1"
|
||||||
},
|
},
|
||||||
"upgrade": {
|
"upgrade": {
|
||||||
"policy": "record",
|
"policy": "record",
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"module": "restic",
|
"module": "restic",
|
||||||
"version": "1",
|
"version": "1",
|
||||||
"packages": {
|
"packages": {
|
||||||
"diskreadings": "0.1"
|
"git.novox.be/novox/mesh-catalog/modules/disk-load/diskreadings": "0.1"
|
||||||
},
|
},
|
||||||
"moved": true,
|
"moved": true,
|
||||||
"claims": [
|
"claims": [
|
||||||
|
|||||||
Reference in New Issue
Block a user