Platform connectors
Table of Contents
Overview
This module provides async client classes to interact with:
- Jira: fetch issues and metadata
- Confluence: retrieve pages and space information
- GitLab: access repositories and merge requests
- Http: base HTTP client for platform communication
All clients require authentication credentials passed as constructor parameters.
Installation
All the project is managed with Poetry. To install it, please visit the official page and follow these instructions :
poetry shell
poetry install --without dev
For the developers, it is useful to install extra tools like :
These tools can be installed with the following command :
poetry install
The Git hooks can be installed with :
poetry run pre-commit install
The hooks can be run manually at any time :
poetry run pre-commit run --all-file
Usage
import asyncio
from platform_connectors import JiraClient, ConfluenceClient, GitlabClient
async def main():
# Jira example
async with JiraClient(
jira_url="https://my.jira.server.com",
jira_username="user@example.com",
jira_password="token"
) as jira_session:
issues = await jira_session.tickets_from_jql(jql="project = TEST")
changelogs = await jira_session.changelogs_from_tickets(issues)
# GitLab example
async with GitlabClient(
gitlab_url="https://my.gitlab.server.com",
gitlab_token="token"
) as gitlab_session:
mrs = await gitlab_session.merge_requests(project_id=123)
for mr in mrs:
commits = await gitlab_session.commits_from_merge_request(
project_id=mr["project_id"],
merge_request_iid=mr["iid"]
)
# Confluence example
async with ConfluenceClient(
confluence_url="https://my.confluence.server.com",
confluence_username="user@example.com",
confluence_password="token"
) as confluence_session:
space = await confluence_session.get_space_from_key(space_key="DOCS")
pages = await confluence_session.get_all_pages_in_space(space_id=space["id"])
asyncio.run(main())
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, shall be as defined in the Apache-2.0 license without any additional terms or conditions.
See CONTRIBUTING.md.
Metadata
Release files for platform-connectors 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| platform_connectors-0.1.0.tar.gz | 14.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| platform_connectors-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.5 kB
Release files / platform_connectors-0.1.0.tar.gz
| Download URL | platform_connectors-0.1.0.tar.gz |
|---|---|
| Size | 14.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
73e1cce8fcf5f7ba921e5df5489b32037233be86674c407bc28db60ef3c5b1f4
|
|
BLAKE2b-256 checksum How to use checksums |
38f99819004f62981e283451e1a9831a6a6abc6e1c73abec402d993f0fb01b40
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.11.14 Linux/6.11.0-1018-azure
|
Release files / platform_connectors-0.1.0-py3-none-any.whl
| Download URL | platform_connectors-0.1.0-py3-none-any.whl |
|---|---|
| Size | 17.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6fe77b586792013632103ff4d73b13de4d49f280385deee0ab716ce1731961e8
|
|
BLAKE2b-256 checksum How to use checksums |
d8400ccda63b1ad4b0489c384fdc1f507013d26bd74dc28996c699cec747aa06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.2.1 CPython/3.11.14 Linux/6.11.0-1018-azure
|