etr  4.0-pre
Public Member Functions | Static Public Attributes | List of all members
etr.plugins.jinja2.Plugin Class Reference

Jinja2 plugin. More...

Public Member Functions

def __init__ (self, ConfigurationContext ctx)
 
def setup (self, SetupContext ctx)
 Render template files. More...
 
def teardown (self, TeardownContext ctx)
 Delete files generated during setup(). More...
 

Static Public Attributes

string config_schema
 
int order = 1000
 
dictionary utils_ctx = {"get_random_port": get_random_port}
 

Detailed Description

Jinja2 plugin.

Configuration schema if rendering order is not important:

jinja2:
    files:
# Files are relative etr working directory

"foo/bar.j2" : "foo/bar.config"

# Environment expansion also works.

"baz.j2.yaml" : "$DATAROOT/config/baz.yaml"

and if rendering order is important the object jinja2["files"] may also be an array of "DESTINATION"` pairs:

jinja2:
    files:
        - "foo/bar.j2" : "foo/bar.config"
        - "baz.j2.yaml" : "$DATAROOT/config/baz.yaml"

Constructor & Destructor Documentation

◆ __init__()

def etr.plugins.jinja2.Plugin.__init__ (   self,
ConfigurationContext  ctx 
)

Member Function Documentation

◆ setup()

def etr.plugins.jinja2.Plugin.setup (   self,
SetupContext  ctx 
)

Render template files.

◆ teardown()

def etr.plugins.jinja2.Plugin.teardown (   self,
TeardownContext  ctx 
)

Delete files generated during setup().

   The cleanup is oppertunistic and failures are logged but otherwise ignored to avoid
   cancelling any other pending plugin teardowns.

Member Data Documentation

◆ config_schema

string etr.plugins.jinja2.Plugin.config_schema
static
Initial value:
= """
type: object
properties:
files:
anyOf:
- type: object
additionalProperties:
type: string
- type: array
items:
type: object
additionalProperties:
type: string
"""

◆ order

int etr.plugins.jinja2.Plugin.order = 1000
static

◆ utils_ctx

dictionary etr.plugins.jinja2.Plugin.utils_ctx = {"get_random_port": get_random_port}
static

The documentation for this class was generated from the following file: