Difference between revisions of "Terraform K8s resources: kubernetes manifest"

From wikieduonline
Jump to navigation Jump to search
Line 4: Line 4:
 
== Official example ==
 
== Official example ==
 
{{kubernetes_manifest_official_example}}
 
{{kubernetes_manifest_official_example}}
 +
 +
 +
 +
=== Timeouts official example ===
 +
 +
resource "kubernetes_manifest" "test" {
 +
  manifest = {
 +
    // ...
 +
  }
 +
 +
  wait {
 +
    fields = {
 +
      # Check the phase of a pod
 +
      "status.phase" = "Running"
 +
 +
      # Check a container's status
 +
      "status.containerStatuses[0].ready" = "true",
 +
 +
      # Check an ingress has an IP
 +
      "status.loadBalancer.ingress[0].ip" = "^(\\d+(\\.|$)){4}"
 +
 +
      # Check the replica count of a Deployment
 +
      "status.readyReplicas" = "2"
 +
    }
 +
  }
 +
 +
  [[timeouts]] {
 +
    create = "10m"
 +
    update = "10m"
 +
    delete = "30s"
 +
  }
 +
}
  
  
 
  [[Terraform K8s resources: kubernetes_labels]]
 
  [[Terraform K8s resources: kubernetes_labels]]
 
  [[Terraform K8s resources: kubernetes_annotations]]
 
  [[Terraform K8s resources: kubernetes_annotations]]
 
  
 
== Related ==
 
== Related ==

Revision as of 16:50, 10 July 2024


Official example

resource "kubernetes_manifest" "test-configmap" {
 manifest = {
   "apiVersion" = "v1"
   "kind"       = "ConfigMap"
   "metadata" = {
     "name"      = "test-config"
     "namespace" = "default"
   }
   "data" = {
     "foo" = "bar"
   }
 }
}


Timeouts official example

resource "kubernetes_manifest" "test" {
 manifest = {
   // ...
 }
 wait {
   fields = {
     # Check the phase of a pod
     "status.phase" = "Running"
     # Check a container's status
     "status.containerStatuses[0].ready" = "true",
     # Check an ingress has an IP
     "status.loadBalancer.ingress[0].ip" = "^(\\d+(\\.|$)){4}"
     # Check the replica count of a Deployment
     "status.readyReplicas" = "2"
   }
 }
 timeouts {
   create = "10m"
   update = "10m"
   delete = "30s"
 }
}


Terraform K8s resources: kubernetes_labels
Terraform K8s resources: kubernetes_annotations

Related

See also

Advertising: