Skip to content
Snippets Groups Projects

Application Repository

This repository contains the application that should be used as deployable workload for the exercise implementation.

Now as part of my semester assignment

As stated above, this app is the deployable workload. We think of the app repository as the monorepo for the client and the server developement. In here we have pipelines which will trigger the test and build and furthermore the deployment of the app (split into server and client).

The developement will take action in a development branch. In there features have subbranches and will finally be summarized into a version which will then be published to the main (master) branch.

Only commits to the master branch will trigger the deployment of the application code into the CI container registry of the group-repo.

Getting started

For more information regarding the app, please take a look into its README.

Prerequisites

The following software must be installed and available in your ${PATH}:

NOTE: required versions

Test the app locally

For the server to work properly, you have to start a mongodb-service before starting the server. Environment variables have to be set to connect the server with the mongodb as well. For example:

  export MONGODB_URL="mongodb://mongodb:27017/test"
  export PORT="3002"
  export JWT_SECRET="test"

To test the server:

  cd app/server
  npm install
  npm run test

To test the front-end facing client:

  cd app/client
  npm install
  npm run test

Further usage of this repository

This repo has the aim to build two docker images, which will be released to the private gitlab container registry. From there on the images will be used to deploy the client and server via helm charts into a kubernetes cluster. The Images released are generic and can be used in any environment with a container runtime.