35 lines
1.3 KiB
Python
35 lines
1.3 KiB
Python
"""
|
|
Чтение списка разрешённых сервисов из services_{stand}.txt.
|
|
|
|
Формат файла: service_id service_name # описание
|
|
Закомментированные (#) строки — исключены.
|
|
Пустые строки — игнорируются.
|
|
|
|
Файл лежит в site/config/, пушится с кодом, деплоится вместе с приложением.
|
|
При изменении списка: edit → commit → push → redeploy.
|
|
"""
|
|
|
|
import os
|
|
import re
|
|
|
|
_CONFIG_DIR = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), "config")
|
|
|
|
|
|
def load_service_ids(stand="test"):
|
|
"""Вернуть set разрешённых service_id для указанного стенда."""
|
|
path = os.path.join(_CONFIG_DIR, f"services_{stand}.txt")
|
|
ids = set()
|
|
try:
|
|
with open(path) as f:
|
|
for line in f:
|
|
line = line.strip()
|
|
if not line or line.startswith("#"):
|
|
continue
|
|
# Формат: "1 dummy # Болванка"
|
|
parts = line.split()
|
|
if parts and parts[0].isdigit():
|
|
ids.add(int(parts[0]))
|
|
except FileNotFoundError:
|
|
pass # файла нет — показываем все сервисы
|
|
return ids
|