Skip to content

abdddev/blank-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

stages

В пайплайне используются следующие стадии:

  • security
  • test
  • deploy

jobs

Стадия security:

  • pylint — анализ кода Python
  • trivy — поиск уязвимостей в Docker-образах и зависимостях
  • flake8 — проверка стиля кода (PEP8)
  • black — проверка форматирования кода
  • isort — проверка порядка импортов
  • bandit — поиск проблем безопасности в коде
  • mypy — проверка типов

Стадия test:

  • test_backend — запуск тестов приложения

Стадия deploy:

  • deploy_backend — развёртывание приложения на сервер через SSH

Инструменты анализа

В пайплайне используются следующие инструменты:

  • Pylint
  • Trivy
  • Flake8
  • Black
  • isort
  • Bandit
  • mypy

allow_failure: true?

Параметр allow_failure: true позволяет задаче завершиться с ошибкой без остановки всего пайплайна.
Это означает, что даже если в процессе анализа будут найдены ошибки, выполнение пайплайна продолжится.

Используется для задач анализа безопасности и качества кода, чтобы сначала получить отчёты, а затем исправить ошибки.


Как сохраняются артефакты?

Артефакты сохраняются с помощью блока artifacts.

Основные параметры:

  • when: always — сохранять артефакты всегда, даже при ошибке
  • paths — список файлов или директорий для сохранения
  • expire_in — срок хранения (например, 7 days)

Примеры артефактов:

  • pylint_report/ — отчёт pylint
  • trivy/*.csv — отчёты trivy
  • flake8_report/ — отчёт flake8
  • black_diff.txt — результат проверки black
  • isort_report.html — отчёт isort
  • bandit_report.csv — отчёт bandit
  • mypy_report/ — отчёт mypy
  • report.xml — отчёт тестов (JUnit)

Уязвимости requirements.txt:

  • Django 3.1.12 — CVE-2025-64459, уровень CRITICAL, обнаружена SQL Injection, исправлено в версиях 4.2.24 / 5.1.12 / 5.2.6
  • Django 3.1.12 — CVE-2025-57833, уровень HIGH, обнаружена SQL Injection in FilteredRelation, исправлено в 4.2.23 / 5.1.11 / 5.2.5
  • gunicorn 20.1.0 — CVE-2024-1135, уровень HIGH, обнаружена уязвимость HTTP Request Smuggling, исправлено в 22.0.0
  • PyJWT 2.1.0 — CVE-2026-32597, уровень HIGH, библиотека принимает неизвестные crit extensions в заголовке JWT, исправлено в 2.10.1

flake8:

flake8

bandit:

Файл Строка Severity Confidence Описание
backend/conftest.py 33 LOW HIGH Использование assert (B101), что не рекомендуется в production-коде
backend/core/settings.py 14 LOW MEDIUM Возможное захардкоженное значение пароля (B105)
backend/core/settings.py 200 LOW MEDIUM Возможное захардкоженное значение пароля (B105)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors