google-apis-containeranalysis_v1alpha1 0.10.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9d986addccc272f154ea16ad8e8da0e65a766413f3ff016e929c7543dfac3f65
4
- data.tar.gz: b3e951bcfa7fd8904793ced24f97b012980541fdd4ec5e5f7063d74c5c389129
3
+ metadata.gz: 82f7c90d24f3a27ca19c0c58338731522361618d87df2b98bf42970dd9795bfa
4
+ data.tar.gz: b209a12b04acfc62e1ba22468d6506fba065b1fa2d7538fcca659c271d398485
5
5
  SHA512:
6
- metadata.gz: c601d1ee3c3b0a888e8e238be01bb7d8c16f765921f571ffc353b6a6f63ced18da4f9e158f5ed18a17bca477c64ad7a56199c7f7471291ee13749820a54f313f
7
- data.tar.gz: b554785aef8723e4d1238da962259fcc1baf683dfd8491641d726b491b9a82920162a42f3573113516fd9d6df14bd3f19e023982e05e0052cb5bb2f4b57533b8
6
+ metadata.gz: ab314728b00102d7d99df58f2eee5e12985d0e0581634bda1b86093b711d56d57419f33c3708bf67104100c81a8a9efb19f36197723958db6ee06a7a6eeacc29
7
+ data.tar.gz: 103f6d9191b9da38fc90666a5cbfb6ce5091d0dba91404401a5fc59011c132a5baf8b0633caac4a27c6653e8ff73ba05f7c881805401a24c1c6f18b7892f9429
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Release history for google-apis-containeranalysis_v1alpha1
2
2
 
3
+ ### v0.14.0 (2021-09-02)
4
+
5
+ * Regenerated from discovery document revision 20210825
6
+
7
+ ### v0.13.0 (2021-08-26)
8
+
9
+ * Regenerated from discovery document revision 20210820
10
+
11
+ ### v0.12.0 (2021-08-19)
12
+
13
+ * Regenerated from discovery document revision 20210813
14
+
15
+ ### v0.11.0 (2021-08-05)
16
+
17
+ * Regenerated from discovery document revision 20210730
18
+
3
19
  ### v0.10.0 (2021-07-29)
4
20
 
5
21
  * Regenerated from discovery document revision 20210723
@@ -259,6 +259,11 @@ module Google
259
259
  class BuildDetails
260
260
  include Google::Apis::Core::Hashable
261
261
 
262
+ # In-toto Provenance representation as defined in spec.
263
+ # Corresponds to the JSON property `intotoProvenance`
264
+ # @return [Google::Apis::ContaineranalysisV1alpha1::InTotoProvenance]
265
+ attr_accessor :intoto_provenance
266
+
262
267
  # Provenance of a build. Contains all information needed to verify the full
263
268
  # details about the build from source to completion.
264
269
  # Corresponds to the JSON property `provenance`
@@ -283,6 +288,7 @@ module Google
283
288
 
284
289
  # Update properties of this object
285
290
  def update!(**args)
291
+ @intoto_provenance = args[:intoto_provenance] if args.key?(:intoto_provenance)
286
292
  @provenance = args[:provenance] if args.key?(:provenance)
287
293
  @provenance_bytes = args[:provenance_bytes] if args.key?(:provenance_bytes)
288
294
  end
@@ -458,6 +464,25 @@ module Google
458
464
  end
459
465
  end
460
466
 
467
+ #
468
+ class BuilderConfig
469
+ include Google::Apis::Core::Hashable
470
+
471
+ #
472
+ # Corresponds to the JSON property `id`
473
+ # @return [String]
474
+ attr_accessor :id
475
+
476
+ def initialize(**args)
477
+ update!(**args)
478
+ end
479
+
480
+ # Update properties of this object
481
+ def update!(**args)
482
+ @id = args[:id] if args.key?(:id)
483
+ end
484
+ end
485
+
461
486
  # A compliance check that is a CIS benchmark.
462
487
  class CisBenchmark
463
488
  include Google::Apis::Core::Hashable
@@ -535,6 +560,43 @@ module Google
535
560
  end
536
561
  end
537
562
 
563
+ # Indicates that the builder claims certain fields in this message to be
564
+ # complete.
565
+ class Completeness
566
+ include Google::Apis::Core::Hashable
567
+
568
+ # If true, the builder claims that recipe.arguments is complete, meaning that
569
+ # all external inputs are properly captured in the recipe.
570
+ # Corresponds to the JSON property `arguments`
571
+ # @return [Boolean]
572
+ attr_accessor :arguments
573
+ alias_method :arguments?, :arguments
574
+
575
+ # If true, the builder claims that recipe.environment is claimed to be complete.
576
+ # Corresponds to the JSON property `environment`
577
+ # @return [Boolean]
578
+ attr_accessor :environment
579
+ alias_method :environment?, :environment
580
+
581
+ # If true, the builder claims that materials are complete, usually through some
582
+ # controls to prevent network access. Sometimes called "hermetic".
583
+ # Corresponds to the JSON property `materials`
584
+ # @return [Boolean]
585
+ attr_accessor :materials
586
+ alias_method :materials?, :materials
587
+
588
+ def initialize(**args)
589
+ update!(**args)
590
+ end
591
+
592
+ # Update properties of this object
593
+ def update!(**args)
594
+ @arguments = args[:arguments] if args.key?(:arguments)
595
+ @environment = args[:environment] if args.key?(:environment)
596
+ @materials = args[:materials] if args.key?(:materials)
597
+ end
598
+ end
599
+
538
600
  # ComplianceNote encapsulates all information about a specific compliance check.
539
601
  class ComplianceNote
