Skip to main content

Plumb together different CI/CD services

Project description

CI Plumber

CodeFactor PyPI - Python Version PyPI PyPI - Downloads python-app DOI

A tool to create and configure all of the stages of a CI/CD pipeline.

Current integrations:

  • Gitlab
  • Gitlab pipelines
  • Azure App Service
  • Azure Image Registry
  • Azure MariaDB
  • Openshift
  • Openshift MariaDB

Full documentation is available here.

Installation

pip install ci-plumber[all]

Requirements

  • oc CLI tool
  • az CLI tool

Usage

GitLab

# Initialise the project
ci-plumber gitlab init

OpenShift

# Deploy from the current docker registry to OpenShift
ci-plumber openshift deploy

# Create a new DB and store the credentials in maria.env
ci-plumber openshift create-db

Azure

# Log in to Azure
ci-plumber azure login

# List your Azure subscriptions
ci-plumber azure list-subscriptions

# Set the subscription to use
ci-plumber azure set-default-subscription

# Create a docker registry
ci-plumber azure create-registry

# Trigger a build and push
git add .
git commit -m "Added Azure CI file"
git tag -a v1.0.0 -m "Version 1.0.0"
git push --follow-tags

# Deploy to Azure
ci-plumber azure create-app

# Create a database and store the credentials in maria.env
ci-plumber azure create-db

Developing

Installation

# Install dependencies
$ poetry install
$ poetry shell

# Install git hooks
$ pre-commit install
$ pre-commit autoupdate
$ pre-commit run --all-files

# Symlink the plugins back to the main project
$ ln -s ./plugins/example/ci_plumber_example/ ./ci_plumber_example
$ ln -s ./plugins/gitlab/ci_plumber_gitlab/ ./ci_plumber_gitlab
$ ln -s ./plugins/openshift/ci_plumber_openshift/ ./ci_plumber_openshift
$ ln -s ./plugins/azure/ci_plumber_azure/ ./ci_plumber_azure

Features

  • Runs checks on commit
    • Flake8
    • Black
    • pre-commit-hooks checks
    • mypy
    • isort
  • Installable as a script

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ci-plumber-1.4.2.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

ci_plumber-1.4.2-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file ci-plumber-1.4.2.tar.gz.

File metadata

  • Download URL: ci-plumber-1.4.2.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.9.6 Linux/5.10.43.3-microsoft-standard-WSL2

File hashes

Hashes for ci-plumber-1.4.2.tar.gz
Algorithm Hash digest
SHA256 ed3a9f7b4527879f37e80eb0467d145bc2276539cd5f2e360e8c97b713b1e580
MD5 d1a6000f68dc76c3f8532f31a2f91f78
BLAKE2b-256 b1fc253134c894ebb8ccc2c02ec788e2beb54e0e36ce806816a3e56e177d55de

See more details on using hashes here.

File details

Details for the file ci_plumber-1.4.2-py3-none-any.whl.

File metadata

  • Download URL: ci_plumber-1.4.2-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.8 CPython/3.9.6 Linux/5.10.43.3-microsoft-standard-WSL2

File hashes

Hashes for ci_plumber-1.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 866168eaaec886bdc8098faa25b18f8afb06a0d21a695b0cefd95bac217a5d4d
MD5 c2991f55af3f273d225969cb41174bca
BLAKE2b-256 626ab7222a02f7fcbc5887c1abddca3ac31b75691bf15df9ba9cd77a9505ded4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page