REST Resource: projects.locations.spaces.catalogs.templates.revisions

Resource: CatalogTemplateRevision

Template revisions inside a catalog.

JSON representation
{
  "name": string,
  "description": string,
  "type": enum (TemplateType),
  "createTime": string,
  "updateTime": string,
  "templateMetadata": {
    object (TFBlueprintMetadata)
  },
  "state": enum (State),
  "applicationTemplateRevision": {
    object (SerializedApplicationTemplate)
  },
  "helmChartMetadata": {
    object (HelmChartMetadata)
  },
  "uuid": string,
  "metadataInput": {
    object (MetadataInput)
  },
  "templateCategory": enum (TemplateCategory),

  // Union field artifact_location can be only one of the following:
  "gitSource": {
    object (GitSource)
  },
  "gcsSourceUri": string,
  "applicationTemplateRevisionSource": string,
  "developerConnectSourceConfig": {
    object (DeveloperConnectSourceConfig)
  },
  "ociRepo": {
    object (OciRepo)
  }
  // End of list of possible types for union field artifact_location.
}
Fields
name

string

Identifier. The catalog template revision name. projects/$project/locations/$location/spaces/$space/catalogs/$catalog/templates/$template/revisions/$revision

description

string

Optional. The catalog template revision description.

type

enum (TemplateType)

Optional. The Application Design Center assembly template type.

createTime

string (Timestamp format)

Output only. The catalog template creation timestamp.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Output only. The catalog template update timestamp.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

templateMetadata

object (TFBlueprintMetadata)

Output only. Template metadata related to Terraform input and output.

state

enum (State)

Output only. The template state (validating/ready/invalid).

applicationTemplateRevision

object (SerializedApplicationTemplate)

Output only. The application template revision.

helmChartMetadata

object (HelmChartMetadata)

Output only. The helm chart metadata.

uuid

string

Output only. UUID of the template revision.

metadataInput

object (MetadataInput)

Optional. Metadata input.

templateCategory

enum (TemplateCategory)

Output only. The category of the ADC template.

Union field artifact_location. The artifact location of the Terraform in the template. artifact_location can be only one of the following:
gitSource

object (GitSource)

Optional. The git source.

gcsSourceUri

string

Optional. The Cloud Storage URI, which must be in the format gs://[bucket] or gs://[bucket]/[object].

applicationTemplateRevisionSource

string

Optional. The application template revision source.

developerConnectSourceConfig

object (DeveloperConnectSourceConfig)

Optional. Configuration for fetching content from source code repository such as GitHub or Bitbucket through Developer Connect.

ociRepo

object (OciRepo)

Optional. The Open Container Initiative (OCI) repo source that contains helm charts.

State

The template state.

Enums
STATE_UNSPECIFIED Default.
VALIDATING The template is being validated.
ACTIVE The template is ready to be used.
INVALID The template is invalid.

MetadataInput

Metadata for the input

JSON representation
{
  "spec": {
    object (MetadataInputSpec)
  }
}
Fields
spec

object (MetadataInputSpec)

Required. spec containing the metadata

MetadataInputSpec

Specifications for the input

JSON representation
{
  "info": {
    object (TemplateInfo)
  },
  "interfaces": {
    object (TemplateSchema)
  },
  "requirements": {
    object (TemplateRequirements)
  },
  "ui": {
    object (TemplateUi)
  }
}
Fields
info

object (TemplateInfo)

Optional. TemplateInfo provides the actuation tool information.

interfaces

object (TemplateSchema)

Optional. TemplateSchemas provides the input variables lists and connection information.

requirements

object (TemplateRequirements)

Required. TemplateRequirements defines the roles required and the provider versions.

ui

object (TemplateUi)

Optional. TemplateUi defines the UI related information for the Template.

TemplateInfo

TemplateInfo provides the actuation tool information.

JSON representation
{
  "actuationTool": {
    object (IacFormatInfo)
  }
}
Fields
actuationTool

object (IacFormatInfo)

Required. IaCFormatInfo defines the actuation tool used to provision the Template.

IacFormatInfo

IacFormatInfo defines the actuation tool used to provision the Template.

JSON representation
{
  "flavor": string,
  "version": string
}
Fields
flavor

string

Required. Flavor is the type of the actuation tool.

version

string

Required. Required version for the actuation tool. required_version = ">= 0.13"

TemplateSchema

TemplateSchema provides the input variables lists and connection information.

JSON representation
{
  "variables": [
    {
      object (TemplateVariable)
    }
  ]
}
Fields
variables[]

object (TemplateVariable)

Required. All defined variables for the Template

TemplateVariable

TemplateTerraform inputs.

JSON representation
{
  "name": string,
  "connections": [
    {
      object (TemplateConnections)
    }
  ]
}
Fields
name

string

Required. Input variable name present in Terraform.

connections[]

object (TemplateConnections)

Required. Terraform input connections.

TemplateConnections

TemplateConnections

JSON representation
{
  "source": {
    object (ConnectionSource)
  },
  "spec": {
    object (ConnectionSpec)
  }
}
Fields
source

object (ConnectionSource)

Required. Source of the connection.

spec

object (ConnectionSpec)

Required. Connection specifications.

ConnectionSource

Defines the source of a connection.

JSON representation
{
  "source": string,
  "version": string
}
Fields
source

string

Required. Source of the connection. Defined using the same format as module source of form [hostname]/namespace/name/provider for registry references and unprefixed github.com URLs for github references.

version

string

Required. Version constraint syntax using the same format as module version constraints.

ConnectionSpec

Defines the specifications of a connection.

JSON representation
{
  "outputExpr": string,
  "inputPath": string
}
Fields
outputExpr

string

Required. Output expression identifying output being connected to variable.

inputPath

string

Optional. Optional dot separated attribuite notation to connect to a specific object field of the input variable.

TemplateRequirements

TemplateRequirements defines the roles required and the associated services that need to be enabled to provision Template resources.

JSON representation
{
  "roles": [
    {
      object (TemplateRoles)
    }
  ],
  "providerVersions": [
    {
      object (ProviderVersion)
    }
  ]
}
Fields
roles[]

object (TemplateRoles)

Required. All roles required for the component

providerVersions[]

object (ProviderVersion)

Required. Required provider versions.

TemplateRoles

Template Roles provide the level and roles

JSON representation
{
  "level": string,
  "roles": [
    string
  ]
}
Fields
level

string

Required. Level of the role.

roles[]

string

Required. List of roles.

TemplateUi

TemplateUi defines the UI related information for the Template.

JSON representation
{
  "input": {
    object (TemplateUiInput)
  }
}
Fields
input

object (TemplateUiInput)

Required. The top-level input section that defines the list of variables and their sections on the deployment page.

TemplateUiInput

TemplateUiInput defines the list of variables and their sections on the deployment page.

JSON representation
{
  "variables": {
    string: {
      object (DisplayVariable)
    },
    ...
  }
}
Fields
variables

map (key: string, value: object (DisplayVariable))

Required. variables is a map defining all inputs on the UI.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

DisplayVariable

Additional display specific Template pertaining to a particular input variable.

JSON representation
{
  "name": string,
  "title": string
}
Fields
name

string

Required. The variable name from the corresponding standard Template file.

title

string

Required. Visible title for the variable on the UI. If not present, Name will be used for the Title.

Methods

create

Creates a template revision.

delete

Deletes a template revision.

get

Gets details about a template revision.

list

Lists template revisions.