Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Sourcecode on GitHub Sourcecode License Documentation Documentation License
PyPI PyPI - Status PyPI - Python Version
GitHub Workflow - Build and Test Status Libraries.io status for latest release Codacy - Quality Codacy - Coverage Codecov - Branch Coverage

pyTooling.GitLab

pyTooling.GitLab works with GitLab CI/CD pipelines: it reads pipeline files (.gitlab-ci.yml) into a data model, reads the runs of a pipeline from GitLab's REST API, and converts them into traces - e.g. OpenTelemetry's OTLP/JSON or a Gantt chart of the jobs. A Sphinx domain glci documents a pipeline file's inputs and variables taken straight from the file.

It builds on pyTooling's generic CI pipeline model and tracing, and on pyTooling.Sphinx for its documentation extensions. Its sibling pyTooling.GitHub does the same for GitHub Actions.

The package is installed from PyPI:

pip install pyTooling.GitLab

Features

Data models

  • Pipeline runs - A GitLab pipeline - its jobs, matrices and child pipelines with their times and outcomes - read from the GitLab REST API's payloads.
  • Pipeline files - A .gitlab-ci.yml and the files it includes: stages, jobs with their needs and rules, variables and inputs, read with line numbers, and converted into a pipeline graph.

Sphinx domain glci

The domain needs the extra sphinx, which installs pyTooling.Sphinx:

pip install pyTooling.GitLab[sphinx]
  • Pipelines and their parameters - A pipeline file's spec:inputs and its described variables, taken straight from the file; roles to reference them.
  • Summaries - Parameter tables, the interface, the dependencies and YAML excerpts of a pipeline file.

Visualization

  • Pipeline graph - The jobs of a pipeline file, their stages and needs as a Graphviz graph.
  • Pipeline trace diagram - Reads a pipeline through the GitLab REST API into a trace, written as OpenTelemetry's OTLP/JSON or drawn as a Gantt chart.

Program

Gantt charts need the extra diagram, which installs matplotlib:

pip install pyTooling.GitLab[diagram]
  • pytooling-gitlab - The command pipeline reads a pipeline into a trace, writes it, and draws it as a Gantt chart.

Contributors

License

This Python package (source code) is licensed under Apache License 2.0.
The accompanying documentation is licensed under Creative Commons - Attribution 4.0 (CC-BY 4.0).
Content of other projects - e.g. recorded pipelines of public gitlab.com projects as test data - is listed with its license in NOTICE.md.


SPDX-License-Identifier: Apache-2.0

Metadata

Release files for pyTooling.GitLab 0.1.0rc1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyTooling.GitLab 0.1.0rc1
File Size Uploaded
pytooling_gitlab-0.1.0rc1.tar.gz 98.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyTooling.GitLab 0.1.0rc1
File Interpreter ABI Platform
pytooling_gitlab-0.1.0rc1-py3-none-any.whl Python 3 none any Details

Total release size: 201.5 kB

Release files / pytooling_gitlab-0.1.0rc1.tar.gz

Download URL pytooling_gitlab-0.1.0rc1.tar.gz
Size 98.8 kB
Tags Source
SHA-256 checksum
How to use checksums
19a7620b9b278da7aaa8628d759ee31a0e80bfad9bc5c97cb084e9171fde0f69
BLAKE2b-256 checksum
How to use checksums
d9ace4e75b9bed4ce53dcfbde00733b1195a0087c932dcba330df715f04268fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.15.0

Release files / pytooling_gitlab-0.1.0rc1-py3-none-any.whl

Download URL pytooling_gitlab-0.1.0rc1-py3-none-any.whl
Size 102.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
17a7f4b9e4c63ea166ba3ac53a16b580528c077ea7ba2709c77ad37db981c25b
BLAKE2b-256 checksum
How to use checksums
e58df8c190f7468c840dca5bff789068818fa716bf5151e79bb12777c6b009d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.15.0

Release history Release notifications | RSS feed

This release

0.1.0rc1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page