Skip to main content

No project description provided

Project description

Kedro Templar

About

A plugin build for Kedro to support templating configuration files. Using this plugin you can specify a templates for your configuration files such as catalog.yaml, paramters.yaml and fill them automatically using one file with specified variables. Using this approach you can easily parametrize you pipeline from single point.

Usage examples:

  • you can store multiple simultaneous configurations and switch between them on demand.
  • change prefixes in catalog.yaml to reuse the same pipeline for different data,

Install

Plugin can be easily installed using pypi repository.

pip install kedro-templar

Templates

kedro-templar is using jinja2 templating engine for rendering files.

Example

catalog.yaml

Let's create a template for conf/base/catalog.yaml in templates/base/catalog.yaml.

sample_data:
  type: pandas.CSVDataSet
  save_args:
    index: True
  filepath: s3://your_bucket/{{run_name}}/{{another_subname}}/data/sample_data.csv

definition.yaml

Your file that contains all variables used for templating.

run_name: run_1
another_subname: subfolder

Render templates

To render created template with provided variables run following command:

kedro templar apply -c definition.yaml

If you choose to have different setup, you can check help command to see all available options:

kedro templar apply --help

Commands

Currently, this plugin supports 3 commands:

apply

A core logic of this plugin. This command is used to create config files based on provided templates and a file with variables.

You can setup a default values using environment variables:

  • TEMPLAR_TEMPLATES_DIR - a default directory for your templates
  • TEMPLAR_OUTPUT_DIR - a default directory where templates will be rendered

If no value is specified explicitly and env var is empty, the commands will use default value specified in the code.

kedro templar apply -c definition.yaml

download

A helper function used to download a config file from a given S3 path

kedro templar download -i <S3_PATH>/definition.yaml -o definition.yaml

upload

A helper function used to upload a config file to a given S3 path

kedro templar upload -i definition.yaml -o <S3_PATH>/definition.yaml

Contact

Plugin was created by the Data Science team from WebInterpret.

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

kedro_templar-0.0.5.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

kedro_templar-0.0.5-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file kedro_templar-0.0.5.tar.gz.

File metadata

  • Download URL: kedro_templar-0.0.5.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for kedro_templar-0.0.5.tar.gz
Algorithm Hash digest
SHA256 a59757573298efee6482deccfdeef6a84cf4e8e6fa7a4d49202ace51e3b12b5f
MD5 97b05e8503adc98e7c28cbaf3fbe1d24
BLAKE2b-256 04cd9a2a463fd9ef9cd2b91ebdac3c3fce7206ebc193dd28209a2deee4891564

See more details on using hashes here.

File details

Details for the file kedro_templar-0.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for kedro_templar-0.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 411e5f81252dfb39c0ebda9164582848c58ff7cf967b2b8eced1114ecb9f4fbf
MD5 3fdba9d8b554f9a4a44a904e0a435470
BLAKE2b-256 a4f41fa400d6e626d76fb2e0f03d02c1e0aa1c926df0c0704f6bba74468fcc48

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