dodo-database-service
This repository contains a list of KPIs and metrics used to calculate the current state of DevOps of a team/organization, based on their GitHub usage.
Science Score: 52.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
✓Institutional organization owner
Organization fraunhofer-iem has institutional domain (www.iem.fraunhofer.de) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.5%) to scientific vocabulary
Keywords
Repository
This repository contains a list of KPIs and metrics used to calculate the current state of DevOps of a team/organization, based on their GitHub usage.
Basic Info
- Host: GitHub
- Owner: fraunhofer-iem
- License: gpl-3.0
- Language: TypeScript
- Default Branch: main
- Homepage: https://fraunhofer-iem.github.io/dodo-web/
- Size: 1.72 MB
Statistics
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 32
- Releases: 33
Topics
Metadata Files
README.md
Overview
This repository is intended as a playground to calculate and verify KPIs and metrics defined in the research project DoDo. The repository contains a description of the calculated KPIs here.
The documentation of the fundamental data model for this KPI system can be accessed here.
Further Repositories
An additional project is used to visualize the calculated data and can be found here.\ To deploy the complete setup using docker and adding traefik for routing between the containers you can use this repository.
Installation
bash
$ npm install
Running the app
Start the database by running docker-compose up -d. Per default a web interface displaying the current state of the database is launched on localhost:8081. The credentials are defined in the docker-compose file.
```bash
development
$ npm run start
watch mode
$ npm run start:dev
production mode
$ npm run start:prod ```
OpenApi
The OpenApi description of this API is reachable on the /api endpoint.
Test
```bash
unit tests
$ npm run test
e2e tests
$ npm run test:e2e
test coverage
$ npm run test:cov ```
Run the statistic tests
bash
$ npm test
If you run the newest Linux Version (21) you might run into problems, because the mongodb binary is not found. In this case manually set the binary download url as an environment variable (MONGOMSDOWNLOADURL=https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-ubuntu2004-5.0.3.tgz).
Configuration
Create local .env.local file in which you store a GitHub access token under the GITHUB_ACCESS_TOKEN key. The GitHub REST API is restricted to 60 requests per hour if you don't use any access token and this will be exceeded by one of the predefined queries. For more details of the limited rates see the GitHub documentation.
Database
Add the URI and user credentials for your database to the .env.local file.
bash
DB_URI=mongodb://localhost:27017/<shouldReflectYourDatabaseDefinedInDockerCompose>
DB_USER=<userName as defined in docker-compose>
DB_USER_PASSWORD=<password as defined in docker-compose>
The user credentials have to match the ones defined in the docker-compose.yml.
In order to get a clean setup you have to remove the docker volume! Use docker volume rm visu-code-db-service_mongodb-data for that.
Windows Only
Make sure the mongo-init.sh is stored with LF line endings!
Owner
- Name: Fraunhofer IEM
- Login: fraunhofer-iem
- Kind: organization
- Location: Paderborn, Germany
- Website: https://www.iem.fraunhofer.de/
- Repositories: 12
- Profile: https://github.com/fraunhofer-iem
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: >-
Doing Optimal DevOps - Evidence-based Guidance to
Your DevOps Journey
message: >-
If you use information from this repository, please
cite it using the metadata from this file.
type: software
authors:
- given-names: Jan-Niclas
family-names: Strüwer
email: jan-niclas.struewer@iem.fraunhofer.de
affiliation: Fraunhofer IEM
orcid: 'https://orcid.org/0000-0002-4876-3483'
- given-names: Benedict
family-names: Wohlers
email: benedict.wohlers@iem.fraunhofer.de
affiliation: Fraunhofer IEM
orcid: 'https://orcid.org/0000-0001-8285-2343'
- given-names: Felix
email: felix.barczewicz@iem.fraunhofer.de
family-names: Barczewicz
affiliation: Fraunhofer IEM
- email: nitin.chamoli@iem.fraunhofer.de
affiliation: FraunhoferIEM
given-names: Nitin
family-names: Chamoli
- given-names: Til
family-names: Schulz
email: til.schulz@iem.fraunhofer.de
affiliation: Fraunhofer IEM
GitHub Events
Total
Last Year
Dependencies
- 769 dependencies
- @nestjs/cli ^8.2.1 development
- @nestjs/schematics ^8.0.7 development
- @nestjs/testing ^8.4.0 development
- @types/express ^4.17.13 development
- @types/jest ^27.4.1 development
- @types/node 17.0.21 development
- @types/supertest ^2.0.11 development
- @typescript-eslint/eslint-plugin ^5.13.0 development
- @typescript-eslint/parser ^5.13.0 development
- eslint ^8.10.0 development
- eslint-config-prettier ^8.4.0 development
- eslint-plugin-prettier ^4.0.0 development
- jest ^27.5.1 development
- mongodb-memory-server ^8.4.0 development
- prettier ^2.5.1 development
- supertest ^6.2.2 development
- ts-jest ^27.1.3 development
- ts-loader ^9.2.7 development
- ts-node ^10.6.0 development
- tsconfig-paths ^3.12.0 development
- typescript ^4.6.2 development
- @nestjs/common ^8.4.0
- @nestjs/config ^1.2.0
- @nestjs/core ^8.4.0
- @nestjs/mongoose ^9.0.2
- @nestjs/platform-express ^8.4.0
- @nestjs/swagger ^5.2.0
- class-transformer ^0.5.1
- class-validator ^0.13.2
- mongoose ^6.2.4
- octokit ^1.7.1
- reflect-metadata ^0.1.13
- rimraf ^3.0.2
- rxjs ^7.5.4
- swagger-ui-express ^4.3.0
- actions/checkout v2 composite
- actions/setup-node v2 composite
- actions/checkout v2 composite
- actions/setup-node v2 composite
- actions/checkout v2 composite
- ncipollo/release-action v1 composite
- actions/checkout v2 composite
- anothrNick/github-tag-action 1.36.0 composite
- actions/checkout v2 composite
- actions/setup-node v2 composite
- actions/checkout v2 composite
- node alpine build
- mongo latest
- mongo-express latest