Skip to content
This repository has been archived by the owner on Apr 30, 2021. It is now read-only.

spydx/dat251gr9

Repository files navigation

DAT251 Group 9 V2021

Branch Status
main Release Backend Test Release Frontend Test Release Docker CI/CD to GitHub Container
backend Backend CI
frontend Frontend CI

Group project for DAT251 Group 9 Spring 2021

Members Contact (github)
Andrè @ImGoze
Erlend @ErlendBerntsen
Hans-Christian @H-C-H
Kenneth @spydx
Oscar @OscarSommervold
Rune @runalmaas

Links

Time schedule

Time Monday Tuesday Wednesday Thursday Friday
1000 DAT251 Workday DAT251
1200 Sprint/Daily planning Workday Workday
1400 Workday
1600 Daily Meeting Status Meeting
Daily meeting 16:30

Project Details

Tool / Languages

  • Frontend : React with TypeScript
  • Backend: Spring Boot, Maven, Java 15, REST API, Swagger
  • DB: MariaDB and H2 Database for testing
  • Containers: Docker
  • CI/CD: GitHub with GitHub Actions
  • Hosting: Google Cloud with Kubernetes

Architecture diagram

Metrics

Misc

Instructions for development on Frontend

  1. Create an Access Token on your account Personal access token Remember to add: read:packages and all repo actions.
  2. Configure Docker to use docker.pkg.github.com
> cat ~/TOKEN.txt | docker login https://docker.pkg.github.com -u GITUSERNAME --password-stdin
Login Succeeded
> rm ~/TOKEN.txt

To start development environment

> docker-compose pull && docker-compose up

Documentation

Instructions for development on Backend

No need to create a personal token. But if you are to also do Frontend, then you have to do it.

Bring up the database:

> docker-compose up -d lop-db

Integration Testing

Integration testing is done with Cypress Examples of how to write tests are in this integtraion_examples folder

The tests are done automatically with the Integration Workflow

The automatic operations are the following, can also be run automatic.

$ docker-compose -f docker-compose.test.yml build 
$ docker-compose -f docker-compose.test.yml up --exit-code-from cypress

If this exits with any other code that 0, the integration test(s) are failing. When done manually, there is a videos/screenshots created in the folder

Manually you can do the same integration tests, this is useful when writing tests.

/ $ docker-compose up -d
/ $ yarn --cwd lop-frontend start
/ $ cd e2e/
/e2e/ $ yarn install # <- this has to be done the fist time
/e2e/ $ export "CYPRESS_baseUrl=http://localhost:3000/"
/e2e/ $ ./nodes_modules/.bin/cypress open

Creating issues list for Sprint log

Done using GitHub Cli

gh issue list -m 1| tr "\t" ";" > doc/issues.csv

Install it with the following on mac/linux

brew install gh

Windows:

choco install gh

Other instuctions for GH

Connect to the database in IntelliJ

On the right hand side in IntelliJ you should se a module called "Database".

From this press the "+"-sign -> Data Source -> MariaDB.

If you on the bottom of the page get a warning-sign saying: "Missing drivers", press on the "Install drivers" button.

Then you just need to fill out the field with following: User: root, and password: password.

We then can test the connection, if its all good press apply and ok and you are good to go!

Check the deployment with Heroku

If you access to the Heroku engine, you can use the following command on the commandline to get the status of the running application.

> heroku logs --tail -a lop-backend

About

Gruppe prosjekt for DAT251 Gruppe 9 V2021

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •