Kronicle Service

Component Name

Kronicle Service

Component Type

microservice

Platform

aws-ecs-fargate

Key Software

Vue 2.6.14 Nuxt 2.15.8

Description

The microservice that powers Kronicle. All the data collection (scanning) and processing is performed in this microservice, with kronicle-app then responsible for placing a web UI on top of that

Notes

Table of Contents

The microservice is built with Java and Spring Boot

Links

Responsibilities

  • Uses Repo Finders to discover Git repos that belong to an organisation. Also detects the presense of kronicle.yaml metadata files in any of the Git repos that are found. Currently there are Repo Finders for GitHub and Bitbucket Server. Bitbucket Server is the self-hosted version of Bitbucket and not the cloud version. This happens once every 15 minutes.

  • Loads the metadata from any Git repos that contain a kronicle.yaml file. This happens once every 15 minutes.

  • Executes Scanners that use the metadata from kronicle.yaml files to fetch additional data from sources like the Git repos themselves (finding dependencies in Gradle projects, counting lines of code, finding the names of frequent code committers), Zipkin, SonarQube etc. The data found by the Scanners is combined with the metadata from the kronicle.yaml files.
    This happens once every 15 minutes.

  • Executes Tests against the data found from kronicle.yaml files and Scanners. Knonicle includes built-in tests for things like minimum 80% code coverage (using coverage data from SonarQube). This happens once every 15 minutes.

  • Provides an web API for querying all the data held by the Kronicle Service. The Kronicle App is powered by the Kronicle Service's API.

Kronicle App v0.1.260