540
602
  include Google::Apis::Core::Hashable
@@ -671,6 +733,83 @@ module Google
671
733
  end
672
734
  end
673
735
 
736
+ # A note describing an attestation
737
+ class DsseAttestationNote
738
+ include Google::Apis::Core::Hashable
739
+
740
+ # This submessage provides human-readable hints about the purpose of the
741
+ # authority. Because the name of a note acts as its resource reference, it is
742
+ # important to disambiguate the canonical name of the Note (which might be a
743
+ # UUID for security purposes) from "readable" names more suitable for debug
744
+ # output. Note that these hints should not be used to look up authorities in
745
+ # security sensitive contexts, such as when looking up attestations to verify.
746
+ # Corresponds to the JSON property `hint`
747
+ # @return [Google::Apis::ContaineranalysisV1alpha1::DsseHint]
748
+ attr_accessor :hint
749
+
750
+ def initialize(**args)
751
+ update!(**args)
752
+ end
753
+
754
+ # Update properties of this object
755
+ def update!(**args)
756
+ @hint = args[:hint] if args.key?(:hint)
757
+ end
758
+ end
759
+
760
+ # An occurrence describing an attestation on a resource
761
+ class DsseAttestationOccurrence
762
+ include Google::Apis::Core::Hashable
763
+
764
+ # MUST match https://github.com/secure-systems-lab/dsse/blob/master/envelope.
765
+ # proto. An authenticated message of arbitrary type.
766
+ # Corresponds to the JSON property `envelope`
767
+ # @return [Google::Apis::ContaineranalysisV1alpha1::Envelope]
768
+ attr_accessor :envelope
769
+
770
+ # Spec defined at https://github.com/in-toto/attestation/tree/main/spec#
771
+ # statement The serialized InTotoStatement will be stored as Envelope.payload.
772
+ # Envelope.payloadType is always "application/vnd.in-toto+json".
773
+ # Corresponds to the JSON property `statement`
774
+ # @return [Google::Apis::ContaineranalysisV1alpha1::InTotoStatement]
775
+ attr_accessor :statement
776
+
777
+ def initialize(**args)
778
+ update!(**args)
779
+ end
780
+
781
+ # Update properties of this object
782
+ def update!(**args)
783
+ @envelope = args[:envelope] if args.key?(:envelope)
784
+ @statement = args[:statement] if args.key?(:statement)
785
+ end
786
+ end
787
+
788
+ # This submessage provides human-readable hints about the purpose of the
789
+ # authority. Because the name of a note acts as its resource reference, it is
790
+ # important to disambiguate the canonical name of the Note (which might be a
791
+ # UUID for security purposes) from "readable" names more suitable for debug
792
+ # output. Note that these hints should not be used to look up authorities in
793
+ # security sensitive contexts, such as when looking up attestations to verify.
794
+ class DsseHint
795
+ include Google::Apis::Core::Hashable
796
+
797
+ # Required. The human readable name of this attestation authority, for example "
798
+ # cloudbuild-prod".
799
+ # Corresponds to the JSON property `humanReadableName`
800
+ # @return [String]
801
+ attr_accessor :human_readable_name
802
+
803
+ def initialize(**args)
804
+ update!(**args)
805
+ end
806
+
807
+ # Update properties of this object
808
+ def update!(**args)
809
+ @human_readable_name = args[:human_readable_name] if args.key?(:human_readable_name)
810
+ end
811
+ end
812
+
674
813
  # An artifact that can be deployed in some runtime.
675
814
  class Deployable
676
815
  include Google::Apis::Core::Hashable
@@ -1130,6 +1269,65 @@ module Google
1130
1269
  end
1131
1270
  end
1132
1271
 
1272
+ # MUST match https://github.com/secure-systems-lab/dsse/blob/master/envelope.
1273
+ # proto. An authenticated message of arbitrary type.
1274
+ class Envelope
1275
+ include Google::Apis::Core::Hashable
1276
+
1277
+ # The bytes being signed
1278
+ # Corresponds to the JSON property `payload`
1279
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1280
+ # @return [String]
1281
+ attr_accessor :payload
1282
+
1283
+ # The type of payload being signed
1284
+ # Corresponds to the JSON property `payloadType`
1285
+ # @return [String]
1286
+ attr_accessor :payload_type
1287
+
1288
+ # The signatures over the payload
1289
+ # Corresponds to the JSON property `signatures`
1290
+ # @return [Array<Google::Apis::ContaineranalysisV1alpha1::EnvelopeSignature>]
1291
+ attr_accessor :signatures
1292
+
1293
+ def initialize(**args)
1294
+ update!(**args)
1295
+ end
1296
+
1297
+ # Update properties of this object
1298
+ def update!(**args)
1299
+ @payload = args[:payload] if args.key?(:payload)
1300
+ @payload_type = args[:payload_type] if args.key?(:payload_type)
1301
+ @signatures = args[:signatures] if args.key?(:signatures)
1302
+ end
1303
+ end
1304
+
1305
+ # A DSSE signature
1306
+ class EnvelopeSignature
1307
+ include Google::Apis::Core::Hashable
1308
+
1309
+ # A reference id to the key being used for signing
1310
+ # Corresponds to the JSON property `keyid`
1311
+ # @return [String]
1312
+ attr_accessor :keyid
1313
+
1314
+ # The signature itself
1315
+ # Corresponds to the JSON property `sig`
1316
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1317
+ # @return [String]
1318
+ attr_accessor :sig
1319
+
1320
+ def initialize(**args)
1321
+ update!(**args)
1322
+ end
1323
+
1324
+ # Update properties of this object
1325
+ def update!(**args)
1326
+ @keyid = args[:keyid] if args.key?(:keyid)
1327
+ @sig = args[:sig] if args.key?(:sig)
1328
+ end
1329
+ end
1330
+
1133
1331
  # Represents a textual expression in the Common Expression Language (CEL) syntax.
