File returns a cft.Template parsed from a file specified by fileName
(fileName string)
| 26 | |
| 27 | // File returns a cft.Template parsed from a file specified by fileName |
| 28 | func File(fileName string) (*cft.Template, error) { |
| 29 | source, err := os.ReadFile(fileName) |
| 30 | if err != nil { |
| 31 | return &cft.Template{}, fmt.Errorf("unable to read file: %s", err) |
| 32 | } |
| 33 | |
| 34 | t, err := String(string(source)) |
| 35 | if err != nil { |
| 36 | return t, err |
| 37 | } |
| 38 | t.FileName = fileName |
| 39 | tokens := strings.Split(fileName, "/") |
| 40 | if len(tokens) > 1 { |
| 41 | t.Name = tokens[len(tokens)-1] |
| 42 | } else { |
| 43 | t.Name = fileName |
| 44 | } |
| 45 | return t, nil |
| 46 | } |
| 47 | |
| 48 | // Map returns a cft.Template parsed from a map[string]interface{} |
| 49 | func Map(input map[string]interface{}) (*cft.Template, error) { |