Align frontend API contracts and CI pipeline #15

Merged
avm merged 14 commits from feature/frontend-api-alignment-dev into dev 2026-03-23 14:12:22 +03:00
2 changed files with 4 additions and 7 deletions
Showing only changes of commit b8fa62f369 - Show all commits

View File

@@ -34,7 +34,6 @@ from apps.parsers.services import (
ProxyToolsSyncService, ProxyToolsSyncService,
) )
from celery import shared_task from celery import shared_task
from django.conf import settings
from requests.adapters import BaseAdapter from requests.adapters import BaseAdapter
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@@ -50,8 +49,7 @@ def _resolve_proxies(proxies: list[str] | None) -> list[str] | None:
Приоритет: Приоритет:
1. Явно переданные в задачу `proxies` 1. Явно переданные в задачу `proxies`
2. Активные прокси из БД 2. Runtime-прокси из БД (с приоритетом Proxy-Tools RU)
3. `settings.PARSER_PROXIES` (например, из ENV)
""" """
if proxies is not None: if proxies is not None:
return proxies return proxies
@@ -60,8 +58,7 @@ def _resolve_proxies(proxies: list[str] | None) -> list[str] | None:
if db_proxies: if db_proxies:
return db_proxies return db_proxies
configured_proxies = getattr(settings, "PARSER_PROXIES", []) or [] return None
return configured_proxies or None
def _get_or_create_background_job( def _get_or_create_background_job(

View File

@@ -129,10 +129,10 @@ class ProxyResolutionTestCase(TestCase):
self.assertEqual(result, [imported_proxy.address]) self.assertEqual(result, [imported_proxy.address])
@override_settings(PARSER_PROXIES=["http://env-proxy:8080"]) @override_settings(PARSER_PROXIES=["http://env-proxy:8080"])
def test_resolve_proxies_falls_back_to_settings_when_db_empty(self): def test_resolve_proxies_does_not_use_unclassified_env_fallback(self):
result = _resolve_proxies(None) result = _resolve_proxies(None)
self.assertEqual(result, ["http://env-proxy:8080"]) self.assertIsNone(result)
class SyncRuProxiesTaskTestCase(TestCase): class SyncRuProxiesTaskTestCase(TestCase):