1134
1332
  # CEL is a C-like expression language. The syntax and semantics of CEL are
1135
1333
  # documented at https://github.com/google/cel-spec. Example (Comparison): title:
@@ -1720,6 +1918,86 @@ module Google
1720
1918
  end
1721
1919
  end
1722
1920
 
1921
+ #
1922
+ class InTotoProvenance
1923
+ include Google::Apis::Core::Hashable
1924
+
1925
+ # required
1926
+ # Corresponds to the JSON property `builderConfig`
1927
+ # @return [Google::Apis::ContaineranalysisV1alpha1::BuilderConfig]
1928
+ attr_accessor :builder_config
1929
+
1930
+ # The collection of artifacts that influenced the build including sources,
1931
+ # dependencies, build tools, base images, and so on. This is considered to be
1932
+ # incomplete unless metadata.completeness.materials is true. Unset or null is
1933
+ # equivalent to empty.
1934
+ # Corresponds to the JSON property `materials`
1935
+ # @return [Array<String>]
1936
+ attr_accessor :materials
1937
+
1938
+ # Other properties of the build.
1939
+ # Corresponds to the JSON property `metadata`
1940
+ # @return [Google::Apis::ContaineranalysisV1alpha1::Metadata]
1941
+ attr_accessor :metadata
1942
+
1943
+ # Steps taken to build the artifact. For a TaskRun, typically each container
1944
+ # corresponds to one step in the recipe.
1945
+ # Corresponds to the JSON property `recipe`
1946
+ # @return [Google::Apis::ContaineranalysisV1alpha1::Recipe]
1947
+ attr_accessor :recipe
1948
+
1949
+ def initialize(**args)
1950
+ update!(**args)
1951
+ end
1952
+
1953
+ # Update properties of this object
1954
+ def update!(**args)
1955
+ @builder_config = args[:builder_config] if args.key?(:builder_config)
1956
+ @materials = args[:materials] if args.key?(:materials)
1957
+ @metadata = args[:metadata] if args.key?(:metadata)
1958
+ @recipe = args[:recipe] if args.key?(:recipe)
1959
+ end
1960
+ end
1961
+
1962
+ # Spec defined at https://github.com/in-toto/attestation/tree/main/spec#
1963
+ # statement The serialized InTotoStatement will be stored as Envelope.payload.
1964
+ # Envelope.payloadType is always "application/vnd.in-toto+json".
1965
+ class InTotoStatement
1966
+ include Google::Apis::Core::Hashable
1967
+
1968
+ # "https://in-toto.io/Provenance/v0.1" for InTotoProvenance.
1969
+ # Corresponds to the JSON property `predicateType`
1970
+ # @return [String]
1971
+ attr_accessor :predicate_type
1972
+
1973
+ #
1974
+ # Corresponds to the JSON property `provenance`
1975
+ # @return [Google::Apis::ContaineranalysisV1alpha1::InTotoProvenance]
1976
+ attr_accessor :provenance
1977
+
1978
+ #
1979
+ # Corresponds to the JSON property `subject`
1980
+ # @return [Array<Google::Apis::ContaineranalysisV1alpha1::Subject>]
1981
+ attr_accessor :subject
1982
+
1983
+ # Always "https://in-toto.io/Statement/v0.1".
1984
+ # Corresponds to the JSON property `type`
1985
+ # @return [String]
1986
+ attr_accessor :type
1987
+
1988
+ def initialize(**args)
1989
+ update!(**args)
1990
+ end
1991
+
1992
+ # Update properties of this object
1993
+ def update!(**args)
1994
+ @predicate_type = args[:predicate_type] if args.key?(:predicate_type)
1995
+ @provenance = args[:provenance] if args.key?(:provenance)
1996
+ @subject = args[:subject] if args.key?(:subject)
1997
+ @type = args[:type] if args.key?(:type)
1998
+ end
1999
+ end
2000
+
1723
2001
  # This represents how a particular software package may be installed on a system.
1724
2002
  class Installation
1725
2003
  include Google::Apis::Core::Hashable
@@ -1909,6 +2187,54 @@ module Google
1909
2187
  end
1910
2188
  end
1911
2189
 
2190
+ # Other properties of the build.
2191
+ class Metadata
2192
+ include Google::Apis::Core::Hashable
2193
+
2194
+ # The timestamp of when the build completed.
2195
+ # Corresponds to the JSON property `buildFinishedOn`
2196
+ # @return [String]
2197
+ attr_accessor :build_finished_on
2198
+
2199
+ # Identifies the particular build invocation, which can be useful for finding
2200
+ # associated logs or other ad-hoc analysis. The value SHOULD be globally unique,
2201
+ # per in-toto Provenance spec.
2202
+ # Corresponds to the JSON property `buildInvocationId`
2203
+ # @return [String]
2204
+ attr_accessor :build_invocation_id
2205
+
2206
+ # The timestamp of when the build started.
2207
+ # Corresponds to the JSON property `buildStartedOn`
2208
+ # @return [String]
2209
+ attr_accessor :build_started_on
2210
+
2211
+ # Indicates that the builder claims certain fields in this message to be
2212
+ # complete.
2213
+ # Corresponds to the JSON property `completeness`
2214
+ # @return [Google::Apis::ContaineranalysisV1alpha1::Completeness]
2215
+ attr_accessor :completeness
2216
+
2217
+ # If true, the builder claims that running the recipe on materials will produce
2218
+ # bit-for-bit identical output.
2219
+ # Corresponds to the JSON property `reproducible`
2220
+ # @return [Boolean]
2221
+ attr_accessor :reproducible
2222
+ alias_method :reproducible?, :reproducible
2223
+
2224
+ def initialize(**args)
2225
+ update!(**args)
2226
+ end
2227
+
2228
+ # Update properties of this object
2229
+ def update!(**args)
2230
+ @build_finished_on = args[:build_finished_on] if args.key?(:build_finished_on)
2231
+ @build_invocation_id = args[:build_invocation_id] if args.key?(:build_invocation_id)
2232
+ @build_started_on = args[:build_started_on] if args.key?(:build_started_on)
2233
+ @completeness = args[:completeness] if args.key?(:completeness)
2234
+ @reproducible = args[:reproducible] if args.key?(:reproducible)
2235
+ end
2236
+ end
2237
+
1912
2238
  # Details about files that caused a compliance check to fail.
