Skip to main content
Documentation Status https://github.com/MacHu-GWU/configirl-project/workflows/CI/badge.svg 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.

Metadata

Release files for configirl 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for configirl 1.0.1
File Size Uploaded Provenance Actions
configirl-1.0.1.tar.gz 33.3 kB Without provenance Details for configirl-1.0.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for configirl 1.0.1
File Interpreter ABI Platform Actions
configirl-1.0.1-py2.py3-none-any.whl Python 2, Python 3 none any Details for configirl-1.0.1-py2.py3-none-any.whl

Total release size: 64.3 kB

Release files / configirl-1.0.1.tar.gz

Download URL configirl-1.0.1.tar.gz
Size 33.3 kB
Tags Source
SHA-256 checksum
How to use checksums
15ce966651739540fad039248dafcc967ecd4922f64b9e5a8938c9612370b404
BLAKE2b-256 checksum
How to use checksums
8920a09906c34bdfdd89b6bf71200d5ff58f43aea4b067d4a14ca23493530a2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.11

Release files / configirl-1.0.1-py2.py3-none-any.whl

Download URL configirl-1.0.1-py2.py3-none-any.whl
Size 31.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
e98ca086f92094c865fec4f7d1ee02c49983f95e679afb6462f73f149225818e
BLAKE2b-256 checksum
How to use checksums
fbf798d3a9f8f8b61d1f04599a5e1aaec495afb80e5ad2d4faeab021c750edd9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.11

Security for configirl 1.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page