diff --git a/api/ocm/extensions/accessmethods/helm/method.go b/api/ocm/extensions/accessmethods/helm/method.go
index 683952a6b4..197eadd3b1 100644
--- a/api/ocm/extensions/accessmethods/helm/method.go
+++ b/api/ocm/extensions/accessmethods/helm/method.go
@@ -21,11 +21,17 @@ import (
const (
Type = "helm"
TypeV1 = Type + runtime.VersionSeparator + "v1"
+
+ UpperType = "Helm"
+ UpperTypeV1 = UpperType + runtime.VersionSeparator + "v1"
)
func init() {
accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](Type, accspeccpi.WithDescription(usage)))
accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](TypeV1, accspeccpi.WithFormatSpec(formatV1), accspeccpi.WithConfigHandler(ConfigHandler())))
+
+ accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](UpperType))
+ accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](UpperTypeV1))
}
// New creates a new Helm Chart accessor for helm repositories.
diff --git a/api/ocm/extensions/accessmethods/localblob/method.go b/api/ocm/extensions/accessmethods/localblob/method.go
index 297f9c949e..312aa82825 100644
--- a/api/ocm/extensions/accessmethods/localblob/method.go
+++ b/api/ocm/extensions/accessmethods/localblob/method.go
@@ -15,6 +15,9 @@ import (
const (
Type = "localBlob"
TypeV1 = Type + runtime.VersionSeparator + "v1"
+
+ UpperType = "LocalBlob"
+ UpperTypeV1 = UpperType + runtime.VersionSeparator + "v1"
)
// this package shows how to implement access types with multiple serialization versions.
@@ -51,6 +54,9 @@ func init() {
Must(versions.Register(accspeccpi.NewAccessSpecTypeByConverter[*AccessSpec, *AccessSpecV1](Type, &converterV1{}, accspeccpi.WithDescription(usage))))
Must(versions.Register(accspeccpi.NewAccessSpecTypeByConverter[*AccessSpec, *AccessSpecV1](TypeV1, &converterV1{}, accspeccpi.WithFormatSpec(formatV1), accspeccpi.WithConfigHandler(ConfigHandler()))))
accspeccpi.RegisterAccessTypeVersions(versions)
+
+ accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecTypeByConverter[*AccessSpec, *AccessSpecV1](UpperType, &converterV1{}))
+ accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecTypeByConverter[*AccessSpec, *AccessSpecV1](UpperTypeV1, &converterV1{}))
}
func Is(spec accspeccpi.AccessSpec) bool {
diff --git a/api/ocm/extensions/accessmethods/ociblob/method.go b/api/ocm/extensions/accessmethods/ociblob/method.go
index aad99685e0..07677fb038 100644
--- a/api/ocm/extensions/accessmethods/ociblob/method.go
+++ b/api/ocm/extensions/accessmethods/ociblob/method.go
@@ -21,11 +21,17 @@ import (
const (
Type = "ociBlob"
TypeV1 = Type + runtime.VersionSeparator + "v1"
+
+ UpperType = "OCIImageLayer"
+ UpperTypeV1 = UpperType + runtime.VersionSeparator + "v1"
)
func init() {
accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](Type, accspeccpi.WithDescription(usage)))
accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](TypeV1, accspeccpi.WithFormatSpec(formatV1), accspeccpi.WithConfigHandler(ConfigHandler())))
+
+ accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](UpperType))
+ accspeccpi.RegisterAccessType(accspeccpi.NewAccessSpecType[*AccessSpec](UpperTypeV1))
}
// New creates a new OCIBlob accessor.
diff --git a/cmds/ocm/commands/ocmcmds/common/inputs/types/directory/type.go b/cmds/ocm/commands/ocmcmds/common/inputs/types/directory/type.go
index 9250ee9571..acc1bd1214 100644
--- a/cmds/ocm/commands/ocmcmds/common/inputs/types/directory/type.go
+++ b/cmds/ocm/commands/ocmcmds/common/inputs/types/directory/type.go
@@ -5,10 +5,14 @@ import (
"ocm.software/ocm/cmds/ocm/commands/ocmcmds/common/inputs"
)
-const TYPE = "dir"
+const (
+ TYPE = "dir"
+ UPPER_TYPE = "Dir"
+)
func init() {
inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(TYPE, &Spec{}, usage, ConfigHandler()))
+ inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(UPPER_TYPE, &Spec{}, usage, ConfigHandler()))
}
const usage = `
diff --git a/cmds/ocm/commands/ocmcmds/common/inputs/types/file/type.go b/cmds/ocm/commands/ocmcmds/common/inputs/types/file/type.go
index 1193534fdc..fa77884495 100644
--- a/cmds/ocm/commands/ocmcmds/common/inputs/types/file/type.go
+++ b/cmds/ocm/commands/ocmcmds/common/inputs/types/file/type.go
@@ -4,9 +4,14 @@ import (
"ocm.software/ocm/cmds/ocm/commands/ocmcmds/common/inputs"
)
-const TYPE = "file"
+const (
+ TYPE = "file"
+ UPPER_TYPE = "File"
+)
func init() {
inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(TYPE, &Spec{},
Usage("The path must denote a file relative the resources file. "), ConfigHandler()))
+ inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(UPPER_TYPE, &Spec{},
+ Usage("The path must denote a file relative the resources file. "), ConfigHandler()))
}
diff --git a/cmds/ocm/commands/ocmcmds/common/inputs/types/helm/type.go b/cmds/ocm/commands/ocmcmds/common/inputs/types/helm/type.go
index 785fb77466..1da8317c45 100644
--- a/cmds/ocm/commands/ocmcmds/common/inputs/types/helm/type.go
+++ b/cmds/ocm/commands/ocmcmds/common/inputs/types/helm/type.go
@@ -4,10 +4,14 @@ import (
"ocm.software/ocm/cmds/ocm/commands/ocmcmds/common/inputs"
)
-const TYPE = "helm"
+const (
+ TYPE = "helm"
+ UPPER_TYPE = "Helm"
+)
func init() {
inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(TYPE, &Spec{}, usage, ConfigHandler()))
+ inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(UPPER_TYPE, &Spec{}, usage, ConfigHandler()))
}
const usage = `
diff --git a/cmds/ocm/commands/ocmcmds/common/inputs/types/utf8/type.go b/cmds/ocm/commands/ocmcmds/common/inputs/types/utf8/type.go
index ab2936c68a..918699d48c 100644
--- a/cmds/ocm/commands/ocmcmds/common/inputs/types/utf8/type.go
+++ b/cmds/ocm/commands/ocmcmds/common/inputs/types/utf8/type.go
@@ -5,11 +5,16 @@ import (
"ocm.software/ocm/cmds/ocm/commands/ocmcmds/common/inputs/cpi"
)
-const TYPE = "utf8"
+const (
+ TYPE = "utf8"
+ UPPER_TYPE = "UTF8"
+)
func init() {
inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(TYPE, &Spec{},
usage, ConfigHandler()))
+ inputs.DefaultInputTypeScheme.Register(inputs.NewInputType(UPPER_TYPE, &Spec{},
+ usage, ConfigHandler()))
}
const usage = `
diff --git a/docs/reference/ocm_add_resource-configuration.md b/docs/reference/ocm_add_resource-configuration.md
index 5528e7b1e8..b070f96e3b 100644
--- a/docs/reference/ocm_add_resource-configuration.md
+++ b/docs/reference/ocm_add_resource-configuration.md
@@ -182,6 +182,168 @@ There are several templaters that can be selected by the --templatertype in the input field:
+- Input type Dir
+
+ The path must denote a directory relative to the resources file, which is packed
+ with tar and optionally compressed
+ if the compress field is set to true. If the field
+ preserveDir is set to true the directory itself is added to the tar.
+ If the field followSymLinks is set to true, symbolic
+ links are not packed but their targets files or folders.
+ With the list fields includeFiles and excludeFiles it is
+ possible to specify which files should be included or excluded. The values are
+ regular expression used to match relative file paths. If no includes are specified
+ all file not explicitly excluded are used.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to directory relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/x-tar and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the file content should be stored
+ compressed or not.
+
+ - **preserveDir** *bool*
+
+ This OPTIONAL property describes whether the specified directory with its
+ basename should be included as top level folder.
+
+ - **followSymlinks** *bool*
+
+ This OPTIONAL property describes whether symbolic links should be followed or
+ included as links.
+
+ - **excludeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should NOT be included in the tar file. It takes precedence over
+ the include match.
+
+ - **includeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should be included in the tar file. If this option is not given
+ all files not explicitly excluded are used.
+
+ Options used to configure fields: --inputCompress, --inputExcludes, --inputFollowSymlinks, --inputIncludes, --inputPath, --inputPreserveDir, --mediaType
+
+- Input type File
+
+ The path must denote a file relative the resources file.
+ The content is compressed if the compress field
+ is set to true.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the path to the file relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputPath, --mediaType
+
+- Input type Helm
+
+ The path must denote an helm chart archive or directory
+ relative to the resources file or a chart name in a helm chart repository.
+ The denoted chart is packed as an OCI artifact set.
+ For the filesystem version additional provider info is taken from a file with
+ the same name and the suffix .prov.
+
+ If the chart should just be stored as plain archive, please use the
+ type file or dir, instead.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to the helm chart relative to the
+ resource file location.
+
+ - **version** *string*
+
+ This OPTIONAL property can be set to configure an explicit version hint.
+ If not specified the version from the chart will be used.
+ Basically, it is a good practice to use the component version for local resources
+ This can be achieved by using templating for this attribute in the resource file.
+
+ - **helmRepository** *string*
+
+ This OPTIONAL property can be set, if the helm chart should be loaded from
+ a helm repository instead of the local filesystem. It describes
+ the base URL of the chart repository. If specified, the path field
+ must describe the name of the chart in the chart repository, and version
+ must describe the version of the chart imported from the chart repository
+
+ - **repository** *string*
+
+ This OPTIONAL property can be used to specify the repository hint for the
+ generated local artifact access. It is prefixed by the component name if
+ it does not start with slash "/".
+
+ - **caCertFile** *string*
+
+ This OPTIONAL property can be used to specify a relative filename for
+ the TLS root certificate used to access a helm repository.
+
+ - **caCert** *string*
+
+ This OPTIONAL property can be used to specify a TLS root certificate used to
+ access a helm repository.
+
+ Options used to configure fields: --hint, --inputCompress, --inputHelmRepository, --inputPath, --inputVersion, --mediaType
+
+- Input type UTF8
+
+ This blob type is used to provide inline text based content (UTF8). The
+ specification supports the following fields:
+ - **text** *string*
+
+ The utf8 string content to provide.
+
+ - **json** *JSON or JSON string interpreted as JSON*
+
+ The content emitted as JSON.
+
+ - **formattedJson** *YAML/JSON or JSON/YAML string interpreted as JSON*
+
+ The content emitted as formatted JSON.
+
+ - **yaml** *AML/JSON or JSON/YAML string interpreted as YAML*
+
+ The content emitted as YAML.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputFormattedJson, --inputJson, --inputText, --inputYaml, --mediaType
+
- Input type binary
This blob type is used to provide base64 encoded binary content. The
diff --git a/docs/reference/ocm_add_resources.md b/docs/reference/ocm_add_resources.md
index db108ecf8e..3f246ce852 100644
--- a/docs/reference/ocm_add_resources.md
+++ b/docs/reference/ocm_add_resources.md
@@ -194,6 +194,168 @@ There are several templaters that can be selected by the --templatertype in the input field:
+- Input type Dir
+
+ The path must denote a directory relative to the resources file, which is packed
+ with tar and optionally compressed
+ if the compress field is set to true. If the field
+ preserveDir is set to true the directory itself is added to the tar.
+ If the field followSymLinks is set to true, symbolic
+ links are not packed but their targets files or folders.
+ With the list fields includeFiles and excludeFiles it is
+ possible to specify which files should be included or excluded. The values are
+ regular expression used to match relative file paths. If no includes are specified
+ all file not explicitly excluded are used.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to directory relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/x-tar and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the file content should be stored
+ compressed or not.
+
+ - **preserveDir** *bool*
+
+ This OPTIONAL property describes whether the specified directory with its
+ basename should be included as top level folder.
+
+ - **followSymlinks** *bool*
+
+ This OPTIONAL property describes whether symbolic links should be followed or
+ included as links.
+
+ - **excludeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should NOT be included in the tar file. It takes precedence over
+ the include match.
+
+ - **includeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should be included in the tar file. If this option is not given
+ all files not explicitly excluded are used.
+
+ Options used to configure fields: --inputCompress, --inputExcludes, --inputFollowSymlinks, --inputIncludes, --inputPath, --inputPreserveDir, --mediaType
+
+- Input type File
+
+ The path must denote a file relative the resources file.
+ The content is compressed if the compress field
+ is set to true.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the path to the file relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputPath, --mediaType
+
+- Input type Helm
+
+ The path must denote an helm chart archive or directory
+ relative to the resources file or a chart name in a helm chart repository.
+ The denoted chart is packed as an OCI artifact set.
+ For the filesystem version additional provider info is taken from a file with
+ the same name and the suffix .prov.
+
+ If the chart should just be stored as plain archive, please use the
+ type file or dir, instead.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to the helm chart relative to the
+ resource file location.
+
+ - **version** *string*
+
+ This OPTIONAL property can be set to configure an explicit version hint.
+ If not specified the version from the chart will be used.
+ Basically, it is a good practice to use the component version for local resources
+ This can be achieved by using templating for this attribute in the resource file.
+
+ - **helmRepository** *string*
+
+ This OPTIONAL property can be set, if the helm chart should be loaded from
+ a helm repository instead of the local filesystem. It describes
+ the base URL of the chart repository. If specified, the path field
+ must describe the name of the chart in the chart repository, and version
+ must describe the version of the chart imported from the chart repository
+
+ - **repository** *string*
+
+ This OPTIONAL property can be used to specify the repository hint for the
+ generated local artifact access. It is prefixed by the component name if
+ it does not start with slash "/".
+
+ - **caCertFile** *string*
+
+ This OPTIONAL property can be used to specify a relative filename for
+ the TLS root certificate used to access a helm repository.
+
+ - **caCert** *string*
+
+ This OPTIONAL property can be used to specify a TLS root certificate used to
+ access a helm repository.
+
+ Options used to configure fields: --hint, --inputCompress, --inputHelmRepository, --inputPath, --inputVersion, --mediaType
+
+- Input type UTF8
+
+ This blob type is used to provide inline text based content (UTF8). The
+ specification supports the following fields:
+ - **text** *string*
+
+ The utf8 string content to provide.
+
+ - **json** *JSON or JSON string interpreted as JSON*
+
+ The content emitted as JSON.
+
+ - **formattedJson** *YAML/JSON or JSON/YAML string interpreted as JSON*
+
+ The content emitted as formatted JSON.
+
+ - **yaml** *AML/JSON or JSON/YAML string interpreted as YAML*
+
+ The content emitted as YAML.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputFormattedJson, --inputJson, --inputText, --inputYaml, --mediaType
+
- Input type binary
This blob type is used to provide base64 encoded binary content. The
diff --git a/docs/reference/ocm_add_source-configuration.md b/docs/reference/ocm_add_source-configuration.md
index e2a4deea98..44435d73ae 100644
--- a/docs/reference/ocm_add_source-configuration.md
+++ b/docs/reference/ocm_add_source-configuration.md
@@ -182,6 +182,168 @@ There are several templaters that can be selected by the --templatertype in the input field:
+- Input type Dir
+
+ The path must denote a directory relative to the resources file, which is packed
+ with tar and optionally compressed
+ if the compress field is set to true. If the field
+ preserveDir is set to true the directory itself is added to the tar.
+ If the field followSymLinks is set to true, symbolic
+ links are not packed but their targets files or folders.
+ With the list fields includeFiles and excludeFiles it is
+ possible to specify which files should be included or excluded. The values are
+ regular expression used to match relative file paths. If no includes are specified
+ all file not explicitly excluded are used.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to directory relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/x-tar and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the file content should be stored
+ compressed or not.
+
+ - **preserveDir** *bool*
+
+ This OPTIONAL property describes whether the specified directory with its
+ basename should be included as top level folder.
+
+ - **followSymlinks** *bool*
+
+ This OPTIONAL property describes whether symbolic links should be followed or
+ included as links.
+
+ - **excludeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should NOT be included in the tar file. It takes precedence over
+ the include match.
+
+ - **includeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should be included in the tar file. If this option is not given
+ all files not explicitly excluded are used.
+
+ Options used to configure fields: --inputCompress, --inputExcludes, --inputFollowSymlinks, --inputIncludes, --inputPath, --inputPreserveDir, --mediaType
+
+- Input type File
+
+ The path must denote a file relative the resources file.
+ The content is compressed if the compress field
+ is set to true.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the path to the file relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputPath, --mediaType
+
+- Input type Helm
+
+ The path must denote an helm chart archive or directory
+ relative to the resources file or a chart name in a helm chart repository.
+ The denoted chart is packed as an OCI artifact set.
+ For the filesystem version additional provider info is taken from a file with
+ the same name and the suffix .prov.
+
+ If the chart should just be stored as plain archive, please use the
+ type file or dir, instead.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to the helm chart relative to the
+ resource file location.
+
+ - **version** *string*
+
+ This OPTIONAL property can be set to configure an explicit version hint.
+ If not specified the version from the chart will be used.
+ Basically, it is a good practice to use the component version for local resources
+ This can be achieved by using templating for this attribute in the resource file.
+
+ - **helmRepository** *string*
+
+ This OPTIONAL property can be set, if the helm chart should be loaded from
+ a helm repository instead of the local filesystem. It describes
+ the base URL of the chart repository. If specified, the path field
+ must describe the name of the chart in the chart repository, and version
+ must describe the version of the chart imported from the chart repository
+
+ - **repository** *string*
+
+ This OPTIONAL property can be used to specify the repository hint for the
+ generated local artifact access. It is prefixed by the component name if
+ it does not start with slash "/".
+
+ - **caCertFile** *string*
+
+ This OPTIONAL property can be used to specify a relative filename for
+ the TLS root certificate used to access a helm repository.
+
+ - **caCert** *string*
+
+ This OPTIONAL property can be used to specify a TLS root certificate used to
+ access a helm repository.
+
+ Options used to configure fields: --hint, --inputCompress, --inputHelmRepository, --inputPath, --inputVersion, --mediaType
+
+- Input type UTF8
+
+ This blob type is used to provide inline text based content (UTF8). The
+ specification supports the following fields:
+ - **text** *string*
+
+ The utf8 string content to provide.
+
+ - **json** *JSON or JSON string interpreted as JSON*
+
+ The content emitted as JSON.
+
+ - **formattedJson** *YAML/JSON or JSON/YAML string interpreted as JSON*
+
+ The content emitted as formatted JSON.
+
+ - **yaml** *AML/JSON or JSON/YAML string interpreted as YAML*
+
+ The content emitted as YAML.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputFormattedJson, --inputJson, --inputText, --inputYaml, --mediaType
+
- Input type binary
This blob type is used to provide base64 encoded binary content. The
diff --git a/docs/reference/ocm_add_sources.md b/docs/reference/ocm_add_sources.md
index 05d38031ec..68d04f106a 100644
--- a/docs/reference/ocm_add_sources.md
+++ b/docs/reference/ocm_add_sources.md
@@ -192,6 +192,168 @@ There are several templaters that can be selected by the --templatertype in the input field:
+- Input type Dir
+
+ The path must denote a directory relative to the resources file, which is packed
+ with tar and optionally compressed
+ if the compress field is set to true. If the field
+ preserveDir is set to true the directory itself is added to the tar.
+ If the field followSymLinks is set to true, symbolic
+ links are not packed but their targets files or folders.
+ With the list fields includeFiles and excludeFiles it is
+ possible to specify which files should be included or excluded. The values are
+ regular expression used to match relative file paths. If no includes are specified
+ all file not explicitly excluded are used.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to directory relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/x-tar and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the file content should be stored
+ compressed or not.
+
+ - **preserveDir** *bool*
+
+ This OPTIONAL property describes whether the specified directory with its
+ basename should be included as top level folder.
+
+ - **followSymlinks** *bool*
+
+ This OPTIONAL property describes whether symbolic links should be followed or
+ included as links.
+
+ - **excludeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should NOT be included in the tar file. It takes precedence over
+ the include match.
+
+ - **includeFiles** *list of regex*
+
+ This OPTIONAL property describes regular expressions used to match files
+ that should be included in the tar file. If this option is not given
+ all files not explicitly excluded are used.
+
+ Options used to configure fields: --inputCompress, --inputExcludes, --inputFollowSymlinks, --inputIncludes, --inputPath, --inputPreserveDir, --mediaType
+
+- Input type File
+
+ The path must denote a file relative the resources file.
+ The content is compressed if the compress field
+ is set to true.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the path to the file relative to the
+ resource file location.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputPath, --mediaType
+
+- Input type Helm
+
+ The path must denote an helm chart archive or directory
+ relative to the resources file or a chart name in a helm chart repository.
+ The denoted chart is packed as an OCI artifact set.
+ For the filesystem version additional provider info is taken from a file with
+ the same name and the suffix .prov.
+
+ If the chart should just be stored as plain archive, please use the
+ type file or dir, instead.
+
+ This blob type specification supports the following fields:
+ - **path** *string*
+
+ This REQUIRED property describes the file path to the helm chart relative to the
+ resource file location.
+
+ - **version** *string*
+
+ This OPTIONAL property can be set to configure an explicit version hint.
+ If not specified the version from the chart will be used.
+ Basically, it is a good practice to use the component version for local resources
+ This can be achieved by using templating for this attribute in the resource file.
+
+ - **helmRepository** *string*
+
+ This OPTIONAL property can be set, if the helm chart should be loaded from
+ a helm repository instead of the local filesystem. It describes
+ the base URL of the chart repository. If specified, the path field
+ must describe the name of the chart in the chart repository, and version
+ must describe the version of the chart imported from the chart repository
+
+ - **repository** *string*
+
+ This OPTIONAL property can be used to specify the repository hint for the
+ generated local artifact access. It is prefixed by the component name if
+ it does not start with slash "/".
+
+ - **caCertFile** *string*
+
+ This OPTIONAL property can be used to specify a relative filename for
+ the TLS root certificate used to access a helm repository.
+
+ - **caCert** *string*
+
+ This OPTIONAL property can be used to specify a TLS root certificate used to
+ access a helm repository.
+
+ Options used to configure fields: --hint, --inputCompress, --inputHelmRepository, --inputPath, --inputVersion, --mediaType
+
+- Input type UTF8
+
+ This blob type is used to provide inline text based content (UTF8). The
+ specification supports the following fields:
+ - **text** *string*
+
+ The utf8 string content to provide.
+
+ - **json** *JSON or JSON string interpreted as JSON*
+
+ The content emitted as JSON.
+
+ - **formattedJson** *YAML/JSON or JSON/YAML string interpreted as JSON*
+
+ The content emitted as formatted JSON.
+
+ - **yaml** *AML/JSON or JSON/YAML string interpreted as YAML*
+
+ The content emitted as YAML.
+
+ - **mediaType** *string*
+
+ This OPTIONAL property describes the media type to store with the local blob.
+ The default media type is application/octet-stream and
+ application/gzip if compression is enabled.
+
+ - **compress** *bool*
+
+ This OPTIONAL property describes whether the content should be stored
+ compressed or not.
+
+ Options used to configure fields: --inputCompress, --inputFormattedJson, --inputJson, --inputText, --inputYaml, --mediaType
+
- Input type binary
This blob type is used to provide base64 encoded binary content. The