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: (you should provide at least one of those)

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

optional:

  • -tf --to-file path to output config file.
  • --keep-file if pie should keep original file without change.

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.3.tar.gz (5.6 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.3-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: python-pie-0.2.3.tar.gz
  • Upload date:
  • Size: 5.6 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.3.tar.gz
Algorithm Hash digest
SHA256 692340223eaefd5ed7429129892bf24ba4266c498123026f4c26e0fb62df5883
MD5 6d8a5015da3f57ca662fcf5ec83d301a
BLAKE2b-256 3b5500960af4a8f906affb9be4f572e97e192286b25d526529484db16e5d238f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: python_pie-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 5.4 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 11d68a33e1421eeec2a1d95292cb8e965a858a44b981f775147025c44efb0bcf
MD5 58431eb6c296a2270ee10949e07c0907
BLAKE2b-256 a7e72b86cf06e4605ff28743ef5618036e9a933f4bcd1fc19b2ce4033df99a2e

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