Skip to main content

Parse static files such as YAML and insert in them data from environment variables

Project description

python-pie

Build Status PyPI version PyPI - Python Version

Python-pie(python insert env) parses static files such as YAML and insert in them data from environment variables

Getting Started

pip install python-pie

You can use python-pie to insert env variables to static configurations, like that:

from pie import process_file

filepath = '/docker/configuration.yaml'
process_file(filepath)

The syntax of files supported by python-pie is similar to that of python fstrings:

f"54 {from_env or 'default_value'} some text"

Depends if your environment has a from_env variable or not, python-pie will load it, or in case of absence take the default value

Syntax example

hosts:
  - f"{host}"

loglevel: 4
f"{'log_file_path'}": f"/file/path/{filename or 'tmp.log'}"
log_rotate_count: 1

after process_file(filepath)

hosts:
  - localohst

loglevel: 4
log_file_path: /file/path/tmp.log
log_rotate_count: 1

Using as module from command line

You can use python-pie in command line.

python -m pie -f /node54/config.yml

Flags:

  • -f --file path to config file.
  • -s --string string to precess.

Docker example

docker create -t --name pie -i python:3.9 || true;
docker start pie;
docker exec pie python -m pip install python-pie;
docker exec pie python -m pie -f /node54/config.yml;

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

python-pie-0.2.2.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_pie-0.2.2-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file python-pie-0.2.2.tar.gz.

File metadata

  • Download URL: python-pie-0.2.2.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.1

File hashes

Hashes for python-pie-0.2.2.tar.gz
Algorithm Hash digest
SHA256 55802cb372fe112ca3c716d6157f10cdc6d625359799f24bd88ba073fa6338ee
MD5 744e35e657ecf1d70209287c4f248941
BLAKE2b-256 644a2038dfca1934473f3a692ebe813c65101571c3a4324664921ca23c9da238

See more details on using hashes here.

File details

Details for the file python_pie-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: python_pie-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.1

File hashes

Hashes for python_pie-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 746f9be4890d399d92082767d13068f18bc1035b26f9f768635383ce440cd115
MD5 1aeae5493fe45b2f0f008709ea72f472
BLAKE2b-256 2587f41066dd731297cbeeca201f4b38c83e0655d31e622d1a37b9dcf8734328

See more details on using hashes here.

Supported by

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