vault backup: 2025-02-28 17:28:58

This commit is contained in:
sShemet
2025-02-28 17:28:58 +05:00
parent 14f585b564
commit 77861691a8
2 changed files with 12 additions and 9 deletions

View File

@@ -16,7 +16,7 @@
"file": "WORK & PROJECTS/Mol/Серверы/Alfa cloud prod.canvas",
"viewState": {
"x": 794.6456763483321,
"y": 988.1972663129274,
"y": 61.24823388147274,
"zoom": -0.6007077133120587
}
},

View File

@@ -1,14 +1,13 @@
#### Общая информация
Alfa Cloud — серверный API, который предоставляет доступ к управлению контейнерами и конфигурацией облаков Alfa с поддержкой нескольких облачных серверов.
Данный документ нужен для разработки полноценного фронтенда управления контейнерами.
Все запросы должны производиться только из админки Mol с авторизацией Basic Auth (обычный логин и пароль). Учётные можно менять регулярно, для этого существует специальный запрос. Учётные данные НЕ синхронизированы с основными учётными данными MOL (и для безопасности и отсутствия необходимости синхронизации всех юзеров. Нужен только главный админ).
Все запросы должны производиться только из админки Mol с авторизацией Basic Auth (обычный логин и пароль). Учётные данные можно менять регулярно, для этого существует специальный запрос. Учётные данные НЕ синхронизированы с основными учётными данными MOL (и для безопасности и отсутствия необходимости синхронизации всех юзеров. Нужен только главный админ).
В данном API в тестовом режиме будет использоваться спецификация JSON:API для унификации серверных ответов
В данном API в тестовом режиме будет использоваться спецификация JSON:API для унификации серверных ответов.
#### Точки подключения:
GET:
@@ -16,12 +15,15 @@ GET:
/servers — получить список активных серверов (для разворачивания новых клиентов)
/servers/{id} — получить подробную информацию о сервере
(TODO: с параметрами мониторинга и нагрузкой в реальном времени)
/clients — получить список контейнеров клиентов со всеми подробностями (поддерживается пагинация). С флагом доступностью контейнера.
/clients — получить список контейнеров клиентов со всеми подробностями (поддерживается пагинация). С флагом доступностью контейнера. На фронте можно сделать прямой переход на облако клиента.
/clients/{id}/demo_enable - применение таблиц демо-данных
/clients/{id}/demo_disable - удаление демо-данных
/clients/{id}/send_success - отправить письмо клиенту с успешной регистрацией облака с логином и паролем
/clients/{id}/send_expire - отправить письмо клиенту о скором истечении использования (можно/нужно автоматизировать)
/clients/{id}/expire_dates_history - история изменения продлений дат пользователя
/clients/{id}/reboot - попытка перезапуска контейнера пользователя
/servers/reboot_server - перезапуск сервера
```
POST:
@@ -29,13 +31,14 @@ POST:
/servers/create — создать сервер в БД
/clients/create — создать клиента (полный серверный цикл создания облака)
/clients/owner_password — задать новый пароль администратора лаборатории
\ TODO: перенос данных клиента с одного сервера на другой
TODO: перенос данных клиента с одного сервера на другой
TODO: /cloud_admin_password - задать пароль для подключения к API
```
UPDATE:
PUT | PATCH:
```
/servers/{id}/edit — изменить информацию о сервере
/clients/{id}/edit — редактировать данные клиента (кроме пароля администратора лабы)
/servers/{id} — изменить информацию о сервере
/clients/{id} — редактировать данные клиента (кроме пароля администратора лабы)
/clients/{id}/expire_date - обновление крайней даты использования
```