Детальная информация
Название | Создание цепочки непрерывной интеграции и доставки 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 |
Тип документа | Выпускная квалификационная работа бакалавра |
Тип файла | |
Язык | Русский |
Уровень высшего образования | Бакалавриат |
Код специальности ФГОС | 09.03.04 |
Группа специальностей ФГОС | 090000 - Информатика и вычислительная техника |
Ссылки | Отзыв руководителя ; Отчет о проверке на объем и корректность внешних заимствований |
DOI | 10.18720/SPBPU/3/2020/vr/vr20-3412 |
Права доступа | Доступ по паролю из сети Интернет (чтение, печать, копирование) |
Ключ записи | ru\spstu\vkr\7760 |
Дата создания записи | 23.07.2020 |
Разрешенные действия
–
Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети
Группа | Анонимные пользователи |
---|---|
Сеть | Интернет |
В данной работе описывается процесс создания веб-приложения и построения цепочки непрерывной интеграции для автоматизации дальнейшей разработки приложения. Задачи, решенные в ходе работы 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.
Место доступа | Группа пользователей | Действие |
---|---|---|
Локальная сеть ИБК СПбПУ | Все |
|
Интернет | Авторизованные пользователи СПбПУ |
|
Интернет | Анонимные пользователи |
|
Количество обращений: 45
За последние 30 дней: 0