github2pandas_manager Introduction
github2pandas_manager coordinates data aggregation activities for multiple GitHub-repositories. The user selects a list of repositories by names, name pattern, organizations or individual queries and provides a collection of versions, releases, pull-requests etc. For this purpose github2pandas_manager reads a configuration file (yml), collects the referenced repositories and provides the demanded information as Python pandas or csv files.
Take a view to the documentation of github2pandas for being familiar with the individual aggregation classes.
Application example
Concept
Installation
github2pandas-manager is available on pypi. Use pip to install the package.
global
On Linux:
sudo pip3 install github2pandas-manager
sudo pip install github2pandas-manager
On Windows as admin or for one user:
pip install github2pandas-manager
pip install --user github2pandas-manager
in virtual environment:
pipenv install github2pandas-manager
In addition a GitHub token is required for authentication. The website describes how you can generate this for your GitHub account. Add your toke to an hidden .env file, an example is given in .env.example.
Run examples
The example folder contains four types of query configurations for different purposes:
| Fokus | Keywords | Example |
|---|---|---|
| Repo names | List all relevant repositories by username and repository name - repo_names |
ProjectsByRepoNames.yml |
| Repo name patterns | Describe relevant repositories by white- and black-patterns - repo_white_pattern, repo_black_pattern |
ProjectsByRepoNamePatterns.yml |
| Repos by organizations | Select all repositories of an organization account - organization_names |
ProjectsByOrganizations.yml |
| Repos by a set of query parameter | Select all repositories according to programming languages, stars etc. - language, start_date, end_date, star_filter |
ProjectsByQuery.yml |
In order to start the examples just run:
pipenv run python -m github2pandas_manager -path ./examples/ProjectsByQuery.yml
YAML-Configuration schema
In addition to the specific configuration parameters mentioned above, each request includes three further definitions - project_name, project_folder and content.
While the first two are used to structure the folders to hold the data, the last parameter describes the repository data to be aggregated:
RepositoryIssuesVersionPullRequestsWorkflowsGitReleases
An overview of the information contained in each data frame can be found in the wiki of the gitlab2pandas project.
Release files for github2pandas-manager 0.0.9
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| github2pandas_manager-0.0.9.tar.gz | 14.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| github2pandas_manager-0.0.9-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.6 kB
Release files / github2pandas_manager-0.0.9.tar.gz
| Download URL | github2pandas_manager-0.0.9.tar.gz |
|---|---|
| Size | 14.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5d7dbca2c8db1315f3d02ae5fa16993b8620a427e34fc54ff6014ddeb1f3a43d
|
|
BLAKE2b-256 checksum How to use checksums |
450f93df4c4b1e183b7d57afeda5e583a6377ba5e91209b4a1067deaa8d45240
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.5.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.10
|
Release files / github2pandas_manager-0.0.9-py3-none-any.whl
| Download URL | github2pandas_manager-0.0.9-py3-none-any.whl |
|---|---|
| Size | 14.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7cb994fe8c7472fc3bf3e4269ce3afd528898f67133b15f8447be9877929359c
|
|
BLAKE2b-256 checksum How to use checksums |
7c42478b79d650da375d1caa790fac83a269d04e5c512259880981569b2f552a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.5.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.10
|