testclient-admin 10916dc33e
security/scan 0 findings, 0 blocking
security / scan (pull_request) Successful in 51s
security/review 0 findings, 0 blocking
security / review (pull_request) Successful in 1m23s
security / deep-audit (pull_request) Skipped
security-analysis/policy.yml: low блокирует merge
2026-09-01 05:17:45 +00:00
2026-08-23 14:57:38 +00:00

Модуль учёта заказов клиентов

Простой HTTP-сервис для управления заказами клиентов.

Структура

  • orders.py — основной модуль сервера
  • requirements.txt — зависимости проекта

Функционал

Хранение заказов

Заказы хранятся в памяти в словаре orders. Каждый заказ имеет:

  • id — уникальный идентификатор
  • user_id — владелец заказа
  • amount — сумма заказа

Эндпоинты

GET /orders/{id}

Получение заказа по ID. Требует авторизации через заголовок Authorization: Bearer <token>.

Пример:

curl -H "Authorization: Bearer <your-token>" http://localhost:8000/orders/1

POST /orders/{id}

Изменение суммы заказа. Принимает JSON с полем amount в теле запроса.

Пример:

curl -X POST -H "Authorization: Bearer <your-token>" \
  -H "Content-Type: application/json" \
  -d '{"amount": 500}' \
  http://localhost:8000/orders/1

GET /admin/backup

Проверка готовности эндпоинта бэкапа.

POST /admin/backup

Инициация бэкапа данных на удалённый хост. Принимает JSON с полем host в теле запроса.

Пример:

curl -X POST -H "Authorization: Bearer <your-token>" \
  -H "Content-Type: application/json" \
  -d '{"host": "backup.example.com"}' \
  http://localhost:8000/admin/backup

Бэкап выполняется асинхронно через rsync. Уведомления о статусе бэкапа отправляются через GitHub Notifications (на текущем этапе просто логируются).

Запуск

pip install -r requirements.txt
python orders.py

Сервер запустится на localhost:8000.

S
Description
Тестовый проект testclient
Readme
234 KiB
Languages
Python 100%