Module containeranalysis

This page documents the language specification for the gcp package. If you're looking for help working with the inputs, outputs, or functions of gcp resources in a Pulumi program, please see the resource documentation for examples and API reference.

Resources

Others

Resources

Resource Note

class Note extends CustomResource

A Container Analysis note is a high-level piece of metadata that describes a type of analysis that can be done for a resource.

To get more information about Note, see:

Example Usage - Container Analysis Note Basic

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const note = new gcp.containeranalysis.Note("note", {
    attestationAuthority: {
        hint: {
            humanReadableName: "Attestor Note",
        },
    },
});

Example Usage - Container Analysis Note Attestation Full

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const note = new gcp.containeranalysis.Note("note", {
    attestationAuthority: {
        hint: {
            humanReadableName: "Attestor Note",
        },
    },
    expirationTime: "2120-10-02T15:01:23.045123456Z",
    longDescription: "a longer description of test note",
    relatedUrls: [
        {
            label: "foo",
            url: "some.url",
        },
        {
            url: "google.com",
        },
    ],
    shortDescription: "test note",
});

constructor

new Note(name: string, args: NoteArgs, opts?: pulumi.CustomResourceOptions)

Create a Note resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NoteState, opts?: pulumi.CustomResourceOptions): Note

Get an existing Note resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Note

Returns true if the given object is an instance of Note. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property attestationAuthority

public attestationAuthority: pulumi.Output<NoteAttestationAuthority>;

Note kind that represents a logical attestation “role” or “authority”. For example, an organization might have one AttestationAuthority for “QA” and one for “build”. This Note is intended to act strictly as a grouping mechanism for the attached Occurrences (Attestations). This grouping mechanism also provides a security boundary, since IAM ACLs gate the ability for a principle to attach an Occurrence to a given Note. It also provides a single point of lookup to find all attached Attestation Occurrences, even if they don’t all live in the same project. Structure is documented below.

property createTime

public createTime: pulumi.Output<string>;

The time this note was created.

property expirationTime

public expirationTime: pulumi.Output<string | undefined>;

Time of expiration for this note. Leave empty if note does not expire.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property kind

public kind: pulumi.Output<string>;

The type of analysis this note describes

property longDescription

public longDescription: pulumi.Output<string | undefined>;

A detailed description of the note

property name

public name: pulumi.Output<string>;

The name of the note.

property project

public project: pulumi.Output<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property relatedNoteNames

public relatedNoteNames: pulumi.Output<string[] | undefined>;

Names of other notes related to this note.

property relatedUrls

public relatedUrls: pulumi.Output<NoteRelatedUrl[] | undefined>;

URLs associated with this note and related metadata. Structure is documented below.

property shortDescription

public shortDescription: pulumi.Output<string | undefined>;

A one sentence description of the note.

property updateTime

public updateTime: pulumi.Output<string>;

The time this note was last updated.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Occurence

class Occurence extends CustomResource

An occurrence is an instance of a Note, or type of analysis that can be done for a resource.

To get more information about Occurrence, see:

constructor

new Occurence(name: string, args: OccurenceArgs, opts?: pulumi.CustomResourceOptions)

Create a Occurence resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OccurenceState, opts?: pulumi.CustomResourceOptions): Occurence

Get an existing Occurence resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): obj is Occurence

Returns true if the given object is an instance of Occurence. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property attestation

public attestation: pulumi.Output<OccurenceAttestation>;