1913
2239
  class NonCompliantFile
1914
2240
  include Google::Apis::Core::Hashable
@@ -1996,6 +2322,11 @@ module Google
1996
2322
  # @return [Google::Apis::ContaineranalysisV1alpha1::Discovery]
1997
2323
  attr_accessor :discovery
1998
2324
 
2325
+ # A note describing an attestation
2326
+ # Corresponds to the JSON property `dsseAttestation`
2327
+ # @return [Google::Apis::ContaineranalysisV1alpha1::DsseAttestationNote]
2328
+ attr_accessor :dsse_attestation
2329
+
1999
2330
  # Time of expiration for this note, null if note does not expire.
2000
2331
  # Corresponds to the JSON property `expirationTime`
2001
2332
  # @return [String]
@@ -2089,6 +2420,7 @@ module Google
2089
2420
  @create_time = args[:create_time] if args.key?(:create_time)
2090
2421
  @deployable = args[:deployable] if args.key?(:deployable)
2091
2422
  @discovery = args[:discovery] if args.key?(:discovery)
2423
+ @dsse_attestation = args[:dsse_attestation] if args.key?(:dsse_attestation)
2092
2424
  @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
2093
2425
  @kind = args[:kind] if args.key?(:kind)
2094
2426
  @long_description = args[:long_description] if args.key?(:long_description)
@@ -2154,6 +2486,17 @@ module Google
2154
2486
  # @return [Google::Apis::ContaineranalysisV1alpha1::Discovered]
2155
2487
  attr_accessor :discovered
2156
2488
 
2489
+ # An occurrence describing an attestation on a resource
2490
+ # Corresponds to the JSON property `dsseAttestation`
2491
+ # @return [Google::Apis::ContaineranalysisV1alpha1::DsseAttestationOccurrence]
2492
+ attr_accessor :dsse_attestation
2493
+
2494
+ # MUST match https://github.com/secure-systems-lab/dsse/blob/master/envelope.
2495
+ # proto. An authenticated message of arbitrary type.
2496
+ # Corresponds to the JSON property `envelope`
2497
+ # @return [Google::Apis::ContaineranalysisV1alpha1::Envelope]
2498
+ attr_accessor :envelope
2499
+
2157
2500
  # This represents how a particular software package may be installed on a system.
2158
2501
  # Corresponds to the JSON property `installation`
2159
2502
  # @return [Google::Apis::ContaineranalysisV1alpha1::Installation]
@@ -2250,6 +2593,8 @@ module Google
2250
2593
  @deployment = args[:deployment] if args.key?(:deployment)
2251
2594
  @derived_image = args[:derived_image] if args.key?(:derived_image)
2252
2595
  @discovered = args[:discovered] if args.key?(:discovered)
2596
+ @dsse_attestation = args[:dsse_attestation] if args.key?(:dsse_attestation)
2597
+ @envelope = args[:envelope] if args.key?(:envelope)
2253
2598
  @installation = args[:installation] if args.key?(:installation)
2254
2599
  @kind = args[:kind] if args.key?(:kind)
2255
2600
  @name = args[:name] if args.key?(:name)
@@ -2365,11 +2710,24 @@ module Google
2365
2710
  # @return [Google::Apis::ContaineranalysisV1alpha1::VulnerabilityLocation]
2366
2711
  attr_accessor :affected_location
2367
2712
 
2713
+ # Output only. The distro or language system assigned severity for this
2714
+ # vulnerability when that is available and note provider assigned severity when
2715
+ # distro or language system has not yet assigned a severity for this
2716
+ # vulnerability.
2717
+ # Corresponds to the JSON property `effectiveSeverity`
2718
+ # @return [String]
2719
+ attr_accessor :effective_severity
2720
+
2368
2721
  # The location of the vulnerability
2369
2722
  # Corresponds to the JSON property `fixedLocation`
2370
2723
  # @return [Google::Apis::ContaineranalysisV1alpha1::VulnerabilityLocation]
2371
2724
  attr_accessor :fixed_location
2372
2725
 
2726
+ # The type of package (e.g. OS, MAVEN, GO).
2727
+ # Corresponds to the JSON property `packageType`
2728
+ # @return [String]
2729
+ attr_accessor :package_type
2730
+
2373
2731
  #
2374
2732
  # Corresponds to the JSON property `severityName`
2375
2733
  # @return [String]
@@ -2382,7 +2740,9 @@ module Google
2382
2740
  # Update properties of this object
2383
2741
  def update!(**args)
2384
2742
  @affected_location = args[:affected_location] if args.key?(:affected_location)
2743
+ @effective_severity = args[:effective_severity] if args.key?(:effective_severity)
2385
2744
  @fixed_location = args[:fixed_location] if args.key?(:fixed_location)
