Skip to main content

Centralized Config Management Tool.

Project description

Documentation Status https://travis-ci.org/MacHu-GWU/configirl-project.svg?branch=master https://codecov.io/gh/MacHu-GWU/configirl-project/branch/master/graph/badge.svg https://img.shields.io/pypi/v/configirl.svg https://img.shields.io/pypi/l/configirl.svg https://img.shields.io/pypi/pyversions/configirl.svg https://img.shields.io/badge/STAR_Me_on_GitHub!--None.svg?style=social
https://img.shields.io/badge/Link-Document-blue.svg https://img.shields.io/badge/Link-API-blue.svg https://img.shields.io/badge/Link-Source_Code-blue.svg https://img.shields.io/badge/Link-GitHub-blue.svg https://img.shields.io/badge/Link-Submit_Issue-blue.svg https://img.shields.io/badge/Link-Request_Feature-blue.svg https://img.shields.io/badge/Link-Download-blue.svg

Welcome to configirl Documentation

If you are looking for technical support, click the badge below to join this gitter chat room and ask question to the author.

https://img.shields.io/badge/Chat-Tech_Support-_.svg

What is configirl

configirl is a single script, pure python, no dependencies, python2.7, 3.4+ compatible, drop in ready python library to help you manage complex config value logic. This devops solution applies to ANY PROJECT, ANY PROGRAMMING LANGUAGE.

from configirl import ConfigClass, Constant, Deriable

class Config(object):
    PROJECT_NAME = Constant()
    PROJECT_NAME_SLUG = Deriable()

    @PROJECT_NAME_SLUG.getter
    def get_project_name_slug(self):
        return self.PROJECT_NAME.get_value().replace("_", "-")

config = Config(PROJECT_NAME="my_project")

What problem does configirl solve

Devops Engineer has to deal with lots of config and parameters everyday. Some config value are just a constant value, like a integer and a string. Some config value can be derived from other config values, sometimes event requires the context.

There are lots of Devops tools available in the community, such as:

  • Shell Script for command line tool, automation

  • Jenkins groovy for CI/CD

  • Cloudformation for Infrastructure as Code

  • Terraform for Infrastructure as Code

They all using different language and different syntax. The method of managing config value in different tools varies very much! If you have to manage a list of config values, and you are using multiple devops tools in the same project. Allow those tools talk to each other is NOT EASY at all. And the effort to manage config value in certain tools might be very difficult (like CloudFormation).

configirl provides a solution to manage complex logic for config values in an elegant way. Since Python is easy to learn and it is full featured programming language, you got the perfect balance of simplicity and flexibility. To integrate with any Devops tools, you just reference the value from the finalized config JSON file.

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

configirl-0.0.10.tar.gz (49.6 kB view details)

Uploaded Source

Built Distribution

configirl-0.0.10-py2.py3-none-any.whl (61.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file configirl-0.0.10.tar.gz.

File metadata

  • Download URL: configirl-0.0.10.tar.gz
  • Upload date:
  • Size: 49.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.2

File hashes

Hashes for configirl-0.0.10.tar.gz
Algorithm Hash digest
SHA256 d8277ddbd6070e72646e103ab706ade56643cf68e44c61dd7025b587d326b6a7
MD5 8e95c8047c1f25e46c6fb03af007f5d5
BLAKE2b-256 548e981041754cdf05e8d185c29a0291a49e83d2df9182cfbb7e8f5cb29bb4dd

See more details on using hashes here.

File details

Details for the file configirl-0.0.10-py2.py3-none-any.whl.

File metadata

  • Download URL: configirl-0.0.10-py2.py3-none-any.whl
  • Upload date:
  • Size: 61.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.2

File hashes

Hashes for configirl-0.0.10-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 46a50cb4981a8dbe5c097c7893da04aa160a0a6e0269fefe71bd2b621844ee29
MD5 757157acdb99345df5366ef53c845bd7
BLAKE2b-256 af29cb1e35e31c120e3c3658bcc9d266b7f9bb2f361ff6c0107f63e5ef4711f7

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