Исправление синтаксической ошибки в molecule_executor.py и обновление k8s preset'ов

- Исправлена незакрытая скобка в _build_test_command (строка 745)
- Добавлена поддержка k8s preset'ов: выполнение create_k8s_cluster.py перед create.yml
- Обновлены образы в k8s preset'ах: заменен недоступный ghcr.io/ansible-community/molecule-ubuntu-systemd:jammy на inecs/ansible-lab:ubuntu22-latest
- Обновлены preset'ы в базе данных через SQL
- Обновлены файлы: k8s-single.yml, k8s-multi.yml, k8s-istio-full.yml
This commit is contained in:
Сергей Антропов
2026-02-16 00:31:09 +03:00
parent 1fbf9185a2
commit d4b0d6f848
26 changed files with 1913 additions and 646 deletions

View File

@@ -98,6 +98,8 @@ class PresetService:
description: str = "",
hosts: List[Dict] = None,
category: str = "main",
images: Dict = None,
systemd_defaults: Dict = None,
created_by: Optional[str] = None
) -> Preset:
"""Создание нового preset'а в БД"""
@@ -107,7 +109,12 @@ class PresetService:
raise ValueError(f"Preset '{preset_name}' уже существует")
# Генерация содержимого preset'а
content = PresetService._generate_preset_content(description, hosts or [])
content = PresetService._generate_preset_content_from_form(
description=description,
hosts=hosts or [],
images=images or {},
systemd_defaults=systemd_defaults or {}
)
# Парсинг для извлечения данных
data = yaml.safe_load(content)
@@ -234,32 +241,11 @@ class PresetService:
kind_clusters: List = None
) -> str:
"""Генерация содержимого preset'а из формы"""
# Базовые образы по умолчанию
default_images = {
"alt9": "inecs/ansible-lab:alt9-latest",
"alt10": "inecs/ansible-lab:alt10-latest",
"astra": "inecs/ansible-lab:astra-linux-latest",
"rhel": "inecs/ansible-lab:rhel-latest",
"centos7": "inecs/ansible-lab:centos7-latest",
"centos8": "inecs/ansible-lab:centos8-latest",
"centos9": "inecs/ansible-lab:centos9-latest",
"alma": "inecs/ansible-lab:alma-latest",
"rocky": "inecs/ansible-lab:rocky-latest",
"redos": "inecs/ansible-lab:redos-latest",
"ubuntu20": "inecs/ansible-lab:ubuntu20-latest",
"ubuntu22": "inecs/ansible-lab:ubuntu22-latest",
"ubuntu24": "inecs/ansible-lab:ubuntu24-latest",
"debian9": "inecs/ansible-lab:debian9-latest",
"debian10": "inecs/ansible-lab:debian10-latest",
"debian11": "inecs/ansible-lab:debian11-latest",
"debian12": "inecs/ansible-lab:debian12-latest"
}
# Используем только переданные образы (без дефолтных)
final_images = images or {}
# Объединяем с переданными образами
final_images = {**default_images, **(images or {})}
# Systemd defaults по умолчанию
default_systemd = {
# Используем переданные настройки systemd или дефолтные, если не переданы
final_systemd = systemd_defaults or {
"privileged": True,
"command": "/sbin/init",
"volumes": ["/sys/fs/cgroup:/sys/fs/cgroup:rw"],
@@ -267,9 +253,6 @@ class PresetService:
"capabilities": ["SYS_ADMIN"]
}
# Объединяем с переданными настройками
final_systemd = {**default_systemd, **(systemd_defaults or {})}
# Заголовок
content = f"""---
#description: {description or "Пользовательский preset"}