flux v2.9.5

ArtifactGenerator.spec.artifacts[].copy

Copy defines a list of copy operations to perform from the sources to the generated artifact. The copy operations are performed in the order they are listed with existing files being overwritten by later copy operations.

4 fields
ArtifactGenerator.spec.artifacts[].copy fields and descriptions
Field / TypeDescription
string[]

Exclude specifies a list of glob patterns to exclude files and dirs matched by the 'From' field. Patterns are matched against paths relative to the source alias root or to the non-glob prefix of 'From'. Patterns without a separator (e.g. "*.md") match the file name at any depth.

  • maxItems: 100
from
string required

From specifies the source (by alias) and the glob pattern to match files. The format is "@<alias>/<glob-pattern>". When pathPattern is set, the path may use capture placeholders such as "{app}".

  • minLength: 1
  • maxLength: 1024
  • pattern: ^@([a-z0-9]([a-z0-9_-]*[a-z0-9])?)/(.*)$
strategy
string

Strategy specifies the copy strategy to use. 'Overwrite' will overwrite existing files in the destination. 'Merge' is for merging YAML files using Helm values merge strategy. 'Extract' is for extracting the contents of tarball archives (.tar.gz, .tgz) When using glob patterns, non-tarball files are silently skipped. For single file sources, the file must be a tarball or an error is returned. Directories are not supported. If not specified, defaults to 'Overwrite'.

  • enum: ["Overwrite","Merge","Extract"]
to
string required

To specifies the destination path within the artifact. The format is "@artifact/path", the alias "artifact" refers to the root path of the generated artifact. When pathPattern is set, the path may use capture placeholders such as "{app}".

  • minLength: 1
  • maxLength: 1024
  • pattern: ^@artifact/([^/]{0,1}|[^./][^/]|[.][^./]|[^/]{3,})(/([^/]{0,1}|[^./][^/]|[.][^./]|[^/]{3,}))*$