Детальная информация

Название: Создание цепочки непрерывной интеграции и доставки CI/CD на примере Spring Boot веб–приложения: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_03 «Разработка программного обеспечения»
Авторы: Топорский Елисей Кириллович
Научный руководитель: Петров Александр Владимирович
Другие авторы: Локшина Екатерина Геннадиевна; Смирнов Николай Георгиевич
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Выходные сведения: Санкт-Петербург, 2020
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: непрерывная интеграция и доставка; CI/CD; веб-приложение; клиент-серверная архитектура; Spring; React; GitLab; AWS; continuous integration and delivery; web-application; client-server architecture
Тип документа: Выпускная квалификационная работа бакалавра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Бакалавриат
Код специальности ФГОС: 09.03.04
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
Ссылки: Отзыв руководителя; Отчет о проверке на объем и корректность внешних заимствований
DOI: 10.18720/SPBPU/3/2020/vr/vr20-3412
Права доступа: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Ключ записи: ru\spstu\vkr\7760

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

В данной работе описывается процесс создания веб-приложения и построения цепочки непрерывной интеграции для автоматизации дальнейшей разработки приложения. Задачи, решенные в ходе работы 1. Создание веб-приложения, отвечающего современным стандартам разработки. 2. Создание и конфигурация цепочки непрерывной интеграции и доставки CI/CD с помощью инструмента GitLab. 3. Усовершенствование приложения с использованием созданной цепочки CI/CD для демонстрации работоспособности метода. Разработанное приложение использует клиент-серверную архитектуру, где серверная часть является программным интерфейсом (API) созданным с помощью фреймворка Java Spring, а клиентская часть – веб-приложением, написанным на React JS. Для хранения данных создана база данных PostgreSQL. В результате работы для созданного приложения построена цепочка непрерывной интеграции и доставки CI/CD, в которой были автоматизированы этапы сборки приложения в исполняемую jar-библиотеку, упаковки приложения и используемой базы данных в docker-контейнеры, прохождения написанных для приложения интеграционных и юнит-тестов, а также развертки приложения в облачном хостинг-сервисе AWS. Для проверки работоспособности и эффективности построенной цепочки CI/CD приложение было дополнено системой аутентификации пользователей. Благодаря использованию данной цепочки удалось значительно сэкономить время и усилия разработчика путем автоматизации всех этапов жизненного цикла разработки после публикации изменений исходного кода приложения в удаленном репозитории.

This work is describing a process of web-application cre-ating and building a continuous integration pipeline for future development. Goals achieved in the course of work: 1. Creating a web application that meets modern devel-opment standards. 2. Creating and configuring a continuous integration and delivery pipeline using GitLab. 3. Improving application utilizing created CI/CD pipe-line to demonstrate efficiency of the method. The application is using client-server architecture where server part is an application programming interface (API) created with Java Spring framework, and client part is a web-application written in React JS. A PostgreSQL database was created for data persistence. The study resulted into building a continuous integration pipeline that automates the certain steps of building a jar-executable library, packaging an application and database into docker-containers, running integration and unit-tests written for this application and delivery to AWS cloud-hosting service. To test the performance of created CI/CD pipeline the application was supplemented by a user authentication system. Due to utilizing this pipeline, it was possible to significantly save the time and efforts of the developer by automating all stages of the devel-opment life cycle starting from publishing changes to the application source code to a remote repository.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать Печать Загрузить
Интернет Авторизованные пользователи СПбПУ Прочитать Печать Загрузить
-> Интернет Анонимные пользователи

Статистика использования

stat Количество обращений: 41
За последние 30 дней: 5
Подробная статистика