Momo Store aka Пельменная №2

Репозиторий предназначен для хранения кода приложения Momo Store.

Исходный код инфраструктуры и инструкция по развертыванию приложения лежит здесь

Внешний вид стартого экрана приложения: image

Структура репозитория

├── backend - код бекенда пельменной
│   ├── .gitlab-ci.yml - CI/CD манифест для бекенда
│   ├── Dockerfile - докерфайл для бекенда
├── frontend - код фронтенда пельменной
│   ├── .gitlab-ci.yml - CI/CD манифест для фронтенда
│   ├── Dockerfile - докерфайл для фронтенда
├── .gitlab-ci.yml - CI/CD манифест для приложения
├── docker-compose.local.yml - docker compose для локального запуска и тестирования

Инструкция пользователя

Frontend

Запуск приложения локально

cd frontend
npm install
VUE_APP_API_URL=http://localhost:8081 VUE_APP_VERSION=0.0.1 npm run serve

При конвейерной сборки образ контейнера загружается в Gitlab Container Registry репозитория.

Артефакт после сборки в виде архива загружается в nexus

Также в код frontend добавлена поддержка вывод версионирования (в интерфейсе отображается Пельменная №$VERSION). Исправлены замечания от sonarqube.

Backend

Запуск приложения локально

cd backend
go run ./cmd/api
go test -v ./...

При конвейерной сборки образ контейнера загружается в Gitlab Container Registry репозитория.

Артефакт после сборки в виде архива загружается в nexus

Docker compose

Запуск docker compose через

docker-compose --file docker-compose.local.yml up --build

О правилах внесения изменений

Для внесения изменений необходимо создать новую ветку от main, залить изменения и сделать merge request. После получения апрува можно смерджить ветки.

О релизном цикле приложения и правилах версионирования

Версионирование ведется по semver. Версия чартов изменяется каждый раз, когда запускается pipeline. Мажорная версия изменяется вручную.