Class: Google::Apis::ContaineranalysisV1beta1::Note

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/containeranalysis_v1beta1/classes.rb,
lib/google/apis/containeranalysis_v1beta1/representations.rb,
lib/google/apis/containeranalysis_v1beta1/representations.rb

Overview

A type of analysis that can be done for a resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Note

Returns a new instance of Note.



2162
2163
2164
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2162

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#attestation_authorityGoogle::Apis::ContaineranalysisV1beta1::Authority

Note kind that represents a logical attestation "role" or "authority". For example, an organization might have one Authority 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. Corresponds to the JSON property attestationAuthority



2069
2070
2071
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2069

def attestation_authority
  @attestation_authority
end

#base_imageGoogle::Apis::ContaineranalysisV1beta1::Basis

Basis describes the base image portion (Note) of the DockerImage relationship. Linked occurrences are derived from this or an equivalent image via: FROM Or an equivalent reference, e.g. a tag of the resource_url. Corresponds to the JSON property baseImage



2076
2077
2078
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2076

def base_image
  @base_image
end

#buildGoogle::Apis::ContaineranalysisV1beta1::Build

Note holding the version of the provider's builder and the signature of the provenance message in the build details occurrence. Corresponds to the JSON property build



2082
2083
2084
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2082

def build
  @build
end

#create_timeString

Output only. The time this note was created. This field can be used as a filter in list requests. Corresponds to the JSON property createTime

Returns:

  • (String)


2088
2089
2090
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2088

def create_time
  @create_time
end

#deployableGoogle::Apis::ContaineranalysisV1beta1::Deployable

An artifact that can be deployed in some runtime. Corresponds to the JSON property deployable



2093
2094
2095
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2093

def deployable
  @deployable
end

#discoveryGoogle::Apis::ContaineranalysisV1beta1::Discovery

A note that indicates a type of analysis a provider would perform. This note exists in a provider's project. A Discovery occurrence is created in a consumer's project at the start of analysis. Corresponds to the JSON property discovery



2100
2101
2102
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2100

def discovery
  @discovery
end

#expiration_timeString

Time of expiration for this note. Empty if note does not expire. Corresponds to the JSON property expirationTime

Returns:

  • (String)


2105
2106
2107
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2105

def expiration_time
  @expiration_time
end

#intotoGoogle::Apis::ContaineranalysisV1beta1::InToto

This contains the fields corresponding to the definition of a software supply chain step in an in-toto layout. This information goes into a Grafeas note. Corresponds to the JSON property intoto



2111
2112
2113
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2111

def intoto
  @intoto
end

#kindString

Output only. The type of analysis. This field can be used as a filter in list requests. Corresponds to the JSON property kind

Returns:

  • (String)


2117
2118
2119
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2117

def kind
  @kind
end

#long_descriptionString

A detailed description of this note. Corresponds to the JSON property longDescription

Returns:

  • (String)


2122
2123
2124
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2122

def long_description
  @long_description
end

#nameString

Output only. The name of the note in the form of projects/[PROVIDER_ID]/notes/ [NOTE_ID]. Corresponds to the JSON property name

Returns:

  • (String)


2128
2129
2130
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2128

def name
  @name
end

#packageGoogle::Apis::ContaineranalysisV1beta1::Package

This represents a particular package that is distributed over various channels. E.g., glibc (aka libc6) is distributed by many, at various versions. Corresponds to the JSON property package



2134
2135
2136
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2134

def package
  @package
end

Other notes related to this note. Corresponds to the JSON property relatedNoteNames

Returns:

  • (Array<String>)


2139
2140
2141
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2139

def related_note_names
  @related_note_names
end

URLs associated with this note. Corresponds to the JSON property relatedUrl



2144
2145
2146
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2144

def related_url
  @related_url
end

#short_descriptionString

A one sentence description of this note. Corresponds to the JSON property shortDescription

Returns:

  • (String)


2149
2150
2151
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2149

def short_description
  @short_description
end

#update_timeString

Output only. The time this note was last updated. This field can be used as a filter in list requests. Corresponds to the JSON property updateTime

Returns:

  • (String)


2155
2156
2157
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2155

def update_time
  @update_time
end

#vulnerabilityGoogle::Apis::ContaineranalysisV1beta1::Vulnerability

Vulnerability provides metadata about a security vulnerability in a Note. Corresponds to the JSON property vulnerability



2160
2161
2162
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2160

def vulnerability
  @vulnerability
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 2167

def update!(**args)
  @attestation_authority = args[:attestation_authority] if args.key?(:attestation_authority)
  @base_image = args[:base_image] if args.key?(:base_image)
  @build = args[:build] if args.key?(:build)
  @create_time = args[:create_time] if args.key?(:create_time)
  @deployable = args[:deployable] if args.key?(:deployable)
  @discovery = args[:discovery] if args.key?(:discovery)
  @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
  @intoto = args[:intoto] if args.key?(:intoto)
  @kind = args[:kind] if args.key?(:kind)
  @long_description = args[:long_description] if args.key?(:long_description)
  @name = args[:name] if args.key?(:name)
  @package = args[:package] if args.key?(:package)
  @related_note_names = args[:related_note_names] if args.key?(:related_note_names)
  @related_url = args[:related_url] if args.key?(:related_url)
  @short_description = args[:short_description] if args.key?(:short_description)
  @update_time = args[:update_time] if args.key?(:update_time)
  @vulnerability = args[:vulnerability] if args.key?(:vulnerability)
end