Template VariablesΒΆ
Underlying the CLI, the PTB uses Jinja to dynamically generate project-specific
workflows. The rendering process is supported by the github_template_dict found in
your noxconfig.py::PROJECT_CONFIG. This dictionary is inherited by default from
exasol.toolbox.config.BaseConfig.github_template_dict, ensuring a
standardized baseline that can be easily overridden, if necessary.
def github_template_dict(self) -> dict[str, Any]:
"""
Dictionary of variables to dynamically render Jinja2 templates into valid YAML
configurations.
"""
fast_tests_extension = (
self.github_workflow_directory / "fast-tests-extension.yml"
)
merge_gate_extension = (
self.github_workflow_directory / "merge-gate-extension.yml"
)
return {
"dependency_manager_version": self.dependency_manager.version,
"minimum_python_version": self.minimum_python_version,
"os_version": self.os_version,
"python_versions": self.python_versions,
"workflow_extension": {
"fast_tests": fast_tests_extension.is_file(),
"merge_gate": merge_gate_extension.is_file(),
},
}