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 templatesTEMPLAR_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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file kedro_templar-0.0.6.tar.gz
.
File metadata
- Download URL: kedro_templar-0.0.6.tar.gz
- Upload date:
- Size: 6.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32aa621f715eb51b139025881dd8772b76d73e3f557a8dce981ac1cfaf4e79fb |
|
MD5 | 6f2ff52b88e1829a1064730697ec5e26 |
|
BLAKE2b-256 | 754bcb58c012e93ae1f311ac47784b3d96a322368318d1e2340c8aa487a51f83 |
File details
Details for the file kedro_templar-0.0.6-py3-none-any.whl
.
File metadata
- Download URL: kedro_templar-0.0.6-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.17
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 822050c5cf8aa0b56818f1d372da18dcbb24aaaa7a22492c365c1e93860b3f1f |
|
MD5 | f44a891040bd9dc9b6fadea4d465ab19 |
|
BLAKE2b-256 | 89ef5424c300a04a2dc6548ce1827c1a27e4ac5a78b0e4c49816d1848149cde0 |