Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var AWSSecret = function.New(&function.Spec{ Params: []function.Parameter{ { Name: "name", Type: cty.String, AllowNull: false, AllowUnknown: false, }, { Name: "key", Type: cty.String, AllowNull: true, AllowUnknown: false, }, }, Type: function.StaticReturnType(cty.String), Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { name := args[0].AsString() var key string if !args[1].IsNull() && args[1].IsWhollyKnown() { key = args[1].AsString() } val, err := commontpl.GetAWSSecret(name, key) return cty.StringVal(val), err }, })
AWSSecret constructs a function that retrieves secrets from aws secrets manager. If Key field is not set then we will return first secret key stored in secret name.
View Source
var ConsulFunc = function.New(&function.Spec{ Params: []function.Parameter{ { Name: "key", Type: cty.String, }, }, Type: function.StaticReturnType(cty.String), Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { key := args[0].AsString() val, err := commontpl.Consul(key) return cty.StringVal(val), err }, })
ConsulFunc constructs a function that retrieves KV secrets from HC vault
View Source
var EnvFunc = function.New(&function.Spec{ Params: []function.Parameter{ { Name: "key", Type: cty.String, AllowNull: false, AllowUnknown: false, }, }, Type: function.StaticReturnType(cty.String), Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { key := args[0].AsString() value := os.Getenv(key) return cty.StringVal(value), nil }, })
EnvFunc constructs a function that returns a string representation of the env var behind a value
View Source
var LengthFunc = function.New(&function.Spec{ Params: []function.Parameter{ { Name: "value", Type: cty.DynamicPseudoType, AllowDynamicType: true, AllowUnknown: true, }, }, Type: func(args []cty.Value) (cty.Type, error) { collTy := args[0].Type() switch { case collTy == cty.String || collTy.IsTupleType() || collTy.IsObjectType() || collTy.IsListType() || collTy.IsMapType() || collTy.IsSetType() || collTy == cty.DynamicPseudoType: return cty.Number, nil default: return cty.Number, errors.New("argument must be a string, a collection type, or a structural type") } }, Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { coll := args[0] collTy := args[0].Type() switch { case collTy == cty.DynamicPseudoType: return cty.UnknownVal(cty.Number), nil case collTy.IsTupleType(): l := len(collTy.TupleElementTypes()) return cty.NumberIntVal(int64(l)), nil case collTy.IsObjectType(): l := len(collTy.AttributeTypes()) return cty.NumberIntVal(int64(l)), nil case collTy == cty.String: return stdlib.Strlen(coll) case collTy.IsListType() || collTy.IsSetType() || collTy.IsMapType(): return coll.Length(), nil default: return cty.UnknownVal(cty.Number), errors.New("impossible value type for length(...)") } }, })
View Source
var TimestampFunc = function.New(&function.Spec{ Params: []function.Parameter{}, Type: function.StaticReturnType(cty.String), Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { return cty.StringVal(time.Now().UTC().Format(time.RFC3339)), nil }, })
TimestampFunc constructs a function that returns a string representation of the current date and time.
View Source
var VaultFunc = function.New(&function.Spec{ Params: []function.Parameter{ { Name: "path", Type: cty.String, }, { Name: "key", Type: cty.String, }, }, Type: function.StaticReturnType(cty.String), Impl: func(args []cty.Value, retType cty.Type) (cty.Value, error) { path := args[0].AsString() key := args[1].AsString() val, err := commontpl.Vault(path, key) return cty.StringVal(val), err }, })
VaultFunc constructs a function that retrieves KV secrets from HC vault
Functions ¶
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.