Documentation
¶
Index ¶
- type File
- func (f *File) Changelog() string
- func (f *File) Condition(source string, scm scm.ScmHandler) (pass bool, message string, err error)
- func (f *File) Read() error
- func (f *File) Source(workingDir string, resultSource *result.Source) error
- func (f *File) Target(source string, scm scm.ScmHandler, dryRun bool, resultTarget *result.Target) error
- func (f *File) UpdateAbsoluteFilePath(workDir string)
- type Spec
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type File ¶
type File struct {
// contains filtered or unexported fields
}
File defines a resource of kind "file"
func New ¶
New returns a reference to a newly initialized File object from a Spec or an error if the provided Filespec triggers a validation error.
func (*File) Changelog ¶
Changelog returns the changelog for this resource, or an empty string if not supported
func (*File) Condition ¶
Condition test if a file content matches the content provided via configuration. If the configuration doesn't specify a value then it fall back to the source output
func (*File) Read ¶
Read puts the content of the file(s) as value of the f.files map if the file(s) exist(s) or log the non existence of the file
func (*File) Target ¶
func (f *File) Target(source string, scm scm.ScmHandler, dryRun bool, resultTarget *result.Target) error
Target creates or updates a file from a source control management system. The default content is the value retrieved from source
func (*File) UpdateAbsoluteFilePath ¶ added in v0.50.0
type Spec ¶
type Spec struct { /* `file` contains the file path compatible: * source * condition * target remarks: * `file` is incompatible with `files` * feel free to look at searchpattern attribute to search for files matching a pattern */ File string `yaml:",omitempty"` /* `files` contains the file path(s) compatible: * condition * target remarks: * `files` is incompatible with `file` * feel free to look at searchpattern attribute to search for files matching a pattern */ Files []string `yaml:",omitempty"` /* `line` contains the line of the file(s) to manipulate compatible: * source * condition * target */ Line int `yaml:",omitempty"` /* `content` specifies the content to manipulate compatible: * source * condition * target */ Content string `yaml:",omitempty"` /* `forcecreate` defines if nonexistent file(s) should be created compatible: * target */ ForceCreate bool `yaml:",omitempty"` /* `matchpattern` specifies the regexp pattern to match on the file(s) compatible: * source * condition * target */ MatchPattern string `yaml:",omitempty"` /* `replacepattern` specifies the regexp replace pattern to apply on the file(s) content compatible: * source * condition * target */ ReplacePattern string `yaml:",omitempty"` /* `searchpattern` defines if the MatchPattern should be applied on the file(s) path If set to true, it modifies the behavior of the `file` and `files` attributes to search for files matching the pattern instead of searching for files with the exact name. When looking for file path pattern, it requires pattern to match all of name, not just a substring. The pattern syntax is: “` pattern: { term } term: '*' matches any sequence of non-Separator characters '?' matches any single non-Separator character '[' [ '^' ] { character-range } ']' character class (must be non-empty) c matches character c (c != '*', '?', '\\', '[') '\\' c matches character c character-range: c matches character c (c != '\\', '-', ']') '\\' c matches character c lo '-' hi matches character c for lo <= c <= hi “` */ SearchPattern bool `yaml:",omitempty"` }
Spec defines a specification for a "file" resource parsed from an updatecli manifest file