A mining tool for collecting microservices data from Github repositories. This tool has been implemented for collecting metrics for a study described in the following paper:
Tizzei, L.P.; Azevedo L.G, Soares, E.; Tiago R., Costa, R. On the Maintenance of a Scientific Application based on Microservices: an Experience Report. Proceedings of the International Conference on Web Services. 2020
For extra information about the paper, please go to this page. For more information about the tool, continue here.
This tool has been implemented using python 3.7. Create your virtual environment and install the dependencies using pip.
pip install -r requirements.txt- Set
MINING_GHE_PERSONAL_ACCESS_TOKENenvironment variable- Go to Github
- Click on
Settings > Developer settings - Click on
Personal access tokens - Click on
Generate new token
- Set
DB_PATHenvironment variable, which is the path to the database file (sqlite) - Set
BASE_DIR, which is the directory that stores plots and CSVs files generated during analysis - Create the input file (see example)
- Go to microservices-miner home dir
- Run
python microservices_miner/mining/ghe_extractor.py --path <full-path-to-input-data>and check the log filegithub_miner.log
Please, create an issue if you have found a bug
Pre-requisites: steps 1, 2, and 3 of the "Extracting data from GHE" section have been executed
- Run pytest tests/