An example pipeline that computes metrics of a repository
The Software Systems Laboratory (SSL) PRIME Pipeline Project is an example pipeline that computes metrics of a repository.
The pipeline only calculates metrics for the HEAD
branch of a repository.
This project is licensed under the BSD-3-Clause. See the LICENSE for more information.
To maximize the utility of this project the following software packages are required:
All tools developed for the greater SSL Metrics project target Mac OS and Linux. SSL Metrics software is not supported or recommended to run on Windows but can be modified to do so at your own risk.
It is recomendded to run on Mac OS or Linux. However, if you are on a Windows machine, you can use WSL to run this software as well.
git
parallel
wget
rclone
tmux
python3.10
All listed Python software assumes that you have downloaded and installed Python 3.10 or greater.
clime-metrics
You can install the Python software with this one-liner:
pip install --upgrade pip clime-metrics
or ./setup.bash
Run the following one liner to setup the pipeline:
wget -qO- https://raw.githubusercontent.com/SoftwareSystemsLaboratory/clime-pipeline/main/setup.bash | bash
pipeline.bash
contains the code to start the pipeline.
It takes a GitHub Personal Access Token and a file containing a list of Github Repository URLs as positional arguements.
For an example GitHub Repository URL file, see githubRepositories.txt.
./pipeline.bash $GH_TOKEN githubRepositories.txt
Where $GH_TOKEN
is a GitHub Personal Access Token or shell variable referencing it.
githubRepositories.txt
can be replaced with any file containing GitHub Repository URLs.
NOTE: The name of this text file will be used to create a folder containing all of the repositories analyzed and their analysis files.
This pipeline is configured to upload results to a Google Drive folder via rclone
.
If you don't want to do this, comment out or change the last lines in the runner.bash
file.