- Необходимо зарегистрироваться
- Создайте свой новый проект
- Создайте новый репозиторий в gitlab, наполните его файлами
- Проект должен быть публичным, остальные настройки по желанию
В репозитории содержится код проекта на python. Проект - RESTful API сервис. Ваша задача автоматизировать сборку образа с выполнением python-скрипта:
- Образ собирается на основе centos:7
- Python версии не ниже 3.7
- Установлены зависимости:
flask
flask-jsonpify
flask-restful
- Создана директория
/python_api
- Скрипт из репозитория размещён в /python_api
- Точка вызова: запуск скрипта
- Если сборка происходит на ветке
master
: Образ должен пушится в docker registry вашего gitlabpython-api:latest
, иначе этот шаг нужно пропустить
Вашему проекту нужна бизнесовая доработка: необходимо поменять JSON ответа на вызов метода GET /rest/api/get_info
, необходимо создать Issue в котором указать:
- Какой метод необходимо исправить
- Текст с
{ "message": "Already started" }
на{ "message": "Running"}
- Issue поставить label: feature
Вам пришел новый Issue на доработку, вам необходимо:
- Создать отдельную ветку, связанную с этим issue
- Внести изменения по тексту из задания
- Подготовить Merge Requst, влить необходимые изменения в
master
, проверить, что сборка прошла успешно
Разработчики выполнили новый Issue, необходимо проверить валидность изменений:
- Поднять докер-контейнер с образом
python-api:latest
и проверить возврат метода на корректность - Закрыть Issue с комментарием об успешности прохождения, указав желаемый результат и фактически достигнутый
После успешного прохождения всех ролей - отправьте ссылку на ваш проект в гитлаб, как решение домашнего задания
Автомазируйте работу тестировщика, пусть у вас будет отдельный конвейер, который автоматически поднимает контейнер и выполняет проверку, например, при помощи curl. На основе вывода - будет приниматься решение об успешности прохождения тестирования
Выполненное домашнее задание пришлите ссылкой на .md-файл в вашем репозитории.