TGViewer
Devops Bootcamp с Федосеевым Devops Bootcamp с Федосеевым @devopsupgrade · 5.33K subscribers
Post #1228 1.07K
Коллеги приветствую👋

Сегодня немного дополним более ранний пост про использование inputs в пайплайнах. Это такое, что точно можно использовать, если все почему-то так еще не делаете. Рассмотрим проект запуска пайплайна в ручную, с указанием разных типов переменных. В этом случае хорошо получается заменить их на inputs и сделать все удобнее.

Как мы разбирали уже ранее - есть условия переменных и при выборе окружения будет возможность выбрать стенды только внутри этого окружения, но теперь добавим еще разные типы, проверяем поля и так мы убедимся, что запуск пайплайна не упадет из-за некорректных данных указанных при запуске


inputs:
environment:
description: "Target environment"
options: ["test", "stage", "prod"]
default: "test"

landscape:
description: "Target stand"
rules:
- if: $[[ inputs.environment ]] == "prod"
options: ["my-prod01", "my-prod02"]
default: "my-prod01"
- if: $[[ inputs.environment ]] == "stage"
options: ["my-stage01", "my-stage02"]
default: "my-stage01"
- options: ["my-test01", "my-test02", "sandbox01"]
default: "my-test01"

playbook:
description: "Playbook to run"
rules:
- if: $[[ inputs.environment ]] == "prod"
options: ["deploy", "check", "rollback"]
default: "check"
- if: $[[ inputs.environment ]] == "stage"
options: ["deploy", "check", "rollback", "smoke", "migrate"]
default: "deploy"
- options: ["first_playbook", "deploy", "check", "smoke", "migrate", "debug"]
default: "first_playbook"

mode:
description: "Execution mode"
options: ["apply", "check", "diff"]
default: "apply"

limit_hosts:
description: "Optional ansible --limit"
default: ""
regex: '^$|^[A-Za-z0-9_.:,-]+$'

forks:
description: "Ansible forks"
type: number
default: 10

gather_facts:
description: "Enable gather_facts"
type: boolean
default: true

verbose:
description: "Enable -vvv"
type: boolean
default: false

confirmation:
description: "Type APPROVE for production apply"
default: ""


Для числовых знаний поставим type: number и boolean когда просто выбираем true/false что-бы не писать это текстом - можно и ошибиться.

Получаем основные поля - выбираются из предложенных вариантов. Число в специальном поле и переключатели там где это уместно. Остается пару полей с строкой - в данном случае это для гибкости.
  • 🔥 4
  • 👍 2
  • 👏 1
More from @devopsupgrade
  1. Sep 23, 2026Вчера стартовал курс «Профессия DevOps-инженер»🔥 Из чего состоит курс: Обучение проходит…
  2. Sep 22, 2026⚡️⚡️⚡️⚡️⚡️⚡️ Коллеги, приветствую👋 🔴Бывали ли у вас такое, открываешь вакансию - а там с…
  3. Sep 21, 2026Post #1247
  4. Sep 18, 2026Коллеги, приветствую 👋 Сегодня подводим итоги розыгрыша фирменного мерча: разыгрывались 3…
  5. Sep 8, 2026🎉 Розыгрыш завершен! 🏆 Победители: 1. @WolkStt 🔍 Проверить результаты
  6. Sep 7, 2026Коллеги, приветствую👋 Решил порадовать подписчиков своего канала и разыграть фирменный ме…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →