Documentation ¶
Index ¶
- func Contains(s []string, e string) bool
- func CopyMap(o map[string]string) (r map[string]string)
- func MarshalObjToStruct(input interface{}) (*structpb.Struct, error)
- func MarshalStruct(in proto.Message, out *structpb.Struct) error
- func MarshalToString(msg proto.Message) (string, error)
- func ReplaceTemplateCommandArgs(ctx context.Context, command []string, in io.InputReader, ...) ([]string, error)
- func UnionMaps(maps ...map[string]string) map[string]string
- func UnmarshalStruct(structObj *structpb.Struct, msg proto.Message) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MarshalObjToStruct ¶
TODO: Use the stdlib version in the future, or move there if not there. Don't use this if input is a proto Message.
func ReplaceTemplateCommandArgs ¶
func ReplaceTemplateCommandArgs(ctx context.Context, command []string, in io.InputReader, out io.OutputFilePaths) ([]string, error)
Evaluates templates in each command with the equivalent value from passed args. Templates are case-insensitive Supported templates are:
- {{ .InputFile }} to receive the input file path. The protocol used will depend on the underlying system configuration. E.g. s3://bucket/key/to/file.pb or /var/run/local.pb are both valid.
- {{ .OutputPrefix }} to receive the path prefix for where to store the outputs.
- {{ .Inputs.myInput }} to receive the actual value of the input passed. See docs on LiteralMapToTemplateArgs for how what to expect each literal type to be serialized as.
If a command isn't a valid template or failed to evaluate, it'll be returned as is. NOTE: I wanted to do in-place replacement, until I realized that in-place replacement will alter the definition of the graph. This is not desirable, as we may have to retry and in that case the replacement will not work and we want to create a new location for outputs
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.