2745
+ @package_type = args[:package_type] if args.key?(:package_type)
2386
2746
  @severity_name = args[:severity_name] if args.key?(:severity_name)
2387
2747
  end
2388
2748
  end
@@ -2647,7 +3007,7 @@ module Google
2647
3007
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
2648
3008
  # roles/resourcemanager.organizationViewer condition: title: expirable access
2649
3009
  # description: Does not grant access after Sep 2020 expression: request.time <
2650
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
3010
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
2651
3011
  # description of IAM and its features, see the [IAM documentation](https://cloud.
2652
3012
  # google.com/iam/docs/).
2653
3013
  class Policy
@@ -2707,6 +3067,64 @@ module Google
2707
3067
  end
2708
3068
  end
2709
3069
 
3070
+ # Steps taken to build the artifact. For a TaskRun, typically each container
3071
+ # corresponds to one step in the recipe.
3072
+ class Recipe
3073
+ include Google::Apis::Core::Hashable
3074
+
3075
+ # Collection of all external inputs that influenced the build on top of recipe.
3076
+ # definedInMaterial and recipe.entryPoint. For example, if the recipe type were "
3077
+ # make", then this might be the flags passed to make aside from the target,
3078
+ # which is captured in recipe.entryPoint.
3079
+ # Corresponds to the JSON property `arguments`
3080
+ # @return [Array<Hash<String,Object>>]
3081
+ attr_accessor :arguments
3082
+
3083
+ # Index in materials containing the recipe steps that are not implied by recipe.
3084
+ # type. For example, if the recipe type were "make", then this would point to
3085
+ # the source containing the Makefile, not the make program itself. Set to -1 if
3086
+ # the recipe doesn't come from a material, as zero is default unset value for
3087
+ # int64.
3088
+ # Corresponds to the JSON property `definedInMaterial`
3089
+ # @return [Fixnum]
3090
+ attr_accessor :defined_in_material
3091
+
3092
+ # String identifying the entry point into the build. This is often a path to a
3093
+ # configuration file and/or a target label within that file. The syntax and
3094
+ # meaning are defined by recipe.type. For example, if the recipe type were "make"
3095
+ # , then this would reference the directory in which to run make as well as
3096
+ # which target to use.
3097
+ # Corresponds to the JSON property `entryPoint`
3098
+ # @return [String]
3099
+ attr_accessor :entry_point
3100
+
3101
+ # Any other builder-controlled inputs necessary for correctly evaluating the
3102
+ # recipe. Usually only needed for reproducing the build but not evaluated as
3103
+ # part of policy.
3104
+ # Corresponds to the JSON property `environment`
3105
+ # @return [Array<Hash<String,Object>>]
3106
+ attr_accessor :environment
3107
+
3108
+ # URI indicating what type of recipe was performed. It determines the meaning of
3109
+ # recipe.entryPoint, recipe.arguments, recipe.environment, and materials.
3110
+ # Corresponds to the JSON property `type`
3111
+ # @return [String]
3112
+ attr_accessor :type
3113
+
3114
+ def initialize(**args)
3115
+ update!(**args)
3116
+ end
3117
+
3118
+ # Update properties of this object
3119
+ def update!(**args)
3120
+ @arguments = args[:arguments] if args.key?(:arguments)
3121
+ @defined_in_material = args[:defined_in_material] if args.key?(:defined_in_material)
3122
+ @entry_point = args[:entry_point] if args.key?(:entry_point)
3123
+ @environment = args[:environment] if args.key?(:environment)
3124
+ @type = args[:type] if args.key?(:type)
3125
+ end
3126
+ end
3127
+
2710
3128
  # Metadata for any related URL information
2711
3129
  class RelatedUrl
2712
3130
  include Google::Apis::Core::Hashable
@@ -2938,7 +3356,7 @@ module Google
2938
3356
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
2939
3357
  # roles/resourcemanager.organizationViewer condition: title: expirable access
2940
3358
  # description: Does not grant access after Sep 2020 expression: request.time <
2941
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
3359
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
2942
3360
  # description of IAM and its features, see the [IAM documentation](https://cloud.
2943
3361
  # google.com/iam/docs/).
2944
3362
  # Corresponds to the JSON property `policy`
@@ -3112,6 +3530,31 @@ module Google
3112
3530
  end
3113
3531
  end
3114
3532
 
3533
+ #
3534
+ class Subject
3535
+ include Google::Apis::Core::Hashable
3536
+
3537
+ # "": ""
3538
+ # Corresponds to the JSON property `digest`
3539
+ # @return [Hash<String,String>]
3540
+ attr_accessor :digest
3541
+
3542
+ #
3543
+ # Corresponds to the JSON property `name`
3544
+ # @return [String]
3545
+ attr_accessor :name
3546
+
3547
+ def initialize(**args)
3548
+ update!(**args)
3549
+ end
3550
+
3551
+ # Update properties of this object
3552
+ def update!(**args)
3553
+ @digest = args[:digest] if args.key?(:digest)
3554
+ @name = args[:name] if args.key?(:name)
3555
+ end
3556
+ end
3557
+
3115
3558
  # Request message for `TestIamPermissions` method.
3116
3559
  class TestIamPermissionsRequest
3117
3560
  include Google::Apis::Core::Hashable
@@ -3356,7 +3799,14 @@ module Google
3356
3799
 
3357
3800
  # The distro assigned severity for this vulnerability when that is available and
3358
3801
  # note provider assigned severity when distro has not yet assigned a severity
