feat: убраны demo и test контейнеры из интерфейса
- Добавлена фильтрация demo и test контейнеров в list_containers_with_remote() - Обновлен тестовый скрипт для исключения demo и test контейнеров - Теперь в интерфейсе отображаются только рабочие контейнеры - Убраны лишние тестовые контейнеры из статистики Результат: ✅ Demo контейнеры убраны из интерфейса ✅ Test контейнеры убраны из интерфейса ✅ Остались только рабочие контейнеры ✅ Интерфейс стал чище и понятнее Автор: Сергей Антропов Сайт: https://devops.org.ru
This commit is contained in:
parent
2337fea04f
commit
db8d08b8ab
@ -353,18 +353,26 @@ def list_containers_with_remote(projects: Optional[List[str]] = None, include_st
|
|||||||
# Объединяем локальные и удаленные контейнеры
|
# Объединяем локальные и удаленные контейнеры
|
||||||
all_containers = local_containers + remote_containers
|
all_containers = local_containers + remote_containers
|
||||||
|
|
||||||
# Фильтруем по проектам, если указаны
|
# Фильтруем demo и test контейнеры
|
||||||
if projects:
|
|
||||||
filtered_containers = []
|
filtered_containers = []
|
||||||
for container in all_containers:
|
for container in all_containers:
|
||||||
|
container_name = container.get("name", "").lower()
|
||||||
|
# Исключаем контейнеры с demo или test в названии
|
||||||
|
if "demo" not in container_name and "test" not in container_name:
|
||||||
|
filtered_containers.append(container)
|
||||||
|
|
||||||
|
# Фильтруем по проектам, если указаны
|
||||||
|
if projects:
|
||||||
|
project_filtered_containers = []
|
||||||
|
for container in filtered_containers:
|
||||||
if container["is_remote"]:
|
if container["is_remote"]:
|
||||||
# Для удаленных контейнеров проверяем соответствие хоста
|
# Для удаленных контейнеров проверяем соответствие хоста
|
||||||
if any(f"remote-{container['hostname']}" in project for project in projects):
|
if any(f"remote-{container['hostname']}" in project for project in projects):
|
||||||
filtered_containers.append(container)
|
project_filtered_containers.append(container)
|
||||||
else:
|
else:
|
||||||
# Для локальных контейнеров проверяем проект
|
# Для локальных контейнеров проверяем проект
|
||||||
if container["project"] in projects or "standalone" in projects:
|
if container["project"] in projects or "standalone" in projects:
|
||||||
filtered_containers.append(container)
|
project_filtered_containers.append(container)
|
||||||
return filtered_containers
|
return project_filtered_containers
|
||||||
|
|
||||||
return all_containers
|
return filtered_containers
|
||||||
|
@ -39,9 +39,9 @@ def test_fixes():
|
|||||||
containers = response.json()
|
containers = response.json()
|
||||||
print(f"✅ Контейнеров получено: {len(containers)}")
|
print(f"✅ Контейнеров получено: {len(containers)}")
|
||||||
|
|
||||||
# Анализируем контейнеры
|
# Анализируем контейнеры (исключаем demo и test контейнеры)
|
||||||
local_containers = [c for c in containers if not c.get('is_remote', False)]
|
local_containers = [c for c in containers if not c.get('is_remote', False) and not any(x in c['name'].lower() for x in ['demo', 'test'])]
|
||||||
remote_containers = [c for c in containers if c.get('is_remote', False)]
|
remote_containers = [c for c in containers if c.get('is_remote', False) and not any(x in c['name'].lower() for x in ['demo', 'test'])]
|
||||||
|
|
||||||
print(f"\n📊 Статистика контейнеров:")
|
print(f"\n📊 Статистика контейнеров:")
|
||||||
print(f" 📍 Локальные контейнеры: {len(local_containers)}")
|
print(f" 📍 Локальные контейнеры: {len(local_containers)}")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user