Команда: state list
Команда tofu state list используется для вывода списка ресурсов в состоянии OpenTofu.
Использование
Использование: tofu state list [options] [address...]
Команда выведет список всех ресурсов в файле состояния, соответствующих указанным адресам (если они заданы). Если адреса не указаны, будут выведены все ресурсы.
Ресурсы в списке сортируются по глубине модулей, а затем по алфавиту. Это означает, что ресурсы из вашей непосредственной конфигурации будут перечислены первыми, а ресурсы, вложенные глубже в модули, — последними.
В сложных инфраструктурах состояние может содержать тысячи ресурсов. Чтобы отфильтровать их, передайте команде один или несколько шаблонов. Шаблоны задаются в формате адресации ресурсов.
При использовании переменных в конфигурации бэкенда или блоке шифрования при запуске tofu state list необходимо задать значения переменных корневого модуля.
Все флаги командной строки необязательны. Доступны следующие флаги:
-
-state=path— путь к файлу состояния. По умолчанию используется значение "terraform.tfstate". Игнорируется при использовании удаленного состояния. -
-id=id— идентификатор ресурсов для отображения. Игнорируется, если не задан. -
-var 'NAME=VALUE'— задает значение для одной входной переменной, объявленной в корневом модуле конфигурации. Используйте этот параметр несколько раз, чтобы задать несколько переменных. Дополнительные сведения см. в разделе Входные переменные в командной строке. -
-var-file=FILENAME— задает значения для нескольких входных переменных, объявленных в корневом модуле конфигурации, используя определения из файла "tfvars". Используйте этот параметр несколько раз, чтобы включить значения из нескольких файлов.
Помимо параметров -var и -var-file, есть несколько других способов задать значения входных переменных в корневом модуле. Дополнительные сведения см. в разделе Присваивание значений переменным корневого модуля.
Пример: все ресурсы
В этом примере будут выведены все ресурсы, включая модули:
$ tofu state list aws_instance.foo aws_instance.bar[0] aws_instance.bar[1] module.elb.aws_elb.main
Пример: фильтрация по ресурсу
В этом примере будут выведены только ресурсы с указанным именем:
$ tofu state list aws_instance.bar aws_instance.bar[0] aws_instance.bar[1]
Пример: фильтрация по модулю
В этом примере будут выведены ресурсы указанного модуля и всех его вложенных модулей:
$ tofu state list module.elb module.elb.aws_elb.main module.elb.module.secgroups.aws_security_group.sg
Пример: фильтрация по идентификатору
В этом примере будет выведен только ресурс с идентификатором, указанным в командной строке. Это удобно, чтобы определить, где именно в конфигурации находится конкретный ресурс.
$ tofu state list -id=sg-1234abcd module.elb.aws_security_group.sg
Copyright (c) The OpenTofu Authors
Copyright (c) 2014 HashiCorp, Inc.
Mozilla Public License, version 2.0
https://opentofu.org/docs/v1.10/cli/commands/state/list/