limatmpl

package
v0.8.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 6, 2025 License: Apache-2.0 Imports: 25 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func InstNameFromURL

func InstNameFromURL(urlStr string) (string, error)

func InstNameFromYAMLPath

func InstNameFromYAMLPath(yamlPath string) (string, error)

func SeemsFilePath

func SeemsFilePath(arg string) bool

SeemsFilePath returns true if arg either contains a path separator or has a file extension that does not start with a digit. `my.yaml` is a file path, `ubuntu-20.10` is not.

func SeemsFileURL

func SeemsFileURL(arg string) bool

func SeemsHTTPURL

func SeemsHTTPURL(arg string) bool

func SeemsTemplateURL

func SeemsTemplateURL(arg string) (bool, *url.URL)

func SeemsYAMLPath

func SeemsYAMLPath(arg string) bool

Types

type Template

type Template struct {
	Locator string // template locator (absolute path or URL)
	Bytes   []byte // file contents

	// The following fields are only used when the template represents a YAML config file.
	Name   string // instance name, may be inferred from locator
	Config *limayaml.LimaYAML
	// contains filtered or unexported fields
}

func Read

func Read(ctx context.Context, name, locator string) (*Template, error)

func (*Template) ClearOnError

func (tmpl *Template) ClearOnError(err error) error

func (*Template) Embed

func (tmpl *Template) Embed(ctx context.Context, embedAll, defaultBase bool) error

Embed will recursively resolve all "base" dependencies and update the template with the merged result. It also inlines all external provisioning and probe scripts.

func (*Template) Unmarshal

func (tmpl *Template) Unmarshal() error

Unmarshal makes sure the tmpl.Config field is set. Any operation that modified tmpl.Bytes is expected to set tmpl.Config back to nil.

func (*Template) UseAbsLocators

func (tmpl *Template) UseAbsLocators() error

UseAbsLocators will replace all relative template locators with absolute ones, so this template can be stored anywhere and still reference the same base templates and files.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL