diff --git a/README.md b/README.md deleted file mode 100644 index 41bbd205..00000000 --- a/README.md +++ /dev/null @@ -1,91 +0,0 @@ -# Лабораторные работы за осенний семестр 2020 - -В `master` ветке данного репозитория присутствуют актуальные задания, включая -распределение протоколов по студентам. - -# Прогресс - -Легенда: - -| Символ | Значение | -| -- | -- | -| | Работа не сдана или находится на рассмотрении | -| + | Работа принята | -| ! | Работа рассмотрена, требуется демо | -| ? | Работа рассмотрена, но требует доработки | -| - | Работу сдавать не требуется | -| -------- | -------- | -| SSH ключ | [Отправить SSH ключ преподавателю](https://insysnw.github.io/labs/900-ssh-keygen/) | -| Л.1a | [TCP чат](https://insysnw.github.io/labs/01-tcp-chat/) | -| Л.1б | [TCP чат](https://insysnw.github.io/labs/01-tcp-chat/) (неблокирующие сокеты) | -| Л.2c | [UDP сервер существующего протокола](https://insysnw.github.io/labs/02-udp-real-protocol/) | -| Л.2к | [UDP клиент существующего протокола](https://insysnw.github.io/labs/02-udp-real-protocol/) | -| Л.3 | Задание из методички | - -## Группа 201 - -| ФИО | SSH ключ | Л.1a | Л.1б | Л.2c | Л.2к | Л.3 | -| -- | -- | -- | -- | -- | -- | -- | -| Антропова А.А. | + | | | | | | -| Белов Е.А. | + | | | tftp | dhcp | | -| Буй К.Д. | + | | | tftp | dns | | -| Гладкова Е.Д. | + | | | | | | -| Голзицкий Н.С. | + | | | | | | -| Гуляев Д.В. | | | | | | | -| Данилов А.И. | + | | | dhcp | ntp | | -| Казанджи М.А. | + | | | ntp | snmp | | -| Киселев Н.Д. | + | | | dns | tftp | | -| Лялин А.С. | + | | | | | | -| Натура А.А. | + | | | snmp | dns | | -| Никитин И.Н. | + | | | | | | -| Романов А.Л. | + | | | dns | dhcp | | -| Свечников Р.А. | + | | | dhcp | dns | | -| Сибагатулин А.Ф. | | | | | | | -| Товпеко К.А. | + | [?](https://github.com/insysnw/2020h2/pull/2) | [?](https://github.com/insysnw/2020h2/pull/2) | dns | ntp | | -| Черноног С.А. | + | | | | | | -| Шаляпин Г.А. | + | | | | | | - -## Группа 203 - -| ФИО | Ssh ключ | Л.1a | Л.1б | Л.2с | Л.2к | Л.3 | -| -- | -- | -- | -- | -- | -- | -- | -| Ворошилов А.А. | + | | | | | | -| Гусев Н.С. | | | | | | | -| Зарецкая Е.С. | | | | | | | -| Иванов И.Д. | + | | | | | | -| Калашников Р.А. | | | | dns | snmp | | -| Костарев В.И. | + | | | dhcp | snmp | | -| Любченкова А.А. | + | | | tftp | dns | | -| Меньшов П.А. | + | | | dns | tftp | | -| Морозов Е.С. | + | | | dns | dhcp | | -| Никитина Д.С. | + | | | | | | -| Овсянников Е.А. | + | | | | | | -| Орлова П.А. | + | | | tftp | dns | | -| Пентегов А.О. | + | | | | | | -| Семёнов Д.С. | + | | | dhcp | dns | | -| Середин К.В. | + | | | dhcp | ntp | | -| Трушин И.А. | + | | | tftp | dhcp | | -| Черникова А.С. | + | | | tftp | ntp | | -| Шелепов В.А. | + | | | dhcp | tftp | | - -# Требования к отчету: - -* Инструкция по использованию; -* Инструкция по сборке/установке; -* Описание используемого протокола; - * Своего для первой и третьей лабораторной; - * Используемого подмножества для второй; -* ??? -* PROFIT - -Отчет можно писать как в сообщении к PR-у, так и присылать в иных -форматах (`.pdf`, `.docx`, `.txt` и т.п.). - -# Порядок сдачи - -* Fork от данного репозитория -* Push каждой лабораторной в отдельную ветку -* Создание отдельного PR на каждую лабораторную -* Ставите label по сдаваемой лабе (`First lab`, `Second lab`, `Third lab`) - -При создании PR, в качестве напоминалки, сделан шаблон. diff --git a/openapi.yml b/openapi.yml new file mode 100644 index 00000000..ef4c120c --- /dev/null +++ b/openapi.yml @@ -0,0 +1,277 @@ +openapi: 3.0.0 +info: + title: Bug Tracker + version: 1.0.0 + description: "Realisation of bug tracking system server protocol" +tags: + - name: Authentication + - name: Developers + - name: Testers + +paths: + /auth/register: + post: + summary: Register new user in the system + description: Choose nickname and role to use system. + tags: + - Authentication + parameters: + - in: query + name: user_id + required: true + schema: + type: integer + - in: query + name: role + required: true + schema: + type: string + enum: [dev, test] + responses: + '200': + description: Successfull registration + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: "Registration is done" + '401': + description: Nickname is already in use + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: "This user_id is already exist with this role" + /auth/login: + post: + summary: Log in with an existing account + tags: + - Authentication + description: Log in using your nickname. + parameters: + - in: query + name: user_id + required: true + schema: + type: integer + responses: + '200': + description: Successfull + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: "Successfull log in" + '404': + description: User is not found + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "User is not found" + /dev/bugs: + get: + summary: Get list of bugs assigned to the developer + tags: + - Developers + responses: + '200': + description: Successfull + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Bug' + example: + bug_id: 1 + dev_id: 2 + project_id: 1 + text: Button is not active + '400': + description: Error + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "Something went wrong" + + /dev/fix: + post: + summary: Fix the bug + tags: + - Developers + parameters: + - in: query + name: bug_id + required: true + schema: + type: integer + responses: + '200': + description: Successfull + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "Bug is fixed" + '404': + description: Bug is not found + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "Bug with this id is not found" + '409': + description: Conflict + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "This bug has already been fixed" + + /test/add: + post: + summary: Add new bug + tags: + - Testers + parameters: + - in: query + name: bug + schema: + $ref: '#/components/schemas/Bug' + responses: + '200': + description: Successfull + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "Bug was added to the system" + '404': + description: Project / developer is not found + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "This project doesn't exist" + + /test/bugs: + get: + summary: Get list of open bugs + tags: + - Testers + responses: + '200': + description: Successfull + content: + application/json: + schema: + type: array + items: + $ref: '#/components/schemas/Bug' + example: + bug_id: 1 + dev_id: 2 + project_id: 1 + text: Button is not active + '400': + description: Error + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: + "Something went wrong" + + /test/verify: + post: + summary: Check the bug fix from developer + tags: + - Testers + parameters: + - in: query + name: bug_id + required: true + schema: + type: integer + - in: query + name: resolution + required: true + schema: + type: string + enum: [reopen, close] + responses: + '200': + description: Successfull + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: Bug is confirmed + '404': + description: Bug is not found + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: Bug is not found + '409': + description: Conflict + content: + application/json: + schema: + $ref: '#/components/schemas/Response' + example: + message: Bug has already been confirmed + + +components: + schemas: + Bug: + type: object + required: + - bug_id + - dev_id + - project_id + - text + properties: + bug_id: + type: integer + format: uuid + dev_id: + type: integer + format: uuid + project_id: + type: integer + format: uuid + text: + type: string + + Response: + type: object + required: + - message + properties: + message: + type: string \ No newline at end of file