Documentation
¶
Overview ¶
Package operator is what fortressctl does on the operator's side: bake a release ISO with fortress.yml, and put a policy on a running edge.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrDrift = errors.New("the edge's policy differs from the file")
ErrDrift is Diff's result when the edge's policy is not the file's.
Functions ¶
func Apply ¶
Apply puts the policy.yml at path on the edge. It is checked here first, so a mistake is reported without a round trip.
func Bake ¶
Bake writes out: the release ISO at iso with the fortress.yml at edgePath in its initramfs, as it is. It must be a valid fortress.yml. Two bakes of the same files differ in the ISO's timestamps only.
Types ¶
type Edge ¶
type Edge struct {
Name string
// Connect is host:port to dial instead of Name:443, for an edge that
// DNS does not point at yet.
Connect string
// CACert is a PEM file of roots for the edge's certificate: the ACME
// server's CA. Empty is the system roots.
CACert string
Cert, Key string // an ops/<name> client certificate
}
Edge is how fortressctl reaches one edge's ops API: by its fqdn, which is the SNI and the name its certificate is for, with an operator's client certificate.