def convert_template_to_file_format()

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}")