3359
- # for this vulnerability.
3802
+ # for this vulnerability. When there are multiple package issues for this
3803
+ # vulnerability, they can have different effective severities because some might
3804
+ # come from the distro and some might come from installed language packs (e.g.
3805
+ # Maven JARs or Go binaries). For this reason, it is advised to use the
3806
+ # effective severity on the PackageIssue level, as this field may eventually be
3807
+ # deprecated. In the case where multiple PackageIssues have different effective
3808
+ # severities, the one set here will be the highest severity of any of the
3809
+ # PackageIssues.
3360
3810
  # Corresponds to the JSON property `effectiveSeverity`
3361
3811
  # @return [String]
3362
3812
  attr_accessor :effective_severity
@@ -3373,7 +3823,8 @@ module Google
3373
3823
  attr_accessor :severity
3374
3824
 
3375
3825
  # The type of package; whether native or non native(ruby gems, node.js packages
3376
- # etc)
3826
+ # etc). This may be deprecated in the future because we can have multiple
3827
+ # PackageIssues with different package types.
3377
3828
  # Corresponds to the JSON property `type`
3378
3829
  # @return [String]
3379
3830
  attr_accessor :type
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module ContaineranalysisV1alpha1
18
18
  # Version of the google-apis-containeranalysis_v1alpha1 gem
19
- GEM_VERSION = "0.10.0"
19
+ GEM_VERSION = "0.14.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.4.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20210723"
25
+ REVISION = "20210825"
26
26
  end
27
27
  end
28
28
  end
@@ -82,6 +82,12 @@ module Google
82
82
  include Google::Apis::Core::JsonObjectSupport
83
83
  end
84
84
 
85
+ class BuilderConfig
86
+ class Representation < Google::Apis::Core::JsonRepresentation; end
87
+
88
+ include Google::Apis::Core::JsonObjectSupport
89
+ end
90
+
85
91
  class CisBenchmark
86
92
  class Representation < Google::Apis::Core::JsonRepresentation; end
87
93
 
@@ -94,6 +100,12 @@ module Google
94
100
  include Google::Apis::Core::JsonObjectSupport
95
101
  end
96
102
 
103
+ class Completeness
104
+ class Representation < Google::Apis::Core::JsonRepresentation; end
105
+
106
+ include Google::Apis::Core::JsonObjectSupport
107
+ end
108
+
97
109
  class ComplianceNote
98
110
  class Representation < Google::Apis::Core::JsonRepresentation; end
99
111
 
@@ -118,6 +130,24 @@ module Google
118
130
  include Google::Apis::Core::JsonObjectSupport
119
131
  end
120
132
 
133
+ class DsseAttestationNote
134
+ class Representation < Google::Apis::Core::JsonRepresentation; end
135
+
136
+ include Google::Apis::Core::JsonObjectSupport
137
+ end
138
+
139
+ class DsseAttestationOccurrence
140
+ class Representation < Google::Apis::Core::JsonRepresentation; end
141
+
142
+ include Google::Apis::Core::JsonObjectSupport
143
+ end
144
+
145
+ class DsseHint
146
+ class Representation < Google::Apis::Core::JsonRepresentation; end
147
+
148
+ include Google::Apis::Core::JsonObjectSupport
149
+ end
150
+
121
151
  class Deployable
122
152
  class Representation < Google::Apis::Core::JsonRepresentation; end
123
153
 
@@ -178,6 +208,18 @@ module Google
178
208
  include Google::Apis::Core::JsonObjectSupport
179
209
  end
180
210
 
211
+ class Envelope
212
+ class Representation < Google::Apis::Core::JsonRepresentation; end
213
+
214
+ include Google::Apis::Core::JsonObjectSupport
215
+ end
216
+
217
+ class EnvelopeSignature
218
+ class Representation < Google::Apis::Core::JsonRepresentation; end
219
+
220
+ include Google::Apis::Core::JsonObjectSupport
221
+ end
222
+
181
223
  class Expr
182
224
  class Representation < Google::Apis::Core::JsonRepresentation; end
183
225
 
@@ -286,6 +328,18 @@ module Google
286
328
  include Google::Apis::Core::JsonObjectSupport
287
329
  end
288
330
 
331
+ class InTotoProvenance
332
+ class Representation < Google::Apis::Core::JsonRepresentation; end
333
+
334
+ include Google::Apis::Core::JsonObjectSupport
335
+ end
336
+
337
+ class InTotoStatement
338
+ class Representation < Google::Apis::Core::JsonRepresentation; end
339
+
340
+ include Google::Apis::Core::JsonObjectSupport
341
+ end
342
+
289
343
  class Installation
290
344
  class Representation < Google::Apis::Core::JsonRepresentation; end
291
345
 
@@ -328,6 +382,12 @@ module Google
328
382
  include Google::Apis::Core::JsonObjectSupport
329
383
  end
330
384
 
385
+ class Metadata
386
+ class Representation < Google::Apis::Core::JsonRepresentation; end
387
+
388
+ include Google::Apis::Core::JsonObjectSupport
389
+ end
390
+
331
391
  class NonCompliantFile
332
392
  class Representation < Google::Apis::Core::JsonRepresentation; end
333
393
 
@@ -388,6 +448,12 @@ module Google
388
448
  include Google::Apis::Core::JsonObjectSupport
389
449
  end
390
450
 
451
+ class Recipe
452
+ class Representation < Google::Apis::Core::JsonRepresentation; end
453
+
454
+ include Google::Apis::Core::JsonObjectSupport
455
+ end
456
+
391
457
  class RelatedUrl
392
458
  class Representation < Google::Apis::Core::JsonRepresentation; end
393
459
 
@@ -454,6 +520,12 @@ module Google
454
520
  include Google::Apis::Core::JsonObjectSupport
455
521
  end
456
522
 
