Generate GitLab project issues and milestones statistics automatically
Project description
gitlab-projects-issues
Generate GitLab project issues and milestones statistics automatically
Purpose
This tool can automatically generate issues and milestones statistics,
by analyzing project's issues, detecting milestones and assignees.
If issues without time estimations are found, ~?
will be shown before time outputs.
Milestone statistics will automatically be injected in the milestone description,
with a markdown table of assignees, timings, progress and issues total.
The following step is required before using the tool:
- The GitLab user tokens must be created with an
api
scope (a short expiration date is recommended)
Outputs
Milestone statistics - NAME
Assignees | Issues | Estimated | Spent | Remaining | Progress |
---|---|---|---|---|---|
Without assignee | 10 | 18d | 18d | / | ██████████ 100.00% |
USER ONE | 22 | 42d | 5d | 37d | █▂▁▁▁▁▁▁▁▁ 11.90% |
USER TWO | 29 | 50d 2h | 20d 6h | 29d 4h | ████▂▁▁▁▁▁ 41.29% |
USER THREE | 7 | 9d 2h | 3d 4h | 5d 6h | ███▅▁▁▁▁▁▁ 37.84% |
USER FOUR | 6 | 21d | / | 21d | ▁▁▁▁▁▁▁▁▁▁ 0.00% |
Total | 74 | 135d 4h | 47d 2h | 93d 2h | ███▄▁▁▁▁▁▁ 34.87% |
Last update using gitlab-projects-issues : 2024-06-01 19:38:48 UTC
Examples
# Show the helper menu
gitlab-projects-issues
# Inject milestones statistics into milestones' description
gitlab-projects-issues --milestones-statistics 'https://gitlab.com' 'group/project'
# Inject milestones statistics into milestones' description (with default 20h time per unestimated issues)
gitlab-projects-issues --milestones-statistics --default-estimate '20' 'https://gitlab.com' 'group/project'
Usage
usage: gitlab-projects-issues [-h] [--version] [--update-check] [--settings] [--set GROUP KEY VAL] [-t TOKEN] [--dump]
[--default-estimate DEFAULT_ESTIMATE] [--exclude-closed-issues] [--milestone MILESTONE]
[--milestones-statistics] [--exclude-closed-milestones] [--]
[gitlab] [path]
gitlab-projects-issues: Generate GitLab project issues and milestones statistics automatically
internal arguments:
-h, --help # Show this help message
--version # Show the current version
--update-check # Check for newer package updates
--settings # Show the current settings path and contents
--set GROUP KEY VAL # Set settings specific 'VAL' value to [GROUP] > KEY
# or unset by using 'UNSET' as 'VAL'
credentials arguments:
-t TOKEN # GitLab API token (default: GITLAB_TOKEN environment)
common arguments:
--dump # Dump Python objects of projects
issues arguments:
--default-estimate DEFAULT_ESTIMATE # Default issue time estimate if none providedin hours (default: 8)
--exclude-closed-issues # Exclude issues in closed state
milestones arguments:
--milestone MILESTONE # Use a specific milestone by name, by ID, or "None"
--milestones-statistics # Inject milestones statistics into milestones' description
--exclude-closed-milestones # Exclude milestones in closed state
positional arguments:
-- # Positional arguments separator (recommended)
gitlab # GitLab URL (default: https://gitlab.com)
path # GitLab project path
Userspace available settings
gitlab-projects-issues
creates a settings.ini
configuration file in a userspace folder.
For example, it allows to disable the automated updates daily check ([updates] > enabled
)
The settings.ini
file location and contents can be shown with the following command:
gitlab-projects-issues --settings
Environment available configurations
gitlab-projects-issues
uses colored
for colors outputs.
If colors of both outputs types do not match the terminal's theme,
an environment variable NO_COLOR=1
can be defined to disable colors.
Dependencies
- colored: Terminal colors and styles
- python-gitlab: A python wrapper for the GitLab API
- setuptools: Build and manage Python packages
- update-checker: Check for package updates on PyPI
References
- git-chglog: CHANGELOG generator
- gitlab-release: Utility for publishing on GitLab
- gitlabci-local: Launch .gitlab-ci.yml jobs locally
- mypy: Optional static typing for Python
- PyPI: The Python Package Index
- twine: Utility for publishing on PyPI
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for gitlab_projects_issues-1.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d06bc0690a4663c3faea68837db06e839d941cef858127c5aab54da6f10712f |
|
MD5 | d5479948d7535246054695e88a608e37 |
|
BLAKE2b-256 | 2b47374c390f18e7e3c2e366f39329febb95a3dc699a067671e7aa5c049e3a38 |
Hashes for gitlab_projects_issues-1.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5c79bdfff8b1a8eec727110df06345d1356972beec5414057ac8ccd63ac0917 |
|
MD5 | 2b11d287cac3607e34d2bbe5f8bf47c9 |
|
BLAKE2b-256 | dff054ea6c6afd5928372253d2f70f5a9694ef79846b395229f46afa51dc5531 |