Terraform state

  • list: lista los recursos del state
  • show: muestra los detalles de uno de los recursos del state
  • mv: mueve o renombra un recurso
  • rm: elimina un recurso
  • pull: descarga el state de un remoto
  • push: sube el state desde local al remoto
  • creamos directorio destino y metemos todo el código necesario:
    • provider
    • state settings (del nuevo)
    • resource(s)
      • tener en cuenta si necesitamos outputs del stado original para usar en el de destino
      • adaptar el código para usar esos outputs con data
  • exportamos/movemos el resource:
    terraform state mv -state-out=../destino/terraform.tfstate <recurso> <recurso>
  • en destino, inicializamos terraform:
    terraform init
    • nos preguntará si queremos subir el state local al remoto, le decimos que yes
  • añadimos el código necesario en destino
  • desde el directorio destino, descargamos nuestro estado remoto en un fichero local:
    terraform state pull > terraform.tfstate
  • desde el directorio origen, movemos igual que antes el recurso:
    terraform state mv -state-out=../destino/terraform.tfstate <recurso> <recurso>
  • desde el directorio destino, subimos el nuevo estado:
    terraform state push terraform.tfstate
  • tech/terraform/terraform-state.txt
  • Darrera modificació: 06/04/2020 06:57
  • per mate