Все компании и ИП на УСН обязаны раз в год сдавать налоговую декларацию — даже если они не вели деятельность.
Нулевая декларация — это декларация, в которой нет налоговой базы и налога к уплате.
Нулевую декларацию сдают компании или ИП, которые не ведут деятельность и у которых нет доходов и расходов. Так бывает, если, они, например, зарегистрировались в конце года и еще не начали работать либо ИП приостановил деятельность, но с учета сниматься не стал.
Еще сдавать нулевую декларацию обязаны ИП, которые ведут деятельность на патенте, а УСН у них как вторая система налогообложения — для подстраховки.
Какая отчетность на патенте
Чтобы узнать, работает ли ИП на упрощенке, нужно запросить в налоговой информационное письмо по форме № 26.2-7, которое подтвердит переход на спецрежим.
Как получить уведомление о переходе на УСН
Нулевую декларацию не сдают ИП, которые находятся на налоговых каникулах и работают. Они ведут деятельность, получают доходы и несут расходы, поэтому должны подавать обычную декларацию.
Какую декларацию сдают ИП на каникулах
Если у ИП или компании на УСН «Доходы минус расходы» были расходы, но не было доходов — подают частично заполненную декларацию, в которой отражают только расходы и полученный убыток. Она уже не будет считаться нулевой.
Нулевую декларацию сдают на том же бланке, что и обычную. Каких-то специальных форм для нее нет. Покажем дальше на примерах, как заполнить нулевые декларации для разных объектов УСН.
Как заполнить декларацию по УСН
В нулевой декларации по УСН «Доходы» ООО и ИП заполняют:
титульный лист;
раздел 1.1;
раздел 2.1.1.
Титульный лист. Правила заполнения титульного листа прописаны в приказе налоговой. Собрали все требования в таблицу:
П.
2.1 Порядка, утв. приказом ФНС от 25.12.2020 № ЕД-7-3/958@Строка | Как заполнять |
---|---|
Налоговый период | В клетках нужно проставить цифры: 34 — если ИП или ООО сдает отчет за прошлый год; 50 — при закрытии ИП или ООО |
Код по месту учета или нахождения | Код зависит от организационно-правовой формы бизнеса. Нужно проставить цифры: 120 — для ИП; 210 — для ООО |
КПП | ИП ставит прочерк, так как КПП у него нет; ООО — указывает КПП |
Номер корректировки | Нужно проставить цифры: 0 — если компания или ИП подает первую декларацию за отчетный период; 1, 2, 3 — если подает уточненную декларацию, цифра означает номер уточненной декларации |
Отчетный год | Нужно проставить цифры: 2021 — если отчитывается в 2022 году за 2021 год |
Код налоговой | Это первые четыре цифры ИНН |
ФИО | Фамилия, имя, отчество руководителя ООО или ИП, указывается с левого края, каждое слово с новой строки |
Номер телефона | Номер без пробелов, скобок и прочерков |
Количество страниц в заполненной декларации | Нужно написать общее количество страниц декларации — например, 4 |
Количество листов приложенных документов (при наличии) | Если декларацию подает представитель, то к ней нужно приложить доверенность. В таком случае в это поле надо вписать количество листов доверенности |
В левом нижнем блоке указывают данные человека, который подает и подписывает декларацию:
«1» — если это сам предприниматель или директор компании;
«2» — если отчетность сдает его представитель, например бухгалтер.
Loading…
Пример заполнения титульного листа нулевой декларации по УСН «Доходы» для ООО «Сток Полимер» Раздел 1.1. Тут заполняют только строку 010. В ней указывают свой код ОКТМО — код муниципального образования, где ИП или компания стоит на учете.Узнать код ОКТМО на сайте налоговой
Остальные строки оставляют пустыми, если заполняют на компьютере, или ставят прочерки, если заполняют декларацию вручную.
Loading…
Пример заполнения раздела 1.1 нулевой декларации по УСН «Доходы»Раздел 2.1.1. В нем заполняют уже больше строк.
В строке 101 указывают код признака применения налоговой ставки: «1» — если налоговая ставка 6% или другая сниженная по решению субъекта РФ.
В строке 102 предприниматели и компании с работниками ставят «1», ИП ставят «2», если у них нет сотрудников.
В строке 124 — обоснование применения льготной налоговой ставки. ИП или компания деятельность не вели, пониженную ставку не применяли, поэтому ставят прочерки.
В остальных строках — прочерки, если декларацию по УСН заполняют вручную. Если заполняют на компьютере, можно оставить пустые ячейки.
Loading…
Пример заполнения раздела 2.1.1 нулевой декларации по УСН «Доходы» для ООО «Сток Полимер»В нулевой декларации по УСН «Доходы минус расходы» заполняют:
титульный лист;
раздел 1.2;
раздел 2.2.
Титульный лист заполняют так же, как и для УСН «Доходы».
В разделе 1.2 указывают свой код ОКТМО, а в остальных ячейках ставят прочерки.
В разделе 2. 2:
Если у ИП или компании не было только доходов, а расходы были, например страховые взносы, — их нужно отразить в разделе 2.2 и сформировать убыток, который потом можно перенести на следующие годы.
Loading…
Пример заполнения раздела 2.2 нулевой декларации по УСН «Доходы минус расходы»Кроме нулевой декларации, ИП не должны больше ничего сдавать, но обязаны вести книгу учета доходов и расходов — КУДиР. ООО обязаны вести КУДиР, а также вести и сдавать бухотчетность.
КУДиР. Если компания или ИП не работали в течение года, заполнять книгу все равно придется: нужно заполнить титульный лист, а по разделам проставить нули. Нулевую КУДиР нужно распечатать, пронумеровать, прошить и подписать. Сдают КУДиР только по запросу налоговой.
Скачать КУДиР
Бухгалтерская отчетность. Ее сдают только компании. Компании на УСН, относящиеся к малому бизнесу, могут сдавать упрощенную бухгалтерскую отчетность: бухгалтерский баланс и отчет о финансовых результатах.
Бухгалтерский баланс не будет нулевым. В нем как минимум нужно указать в пассиве — уставный капитал, а в активе — основные средства или деньги, которые внесли в уставный капитал.
В отчете о финансовых результатах нужно заполнить только шапку с данными о компании и поставить подпись.
Статистическая отчетность. Какие отчеты и когда нужно сдавать в Росстат, можно узнать в специальном сервисе.
Узнать про статистические отчеты
Если компания или ИП не работали, то и в статотчетности отражать нечего. Можно сдать нулевую статотчетность либо вместо нее отправить в Росстат уведомление о том, что в отчетном периоде нет показателей.
Уведомление надо подавать каждый раз, когда наступает срок сдачи статотчетности. Росстат высылает требование отчитаться на адрес по прописке ИП или по месту регистрации ООО.
Шаблон уведомления
Можно не дожидаться требования отчитаться из Росстата и отправить уведомление об отсутствии показателей.
Loading…
Уведомление в Росстат составляется в свободной формеНулевую декларацию по УСН можно сдать:
Нулевая декларация по УСН сдается в те же сроки, что и обычная декларация:
Бухгалтерскую отчетность компании сдают в электронном виде — в налоговую по месту регистрации компании, до 31 марта. Например, отчетность за 2021 год нужно сдать до 31 марта 2022 года.
Зачем бизнесу ЭДО
Сроки сдачи статистической отчетности зависят от той формы, которую нужно сдать компании или ИП. Они указаны на сайте Росстата, рядом с названием конкретного отчета.
Loading…
Скрин с сайта службы государственной статистики — список отчетов и сроки Тинькофф БанкаLoading…
21 июня 2022
ИП на упрощенке ежегодно сдают декларацию по УСН. В 2022 году ее нужно представить по обновленной форме. Какие изменения произошли в отчете? Как заполнить декларацию по новым правилам? Обо всем этом рассказываем в статье.
Содержание
Подготовить, проверить и сдать декларацию по УСН
Попробовать бесплатно
В отчете по УСН предприниматель показывает доход и исчисленный налог, размер которого проверяет ФНС. Состав декларации зависит от объекта налогообложения.
«Доходы» | «Доходы минус расходы» |
---|---|
Титульный лист | |
Раздел 1. 1 — итоговые налоговые платежи | Раздел 1.2 — итоговые налоговые платежи |
Раздел 2.1.1 — расчет налога | Раздел 2.2 — расчет налога |
Раздел 2.1.2 — торговый сбор | |
Раздел 3 Отчет о целевом использовании средств |
ИП на УСН сдают декларацию всегда, а если в отчетном периоде не велась деятельность, то отправляют нулевой отчет, который содержит:
ИП на налоговых каникулах также сдают декларацию по УСН, но с нулевой ставкой.
За 2021 год отчет представляют по обновленной форме согласно приказу ФНС России от 25.12.2020 № ЕД-7-3/958@.
Список изменений:
Признак применения налоговой ставки | Признак 1 — в течение всего года применялась стандартная ставка 6 % или 15 % Признак 2 — в течение года хотя бы в одном квартале применялась повышенная ставка |
Код налоговой льготы | Указывается, если хотя бы в одном квартале была пониженная ставка |
Сроки подачи новой формы остались без изменений.
Отчет по УСН состоит из титульного листа и шести разделов.
На титульном листе указывают:
В Контур.Экстерне на титульном листе также можно указать объект налогообложения.
Разберем, как заполнить декларацию в Экстерне.
Сдать декларацию по УСН в срок и без ошибок
Узнать больше
В строке 101 заполните код признака применения налоговой ставки, а в строке 102 — признак налогоплательщика:
Полученные доходы за каждый квартал укажите нарастающим итогом в строках 110–113. Налоговую ставку за каждый квартал — в строках 120–123. Обратите внимание, что для пониженной налоговой ставки нужно заполнить код налоговой льготы в строке 124.
Исчисленные авансовые платежи внесите в строки 130–133. Страховые взносы, уменьшающие налог, — в строки 140–143.
ИП, которые уплачивают торговый сбор, заполняют строки 150–153, и в строках 160–163 рассчитывается сумма сбора, уменьшающая налог на УСН. Если предприниматель не платит торговый сбор, то в Экстерне этот раздел необходимо удалить.
Раздел 1.2 заполняют также, как Раздел 1.1, но добавляют строку 120. В ней показывают минимальный налог, который следовало заплатить, если он оказался больше, чем налог по УСН.
Этот раздел предприниматель заполняет при наличии целевого финансирования. Если в отчетном году были целевые поступления, то по ним указывают:
В Экстерне состав декларации будет подобран автоматически в зависимости от объекта налогообложения, а подсказки помогут заполнить форму правильно. После автоматической проверки декларации вы сможете сразу сформировать платежное поручение и уплатить налог.
Сдать декларацию по УСН через интернет
Попробовать бесплатно
Получайте новости от наших экспертов дважды в месяц
Подписаться
Подписываясь, вы соглашаетесь на обработку персональных данных и получение информационных сообщений от группы компаний СКБ Контур.
@Nullable
и @NotNull
позволяют проверить допустимость значений NULL для переменной, параметра или возвращаемого значения. Они помогают контролировать контракты во всех иерархиях методов, и если IntelliJ IDEA обнаружит нарушение контракта, она сообщит об обнаруженной проблеме и укажет код, в котором может возникнуть NullPointerException
.
Например, если вы создаете метод, в котором параметр имеет значение @NotNull
, а затем вызовите этот метод с параметром, который потенциально может быть нулевым, IntelliJ IDEA выделит проблему на лету.
Проверка выполняется проверками постоянных условий и исключений и проблем @NotNull/@Nullable. Вы можете настроить способ работы этих проверок в диалоговом окне Settings/Preferences Ctrl+Alt+S . Перейти в редактор | Инспекции | Ява | Вероятные баги.
При компиляции проекта среда IDE добавляет утверждения ко всем методам и параметрам, аннотированным @NotNull
аннотация. Утверждения завершатся ошибкой, если в коде, где ожидается @NotNull
, будет передано значение null. Вы можете отключить эту опцию и настроить список аннотаций в диалоговом окне Settings/Preferences Ctrl+Alt+S . Перейти к сборке, выполнению, развертыванию | Компилятор.
Аннотация @Nullable
помогает обнаружить:
Вызовы методов, которые могут возвращать null
Переменные (поля, локальные переменные и параметры), которые могут иметь значение null
Методы с аннотацией @Nullable
в родительском методе могут иметь аннотации @Nullable
или @NotNull
в методе дочернего класса.
Для аннотации @Nullable
параметра в родительском методе требуется аннотация @Nullable
в параметре метода дочернего класса.
Аннотация @NotNull
на самом деле является явным контрактом, объявляющим, что:
Метод не должен возвращать нулевое значение
Переменные (поля, локальные переменные и параметры) не могут содержать нулевое значение
IntelliJ IDEA предупреждает вас, если эти контракты нарушаются.
Для аннотации @NotNull
родительского метода требуется аннотация @NotNull
для метода дочернего класса.
Методы с аннотацией @NotNull
параметра в родительском методе могут иметь либо @Nullable
или @NotNull
аннотации (или ни одна из них) в параметре метода дочернего класса.
Если @NotNull
имеет цель _TYPE_USE_
, она применяется к типу элемента массива, а не к самому типу массива. Чтобы аннотировать тип массива аннотацией TYPE_USE
, используйте синтаксис байт @NotNull [] байт
.
Последнее изменение: 17 ноября 2021 г.
Аннотации @Contract
Переменные в Terraform — отличный способ определить централизованно управляемые повторно используемые значения. Информация в переменных Terraform сохраняется независимо от планов развертывания, что упрощает чтение и редактирование значений из одного файла.
В этом руководстве мы рассмотрим типы доступных переменных в Terraform, как их определить и как их использовать. Вы можете использовать общую информацию о переменных в качестве быстрой шпаргалки, но примеры являются прямым продолжением нашей статьи для начинающих по Terraform. Если вы еще не установили Terraform, следуйте инструкциям здесь, чтобы начать работу.
Нужна помощь с Terraform? Получите бесплатную консультацию здесь!
Terraform поддерживает несколько различных форматов переменных. В зависимости от использования переменные обычно делятся на входы и выходы.
Входные переменные используются для определения значений, которые настраивают вашу инфраструктуру. Эти значения можно использовать снова и снова без необходимости запоминать каждое их появление в случае необходимости обновления.
Выходные переменные, напротив, используются для получения информации об инфраструктуре после развертывания. Они могут быть полезны для передачи такой информации, как IP-адреса для подключения к серверу.
Входные переменные обычно определяются указанием имени, типа и значения по умолчанию. Однако тип и значения по умолчанию не являются строго обязательными. Terraform может вычитать тип переменной из значения по умолчанию или входного значения.
Переменные могут быть предварительно определены в файле или включены в параметры командной строки. Таким образом, самая простая переменная — это просто имя, а тип и значение выбираются на основе ввода.
переменная "имя_переменной" {}
terraform apply -var variable_name="value"
Входные переменные, как и приведенная выше, имеют несколько различных типов: строки, списки, карты и логические значения. Вот несколько примеров определения и использования каждого типа.
Строки обозначают одно значение в структуре и обычно используются для упрощения и удобства использования сложных значений. Ниже приведен пример определения строковой переменной.
переменная "шаблон" { тип = строка по умолчанию = "01000000-0000-4000-8000-000030080200" }
После этого в планах ресурсов можно использовать строковую переменную. Строковые переменные, заключенные в двойные кавычки, представляют собой простую замену, как в приведенном ниже примере.
storage = var.template
Другой тип списков переменных Terraform. Они работают так же, как пронумерованный каталог значений. Каждое значение может быть вызвано соответствующим индексом в списке. Вот пример определения переменной списка.
переменная "пользователи" { тип = список по умолчанию = ["корень", "пользователь1", "пользователь2"] }
Списки можно использовать в ресурсных планах аналогично строкам, но вам также потребуется указать индекс искомого значения.
имя пользователя = var.users[0]
Карты представляют собой набор строковых ключей и строковых значений. Это может быть полезно для выбора значений на основе предопределенных параметров, таких как конфигурация сервера по месячной цене.
переменная "планы" { тип = карта по умолчанию = { "5USD" = "1xCPU-1GB" "10USD" = "1xCPU-2GB" "20USD" = "2xCPU-4GB" } }
Вы можете получить доступ к правильному значению, используя соответствующий ключ. Например, приведенная ниже переменная задает план «1xCPU-1GB».
plan = var.plans["5USD"]
Значения, соответствующие их ключам, также можно использовать для поиска информации на других картах. Например, ниже приведен краткий список планов и соответствующих им объемов хранилища.
переменная "storage_sizes" { тип = карта по умолчанию = { "1xCPU-1GB" = "25" "1xCPU-2GB" = "50" "2xCPU-4GB" = "80" } }
Затем их можно использовать для определения правильного размера хранилища на основе месячной цены, как определено в предыдущем примере.
size = lookup(var.storage_sizes, var.plans["5USD"])
Последняя доступная переменная имеет логический тип. Они дают возможность использовать простые истинные или ложные значения. Например, вы можете захотеть иметь переменную, которая определяет, когда генерировать пароль пользователя root при новом развертывании.
переменная "set_password" { по умолчанию = ложь }
Приведенное выше логическое значение можно использовать аналогично строковой переменной, просто пометив нужную переменную.
create_password = var.set_password
По умолчанию в этом примере установлено значение false. Однако вы можете перезаписать переменную при развертывании, назначив другое значение в переменной командной строки.
terraform apply -var set_password="true"
Выходные переменные обеспечивают удобный способ получения полезной информации о вашей инфраструктуре. Как вы могли заметить, большая часть сведений о сервере рассчитывается при развертывании и становится доступной только после этого. Используя выходные переменные, вы можете извлечь любые значения, специфичные для сервера, включая рассчитанные данные.
Настройка выходных переменных очень проста. Все, что вам нужно сделать, это определить имя для вывода и какое значение оно должно представлять. Например, вы можете сделать так, чтобы Terraform отображал IP-адрес вашего сервера после развертывания с выходной переменной ниже.
вывод "public_ip" { значение = upcloud_server. server_name.network_interface[0].ip_address }
Обратите внимание, что место общедоступного сетевого интерфейса в списке сетевых интерфейсов зависит от того, в каком порядке в ресурсах определены сетевые карты.
Затем Terraform будет выводить общедоступный IP-адрес в конце процесса применения команды. Кроме того, выходные переменные также можно вызывать по запросу с помощью команды вывода terraform. Затем продолжите настройку файла переменных для конфигурации сервера.
У вас должен быть проект Terraform с уже настроенным базовым планом. Если нет, следуйте нашему руководству по началу работы с Terraform.
Перейдите в каталог проекта Terraform.
cd ~/terraform/base
Переменные Terraform можно определить в плане инфраструктуры, но рекомендуется хранить их в собственном файле переменных. Все файлы в вашем каталоге Terraform, использующие формат файлов .tf, будут автоматически загружены во время операций.
Создайте файл переменных, например, variables.tf, и откройте его для редактирования.
Добавьте приведенные ниже объявления переменных в файл переменных. Замените путь к закрытому файлу ключа SSH и открытый ключ на наши собственные.
переменная "private_key_path" { тип = строка по умолчанию = "/home/user/.ssh/terraform_rsa" } переменная "public_key" { тип = строка по умолчанию = "ssh-rsa terraform_public_key" } переменная "зоны" { тип = карта по умолчанию = { "амстердам" = "nl-ams1" "лондон" = "uk-lon1" "Франкфурт" = "де-фра1" "хельсинки1" = "фи-хел1" "хельсинки2" = "фи-хел2" "Чикаго" = "нас-чи1" "sanjose" = "нас-sjo1" "Сингапур" = "sg-sin1" } } переменная "планы" { тип = карта по умолчанию = { "5USD" = "1xCPU-1GB" "10USD" = "1xCPU-2GB" "20USD" = "2xCPU-4GB" } } переменная "storage_sizes" { тип = карта по умолчанию = { "1xCPU-1GB" = "25" "1xCPU-2GB" = "50" "2xCPU-4GB" = "80" } } переменная "шаблоны" { тип = карта по умолчанию = { "ubuntu18" = "01000000-0000-4000-8000-000030080200" "centos7" = "01000000-0000-4000-8000-000050010300" "debian9" = "01000000-0000-4000-8000-000020040100" } } переменная "set_password" { тип = логическое по умолчанию = ложь } переменная "пользователи" { тип = список по умолчанию = ["корень", "пользователь1", "пользователь2"] } переменная "план" { тип = строка по умолчанию = "10 долларов США" } переменная "шаблон" { тип = строка по умолчанию = "ubuntu18" }
Приведенный выше пример на самом деле является просто хранилищем информации. По большей части он использует переменную карты Terraform, которая позволяет вам изменить значения на более удобочитаемые.
Переменные, установленные в файле, могут быть переопределены при развертывании. Это позволяет вам повторно использовать файл переменных, сохраняя при этом настройку конфигурации при развертывании. Например, хотя set_password имеет значение false в файле переменных, вы можете включить его в командной строке.
terraform apply -var set_password="true"
Таким же образом вы можете переопределить и другие переменные.
Файл переменных, описанный в предыдущем разделе, можно легко использовать во многих конфигурациях. Однако, если вам нужно внести больше пары изменений, стоит также поместить настройку в файл.
Файл определений переменных использует тот же базовый синтаксис, что и языковые файлы Terraform, но состоит только из назначений имен переменных.
Terraform автоматически загружает ряд файлов определений переменных, если они названы следующим образом:
Файлы с именами точно terraform. tfvars или terraform.tfvars.json.
Любые файлы с именами, заканчивающимися на .auto.tfvars или .auto.tfvars.json.
Теперь создайте новый файл для определения пользовательских переменных с именем terraform.tfvars, затем добавьте следующее содержимое.
set_password = "истина" пользователи = ["корень", "админ"] план = "20 долларов США" templates = {"ubuntu20":"01000000-0000-4000-8000-000030080200", "centos8":"01000000-0000-4000-8000-000050010300"} шаблон = "ubuntu20"
Если вместо этого вы хотите использовать форматирование JSON, файлы с окончанием .tfvars.json анализируются как объекты JSON. Свойства корневого объекта соответствуют именам переменных.
{ "set_password": "истина", «пользователи»: [«корень», «админ»], "план": "20 долларов США" "templates": {"ubuntu20":"01000000-0000-4000-8000-000030200200", "centos8":"01000000-0000-4000-8000-000050010400"}, "шаблон": "ubuntu20" }
Далее перейдите к разделу ниже о том, как использовать переменные.
Значения, определенные в файлах variable.tf, можно использовать в планах Terraform, чтобы избежать жесткого кодирования параметров. В следующем примере выделенные переменные используются для выбора параметров развертывания нового облачного сервера.
Обратите внимание на две последние переменные, установленные в файле variable.tf, которые используются в качестве селекторов для выбора плана сервера и шаблона ОС.
ресурс "upcloud_server" "server1" { # Имя хоста системы имя хоста = "terraform.example.com" # Зона доступности zone = var.zones["Амстердам"] # Количество процессоров и памяти в ГБ план = вар.планы[вар.план] шаблон { # Размер корневого диска ОС размер = поиск (var.storage_sizes, var.plans [var.plan]) # UUID шаблона для Ubuntu 18.04 хранилище = var.templates[var.template] } сетевой интерфейс { тип = "общедоступный" } сетевой интерфейс { тип = "утилита" } # Включите хотя бы один публичный SSH-ключ авторизоваться { пользователь = переменная. пользователи[0] create_password = var.set_password ключи = [ var.public_key ] } связь { хост = self.network_interface[0].ip_address тип = "сш" пользователь = переменная.пользователи[0] private_key = файл (var.private_key_path) } }
Переменные Terraform полезны для определения сведений о сервере без необходимости запоминать значения, специфичные для инфраструктуры. Они также удобны для повторного использования общих параметров, таких как открытые ключи SSH, которые не меняются между конфигурациями.
Также важно, чтобы планы ресурсов не содержали личных данных по соображениям безопасности. Используя переменные, конфиденциальная информация, такая как закрытые ключи и имена пользователей, не будет непреднамеренно передана.
Выходные переменные обеспечивают удобный способ получения полезной информации о вашей инфраструктуре. Как вы могли заметить, большая часть сведений о сервере рассчитывается при развертывании и становится доступной только после этого. Используя выходные переменные, вы можете извлечь любые значения, специфичные для сервера, включая рассчитанные данные.
Настройка выходных переменных действительно очень проста. Все, что вам нужно сделать, это определить имя для вывода и какое значение оно должно соответствовать. Они могут быть включены в ваш план Terraform или в отдельный файл.
Начните с создания файла выходных переменных с именем output.tf и откройте его для редактирования.
Добавьте следующие три определения переменных в файл для вывода IP-адресов сервера и имени хоста после развертывания. Замените server_name на имя вашего хоста Terraform.
вывод "public_ip" { значение = upcloud_server.server_name.network_interface[0].ip_address } вывод "utility_ip" { значение = upcloud_server.server_name.network_interface[1].ip_address } вывод "имя хоста" { значение = upcloud_server.server_name.hostname }
Сохраните файл и проверьте вывод, развернув сервер с помощью обычных команд, приведенных ниже.
план терраформирования
применение терраформирования
upcloud_server.server1: Создание завершено через 39 секунд (ID: 00b784aa-15c1-44dc-8252-f4bad865f853) Заявка завершена! Ресурсы: 1 добавлено, 0 изменено, 0 уничтожено. Выходы: имя хоста = terraform.example.com приватный_ip = 10.5.4.82 public_ip = 94.237.45.221
Определенные вами переменные будут показаны в конце развертывания, как в примере выше. Однако вы также можете получить их в любое время с помощью команды Terraform. Например, чтобы получить общедоступный IP-адрес, вы можете использовать приведенную ниже примерную команду.
terraform output public_ip
94.237.45.221
Таким же образом вы можете спросить Terraform о любых других выходных переменных.
Вы также можете установить конфиденциальные переменные в переменных среды с префиксом TF_VAR_, чтобы избежать необходимости сохранять их в файле. Например, установите свой пароль в локальных переменных окружения.
export TF_VAR_PASSWORD="password"
Вам также необходимо объявить переменную пароля в файле variable.tf.
переменная ПАРОЛЬ { по умолчанию = "" }
После этого переменную пароля можно использовать в ресурсах Terraform.
поставщик "remote-exec" { встроенный = [ "добавить пользователя ${var.users[0]}", "эхо '${var.users[0]}:${var.PASSWORD}' | chpasswd" ] }
При развертывании поставщик удаленного выполнения создаст нового пользователя в соответствии с переменной пользователей с ПАРОЛЕМ, установленным в переменной среды.
Переменные Terraform обеспечивают множество удобных применений для управления инфраструктурой. Разделение вашего плана развертывания и параметров конфигурации на отдельные файлы помогает поддерживать порядок. Однако это только общее назначение переменных Terraform. Определение вашей инфраструктуры с помощью переменных — это первый шаг к расширенным функциям Terraform.
Об авторе