Skip to content
forked from chaoss/MARS

Metrics Automated Release System

License

Notifications You must be signed in to change notification settings

ritik-malik/MARS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MARS logo

Metrics Automated Release System

GSoC logo

Why M.A.R.S.

CHAOSS metrics have been defined to provide an in-depth view into the various features of an open-source project. The metrics are also a key input to help organizations strategically invest their resources.

M.A.R.S. (Metrics Automated Release System) aim is to automate & improve the metric release process. Keeping in mind the ever evolving CHAOSS, the system is scalable and flexible enough for easy tweaking in the future.

The final outcome is generation of reports for the metrics and their translations counterparts respectively.

Usage

M.A.R.S. supports Linux (Debian based) and MacOS based systems only.

Currently, it can be used to generate the reports of English, Spanish and Chinese version of the metrics that exist in the working groups and translations repositories.

There are two ways to run M.A.R.S:

  • Using Docker
  • Using Python virtual environment

Refer to this README to know more details about its usage.

Workflow

The following image gives a high level overview of the workflow of M.A.R.S.

MARS workflow

Walkthrough

A rough walkthrough of the automation process:

  • Select language through user input
  • Load the corresponding yml config file
  • Load the corresponding cover page and side scripts
  • Create and/or cleanup the test_env directory
  • Clone the WG and/or translations repositories
  • Generate relative paths to metric markdown files in various WGs
  • Pull all the metrics in base folder
  • Make a common images directory
  • Decrease heading levels (only in metric markdowns) by prepending ##
  • Convert metrics markdown to tex
  • Generate focus areas tables in tex (2 level hierarchy)
  • Generate WG markdowns tex files for headings (3 level hierarchy)
  • Add front and end matter
  • Call pandoc to generate the final PDF
  • Move the final PDF to the output directory
  • Display success message and paths to log file and release PDF

Contributing

The M.A.R.S project welcomes all kinds of contributions and suggestions. See CONTRIBUTING.md for more information.

Maintainers

This project has been made under Google Summer of Code '21

Mentors

Students

License

Licensed under MIT License

About

Metrics Automated Release System

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.8%
  • Shell 18.7%
  • TeX 10.5%
  • Dockerfile 1.0%