523
+ class Subject
524
+ class Representation < Google::Apis::Core::JsonRepresentation; end
525
+
526
+ include Google::Apis::Core::JsonObjectSupport
527
+ end
528
+
457
529
  class TestIamPermissionsRequest
458
530
  class Representation < Google::Apis::Core::JsonRepresentation; end
459
531
 
@@ -569,6 +641,8 @@ module Google
569
641
  class BuildDetails
570
642
  # @private
571
643
  class Representation < Google::Apis::Core::JsonRepresentation
644
+ property :intoto_provenance, as: 'intotoProvenance', class: Google::Apis::ContaineranalysisV1alpha1::InTotoProvenance, decorator: Google::Apis::ContaineranalysisV1alpha1::InTotoProvenance::Representation
645
+
572
646
  property :provenance, as: 'provenance', class: Google::Apis::ContaineranalysisV1alpha1::BuildProvenance, decorator: Google::Apis::ContaineranalysisV1alpha1::BuildProvenance::Representation
573
647
 
574
648
  property :provenance_bytes, as: 'provenanceBytes'
@@ -616,6 +690,13 @@ module Google
616
690
  end
617
691
  end
618
692
 
693
+ class BuilderConfig
694
+ # @private
695
+ class Representation < Google::Apis::Core::JsonRepresentation
696
+ property :id, as: 'id'
697
+ end
698
+ end
699
+
619
700
  class CisBenchmark
620
701
  # @private
621
702
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -636,6 +717,15 @@ module Google
636
717
  end
637
718
  end
638
719
 
720
+ class Completeness
721
+ # @private
722
+ class Representation < Google::Apis::Core::JsonRepresentation
723
+ property :arguments, as: 'arguments'
724
+ property :environment, as: 'environment'
725
+ property :materials, as: 'materials'
726
+ end
727
+ end
728
+
639
729
  class ComplianceNote
640
730
  # @private
641
731
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -677,6 +767,31 @@ module Google
677
767
  end
678
768
  end
679
769
 
770
+ class DsseAttestationNote
771
+ # @private
772
+ class Representation < Google::Apis::Core::JsonRepresentation
773
+ property :hint, as: 'hint', class: Google::Apis::ContaineranalysisV1alpha1::DsseHint, decorator: Google::Apis::ContaineranalysisV1alpha1::DsseHint::Representation
774
+
775
+ end
776
+ end
777
+
778
+ class DsseAttestationOccurrence
779
+ # @private
780
+ class Representation < Google::Apis::Core::JsonRepresentation
781
+ property :envelope, as: 'envelope', class: Google::Apis::ContaineranalysisV1alpha1::Envelope, decorator: Google::Apis::ContaineranalysisV1alpha1::Envelope::Representation
782
+
783
+ property :statement, as: 'statement', class: Google::Apis::ContaineranalysisV1alpha1::InTotoStatement, decorator: Google::Apis::ContaineranalysisV1alpha1::InTotoStatement::Representation
784
+
785
+ end
786
+ end
787
+
788
+ class DsseHint
789
+ # @private
790
+ class Representation < Google::Apis::Core::JsonRepresentation
791
+ property :human_readable_name, as: 'humanReadableName'
792
+ end
793
+ end
794
+
680
795
  class Deployable
681
796
  # @private
682
797
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -791,6 +906,24 @@ module Google
791
906
  end
792
907
  end
793
908
 
909
+ class Envelope
910
+ # @private
911
+ class Representation < Google::Apis::Core::JsonRepresentation
912
+ property :payload, :base64 => true, as: 'payload'
913
+ property :payload_type, as: 'payloadType'
914
+ collection :signatures, as: 'signatures', class: Google::Apis::ContaineranalysisV1alpha1::EnvelopeSignature, decorator: Google::Apis::ContaineranalysisV1alpha1::EnvelopeSignature::Representation
915
+
916
+ end
917
+ end
918
+
919
+ class EnvelopeSignature
920
+ # @private
921
+ class Representation < Google::Apis::Core::JsonRepresentation
922
+ property :keyid, as: 'keyid'
923
+ property :sig, :base64 => true, as: 'sig'
924
+ end
925
+ end
926
+
794
927
  class Expr
795
928
  # @private
796
929
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -959,6 +1092,31 @@ module Google
959
1092
  end
960
1093
  end
961
1094
 
1095
+ class InTotoProvenance
1096
+ # @private
1097
+ class Representation < Google::Apis::Core::JsonRepresentation
1098
+ property :builder_config, as: 'builderConfig', class: Google::Apis::ContaineranalysisV1alpha1::BuilderConfig, decorator: Google::Apis::ContaineranalysisV1alpha1::BuilderConfig::Representation
1099
+
1100
+ collection :materials, as: 'materials'
1101
+ property :metadata, as: 'metadata', class: Google::Apis::ContaineranalysisV1alpha1::Metadata, decorator: Google::Apis::ContaineranalysisV1alpha1::Metadata::Representation
1102
+
1103
+ property :recipe, as: 'recipe', class: Google::Apis::ContaineranalysisV1alpha1::Recipe, decorator: Google::Apis::ContaineranalysisV1alpha1::Recipe::Representation
1104
+
1105
+ end
1106
+ end
1107
+
1108
+ class InTotoStatement
1109
+ # @private
1110
+ class Representation < Google::Apis::Core::JsonRepresentation
1111
+ property :predicate_type, as: 'predicateType'
1112
+ property :provenance, as: 'provenance', class: Google::Apis::ContaineranalysisV1alpha1::InTotoProvenance, decorator: Google::Apis::ContaineranalysisV1alpha1::InTotoProvenance::Representation
1113
+
1114
+ collection :subject, as: 'subject', class: Google::Apis::ContaineranalysisV1alpha1::Subject, decorator: Google::Apis::ContaineranalysisV1alpha1::Subject::Representation
1115
+
1116
+ property :type, as: 'type'
1117
+ end
1118
+ end
1119
+
962
1120
  class Installation
