Simple wrapper around skaffold for rendering skaffold.yaml
Project description
A simple skaffold wrapper with support for jinja2 templating.
Status
Requirements
Python 2.7 or Python 3.3+ or PyPy 2.4.0+
Setup
$ python -m pip install --user j2skaffold or (venv)$ python -m pip install j2skaffold
Usage
$ j2skaffold dev
will run skaffold dev after rendering the skaffold.jinja2 file from the current directory.
$ j2skaffold dev --keep-yaml
will do the same, keeping the rendered skaffold.yaml file. (Useful for debugging.)
The following special variables are available:
skaffold_command (dev, build, etc.)
current_profile (value of the -p argument)
The following special yaml key can be used:
_set_profile: [name] - sets the current profile using the -p argument. Should be always wrapped inside some {% if not current_profile %}, otherwise it will get passed through, and skaffold will fail with:
FATA[0000] creating runner: reading configuration: parsing skaffold config: parsing skaffold config: yaml: unmarshal errors: line 2: field _set_profile not found in type v1alpha3.SkaffoldConfig
Example skaffold.jinja2 demonstrating all the available features:
{% if skaffold_command == 'dev' and not current_profile %}
_set_profile: dev
{% endif %}
apiVersion: skaffold/v1alpha3
kind: Config
build:
artifacts:
- imageName: gcr.io/k8s-skaffold/skaffold-example-{{ current_profile }}
deploy:
kubectl:
manifests:
- k8s-*
profiles:
{% for profile in ['dev', 'production'] %}
- name: {{ profile }}
# ... use any jinja2 syntax
{% endfor %}
ChangeLog
0.1.0 (2018-10-08)
Initial release.
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
File details
Details for the file j2skaffold-0.1.0.tar.gz.
File metadata
- Download URL: j2skaffold-0.1.0.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f091a4a01ee3f6df150afa1ec244562b4b2a75c17615bf7e2edc302895c9efb
|
|
| MD5 |
242a73760de2e9baca5616f788f9283d
|
|
| BLAKE2b-256 |
1b2c1a52af0607be99872ed3b142998d6ceaf902cb3bfa4735ff5baa3e131c58
|