SDK tool to connect Gitlab pipelines with Workflows
Project description
Gitoptim SDK
Introduction
Gitoptim SDK is a CLI tool that enables integration of Gitlab pipelines and Workflows. It is designed to be used in CI/CD jobs.
Features
-
Gitlab CI/CD logs analysis
-
Memlab integration
Development
Prerequisites
- Python 3.11 or later
- Poetry for dependency management
Setup
- Install dependencies using
poetry install --with dev
- Install git hooks using
pre-commit install
. This will run linters and formatters before each push to repository.
Environment variables
The following environment variables are required in order to run the CLI:
CI_PROJECT_ID
CI_JOB_ID
CI_API_V4_URL
GITOPTIM_PRIVATE_TOKEN - Gitlab personal or project access token with `api-read` scope and `Guest` role
Variables prefixed with CI_
are provided by Gitlab CI/CD.
See: docs
Pycharm
- Set the Python interpreter to the one created by Poetry. This can be done by going
to
File -> Settings -> Project-> Python Interpreter
and selecting the interpreter created by Poetry. Path to the interpreter can be found by runningpoetry env info
in the terminal. - Install Pylint plugin for Pycharm.
- Enable "Reformat code" on save. This can be done by going to
File -> Settings -> Tools -> Actions On Save
.
How to run
- Run
poetry shell
to activate the virtual environment. - Run
python -m gitoptim
to start the CLI.
Important: In order to push to repository you need to have poetry shell enabled so that git hooks can run.
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
gitoptim-0.1.0.dev16.tar.gz
(8.3 kB
view hashes)
Built Distribution
Close
Hashes for gitoptim-0.1.0.dev16-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 484d37a8123fc308dbd5408a6982263c8da6980df042e93896ba995b7d20978b |
|
MD5 | ed0187de07f5507b3084bc2e319a4556 |
|
BLAKE2b-256 | 7e16b83158d4f4e0ec7ee2bc960092986d322e6a0df2bdb78bba0d7e2f04f6d3 |