Files
spinifex/contracts/network/v1/vpc.go
T
joshsiv-mulga 77ac0f0f78 feat: add contracts/network/v1 for vpc.* realisation routes
Declare the versioned wire vocabulary for the vpc.* control-plane-to-
network-realisation boundary: subjects, payload types, the shared
{success,error} ack envelope and the vpcd-workers queue group, one
file per route family. No NATS I/O, no consumer switched over yet;
the package coexists with the fragmented originals pinned in the
prior characterization commit until slice 3 migrates call sites.
2026-10-09 16:33:03 +10:00

20 lines
604 B
Go

package networkv1
const (
// VPCCreateSubject asks vpcd to ensure the VPC's logical router exists.
// Fire-and-forget: the publisher does not wait for the ack envelope.
VPCCreateSubject = "vpc.create"
// VPCDeleteSubject asks vpcd to remove the VPC's logical router.
// Fire-and-forget.
VPCDeleteSubject = "vpc.delete"
)
// VPCEvent is the payload on VPCCreateSubject and VPCDeleteSubject.
// CidrBlock and VNI are meaningful on create only; delete needs only VpcId.
type VPCEvent struct {
VpcId string `json:"vpc_id"`
CidrBlock string `json:"cidr_block"`
VNI int64 `json:"vni"`
}