Перейти к основному содержимому

Меню команд

Перейти на страницу или искать в каталоге

ИИ-инструменты и скрипты

Проверка оверлеев Kustomize

Проверяет базы и оверлеи kustomization.yaml перед деплоем: секреты в генераторах и inline-патчах, закоммиченные env-файлы с секретами, удаленные базы без ref, незакрепленные чарты и образы, устаревшие поля и оверлеи без namespace.

$5.00

Что вы получите: 1 файл · 48.48 KB · ZIP

Варианты покупки

Описание товара

Продакшен-оверлей с литералами secretGenerator вроде DB_PASSWORD=... кладет пароль базы данных в git для всех, у кого есть репозиторий, а создаваемый им Secret закодирован лишь в base64. Удаленная база, записанная как https://github.com/org/platform//base без ?ref=, разворачивает то, что лежит в ветке по умолчанию в день сборки. А оверлей, который нигде не задает namespace, отправляет продакшен-объекты в тот namespace, который использует текущий контекст kubectl. Этот навык находит такие ошибки и другие ошибки Kustomize, перечисленные ниже, и объясняет, как исправить каждую из них.

Ваш агент запускает сканер на каждом файле kustomization.yaml, kustomization.yml и Kustomization (kustomization и components). Он проходит по локальным базам вроде ../../base, чтобы узнать, задает ли какая-либо из них namespace, и открывает env-файлы и файлы, которые читает secretGenerator, чтобы проверить, содержат ли они реальные значения и исключает ли их .gitignore из git. Он знает актуальные поля и устаревшие элементы Kustomize v5, формы удаленных URL и то, что ref может быть веткой, тегом или полным хешем коммита. Env-файлы, зашифрованные SOPS, плейсхолдеры ${VAR} и объекты Flux Kustomization не отмечаются. Он никогда не запускает kustomize, kubectl, helm или git. Результат: BLOCK, REVIEW или NOT FLAGGED с указанием файла, строки, причины и более безопасного подхода. Секреты никогда не выводятся.

Что проверяется

BLOCK (исправить до выпуска)

  • K01: секреты, записанные в kustomization: литералы secretGenerator, литералы configMapGenerator с секретными именами, секретные значения и секретные переменные окружения в valuesInline у helmCharts, data Secret или секретные значения env в inline-патчах, пароль в удаленном URL, а также токен GitHub, GitLab, Slack, npm или AWS в любом месте файла (ключи, которые лишь называют Secret, например tlsSecret: proxy-tls, не затрагиваются)
  • K02: env-файлы и файлы ключей secretGenerator (или env-файлы configMapGenerator с секретными именами), которые хранятся в репозитории с реальными значениями и без правила в .gitignore
  • K03: удаленные git-базы, resources или components без ref или версии
  • K04: удаленные resources, базы или репозитории Helm-чартов по обычному http://

REVIEW (проверить перед релизом)

  • K11: подвижные удаленные ссылки: ветка (main, stable, release-1.28), короткий хеш коммита, URL raw-файла в ветке, загрузка releases/latest или URL файла без версии
  • K12: helmCharts без версии, с latest или с диапазоном версий
  • K13: образы с newTag latest, main, nightly или другим подвижным тегом и без дайджеста
  • K14: устаревшие поля (bases, patchesStrategicMerge, patchesJson6902, vars, imageTags, helmChartInflationGenerator), а также env у генератора, старая форма envs в единственном числе, которую kustomize edit fix объединяет в envs
  • K15: commonLabels, который также переписывает селекторы, которые нельзя изменить у работающих рабочих нагрузок
  • K16: disableNameSuffixHash: true, из-за чего измененная конфигурация не перезапускает поды
  • K17: оверлеи, которые не задают namespace, namePrefix или nameSuffix, поверх локальной базы, которая тоже не задает namespace (базы только из кластерных типов, таких как ClusterIssuer или ClusterRole, не затрагиваются)
  • K18: файлы, загружаемые из-за пределов папки kustomization, которые стандартный load restrictor отклоняет

Что входит в комплект

  • Сканер (Python 3.9+, только стандартная библиотека)
  • Руководство по правилам с причиной, более безопасным подходом и официальным источником для каждого правила
  • Рискованный и безопасный примеры репозитория (база, продакшен-оверлей и платформенный kustomization), а также реальный отчет сканера по рискованному примеру

Ограничения

Он читает файлы kustomization в том виде, в каком они записаны, и не выполняет сборку, поэтому результат патчей, components, replacements и шаблонов Helm, а также сами манифесты Kubernetes не проверяются. Удаленные базы и чарты не загружаются. Закоммичен ли файл, определяется только по файлам .gitignore. Теги и ветки различаются по именам. Namespace, заданный в Application Argo CD или в Flux Kustomization, неизвестен. NOT FLAGGED не является гарантией.

Содержимое

Один ZIP-файл с 27 файлами: SKILL.md, сканер в scripts/ (8 файлов Python), references/rules.md (каждое правило с причиной и более безопасным подходом) и examples/ (16 файлов примеров плюс report.md, реальный вывод сканера по рискованному примеру).

Как использовать: Это навык для агента: папка с файлом SKILL.md и скриптами Python, которые может запускать ИИ-агент для программирования, например Claude Code, Cursor или Codex CLI. Распакуйте его в папку навыков вашего агента (для Claude Code: ~/.claude/skills/), затем попросите агента проверить ваш проект. Скрипты также работают самостоятельно с Python 3.9 или новее, ничего устанавливать не нужно. Они только читают ваши файлы: без доступа к сети, и ничего никуда не отправляется.

Что вы получите

1 файл · 48.48 KB

  • kustomize-overlay-check-1.0.0.zipZIP · 48.48 KB
ЛицензияКоммерческое использование разрешено
Проверка пакетаПройдена

Getly открыл загруженные файлы и не нашёл ничего, что помешало бы их открыть. Это не проверка на вирусы и не оценка качества.

Опубликовано12 нояб. 2026 г.
Размер файла48.48 KB
Формат файлаZIP
Версияv1.0

Теги

kustomizekubernetesgitopssecretsdevopsai agent skill
R
RR HH

Частые вопросы

Доступ открывается сразу?

Да. Это цифровой товар - скачать его можно сразу после оплаты, прямо из своей библиотеки.

Можно ли использовать в коммерческих проектах?

Да. Коммерческое использование разрешено: в своём бизнесе и в том, что вы продаёте. Перепродавать и распространять сам файл нельзя.

Какие условия возврата?

Запросить возврат можно в течение 30 дней. Если что-то не так, оформите заявку в своём заказе - её рассмотрит команда Getly.

Какие форматы и размеры файлов я получу?

Вы скачаете 1 файл - ZIP - всего 48.48 KB.

Обновления бесплатны?

Да - когда продавец выпускает новую версию, вы можете бесплатно скачать актуальные файлы из своей библиотеки. Последние изменения смотрите в истории версий.

Цена

$5.00