Описание переменных¶
В этом разделе представлено описание переменных, необходимых для установки и настройки платформы, включая те, которые описаны в разделах Установка системы в Docker и Работа системы в Kubernetes.
Внесение изменений
Перед внесением любых изменений в стандартное значение переменных, необязательных к заполнению во время установки, проконсультируйтесь с технической поддержкой. Изменение стандартных значений может оказать влияние на производительность и эффективность работы системы.
Не используйте в параметрах символ #, он может некорректно восприниматься системой при установке.
env.template¶
Файл env.template содержит переменные, необходимые для запуска инсталляции CodeScoring с использованием Docker Compose. Он определяет параметры, необходимые для корректного запуска инсталляции в контейнеризированной среде.
-
COMPOSE_PROJECT_NAME - название проекта в Docker Compose, используемое как префикс для ресурсов, создаваемых Docker Compose;
-
CODESCORING_VERSION - определяет версию CodeScoring для установки. Актуальную версию можно узнать в разделе Changelog;
-
SECRET_KEY - случайная строка символов, используемая CodeScoring как секрет инсталляции;
-
DJANGO_CSRF_TRUSTED_ORIGINS - cписок доменов для правильной работы CSRF защиты. Указание протокола является обязательным, например:
Nginx¶
Для настройки домена системы CodeScoring использует Nginx.
- NGINX_HOST - хост, на котором будет доступна система;
- NGINX_PORT - порт, на котором будет доступна система;
- SITE_SCHEME - протокол передачи данных, по умолчанию
https.
PostgreSQL¶
Для управления, обработки и хранения данных CodeScoring использует PostgreSQL.
- POSTGRES_DB - название базы данных;
- POSTGRES_USER - имя пользователя. При использовании собственной базы необходимо убедиться, что пользователь имеет следующие права:
Superuser, Create role, Create DB, Replication, Bypass RLS; - POSTGRES_PASSWORD - пароль;
- POSTGRES_HOST - хост, на котором доступна база данных;
- POSTGRES_PORT - порт, на котором доступна база данных.
Sentry¶
По умолчанию интеграция с Sentry отключена, SENTRY_ENABLE = False. При необходимости использования Sentry для отправки данных об ошибках и других событий системы укажите SENTRY_ENABLED = True и заполните следующие переменные:
- SENTRY_DNS - идентификатор проекта внутри Sentry, в который будут отправляться данные;
- SENTRY_ENVIRONMENT - окружение к которому будут относится отправляемые данные;
- SENTRY_RELEASE - релиз с которым будут связаны отправляемые данные.
app.env.template¶
Файл app.env.template содержит переменные окружения, необходимые для конфигурирования инсталляции CodeScoring. Он определяет настройки базы данных, веб-сервера и очередей, а также другие важные параметры системы.
-
PATH - определяет путь к исполняемым файлам, файлам виртуального окружения (venv) и стандартным системным путям:
-
ANALYSIS_IGNORED_PATHS - содержит список путей, по которым не производится поиск манифестов, файлов и не происходит анализ качества. По умолчанию указаны следующие пути:
-
Переменные, указывающие на расположение основных файлов инсталляции:
- HOME - значение по умолчанию:
ipcs-backend; - BASE_DIR - значение по умолчанию:
ipcs-backend; - AZURE_DEVOPS_CACHE_DIR - значение по умолчанию:
ipcs-backend.
- HOME - значение по умолчанию:
-
INDEX_API_URL - URL-адрес API для индекса, необходимого для обновления базы знаний, значение по умолчанию:
https://index.codescoring.ru. Данный параметр не требует изменений; -
INDEX_PROXY_URL - указывает внутри сети докер на URL-адрес контейнера Index Proxy. Не нуждается в изменении. Значение по умолчанию:
http://index-proxy:8000; -
ALLOWED_HOSTS - разрешенные хосты для Django. Определяет допустимые адреса, с которых Django может принимать запросы. При отсутствии хоста в списке, Django отклоняет входящие запросы. По умолчанию разрешены все хосты
*; -
DJANGO_CACHES_REDIS_URL - адрес сервера Redis, используемого в качестве системы кэширования Django. Значение по умолчанию:
redis://redis:6379/1; -
JOHNNY_BIN - путь к исполняемому файлу агента сканирования
JOHNNY. Значение по умолчанию:/agents/johnny-linux-amd64; -
HASHER_BIN - путь к исполняемому файлу агента
HASHER, отвечающего за хеширование файлов. Значение по умолчанию:/agents/hasher-linux-amd64; -
ANALYSIS_ROOT - корневая директория для клонирования репозиториев для анализа. Файлы копируются как временные и после анализа удаляются. Значение по умолчанию:
/analysis-root; -
MEDIA_ROOT - рабочая директория для промежуточного хранения скачиваемых и загружаемых файлов (таких как отчёт, SBOM и т.д.). Значение по умолчанию:
/analysis-root; -
NODE_PATH - директория расположения
node_modules. Значение по умолчанию:/jscpd/node_modules; -
REQUESTS_CA_BUNDLE и SSL_CERT_FILE - указывают на расположение SSL-сертификатов, используемых инсталляцией для работы:
-
USE_SMART_FILTERS - отвечает за использование "умных фильтров" в Celery. Эти фильтры позволяют более гибко управлять порядком выполнения задач. Доступны значения
TrueилиFalse, значение по умолчанию:True; -
В случае необходимости использования прокси для предоставления доступа инсталляции в интернет или к системе контроля версий, раскомментируйте и заполните необходимые переменные, указав URL-адрес прокси с протоколом, а также имя пользователя и пароль (при необходимости), например:
- HTTP_PROXY
- HTTPS_PROXY
- NO_PROXY
HUEY¶
HUEY - сервис, отвечающий за очереди и задачи. Количество воркеров рекомендуется изменять, только после консультации со специалистами технической поддержки.
- HUEY_REDIS_URL - адрес для подключения к серверу Redis, используемому Huey. Значение по умолчанию:
redis://redis:6379/0; - HUEY_WORKERS - количество воркеров HUEY, разбирающих очереди
tasks-main. Значение по умолчанию:8; - HUEY_HIGH_PRIORITY_WORKERS - количество воркеров HUEY для высокоприоритетных задач. Значение по умолчанию:
8; - HUEY_OSA_PACKAGE_SCAN_WORKERS - количество воркеров HUEY для модуля сканирования пакетов OSA. Значение по умолчанию:
4; - HUEY_OSA_CONTAINER_IMAGE_SCAN_WORKERS - количество воркеров HUEY для модуля сканирования контейнеров OSA. Значение по умолчанию:
4; - HUEY_POLICY_WORKERS - количество воркеров HUEY для работы политик безопасности. Значение по умолчанию:
4; - HUEY_TQI_WORKERS - количество воркеров HUEY для модуля TQI. Значение по умолчанию:
4; - HUEY_SECRETS_WORKERS - количество воркеров HUEY для модуля поиска секретов. Значение по умолчанию:
4; - HUEY_MEDIA_WORKERS - количество воркеров Huey, отвечающих за загрузку медиа. Значение по умолчанию:
4; - HUEY_SCA_EXTERNAL_SCAN_WORKERS - количество воркеров отвечающих за очередь анализа, запущенного через агент Джонни
(tasks-sca-external-scan). Значение по умолчанию:4; - HUEY_WEBHOOKS_WORKERS - стандартное количество воркеров HUEY, отвечающих за работу вебхуков. Значение по умолчанию:
2; - HUEY_WORKER_MAX_TASKS - максимальное количество задач, которое может обработать один воркер HUEY. Значение по умолчанию:
500.
Redis¶
Redis - хранилище данных, предназначенное для кэширования и управления данными в реальном времени. Переменные, определяющие параметры конфигурации для взаимодействия с сервером Redis:
- REDIS_BACKOFF_CAP - максимальное количество повторных попыток соединения при возникновении ошибок. Если после этого количества попыток соединение не установлено, будет возвращена ошибка. Значение по умолчанию:
5; - REDIS_BACKOFF_BASE - базовое время задержки (в секундах) между повторными попытками при возникновении ошибок. Значение по умолчанию:
0.08; - REDIS_RETRIES - общее количество попыток подключения к серверу
Redis. Значение по умолчанию:5; - REDIS_SOCKET_CONNECT_TIMEOUT - время ожидания (в секундах) при выполнении операций с сервером Redis. Если операция не завершится в течение этого времени, будет выдана ошибка. Значение по умолчанию:
5.0; - REDIS_SOCKET_TIMEOUT - время ожидания (в секундах) при выполнении операций с сервером Redis. Если соединение не установлено в течение этого времени, будет осуществлена повторная попытка или выдана ошибка. Значение по умолчанию:
5.0; - REDIS_SOCKET_KEEPALIVE - включает механизм поддержки активного соединения с сервером Redis, чтобы избежать его разрыва из-за бездействия. Доступны значения
TrueилиFalse, значение по умолчанию:True; - TASK_RESULT_EXPIRATION_PERIOD - указывает, как долго (в секундах) результаты выполнения задач будут храниться в
Redis. После истечения этого времени они будут удалены. Значение по умолчанию:14400.
Celery¶
Celery - сервис, отвечающий за управления асинхронными задачами, который позволяет разгрузить основные процессы приложения и повысить его отзывчивость. Переменные, отвечающие за настройку воркеров Celery:
- CELERY_WORKER_CONCURRENCY - количество задач, которые может обрабатывать один воркер Celery одновременно, значение по умолчанию:
6; - CELERY_WORKER_MAX_CONCURRENCY - максимальное количество задач, которые может обрабатывать один воркер Celery. Этот параметр используется для предотвращения перегрузки системы при большом количестве задач, значение по умолчанию:
12; - CELERY_MEDIA_WORKER_CONCURRENCY - количество задач, которые может обрабатывать воркер Celery, отвечающий за обработку медиа-задач (например, генерация отчётов), значение по умолчанию:
2; - CELERY_MEDIA_WORKER_MAX_CONCURRENCY - максимальное количество задач, которые может обрабатывать воркер Celery, отвечающий за обработку медиа-задач. Этот параметр используется для предотвращения перегрузки системы при большом количестве задач, значение по умолчанию:
4;
Архивирование данных CodeScoring OSA¶
Следующие переменные отвечают за настройку архивирования данных сервиса системы CodeScoring - OSA. По умолчанию переменные OSA_ARCHIVE_THRESHOLD_DAYS, OSA_ARCHIVE_AUTO_CLEANUP_ENABLED, OSA_ARCHIVE_RETENTION_PERIOD_DAYS, OSA_ARCHIVE_CHUNK_SIZE закомментированы, при необходимости их использования, необходимо их расскомментировать.
- OSA_ARCHIVE_THRESHOLD_DAYS - период (в днях), после которого пакет или контейнерный образ, не получивший запросов, архивируется. Значение по умолчанию:
14; - OSA_ARCHIVE_RETENTION_PERIOD_DAYS - период (в днях) указывающий, сколько дней архивные пакеты или контейнерные образы будут храниться перед тем, как быть удаленными, при включенной автоматической очистке
OSA_ARCHIVE_AUTO_CLEANUP_ENABLED. Значение по умолчанию:30; - OSA_ARCHIVE_AUTO_CLEANUP_ENABLED - включение или отключение автоматической очистки архивных компонентов OSA. Если выставлено значение
True, то система будет автоматически удалять архивные пакеты после периода, указанного вOSA_ARCHIVE_RETENTION_PERIOD_DAYS, еслиFalse- очистка выполняется вручную, значение по умолчанию:False; - OSA_ARCHIVE_CHUNK_SIZE - определяет размер "порций" (чанков) для обработки архивных компонентов. Этот параметр может влиять на производительность и эффективность процесса архивирования/очистки. Значение по умолчанию:
1000.
Judge¶
Следующие переменные отвечают за настройку компонента Judge, отвечающего за работу политик в рамках работы сервиса OSA Proxy. Их необходимо настраивать только в случае использования OSA Proxy:
- WEB_CONCURRENCY - определяет количество воркеров для параллельной проверки компонентов или контейнеров на соответствие политикам безопасности. Значение по умолчанию:
5; - MIN_DATABASE_CONNECTION_POOL_SIZE - определяет минимальный пул активных соединений к базе данных. По умолчанию: переменная закомментирована и имеет значение
0; - MAX_DATABASE_CONNECTION_POOL_SIZE - определяет максимальный пул активных соединений к базе данных. По умолчанию: переменная закомментирована и имеет значение
10.