greentic-setup-dev 1.1.27821248534

End-to-end bundle setup engine for the Greentic platform — pack discovery, QA-driven configuration, secrets persistence, and bundle lifecycle management
Documentation
{
  "cli.bundle.add.adding": "Додавання pack до bundle...",
  "cli.bundle.add.bundle": "  Bundle: {}",
  "cli.bundle.add.created_structure": "Створено структуру bundle за адресою {}",
  "cli.bundle.add.dry_run": "[dry-run] Pack буде додано до bundle",
  "cli.bundle.add.env": "  Середовище: {}",
  "cli.bundle.add.pack_ref": "  Посилання на pack: {}",
  "cli.bundle.add.resolved": "  Розв'язані packs: {}",
  "cli.bundle.add.success": "Pack успішно додано до bundle.",
  "cli.bundle.add.team": "  Команда: {}",
  "cli.bundle.add.tenant": "  Tenant: {}",
  "cli.bundle.add.version_warning": "Попередження: не вдалося перевірити версію {}: {}",
  "cli.bundle.build.building": "Збірка портативного bundle...",
  "cli.bundle.build.output": "  Вивід: {}",
  "cli.bundle.build.running_doctor": "Запуск перевірки doctor...",
  "cli.bundle.build.success": "Bundle успішно зібрано за адресою {}",
  "cli.bundle.init.created": "Bundle створено за адресою {}",
  "cli.bundle.init.creating": "Створення bundle за адресою {}...",
  "cli.bundle.init.exists": "Bundle вже існує за адресою {}",
  "cli.bundle.init.next_steps": "Наступні кроки:",
  "cli.bundle.init.step_add": "  1. greentic-setup bundle add <pack.gtpack> --bundle {}",
  "cli.bundle.init.step_setup": "  2. greentic-setup bundle setup --bundle {} --answers answers.yaml",
  "cli.bundle.list.bundle": "Bundle: {}",
  "cli.bundle.list.domain": "Домен: {}",
  "cli.bundle.list.packs_found": "Знайдено packs: {}",
  "cli.bundle.remove.cancelled": "видалення скасовано - використовуйте --force для підтвердження",
  "cli.bundle.remove.complete": "Provider видалено: {}",
  "cli.bundle.remove.confirm": "Це призведе до видалення конфігурації provider.",
  "cli.bundle.remove.removing": "Видалення provider...",
  "cli.bundle.remove.use_force": "Використовуйте --force для підтвердження.",
  "cli.bundle.setup.complete": "Налаштування provider завершено: {}",
  "cli.bundle.setup.domain": "  Домен: {}",
  "cli.bundle.setup.dry_run": "[dry-run] Provider буде налаштовано: {}",
  "cli.bundle.setup.emit_usage": "Відредагуйте та використайте з: greentic-setup bundle setup --answers {}",
  "cli.bundle.setup.emit_written": "Шаблон відповідей записано до: {}",
  "cli.bundle.setup.env_bootstrap_created": "Ініціалізовано середовище `local` зі стандартними прив’язками можливостей за адресою {}.",
  "cli.bundle.setup.interactive_not_impl": "Інтерактивне налаштування ще не реалізовано.",
  "cli.bundle.setup.provider": "  Provider: {}",
  "cli.bundle.setup.setting_up": "Налаштування provider...",
  "cli.bundle.setup.use_answers": "Використовуйте --answers <файл> для надання відповідей.",
  "cli.bundle.setup.use_emit_answers": "Або використовуйте --emit-answers <файл> для генерації шаблону відповідей.",
  "cli.bundle.status.bundle_label": "Bundle: {}",
  "cli.bundle.status.not_found": "Bundle не знайдено: {}",
  "cli.bundle.status.packs": "Packs: {} встановлено",
  "cli.bundle.status.tenants": "Tenants: {}",
  "cli.bundle.status.valid_no": "ні (відсутній greentic.demo.yaml)",
  "cli.bundle.status.valid_yes": "так",
  "cli.bundle.update.complete": "Оновлення provider завершено: {}",
  "cli.bundle.update.dry_run": "[dry-run] Provider буде оновлено: {}",
  "cli.bundle.update.emit_usage": "Відредагуйте та використайте з: greentic-setup bundle update --answers {}",
  "cli.bundle.update.updating": "Оновлення конфігурації provider...",
  "cli.error.answers_required": "--answers обов'язковий у неінтерактивному режимі",
  "cli.error.failed_build_plan": "не вдалося побудувати план",
  "cli.error.failed_create_bundle": "не вдалося створити структуру bundle",
  "cli.error.failed_emit_answers": "не вдалося створити шаблон відповідей",
  "cli.error.failed_execute_plan": "не вдалося виконати план",
  "cli.error.failed_read_answers": "не вдалося прочитати файл відповідей",
  "cli.error.interactive_required": "інтерактивне налаштування потребує файл --answers",
  "cli.error.invalid_bundle": "недійсна директорія bundle",
  "cli.help.for_help": "Для довідки: greentic-setup --help",
  "cli.simple.bundle_required": "Потрібен шлях до bundle. Використання: greentic-setup [OPTIONS] <BUNDLE>",
  "cli.simple.dry_run": "[dry-run] Bundle буде налаштовано: {}",
  "cli.simple.emit_usage": "Відредагуйте та використайте з: greentic-setup --answers {} {}",
  "cli.simple.expected_bundle_format": "очікується директорія або файл .gtbundle: {}",
  "cli.simple.extracted_to": "  Розпаковано до: {}",
  "cli.simple.extracting": "Розпакування архіву .gtbundle...",
  "cli.simple.header": "Greentic Setup",
  "cli.simple.interactive_mode": "Режим інтерактивного майстра",
  "cli.simple.wizard_not_impl": "інтерактивний майстер ще не реалізовано - використовуйте --answers <файл>",
  "env_wizard.basic_mode": "Базовий режим — передайте --advanced, щоб також задати ідентифікатор клієнта, перевизначення конфігурації, хости маршрутів, вітальний сценарій і посилання на секрети кінцевих точок.",
  "env_wizard.dry_run_secrets_note": "Примітка: --dry-run лише попередньо показує зміни — {} вставлених значень секретів, які ви ввели, НЕ записуються до сховища. Запустіть повторно без --dry-run і підтвердьте план, щоб зберегти їх.",
  "env_wizard.form.desc": "Створює маніфест `greentic.env-manifest.v1` — довговічний документ бажаного стану для одного середовища, який можна повторно застосовувати.",
  "env_wizard.form.title": "Налаштування середовища",
  "env_wizard.list.bundles.item_label": "пакет",
  "env_wizard.list.messaging_endpoints.item_label": "Кінцева точка повідомлень",
  "env_wizard.list.secrets.item_label": "секрет",
  "env_wizard.manifest_prompt": "Файл маніфесту [{}]: ",
  "env_wizard.q.bundle_id.desc": "Природний ключ — унікальний у межах маніфесту.",
  "env_wizard.q.bundle_id.title": "Ідентифікатор пакета",
  "env_wizard.q.bundle_path.desc": "Локальний `.gtbundle`. Відносні шляхи обчислюються відносно каталогу файлу маніфесту.",
  "env_wizard.q.bundle_path.title": "Шлях до пакета",
  "env_wizard.q.bundles.desc": "Розгортання пакетів для цього середовища.",
  "env_wizard.q.bundles.title": "Пакети",
  "env_wizard.q.config_overrides.desc": "JSON-об’єкт `{\"<pack_id>\": {\"<key>\": <value>}}`. Порожнє значення = залишити без змін; `{}` = явне очищення.",
  "env_wizard.q.config_overrides.title": "Перевизначення конфігурації (JSON)",
  "env_wizard.q.customer_id.desc": "Платіжний принципал — потрібен для застосування до середовищ, відмінних від `local`.",
  "env_wizard.q.customer_id.title": "Ідентифікатор клієнта",
  "env_wizard.q.environment_id.desc": "Середовище для застосування. `local` ініціалізується зі стандартними прив’язками env-pack; будь-який інший ідентифікатор уже має існувати (apply узгоджує його; створення нелокальних середовищ зарезервовано для сховища оператора).",
  "env_wizard.q.environment_id.title": "Ідентифікатор середовища",
  "env_wizard.q.from_env.desc": "Назва змінної, що містить значення секрету (наприклад, TELEGRAM_BOT_TOKEN) — саме назва, а не значення. Потрібно, коли джерело — `env`.",
  "env_wizard.q.from_env.title": "Назва змінної середовища",
  "env_wizard.q.links.desc": "Розділені комами `bundle_id`, які ця кінцева точка допускає.",
  "env_wizard.q.links.title": "Пов’язані ідентифікатори пакетів",
  "env_wizard.q.messaging_endpoints.desc": "Кінцеві точки повідомлень і їхні зв’язки з пакетами.",
  "env_wizard.q.messaging_endpoints.title": "Кінцеві точки повідомлень",
  "env_wizard.q.name.desc": "Локальний для маніфесту дескриптор і відображуване ім’я. Ключ upsert разом із типом провайдера.",
  "env_wizard.q.name.title": "Назва кінцевої точки",
  "env_wizard.q.path.desc": "`<tenant>/<team>/<pack>/<name>`, наприклад default/_/messaging-telegram/telegram_bot_token",
  "env_wizard.q.path.title": "Шлях до секрету",
  "env_wizard.q.provider_type.desc": "Клас провайдера, наприклад messaging.telegram.bot.",
  "env_wizard.q.provider_type.title": "Тип провайдера",
  "env_wizard.q.public_base_url.desc": "URL лише з origin, збережений у середовищі (наприклад, https://bots.example.com). Залиште порожнім, щоб зберегти поточне значення.",
  "env_wizard.q.public_base_url.title": "Публічний базовий URL",
  "env_wizard.q.route_hosts.desc": "Розділені комами імена хостів для прив’язки маршруту.",
  "env_wizard.q.route_hosts.title": "Хости маршруту",
  "env_wizard.q.route_path_prefixes.desc": "Розділені комами префікси HTTP-шляхів, кожен починається з `/` (наприклад, /legal).",
  "env_wizard.q.route_path_prefixes.title": "Префікси шляхів маршруту",
  "env_wizard.q.route_team.desc": "Команда для селектора орендаря прив’язки маршруту — задається разом із `route_tenant`.",
  "env_wizard.q.route_team.title": "Команда маршруту",
  "env_wizard.q.route_tenant.desc": "Орендар для селектора орендаря прив’язки маршруту — задається разом із `route_team`.",
  "env_wizard.q.route_tenant.title": "Орендар маршруту",
  "env_wizard.q.secret_refs.desc": "Розділені комами посилання на секрети, що передаються під час створення кінцевої точки.",
  "env_wizard.q.secret_refs.title": "Посилання на секрети",
  "env_wizard.q.secrets.desc": "Записи секретів dev-store. Значення кожного секрету надходить або з названої змінної середовища, або зі значення, яке ви вставляєте — значення ніколи не потрапляють до маніфесту.",
  "env_wizard.q.secrets.title": "Секрети",
  "env_wizard.q.source.desc": "`env` читає значення з названої змінної середовища під час застосування; `paste` дає змогу ввести значення інтерактивно — воно зберігається у сховищі секретів середовища, ніколи в маніфесті.",
  "env_wizard.q.source.title": "Джерело секрету",
  "env_wizard.q.trust_root_bootstrap.desc": "Засіяти корінь довіри середовища локальним ключем оператора (ідемпотентно; потрібно один раз перед підготовкою пакетів).",
  "env_wizard.q.trust_root_bootstrap.title": "Ініціалізувати корінь довіри?",
  "env_wizard.q.webchat_gui.desc": "Запустіть вбудовану консоль вебчату, щоб спілкуватися з цим середовищем, відкривши його URL у браузері. Увімкнено за замовчуванням для `local`; шлях чату доступний лише через loopback і без автентифікації, тому залишайте це вимкненим для середовищ, доступних за публічною URL-адресою, якщо ви не маєте такого наміру.",
  "env_wizard.q.webchat_gui.title": "Додати графічний інтерфейс вебчату?",
  "env_wizard.q.welcome_bundle_id.desc": "Встановіть усі три поля welcome_* разом (або жодне).",
  "env_wizard.q.welcome_bundle_id.title": "Вітальний потік: id бандла",
  "env_wizard.q.welcome_flow_id.desc": "Встановіть усі три поля welcome_* разом (або жодне).",
  "env_wizard.q.welcome_flow_id.title": "Вітальний потік: id потоку",
  "env_wizard.q.welcome_pack_id.desc": "Встановіть усі три поля welcome_* разом (або жодне).",
  "env_wizard.q.welcome_pack_id.title": "Вітальний потік: id пакета",
  "env_wizard.secrets.choose": "Для кожного виберіть, звідки береться значення: з іменованої змінної\nсередовища або вставте його зараз. Вставлені значення зберігаються у сховищі секретів\nсередовища — ніколи не записуються до маніфесту.",
  "env_wizard.secrets.entry": "{} — {} (бандл: {}){}",
  "env_wizard.secrets.envvar_prompt": "ім'я змінної середовища [{}]: ",
  "env_wizard.secrets.envvar_required": "Потрібне ім'я змінної середовища.",
  "env_wizard.secrets.keep_env_note": "примітка: збережено наявний секрет `{}` (бандл не перебудовано)",
  "env_wizard.secrets.keep_paste_note": "примітка: збережено наявний вставлений секрет `{}` (бандл не перебудовано)",
  "env_wizard.secrets.need": "Секрети — налаштованим бандлам потрібно {} секрет(ів).",
  "env_wizard.secrets.none": "Секрети — налаштовані бандли не оголошують секретів; вводити нічого.",
  "env_wizard.secrets.optional_suffix": " [необов'язково]",
  "env_wizard.secrets.paste_prompt": "вставте значення (приховане, один рядок): ",
  "env_wizard.secrets.paste_prompt_keep": "вставте значення (приховане, один рядок; порожнє зберігає збережене значення): ",
  "env_wizard.secrets.paste_required": "Потрібне значення.",
  "env_wizard.secrets.path": "шлях до секрету: {}",
  "env_wizard.secrets.source_invalid": "Введіть 1 (змінна середовища) або 2 (вставити).",
  "env_wizard.secrets.source_prompt": "значення з [1] змінної середовища чи [2] вставити зараз? [{}]: ",
  "env_wizard.wrote_manifest": "Записано `{}` — маніфест є довготривалим артефактом; зберігайте його в системі контролю версій.",
  "setup.answers.emitted": "Шаблон відповідей записано до {}",
  "setup.answers.loaded": "Завантажено відповіді з {}",
  "setup.capability.not_found": "Capability '{}' не знайдено",
  "setup.capability.resolved": "Розв'язано capability: pack_id={} stable_id={}",
  "setup.discovering_packs": "Виявлення packs у bundle...",
  "setup.dry_run.header": "План налаштування (dry-run):",
  "setup.error.bundle_not_found": "Bundle не знайдено: {}",
  "setup.error.protocol_not_supported": "Протокол ще не підтримується: {}",
  "setup.error.version_mismatch": "Версія тегу ({}) не відповідає версії crate ({})",
  "setup.execute.failed": "Налаштування не вдалося: {}",
  "setup.execute.success": "Налаштування завершено: {}",
  "setup.found_packs": "Знайдено {} pack(ів): {}",
  "setup.plan.header": "План налаштування:",
  "setup.plan.step.collect_answers": "Зібрати відповіді для {}",
  "setup.plan.step.discover": "Виявити packs",
  "setup.plan.step.resolve": "Згенерувати розв'язаний маніфест",
  "setup.plan.step.run_setup": "Запустити потік налаштування для {}",
  "setup.plan.step.seed_secrets": "Ініціалізувати secrets для {}",
  "setup.plan.step.validate": "Перевірити bundle",
  "setup.plan.step.webhooks": "Зареєструвати webhooks для {}",
  "setup.plan.step.write_config": "Записати конфігурацію для {}",
  "setup.qa.invalid_choice": "Недійсний вибір. Варіанти: {}",
  "setup.qa.list.add_first": "Додати {}? [y/N] ",
  "setup.qa.list.add_more": "Додати ще один {}? [y/N] ",
  "setup.qa.list.field_required_row": "Це поле обов'язкове — потрібен принаймні один рядок.",
  "setup.qa.list.max_reached": "(досягнуто максимум {} рядків)",
  "setup.qa.list.min_required": "Потрібно принаймні {} рядків — отримано {}. Введіть 'y', щоб додати ще один.",
  "setup.qa.list.row_dropped": "(рядок відкинуто — обов'язкові стовпці були порожні)",
  "setup.qa.list.row_header": "Рядок #{}:",
  "setup.qa.prompt.configuring": "Налаштування {}: {}",
  "setup.qa.prompt.default": "(за замовчуванням: {}) ",
  "setup.qa.prompt.field_required": "Це поле обов'язкове.",
  "setup.qa.prompt.invalid_choice": "Неприпустимий вибір. Варіанти: {}",
  "setup.qa.prompt.invalid_format": "Неприпустимий формат. Очікуваний шаблон: {}",
  "setup.qa.prompt.mode_advanced": " (розширений режим)",
  "setup.qa.prompt.optional_marker": " (необов'язково)",
  "setup.qa.prompt.required_marker": " (обов'язково)",
  "setup.qa.question_prompt": "{}",
  "setup.qa.required_field": "Це поле обов'язкове",
  "setup.qa.secret_input": "Введіть секретне значення (приховано):",
  "setup.secrets.failed": "Не вдалося ініціалізувати secrets для provider={} tenant={}: {}",
  "setup.secrets.seeded": "Ініціалізовано {} secret(ів) для provider={} tenant={}",
  "setup.state_store.fallback": "Використовується сховище стану в пам'яті (Redis URL недоступний)",
  "setup.state_store.upgraded": "Сховище стану оновлено до Redis: {}",
  "ui.back": "Назад",
  "ui.close": "Закрити",
  "ui.configure": "Налаштувати {}",
  "ui.continue": "Продовжити",
  "ui.dashboard.add_scope": "Додати область",
  "ui.dashboard.back": "Назад до панелі керування",
  "ui.dashboard.configured": "налаштовано",
  "ui.dashboard.delete": "Видалити",
  "ui.dashboard.description": "Налаштуйте {} постачальник(ів) у {}. Створіть кілька областей для різних орендарів/середовищ.",
  "ui.dashboard.executed": "Виконано",
  "ui.dashboard.export": "Експортувати відповіді",
  "ui.description": "Налаштуйте постачальника(ів) {} у {}",
  "ui.discovering": "Пошук постачальників...",
  "ui.discovering_sub": "Читання конфігурації bundle",
  "ui.done": "Готово",
  "ui.execute_setup": "Виконати налаштування",
  "ui.executing.sub": "Застосування конфігурації до bundle",
  "ui.executing.title": "Виконання налаштування...",
  "ui.export.description": "Завантажте конфігурацію як JSON-файл відповідей, сумісний з режимом --answers.",
  "ui.export.download": "Завантажити answers.json",
  "ui.export.password": "Пароль шифрування",
  "ui.export.password_help": "Якщо задано, секретні значення буде зашифровано за допомогою AES-256-GCM. Цей пароль знадобиться під час використання --answers --key.",
  "ui.export.password_hint": "Залиште порожнім, щоб не використовувати шифрування",
  "ui.export.title": "Експортувати відповіді",
  "ui.field.required": "{} є обов’язковим.",
  "ui.import.decrypt_failed": "Не вдалося розшифрувати",
  "ui.import.dropzone": "Перетягніть answers.json сюди або натисніть, щоб імпортувати",
  "ui.import.no_scopes": "У файлі не знайдено дійсних областей.",
  "ui.import.parse_error": "Не вдалося розібрати файл",
  "ui.import.password_prompt": "Цей файл містить зашифровані секрети. Введіть пароль розшифрування:",
  "ui.new_setup": "Нове налаштування",
  "ui.no_providers": "У bundle не знайдено постачальників.",
  "ui.nothing_to_configure": "Немає чого налаштовувати.",
  "ui.pending": "Очікує",
  "ui.provider.configure": "Налаштувати {}",
  "ui.q.api_base_url": "Базовий URL API",
  "ui.q.base_url": "Базовий URL",
  "ui.q.channel_id": "ID каналу",
  "ui.q.default_channel": "Канал за замовчуванням",
  "ui.q.default_room_id": "ID кімнати за замовчуванням",
  "ui.q.default_to_person_email": "Електронна адреса особи за замовчуванням",
  "ui.q.enabled": "Увімкнути провайдера",
  "ui.q.jwt_signing_key": "Ключ підпису JWT",
  "ui.q.jwt_signing_key.help": "Секретний ключ, що використовується для підпису токенів Direct Line. Використовуйте будь-який випадковий рядок (наприклад, openssl rand -hex 32).",
  "ui.q.mode": "Режим",
  "ui.q.ms_bot_app_id": "ID застосунку бота",
  "ui.q.ms_bot_app_id.help": "ID застосунку Microsoft Bot з реєстрації Azure Bot Service",
  "ui.q.ms_bot_app_password": "Пароль застосунку бота",
  "ui.q.oauth_custom_auth_url": "URL авторизації",
  "ui.q.oauth_custom_client_id": "ID клієнта",
  "ui.q.oauth_custom_label": "Назва провайдера для відображення",
  "ui.q.oauth_custom_scopes": "Області доступу",
  "ui.q.oauth_custom_token_url": "URL токена",
  "ui.q.oauth_enable_custom": "Увімкнути власний OIDC-провайдер",
  "ui.q.oauth_enable_github": "Увімкнути вхід через GitHub",
  "ui.q.oauth_enable_google": "Увімкнути вхід через Google",
  "ui.q.oauth_enable_microsoft": "Увімкнути вхід через Microsoft",
  "ui.q.oauth_enabled": "Увімкнути вхід через OAuth",
  "ui.q.oauth_enabled.help": "Вимагати від користувачів входу перед доступом до чату",
  "ui.q.oauth_github_client_id": "ID клієнта GitHub",
  "ui.q.oauth_github_client_secret": "Секрет клієнта GitHub",
  "ui.q.oauth_google_client_id": "ID клієнта Google",
  "ui.q.oauth_google_client_secret": "Секрет клієнта Google",
  "ui.q.oauth_microsoft_client_id": "ID клієнта Microsoft",
  "ui.q.oauth_microsoft_client_secret": "Секрет клієнта Microsoft",
  "ui.q.public_base_url": "Публічний базовий URL",
  "ui.q.public_base_url.help": "Публічний URL для зворотних викликів webhook (наприклад, https://xxxx.trycloudflare.com)",
  "ui.q.route": "Маршрут",
  "ui.q.slack_app_id": "ID застосунку Slack",
  "ui.q.slack_bot_token": "Токен бота Slack",
  "ui.q.slack_configuration_token": "Токен конфігурації Slack",
  "ui.q.team_id": "ID команди",
  "ui.q.tenant_channel_id": "ID каналу орендаря",
  "ui.q.webex_bot_token": "Токен бота Webex",
  "ui.questions": "запитання",
  "ui.result.closed": "Налаштування закрито.",
  "ui.result.closed_sub": "Ви можете закрити цю вкладку.",
  "ui.result.fail.description": "Під час налаштування щось пішло не так.",
  "ui.result.fail.title": "Налаштування не вдалося",
  "ui.result.log": "Журнал",
  "ui.result.manual_steps": "Потрібні ручні дії",
  "ui.result.output": "Вивід",
  "ui.result.success.description": "Bundle успішно налаштовано.",
  "ui.result.success.title": "Налаштування завершено",
  "ui.review.description": "Перевірте конфігурацію перед застосуванням до bundle.",
  "ui.review.no": "Ні",
  "ui.review.secret_mask": "********",
  "ui.review.title": "Перевірити й виконати",
  "ui.review.yes": "Так",
  "ui.review_execute": "Перевірити й виконати",
  "ui.scope.description": "Налаштуйте цільового орендаря, середовище та команду для цього встановлення.",
  "ui.scope.detected_tenant": "Виявлено з пакета: {}",
  "ui.scope.env": "Середовище",
  "ui.scope.env_help": "Має збігатися з GREENTIC_ENV, який використовується середовищем виконання (dev, local, test).",
  "ui.scope.hint": "Ці значення визначають, де зберігаються секрети та конфігурація. Переконайтеся, що вони відповідають вашим налаштуванням середовища виконання.",
  "ui.scope.team": "Команда",
  "ui.scope.team_help": "Залиште порожнім для значення за замовчуванням. Використовується для обмеження секретів за командою.",
  "ui.scope.tenant": "Орендар",
  "ui.scope.title": "Область налаштування",
  "ui.select_action": "Щоб почати, виберіть дію.",
  "ui.shared.description": "Ці запитання стосуються всіх постачальників.",
  "ui.shared.title": "Спільна конфігурація",
  "ui.start_config": "Почати налаштування",
  "ui.title": "Налаштування Greentic"
}