Skip to content

s21toolkit/s21auto-adapter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

s21auto-dapter 🐺☝️

Адаптер/прокси для внутреннего GQL API платформы edu.21-school.ru, предоставляет спецификацию Swagger 2. Предназначен для использования с s21auto для генерации запросов (internal/controller) из HAR логов платформы.

На данный момент адаптер не имеет механизма авторизации и выполняет все действия от имени одного пользователя, данные для входа которого необходимо передать в переменных окружения.

Пример настройки окружения:

[email protected]
S21_PASSWORD=example

Important

Готовые версии автоадаптера (со сгенерированным internal/controller) не публикуются на гитхабе. Если вам нужен простой доступ к платформе, используйте s21introspector вместе с любым GQL клиентом. Если же нужен именно автоадаптер, его нужно склонить и собрать самостоятельно по инструкции ниже.

Готовая спецификация

Для каждой версии адаптера публикуется релиз с готовой спецификацией Swagger 2, см. Releases.

Сборка и запуск вручную

Сборка:

make # Сборка адаптера
make spec # Сборка генератора спецификации

Запуск адаптера:

./s21adapter

Генерация спецификации:

./s21adapter_spec > swagger.json

Генерация методов

Методы адаптера генерируются на основе логов запросов платформы либо списка методов, поддерживаемых клиентом.

Пример генерации из логов с помощью s21auto:

s21auto adapter generate --har log.har -o s21adapter/internal/controller

Если какие-то методы не нужны, из папки internal/controller можно убрать всё кроме controller.go