Zum Inhalt springen

Vertrag06 von 09

Welche Felder beschreibt eine Umgebung?

Eine Umgebung ist ein Satz mit Eigenschaften, Kanal und Stand.

Thema
HERMES
Lesezeit
2 Min.
Erstfassung
Auf dieser Seite
  1. 01Ein geplanter Vertrag, kein erreichbarer Endpunkt
  2. 02Gemeldet, nicht angenommen
  3. 03Soll und Ist
  4. 04Ohne Verbindung
  5. 05Festsetzung und Ausnahme
  6. 06Schema
  7. 07Felder
  8. 08Fehlerfälle
  9. 09Grenze und Regel
  10. 10Quellen
  11. 11Verwandte Seiten

Was gebaut ist

Eine Umgebung ist ein Ort, an dem eine Version läuft. Dieser geplante Vertrag legt fest, was eine Umgebung über sich meldet: ihre Eigenschaften und Zulassungen, den Kanal, dem sie folgt, und den Stand, auf dem sie ist. Gegen diese Angaben prüft HERMES die Auflagen einer Version, bevor es ein Soll schreibt.

Ein geplanter Vertrag, kein erreichbarer Endpunkt

Begriff · Umgebung

Ein Ort, an dem eine Version läuft, mit Eigenschaften, einem Kanal und einem Stand, mit oder ohne Verbindung nach außen.

Umgebung im Zusammenhang

Die Felder beschreiben die vorgesehene Form der Meldung einer Umgebung. Ein Inventar von Umgebungen, ein Kanal und eine ausgelieferte Version bestehen noch nicht, und diese Seite belegt keinen laufenden Abgleich.

Gemeldet, nicht angenommen

Begriff · Nachweis

Der signierte Datensatz einer Prüfung: Handlung, Zustand, Regeln, Ergebnis und Voraussetzungen, mit Prüfwert, Signatur und Zeitstempel. Er lässt sich ohne Zugang zum System nachrechnen.

Nachweis im Zusammenhang

Die Eigenschaften stehen nicht in einer Handreichung, sondern kommen als Datensatz vom Ort. Die Umgebung signiert die Meldung mit ihrem Schlüssel, und HERMES verlässt sich nicht auf eine Annahme darüber, was dort stehen müsste. Jede Zulassung trägt ihren Nachweis und ein Ablaufdatum.

Soll und Ist

Das Soll ist der Digest, auf den der Kanal der Umgebung zeigt. Das Ist sind die Digests, die tatsächlich laufen, mit dem Zeitpunkt der Meldung. Weichen beide ab, ist das ein Befund und kein Zustand, den man übersieht: Der Abgleich führt das Ist zum Soll, oder die Abweichung steht im Bericht, mit Grund und Frist.

Ohne Verbindung

Begriff · Rückweg

Ein vorab geprüfter Weg auf einen bekannten Zustand. Änderungen an Daten brauchen einen eigenen Rückweg.

Aktualisierungen mit Rückweg planen

Eine Umgebung ohne Verbindung nach außen meldet über den vorgesehenen Rückweg, etwa einen geprüften Datenträger. Die Meldung trägt ihren Zeitpunkt, und der Abgleich nennt, wie alt der Stand ist, mit dem er rechnet. Ein veraltetes Inventar ist ein Befund und kein Freibrief.

Festsetzung und Ausnahme

Eine Umgebung kann auf einen Digest festgesetzt werden, wenn sie vorübergehend nicht dem Kanal folgen soll, oder eine Ausnahme von einer Auflage erhalten. Beides gilt für eine Version, eine Umgebung und eine Auflage, ist begründet, freigegeben und befristet und steht im Verlauf.

Schema

{
  "id": "<umgebung-kennung>",
  "kind": "operation",
  "channel": "<kanal>",
  "target": { "digest": "sha256:<wert>" },
  "actual": [{ "digest": "sha256:<wert>", "reportedAt": "<zeitpunkt>" }],
  "platform": { "architecture": "<architektur>", "os": "<system>", "runtimeVersion": "<version>" },
  "certifications": [{ "name": "<zulassung>", "evidence": "<nachweis>", "expiresAt": "<zeitpunkt>" }],
  "classifications": ["internal"],
  "connectivity": "none",
  "signature": { "alg": "Ed25519", "keyId": "<schluessel>", "value": "<base64url>" }
}
Schema 1JSON · Schema mit Platzhaltern

Felder

FeldTypPflichtBedeutung
idstringjaStabile Kennung der Umgebung, unabhängig von ihrem Namen.
kindstringjaoperation, trial oder isolated: Betrieb, Erprobung oder abgeschottetes Netz.
channelstringjaKanal, dem die Umgebung folgt. Genau einer.
targetobjectjaSoll: der Digest, auf den der Kanal zeigt, oder ein festgesetzter Digest mit Begründung und Ablauf.
actualobject[]jaIst: die Digests, die laufen, je mit dem Zeitpunkt der Meldung.
platformobjectjaArchitektur, Betriebssystem und Version der Laufzeit, gegen die Auflagen einer Version geprüft.
resourcesobjectjaVerfügbare Ressourcen, gegen die Mindestanforderungen einer Version geprüft.
certificationsobject[]jaZulassungen mit Name, Nachweis und Ablaufdatum. Ohne Nachweis gilt eine Zulassung nicht.
classificationsstring[]jaMarkierungen der Daten, die diese Umgebung verarbeiten darf.
connectivitystringjaonline, scheduled oder none. Bestimmt den Weg von Lieferung und Meldung.
reportedAtstring (date-time)jaZeitpunkt der letzten Meldung. Das Alter wird mit dem Ergebnis des Abgleichs genannt.
signatureobjectjaSignatur der Meldung mit dem Schlüssel der Umgebung.
exceptionsobject[]neinAusnahmen je Version und Auflage, begründet, freigegeben und befristet.

Fehlerfälle

KennungBedeutung
ENVIRONMENT_REPORT_STALEDie Meldung ist älter als zulässig; der Abgleich rechnet mit ihr und nennt ihr Alter.
ENVIRONMENT_SIGNATURE_INVALIDDie Signatur passt nicht zur Meldung und zum Schlüssel der Umgebung.
ENVIRONMENT_REQUIREMENT_UNMETEine Auflage der Version wird nicht erfüllt; der Bericht nennt die Auflage.
ENVIRONMENT_CHANNEL_UNKNOWNDer genannte Kanal besteht nicht oder ist abgelaufen.
ENVIRONMENT_PIN_EXPIREDDie Festsetzung auf einen Digest ist abgelaufen; die Umgebung erscheint im Abweichungsbericht.

Grenze

Grenze
Dieser Schnittstellenvertrag ist geplant. Er belegt weder ein Inventar von Umgebungen noch eine ausgelieferte Version, und eine Zulassung im Datensatz ist eine Angabe der Umgebung, bis ihr Nachweis geprüft ist.

Quellen

  1. OCI Image Format SpecificationOpen Container Initiative. Plattformangaben von Architektur und Betriebssystem im Image Index.
  2. OpenGitOps PrinciplesSoll und Ist: deklarativ, versioniert, selbst geholt, fortlaufend abgeglichen.

Verwandte Seiten