Metadata-Version: 2.1
Name: glbuild
Version: 0.1.23
Summary: A lightweight library and CLI tool for historical GitLab build data and logs collection.
License: LICENSE
Author: Henri Aïdasso
Author-email: ahenrij@gmail.com
Requires-Python: >=3.10,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Dist: click (>=8.1.7,<9.0.0)
Requires-Dist: json-repair (>=0.30.0,<0.31.0)
Requires-Dist: pydantic (>=2.7.1,<3.0.0)
Requires-Dist: pydantic-settings (>=2.2.1,<3.0.0)
Requires-Dist: python-gitlab (>=4.5.0,<5.0.0)
Requires-Dist: requests (>=2.31.0,<3.0.0)
Requires-Dist: simplejson (>=3.19.3,<4.0.0)
Requires-Dist: toml (>=0.10.2,<0.11.0)
Requires-Dist: tqdm (>=4.66.4,<5.0.0)
Description-Content-Type: text/markdown

# glbuild

A lightweight library and CLI tool for historical GitLab build data and logs collection.

## Requirements

- [Python](https://www.python.org/downloads/) >= 3.10
- [Poetry](https://python-poetry.org/)

## Getting Started

Install dependencies

```bash
poetry install
```

Access virtual environment

```bash
poetry shell
```

Install pre-commit hook for static code analysis

```bash
pre-commit install
```

## Usage

### Installation

Install the `glbuild` package using [pip](https://pip.pypa.io/en/stable/installation/)

>```bash
>pip install glbuild
>```

### Python library

```python
import glbuild

glb = glbuild.GitLabBuild(base_url="https://gitlab.com", token="******", projects=[1538, 5427])

glb.start(n_last=100)
```

### Command Line Interface (CLI)

```bash
glbuild --base-url https://gitlab.com --token ****** --output ./data --n-last 100 --project 1538 --project 5427
```

Contracted CLI command

```bash
glbuild -b https://gitlab.com -t ****** -o ./data -n 100 -p 1538 -p 5427
```

