Skip to content

Latest commit

 

History

History
189 lines (161 loc) · 4.89 KB

types.md

File metadata and controls

189 lines (161 loc) · 4.89 KB

Types

This documents the resource and media type that are used by the landscaper and some deployers.

For known target types see target types

Resource type refer to the type defined in a component descriptor.

Index:

Blueprints

ResourceType landscaper.gardener.cloud/blueprint (deprecated blueprint)
Access localFilesystemBlob:
  • DEPRECATED:application/vnd.gardener.landscaper.blueprint.v1+tar+gzip
  • application/vnd.gardener.landscaper.blueprint.layer.v1.tar+gzip

Standalone Artifact (ociRegistry):
Config
application/vnd.gardener.landscaper.blueprint.config.v1+yaml
One Layer (the compression is optional)
  • DEPRECATED:application/vnd.gardener.landscaper.blueprint.v1+tar+gzip
  • application/vnd.gardener.landscaper.blueprint.layer.v1.tar+gzip

LocalBlob:

If the blueprint is stored as local blob

Example:

resources:
- name: my-blueprint
  type: landscaper.gardener.cloud/blueprint
  access:
    type: localFilesystemBlob
    filename: my-bloc
    mediaType: application/vnd.gardener.landscaper.blueprint.layer.v1.tar+gzip

A blueprint blob is expected to be a gzipped tar that MUST contains the blueprint.yaml at the root.

Standalone Artifact:

The OCI manifest of the Blueprint in this case would look like this: Whereas the config is contains the blueprint.yaml.

{
 "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
 "schemaVersion": 2, 
 "config": { 
   "digest": "sha256:efg",
   "mediaType": "application/vnd.gardener.landscaper.blueprint.config.v1+yaml"
 },
 "layers": [
   {
     "digest": "sha256:efg",
     "mediaType": "application/vnd.gardener.landscaper.blueprint.layer.v1.tar+gzip"
   }
 ]
}
resources:
- name: my-blueprint
  type: landscaper.gardener.cloud/blueprint
  access:
    type: ociRegistry
    imageReference: <oci artifact uri>

JSON Schema

ResourceType landscaper.gardener.cloud/jsonschema
Access localFilesystemBlob:
  • DEPRECATED: application/vnd.gardener.landscaper.jsonscheme.v1+json
  • application/vnd.gardener.landscaper.jsonschema.layer.v1.json
Standalone Artifact (ociRegistry): not yet implemented

LocalBlob:

the jsonschema blob is expected to be a stored as plain json of type application/vnd.gardener.landscaper.jsonscheme.v1+json

Example:

resources:
- name: my-schema
  type: landscaper.gardener.cloud/jsonschema
  access:
    type: localFilesystemBlob
    filename: my-bloc
    mediaType: application/vnd.gardener.landscaper.jsonschema.layer.v1.json

Deployer

Helm Chart

ResourceType helm.io/chart (deprecated helm)
Access localFilesystemBlob: application/tar+gzip
Standalone Artifact (ociRegistry): oci artifact with a config containing the Chart.yaml one layer of type application/tar+gzip

LocalBlob:

If the blueprint is stored as local blob

Example:

resources:
- name: my-helm-chart
  type: helm.io/chart
  access:
    type: localFilesystemBlob
    filename: my-bloc
    mediaType: application/tar+gzip

A blueprint blob is expected to be a gzipped tar that MUST contains the blueprint.yaml at the root.

Standalone Artifact:

The helm deployer supports the default oci helm cartifact as created by the helm cli. For more information about the usage see the official helm docs

{
  "schemaVersion": 2,
  "config": {
    "mediaType": "application/vnd.cncf.helm.config.v1+json",
    "digest": "sha256:8ec7c0f2f6860037c19b54c3cfbab48d9b4b21b485a93d87b64690fdb68c2111",
    "size": 117
  },
  "layers": [
    {
      "mediaType": "application/tar+gzip",
      "digest": "sha256:1b251d38cfe948dfc0a5745b7af5ca574ecb61e52aed10b19039db39af6e1617",
      "size": 2487
    }
  ]
}
resources:
- name: my-helm-chart
  type: helm.io/chart
  access:
    type: ociRegistry
    imageReference: <oci artifact uri>