Occurrence that represents a single “attestation”. The authenticity of an attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the authority to which this attestation is attached is primarily useful for lookup (how to find this attestation if you already know the authority and artifact to be verified) and intent (for which authority this attestation was intended to sign. Structure is documented below.

property createTime

public createTime: pulumi.Output<string>;

The time when the repository was created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property kind

public kind: pulumi.Output<string>;

The note kind which explicitly denotes which of the occurrence details are specified. This field can be used as a filter in list requests.

property name

public name: pulumi.Output<string>;

The name of the occurrence.

property noteName

public noteName: pulumi.Output<string>;

The analysis note associated with this occurrence, in the form of projects/[PROJECT]/notes/[NOTE_ID]. This field can be used as a filter in list requests.

property project

public project: pulumi.Output<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property remediation

public remediation: pulumi.Output<string | undefined>;

A description of actions that can be taken to remedy the note.

property resourceUri

public resourceUri: pulumi.Output<string>;

Required. Immutable. A URI that represents the resource for which the occurrence applies. For example, https://gcr.io/project/image@sha256:123abc for a Docker image.

property updateTime

public updateTime: pulumi.Output<string>;

The time when the repository was last updated.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Others

interface NoteArgs

interface NoteArgs

The set of arguments for constructing a Note resource.

property attestationAuthority

attestationAuthority: pulumi.Input<NoteAttestationAuthority>;

Note kind that represents a logical attestation “role” or “authority”. For example, an organization might have one AttestationAuthority for “QA” and one for “build”. This Note is intended to act strictly as a grouping mechanism for the attached Occurrences (Attestations). This grouping mechanism also provides a security boundary, since IAM ACLs gate the ability for a principle to attach an Occurrence to a given Note. It also provides a single point of lookup to find all attached Attestation Occurrences, even if they don’t all live in the same project. Structure is documented below.

property expirationTime

expirationTime?: pulumi.Input<string>;

Time of expiration for this note. Leave empty if note does not expire.

property longDescription

longDescription?: pulumi.Input<string>;

A detailed description of the note

property name

name?: pulumi.Input<string>;

The name of the note.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property relatedNoteNames

relatedNoteNames?: pulumi.Input<pulumi.Input<string>[]>;

Names of other notes related to this note.

property relatedUrls

relatedUrls?: pulumi.Input<pulumi.Input<NoteRelatedUrl>[]>;

URLs associated with this note and related metadata. Structure is documented below.

property shortDescription

shortDescription?: pulumi.Input<string>;

A one sentence description of the note.

interface NoteState

interface NoteState

Input properties used for looking up and filtering Note resources.

property attestationAuthority

attestationAuthority?: pulumi.Input<NoteAttestationAuthority>;

Note kind that represents a logical attestation “role” or “authority”. For example, an organization might have one AttestationAuthority for “QA” and one for “build”. This Note is intended to act strictly as a grouping mechanism for the attached Occurrences (Attestations). This grouping mechanism also provides a security boundary, since IAM ACLs gate the ability for a principle to attach an Occurrence to a given Note. It also provides a single point of lookup to find all attached Attestation Occurrences, even if they don’t all live in the same project. Structure is documented below.

property createTime

createTime?: pulumi.Input<string>;

The time this note was created.

property expirationTime

expirationTime?: pulumi.Input<string>;

Time of expiration for this note. Leave empty if note does not expire.

property kind

kind?: pulumi.Input<string>;

The type of analysis this note describes

property longDescription

longDescription?: pulumi.Input<string>;

A detailed description of the note

property name

name?: pulumi.Input<string>;

The name of the note.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property relatedNoteNames

relatedNoteNames?: pulumi.Input<pulumi.Input<string>[]>;

Names of other notes related to this note.

property relatedUrls

relatedUrls?: pulumi.Input<pulumi.Input<NoteRelatedUrl>[]>;

URLs associated with this note and related metadata. Structure is documented below.

property shortDescription

shortDescription?: pulumi.Input<string>;

A one sentence description of the note.

property updateTime

updateTime?: pulumi.Input<string>;

The time this note was last updated.

interface OccurenceArgs

interface OccurenceArgs

The set of arguments for constructing a Occurence resource.

property attestation

attestation: pulumi.Input<OccurenceAttestation>;

Occurrence that represents a single “attestation”. The authenticity of an attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the authority to which this attestation is attached is primarily useful for lookup (how to find this attestation if you already know the authority and artifact to be verified) and intent (for which authority this attestation was intended to sign. Structure is documented below.

property noteName

noteName: pulumi.Input<string>;

The analysis note associated with this occurrence, in the form of projects/[PROJECT]/notes/[NOTE_ID]. This field can be used as a filter in list requests.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property remediation

remediation?: pulumi.Input<string>;

A description of actions that can be taken to remedy the note.

property resourceUri

resourceUri: pulumi.Input<string>;

Required. Immutable. A URI that represents the resource for which the occurrence applies. For example, https://gcr.io/project/image@sha256:123abc for a Docker image.

interface OccurenceState

interface OccurenceState

Input properties used for looking up and filtering Occurence resources.

property attestation

attestation?: pulumi.Input<OccurenceAttestation>;

Occurrence that represents a single “attestation”. The authenticity of an attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the authority to which this attestation is attached is primarily useful for lookup (how to find this attestation if you already know the authority and artifact to be verified) and intent (for which authority this attestation was intended to sign. Structure is documented below.

property createTime

createTime?: pulumi.Input<string>;

The time when the repository was created.

property kind

kind?: pulumi.Input<string>;

The note kind which explicitly denotes which of the occurrence details are specified. This field can be used as a filter in list requests.

property name

name?: pulumi.Input<string>;

The name of the occurrence.

property noteName

noteName?: pulumi.Input<string>;

The analysis note associated with this occurrence, in the form of projects/[PROJECT]/notes/[NOTE_ID]. This field can be used as a filter in list requests.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property remediation

remediation?: pulumi.Input<string>;

A description of actions that can be taken to remedy the note.

property resourceUri

resourceUri?: pulumi.Input<string>;

Required. Immutable. A URI that represents the resource for which the occurrence applies. For example, https://gcr.io/project/image@sha256:123abc for a Docker image.

property updateTime

updateTime?: pulumi.Input<string>;

The time when the repository was last updated.