Compare commits

...

3 Commits

Author SHA1 Message Date
Prox
06b54c97f1 fix: use correct event field name setup_key_name (not setup_key) 2026-03-06 19:49:59 +02:00
9ffe1ba7b5 chore: mark GS-Enroll-Test as enrolled
All checks were successful
Reconcile / reconcile (push) Successful in 5s
2026-03-06 17:47:04 +00:00
5f9da63fa0 Merge pull request 'add GS-Enroll-Test setup key for enrollment test' (#5) from test-scenario-4 into main
All checks were successful
Reconcile / reconcile (push) Successful in 5s
Reviewed-on: #5
2026-03-06 17:31:51 +00:00
3 changed files with 32 additions and 18 deletions

View File

@ -12,7 +12,7 @@ function makeEvent(overrides: Partial<NbEvent> = {}): NbEvent {
initiator_id: "init-1",
initiator_name: "admin",
target_id: "peer-1",
meta: { setup_key: "drone-key", name: "drone-01" },
meta: { setup_key_name: "drone-key", name: "drone-01" },
...overrides,
};
}
@ -66,7 +66,7 @@ Deno.test("processEnrollmentEvents filters by lastTimestamp", () => {
Deno.test("processEnrollmentEvents ignores unknown keys", () => {
const events: NbEvent[] = [
makeEvent({
meta: { setup_key: "rogue-key", name: "rogue-host" },
meta: { setup_key_name: "rogue-key", name: "rogue-host" },
target_id: "peer-x",
}),
];

View File

@ -21,10 +21,10 @@ export function processEnrollmentEvents(
.filter((e) => {
if (e.activity_code !== "peer.setupkey.add") return false;
if (lastTimestamp && e.timestamp <= lastTimestamp) return false;
if (!knownKeyNames.has(e.meta.setup_key)) {
if (!knownKeyNames.has(e.meta.setup_key_name)) {
console.log(JSON.stringify({
msg: "unknown_enrollment",
setup_key: e.meta.setup_key,
setup_key_name: e.meta.setup_key_name,
peer_id: e.target_id,
}));
return false;
@ -32,7 +32,7 @@ export function processEnrollmentEvents(
return true;
})
.map((e) => ({
setupKeyName: e.meta.setup_key,
setupKeyName: e.meta.setup_key_name,
peerId: e.target_id,
peerHostname: e.meta.name,
timestamp: e.timestamp,

View File

@ -15,30 +15,40 @@
"type": "one-off",
"expires_in": 604800,
"usage_limit": 1,
"auto_groups": ["ground-stations"],
"auto_groups": [
"ground-stations"
],
"enrolled": false
},
"Pilot-TestHawk-1": {
"type": "one-off",
"expires_in": 604800,
"usage_limit": 1,
"auto_groups": ["pilots"],
"auto_groups": [
"pilots"
],
"enrolled": false
},
"GS-Enroll-Test": {
"type": "one-off",
"expires_in": 604800,
"usage_limit": 1,
"auto_groups": ["ground-stations"],
"enrolled": false
"auto_groups": [
"ground-stations"
],
"enrolled": true
}
},
"policies": {
"pilots-to-gs": {
"description": "",
"enabled": false,
"sources": ["pilots"],
"destinations": ["ground-stations"],
"sources": [
"pilots"
],
"destinations": [
"ground-stations"
],
"bidirectional": true,
"protocol": "all",
"action": "accept",
@ -47,14 +57,22 @@
"observers-to-gs": {
"description": "",
"enabled": true,
"sources": ["observers"],
"destinations": ["ground-stations"],
"sources": [
"observers"
],
"destinations": [
"ground-stations"
],
"bidirectional": false,
"protocol": "all",
"action": "accept",
"source_posture_checks": []
}
},
"routes": {},
"dns": {
"nameserver_groups": {}
},
"posture_checks": {},
"networks": {},
"peers": {},
@ -64,9 +82,5 @@
"role": "owner",
"auto_groups": []
}
},
"routes": {},
"dns": {
"nameserver_groups": {}
}
}