in rostran/core/format.py [0:0]
def convert_template_to_file_format(template_format, template_path: str = None):
if isinstance(template_format, SourceTemplateFormat):
if template_format == SourceTemplateFormat.Excel:
return FileFormat.Excel
elif template_format == SourceTemplateFormat.Terraform:
return FileFormat.Terraform
elif template_format in (
SourceTemplateFormat.CloudFormation,
SourceTemplateFormat.ROSTerraform,
SourceTemplateFormat.ROS
):
if template_path:
if template_path.endswith((".yml", ".yaml")):
return FileFormat.Yaml
elif template_path.endswith(".json"):
return FileFormat.Json
else:
raise ValueError(
f"template_path is required when template_format is {template_format}"
)
elif isinstance(template_format, TargetTemplateFormat):
if template_format == TargetTemplateFormat.Yaml:
return FileFormat.Yaml
elif template_format == TargetTemplateFormat.Json:
return FileFormat.Json
raise ValueError(f"Unsupported template_format {template_format}")