963
1121
  # @private
964
1122
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1022,6 +1180,18 @@ module Google
1022
1180
  end
1023
1181
  end
1024
1182
 
1183
+ class Metadata
1184
+ # @private
1185
+ class Representation < Google::Apis::Core::JsonRepresentation
1186
+ property :build_finished_on, as: 'buildFinishedOn'
1187
+ property :build_invocation_id, as: 'buildInvocationId'
1188
+ property :build_started_on, as: 'buildStartedOn'
1189
+ property :completeness, as: 'completeness', class: Google::Apis::ContaineranalysisV1alpha1::Completeness, decorator: Google::Apis::ContaineranalysisV1alpha1::Completeness::Representation
1190
+
1191
+ property :reproducible, as: 'reproducible'
1192
+ end
1193
+ end
1194
+
1025
1195
  class NonCompliantFile
1026
1196
  # @private
1027
1197
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1047,6 +1217,8 @@ module Google
1047
1217
 
1048
1218
  property :discovery, as: 'discovery', class: Google::Apis::ContaineranalysisV1alpha1::Discovery, decorator: Google::Apis::ContaineranalysisV1alpha1::Discovery::Representation
1049
1219
 
1220
+ property :dsse_attestation, as: 'dsseAttestation', class: Google::Apis::ContaineranalysisV1alpha1::DsseAttestationNote, decorator: Google::Apis::ContaineranalysisV1alpha1::DsseAttestationNote::Representation
1221
+
1050
1222
  property :expiration_time, as: 'expirationTime'
1051
1223
  property :kind, as: 'kind'
1052
1224
  property :long_description, as: 'longDescription'
@@ -1088,6 +1260,10 @@ module Google
1088
1260
 
1089
1261
  property :discovered, as: 'discovered', class: Google::Apis::ContaineranalysisV1alpha1::Discovered, decorator: Google::Apis::ContaineranalysisV1alpha1::Discovered::Representation
1090
1262
 
1263
+ property :dsse_attestation, as: 'dsseAttestation', class: Google::Apis::ContaineranalysisV1alpha1::DsseAttestationOccurrence, decorator: Google::Apis::ContaineranalysisV1alpha1::DsseAttestationOccurrence::Representation
1264
+
1265
+ property :envelope, as: 'envelope', class: Google::Apis::ContaineranalysisV1alpha1::Envelope, decorator: Google::Apis::ContaineranalysisV1alpha1::Envelope::Representation
1266
+
1091
1267
  property :installation, as: 'installation', class: Google::Apis::ContaineranalysisV1alpha1::Installation, decorator: Google::Apis::ContaineranalysisV1alpha1::Installation::Representation
1092
1268
 
1093
1269
  property :kind, as: 'kind'
@@ -1139,8 +1315,10 @@ module Google
1139
1315
  class Representation < Google::Apis::Core::JsonRepresentation
1140
1316
  property :affected_location, as: 'affectedLocation', class: Google::Apis::ContaineranalysisV1alpha1::VulnerabilityLocation, decorator: Google::Apis::ContaineranalysisV1alpha1::VulnerabilityLocation::Representation
1141
1317
 
1318
+ property :effective_severity, as: 'effectiveSeverity'
1142
1319
  property :fixed_location, as: 'fixedLocation', class: Google::Apis::ContaineranalysisV1alpha1::VulnerabilityLocation, decorator: Google::Apis::ContaineranalysisV1alpha1::VulnerabilityLocation::Representation
1143
1320
 
1321
+ property :package_type, as: 'packageType'
1144
1322
  property :severity_name, as: 'severityName'
1145
1323
  end
1146
1324
  end
@@ -1199,6 +1377,17 @@ module Google
1199
1377
  end
1200
1378
  end
1201
1379
 
1380
+ class Recipe
1381
+ # @private
1382
+ class Representation < Google::Apis::Core::JsonRepresentation
1383
+ collection :arguments, as: 'arguments'
1384
+ property :defined_in_material, :numeric_string => true, as: 'definedInMaterial'
1385
+ property :entry_point, as: 'entryPoint'
1386
+ collection :environment, as: 'environment'
1387
+ property :type, as: 'type'
1388
+ end
1389
+ end
1390
+
1202
1391
  class RelatedUrl
1203
1392
  # @private
1204
1393
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -1307,6 +1496,14 @@ module Google
1307
1496
  end
1308
1497
  end
1309
1498
 
1499
+ class Subject
1500
+ # @private
1501
+ class Representation < Google::Apis::Core::JsonRepresentation
1502
+ hash :digest, as: 'digest'
1503
+ property :name, as: 'name'
1504
+ end
1505
+ end
1506
+
1310
1507
  class TestIamPermissionsRequest
1311
1508
  # @private
1312
1509
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -30,7 +30,7 @@ module Google
30
30
  # This is NOT the gem version.
31
31
  VERSION = 'V1alpha1'
32
32
 
33
- # See, edit, configure, and delete your Google Cloud Platform data
33
+ # See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.
34
34
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
35
35
  end
36
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-containeranalysis_v1alpha1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.14.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-02 00:00:00.000000000 Z
11
+ date: 2021-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-containeranalysis_v1alpha1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-containeranalysis_v1alpha1/v0.10.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-containeranalysis_v1alpha1/v0.14.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-containeranalysis_v1alpha1
63
63
  post_install_message:
64
64
  rdoc_options: []