Documentation ¶
Index ¶
- Constants
- func CreateDataSetIdentifier(datasetID string) string
- func CreateStepName(moduleName string, assetID string) string
- func CreateUnstructured(group, version, kind, name, namespace string) *unstructured.Unstructured
- func DefaultTestConfiguration(t ginkgo.GinkgoTInterface)
- func GenerateModuleEndpointFQDN(releaseName string, blueprintNamespace string) string
- func GetAuthPath(authPath string) string
- func GetDataCatalogServiceAddress() string
- func GetModulesRole() string
- func GetProtocol(info *dc.DatasetDetails) (string, error)
- func GetReleaseName(applicationName string, namespace string, step app.FlowStep) string
- func GetReleaseNameByStepName(applicationName string, namespace string, stepName string) string
- func GetSystemNamespace() string
- func GetVaultAddress() string
- func Hash(value string, hashLength int) string
- func HelmConformName(name string) string
- func IsAction(actionName string) bool
- func IsDenied(actionName string) bool
- func IsTransformation(actionName string) bool
- func K8sConformName(name string) string
- func ListeningAddress(port int) string
- func NewScheme(g *gomega.WithT) *runtime.Scheme
- func PrintStructure(argStruct interface{}, log logr.Logger, argName string)
- func SetIfNotSet(key string, value string, t ginkgo.GinkgoTInterface)
- func ShortenedName(name string, maxLength int, hashLength int) string
- func StructToMap(data interface{}) (map[string]interface{}, error)
- func SupportsFlow(array []app.ModuleFlow, element app.ModuleFlow) bool
- func SupportsInterface(array []*app.InterfaceDetails, element *app.InterfaceDetails) bool
- type UnstructuredAsLabels
Constants ¶
const ( CatalogConnectorServiceAddressKey string = "CATALOG_CONNECTOR_URL" VaultAddressKey string = "VAULT_ADDRESS" VaultModulesRole string = "VAULT_MODULES_ROLE" )
Attributes that are defined in a config map or the runtime environment
Variables ¶
This section is empty.
Functions ¶
func CreateDataSetIdentifier ¶
CreateDataSetIdentifier constructs an identifier for a dataset For a JSON string, a concatenation of values is used when keys are sorted alphabetically
func CreateStepName ¶
Create a name for a step in a blueprint. Since this is part of the name of a release, this should be done in a central location to make testing easier
func CreateUnstructured ¶
func CreateUnstructured(group, version, kind, name, namespace string) *unstructured.Unstructured
CreateUnstructured creates a new Unstructured runtime object
func DefaultTestConfiguration ¶
func DefaultTestConfiguration(t ginkgo.GinkgoTInterface)
func GenerateModuleEndpointFQDN ¶
Generate fqdn for a module
func GetAuthPath ¶
GetAuthPath returns the auth method path to use It is of the form v1/auth/<auth path>/login
func GetDataCatalogServiceAddress ¶
func GetDataCatalogServiceAddress() string
GetDataCatalogServiceAddress returns the address where data catalog is running
func GetModulesRole ¶
func GetModulesRole() string
GetModulesRole returns the modules assigned authentification role for accessing dataset credentials
func GetProtocol ¶
func GetProtocol(info *dc.DatasetDetails) (string, error)
GetProtocol returns the existing data protocol
func GetReleaseName ¶
Generating release name from step
func GetReleaseNameByStepName ¶
Generate release name from step name
func GetSystemNamespace ¶
func GetSystemNamespace() string
GetSystemNamespace returns the namespace of control plane
func GetVaultAddress ¶
func GetVaultAddress() string
GetVaultAddress returns the address and port of the vault system, which is used for managing data set credentials
func HelmConformName ¶
Helm has stricter restrictions than K8s and restricts release names to 53 characters
func IsTransformation ¶
IsTransformation returns true if the data transformation is required
func K8sConformName ¶
Some k8s objects only allow for a length of 63 characters. This method shortens the name keeping a prefix and using the last 5 characters of the new name for the hash of the postfix.
func ListeningAddress ¶
func NewScheme ¶
Creates a scheme that can be used in unit tests The scheme will have the core and batch apis from K8s registered as well as the app and motion apis from Fybrik. This function can be tested with a gomega environment if passed or otherwise (if nil is passed) it will ignore tests.
func PrintStructure ¶
PrintStructure prints the structure in a textual format
func SetIfNotSet ¶
func SetIfNotSet(key string, value string, t ginkgo.GinkgoTInterface)
func ShortenedName ¶
This function shortens a name to the maximum length given and uses rest of the string that is too long as hash that gets added to the valid name.
func StructToMap ¶
StructToMap converts a struct to a map using JSON marshal
func SupportsFlow ¶
func SupportsFlow(array []app.ModuleFlow, element app.ModuleFlow) bool
SupportsFlow checks whether the given flow element can be found inside the array of flows
func SupportsInterface ¶
func SupportsInterface(array []*app.InterfaceDetails, element *app.InterfaceDetails) bool
SupportsInterface returns true iff the protocol/format list contains the given protocol/format interface
Types ¶
type UnstructuredAsLabels ¶
type UnstructuredAsLabels struct {
Data *unstructured.Unstructured
}
UnstructuredAsLabels is an implementation of labels.Labels interface which allows us to take advantage of k8s labels library for the purposes of evaluating fail and success conditions
func (UnstructuredAsLabels) Get ¶
func (c UnstructuredAsLabels) Get(label string) string
Get returns the value for the provided label.
func (UnstructuredAsLabels) Has ¶
func (c UnstructuredAsLabels) Has(label string) bool
Has returns whether the provided label exists.