Uptimeify Docs

Secrets und Updates

Wie der Uptimeify-Provider Secrets aus dem State hält, wie Paketgrenzen in plan und apply auftauchen und wie Updates bei der API ankommen.

Secrets bleiben aus dem State

Jedes Secret ist ein Write-only-Attribut mit der Endung _wo: eigene Request-Header, Request-Bodies, Authorization-Header, Basic-Auth-Passwörter, Webhook-Secrets und HMAC-Schlüssel. OpenTofu und Terraform speichern sie nie im State, die API gibt sie nie zurück.

Weil der Provider einen Write-only-Wert nicht zurücklesen kann, schickt er ihn nur, wenn sich die passende *_wo_version ändert. Zum Rotieren den Wert ändern und die Version erhöhen:

resource "uptimeify_website" "api" {
  # ...
  custom_headers_wo = [
    { name = "X-Api-Key", value = var.api_key },
  ]
  custom_headers_wo_version = 2 # war 1: schickt den neuen Header
}

Attribute wie has_custom_headers zeigen, ob ein Secret gesetzt ist, ohne es preiszugeben.

Paketgrenzen

Manche Prüfungen hängen am Paket des Kunden, zum Beispiel die Keyword- oder die Seitengrößen-Prüfung. Schaltest du eine Prüfung ein, die das Paket nicht enthält, scheitert apply mit checkNotInPackage, statt still false zu speichern. uptimeify_package_configs zeigt, was jedes Paket erlaubt.

Eine Prüfung ohne ihren Begleitwert misst nichts. Entfernst du search_term, entferne oder deaktiviere auch check_keyword_enabled. Lässt die Konfiguration den Schalter weg, plant der Provider ihn im selben Update aus.

Wie Updates bei der API ankommen

Die meisten Änderungen gehen als Teil-Update raus, das nur die geänderten Felder anfasst. Einige Felder (bei Website-Monitoren: Kunde, Prüfländer, HTTP-Methode, Weiterleitungen, Cookies, Auth und die Write-only-Secrets) brauchen das Voll-Update der API. Dann schickt der Provider jedes Attribut mit, damit nichts zurückgesetzt wird, was du nicht geändert hast. Details auf der Ressourcenseite, zum Beispiel uptimeify_website.

Abweichungen

Änderungen im Dashboard zeigt der nächste plan, apply setzt sie zurück. Vom Server erzeugte Werte (IDs, Heartbeat-Tokens, Zeitstempel) sind nur lesbar und erzeugen nie eine Abweichung.

Auf dieser Seite