1 // Copyright 2024 Google LLC. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // Code generated file. DO NOT EDIT. 6 7 // Package containeranalysis provides access to the Container Analysis API. 8 // 9 // For product documentation, see: https://cloud.google.com/container-analysis/api/reference/rest/ 10 // 11 // # Library status 12 // 13 // These client libraries are officially supported by Google. However, this 14 // library is considered complete and is in maintenance mode. This means 15 // that we will address critical bugs and security issues but will not add 16 // any new features. 17 // 18 // When possible, we recommend using our newer 19 // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) 20 // that are still actively being worked and iterated on. 21 // 22 // # Creating a client 23 // 24 // Usage example: 25 // 26 // import "google.golang.org/api/containeranalysis/v1beta1" 27 // ... 28 // ctx := context.Background() 29 // containeranalysisService, err := containeranalysis.NewService(ctx) 30 // 31 // In this example, Google Application Default Credentials are used for 32 // authentication. For information on how to create and obtain Application 33 // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 34 // 35 // # Other authentication options 36 // 37 // To use an API key for authentication (note: some APIs do not support API 38 // keys), use [google.golang.org/api/option.WithAPIKey]: 39 // 40 // containeranalysisService, err := containeranalysis.NewService(ctx, option.WithAPIKey("AIza...")) 41 // 42 // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth 43 // flow, use [google.golang.org/api/option.WithTokenSource]: 44 // 45 // config := &oauth2.Config{...} 46 // // ... 47 // token, err := config.Exchange(ctx, ...) 48 // containeranalysisService, err := containeranalysis.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 49 // 50 // See [google.golang.org/api/option.ClientOption] for details on options. 51 package containeranalysis // import "google.golang.org/api/containeranalysis/v1beta1" 52 53 import ( 54 "bytes" 55 "context" 56 "encoding/json" 57 "errors" 58 "fmt" 59 "io" 60 "net/http" 61 "net/url" 62 "strconv" 63 "strings" 64 65 googleapi "google.golang.org/api/googleapi" 66 internal "google.golang.org/api/internal" 67 gensupport "google.golang.org/api/internal/gensupport" 68 option "google.golang.org/api/option" 69 internaloption "google.golang.org/api/option/internaloption" 70 htransport "google.golang.org/api/transport/http" 71 ) 72 73 // Always reference these packages, just in case the auto-generated code 74 // below doesn't. 75 var _ = bytes.NewBuffer 76 var _ = strconv.Itoa 77 var _ = fmt.Sprintf 78 var _ = json.NewDecoder 79 var _ = io.Copy 80 var _ = url.Parse 81 var _ = gensupport.MarshalJSON 82 var _ = googleapi.Version 83 var _ = errors.New 84 var _ = strings.Replace 85 var _ = context.Canceled 86 var _ = internaloption.WithDefaultEndpoint 87 var _ = internal.Version 88 89 const apiId = "containeranalysis:v1beta1" 90 const apiName = "containeranalysis" 91 const apiVersion = "v1beta1" 92 const basePath = "https://containeranalysis.googleapis.com/" 93 const basePathTemplate = "https://containeranalysis.UNIVERSE_DOMAIN/" 94 const mtlsBasePath = "https://containeranalysis.mtls.googleapis.com/" 95 96 // OAuth2 scopes used by this API. 97 const ( 98 // See, edit, configure, and delete your Google Cloud data and see the email 99 // address for your Google Account. 100 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 101 ) 102 103 // NewService creates a new Service. 104 func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 105 scopesOption := internaloption.WithDefaultScopes( 106 "https://www.googleapis.com/auth/cloud-platform", 107 ) 108 // NOTE: prepend, so we don't override user-specified scopes. 109 opts = append([]option.ClientOption{scopesOption}, opts...) 110 opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) 111 opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) 112 opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) 113 opts = append(opts, internaloption.EnableNewAuthLibrary()) 114 client, endpoint, err := htransport.NewClient(ctx, opts...) 115 if err != nil { 116 return nil, err 117 } 118 s, err := New(client) 119 if err != nil { 120 return nil, err 121 } 122 if endpoint != "" { 123 s.BasePath = endpoint 124 } 125 return s, nil 126 } 127 128 // New creates a new Service. It uses the provided http.Client for requests. 129 // 130 // Deprecated: please use NewService instead. 131 // To provide a custom HTTP client, use option.WithHTTPClient. 132 // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 133 func New(client *http.Client) (*Service, error) { 134 if client == nil { 135 return nil, errors.New("client is nil") 136 } 137 s := &Service{client: client, BasePath: basePath} 138 s.Projects = NewProjectsService(s) 139 return s, nil 140 } 141 142 type Service struct { 143 client *http.Client 144 BasePath string // API endpoint base URL 145 UserAgent string // optional additional User-Agent fragment 146 147 Projects *ProjectsService 148 } 149 150 func (s *Service) userAgent() string { 151 if s.UserAgent == "" { 152 return googleapi.UserAgent 153 } 154 return googleapi.UserAgent + " " + s.UserAgent 155 } 156 157 func NewProjectsService(s *Service) *ProjectsService { 158 rs := &ProjectsService{s: s} 159 rs.Locations = NewProjectsLocationsService(s) 160 rs.Notes = NewProjectsNotesService(s) 161 rs.Occurrences = NewProjectsOccurrencesService(s) 162 rs.Resources = NewProjectsResourcesService(s) 163 return rs 164 } 165 166 type ProjectsService struct { 167 s *Service 168 169 Locations *ProjectsLocationsService 170 171 Notes *ProjectsNotesService 172 173 Occurrences *ProjectsOccurrencesService 174 175 Resources *ProjectsResourcesService 176 } 177 178 func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { 179 rs := &ProjectsLocationsService{s: s} 180 rs.Notes = NewProjectsLocationsNotesService(s) 181 rs.Occurrences = NewProjectsLocationsOccurrencesService(s) 182 rs.Resources = NewProjectsLocationsResourcesService(s) 183 return rs 184 } 185 186 type ProjectsLocationsService struct { 187 s *Service 188 189 Notes *ProjectsLocationsNotesService 190 191 Occurrences *ProjectsLocationsOccurrencesService 192 193 Resources *ProjectsLocationsResourcesService 194 } 195 196 func NewProjectsLocationsNotesService(s *Service) *ProjectsLocationsNotesService { 197 rs := &ProjectsLocationsNotesService{s: s} 198 rs.Occurrences = NewProjectsLocationsNotesOccurrencesService(s) 199 return rs 200 } 201 202 type ProjectsLocationsNotesService struct { 203 s *Service 204 205 Occurrences *ProjectsLocationsNotesOccurrencesService 206 } 207 208 func NewProjectsLocationsNotesOccurrencesService(s *Service) *ProjectsLocationsNotesOccurrencesService { 209 rs := &ProjectsLocationsNotesOccurrencesService{s: s} 210 return rs 211 } 212 213 type ProjectsLocationsNotesOccurrencesService struct { 214 s *Service 215 } 216 217 func NewProjectsLocationsOccurrencesService(s *Service) *ProjectsLocationsOccurrencesService { 218 rs := &ProjectsLocationsOccurrencesService{s: s} 219 return rs 220 } 221 222 type ProjectsLocationsOccurrencesService struct { 223 s *Service 224 } 225 226 func NewProjectsLocationsResourcesService(s *Service) *ProjectsLocationsResourcesService { 227 rs := &ProjectsLocationsResourcesService{s: s} 228 return rs 229 } 230 231 type ProjectsLocationsResourcesService struct { 232 s *Service 233 } 234 235 func NewProjectsNotesService(s *Service) *ProjectsNotesService { 236 rs := &ProjectsNotesService{s: s} 237 rs.Occurrences = NewProjectsNotesOccurrencesService(s) 238 return rs 239 } 240 241 type ProjectsNotesService struct { 242 s *Service 243 244 Occurrences *ProjectsNotesOccurrencesService 245 } 246 247 func NewProjectsNotesOccurrencesService(s *Service) *ProjectsNotesOccurrencesService { 248 rs := &ProjectsNotesOccurrencesService{s: s} 249 return rs 250 } 251 252 type ProjectsNotesOccurrencesService struct { 253 s *Service 254 } 255 256 func NewProjectsOccurrencesService(s *Service) *ProjectsOccurrencesService { 257 rs := &ProjectsOccurrencesService{s: s} 258 return rs 259 } 260 261 type ProjectsOccurrencesService struct { 262 s *Service 263 } 264 265 func NewProjectsResourcesService(s *Service) *ProjectsResourcesService { 266 rs := &ProjectsResourcesService{s: s} 267 return rs 268 } 269 270 type ProjectsResourcesService struct { 271 s *Service 272 } 273 274 // AliasContext: An alias to a repo revision. 275 type AliasContext struct { 276 // Kind: The alias kind. 277 // 278 // Possible values: 279 // "KIND_UNSPECIFIED" - Unknown. 280 // "FIXED" - Git tag. 281 // "MOVABLE" - Git branch. 282 // "OTHER" - Used to specify non-standard aliases. For example, if a Git repo 283 // has a ref named "refs/foo/bar". 284 Kind string `json:"kind,omitempty"` 285 // Name: The alias name. 286 Name string `json:"name,omitempty"` 287 // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally 288 // include in API requests. By default, fields with empty or default values are 289 // omitted from API requests. See 290 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 291 // details. 292 ForceSendFields []string `json:"-"` 293 // NullFields is a list of field names (e.g. "Kind") to include in API requests 294 // with the JSON null value. By default, fields with empty values are omitted 295 // from API requests. See 296 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 297 NullFields []string `json:"-"` 298 } 299 300 func (s *AliasContext) MarshalJSON() ([]byte, error) { 301 type NoMethod AliasContext 302 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 303 } 304 305 // AnalysisCompleted: Indicates which analysis completed successfully. Multiple 306 // types of analysis can be performed on a single resource. 307 type AnalysisCompleted struct { 308 AnalysisType []string `json:"analysisType,omitempty"` 309 // ForceSendFields is a list of field names (e.g. "AnalysisType") to 310 // unconditionally include in API requests. By default, fields with empty or 311 // default values are omitted from API requests. See 312 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 313 // details. 314 ForceSendFields []string `json:"-"` 315 // NullFields is a list of field names (e.g. "AnalysisType") to include in API 316 // requests with the JSON null value. By default, fields with empty values are 317 // omitted from API requests. See 318 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 319 NullFields []string `json:"-"` 320 } 321 322 func (s *AnalysisCompleted) MarshalJSON() ([]byte, error) { 323 type NoMethod AnalysisCompleted 324 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 325 } 326 327 // Artifact: Artifact describes a build product. 328 type Artifact struct { 329 // Checksum: Hash or checksum value of a binary, or Docker Registry 2.0 digest 330 // of a container. 331 Checksum string `json:"checksum,omitempty"` 332 // Id: Artifact ID, if any; for container images, this will be a URL by digest 333 // like `gcr.io/projectID/imagename@sha256:123456`. 334 Id string `json:"id,omitempty"` 335 // Names: Related artifact names. This may be the path to a binary or jar file, 336 // or in the case of a container build, the name used to push the container 337 // image to Google Container Registry, as presented to `docker push`. Note that 338 // a single Artifact ID can have multiple names, for example if two tags are 339 // applied to one image. 340 Names []string `json:"names,omitempty"` 341 // ForceSendFields is a list of field names (e.g. "Checksum") to 342 // unconditionally include in API requests. By default, fields with empty or 343 // default values are omitted from API requests. See 344 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 345 // details. 346 ForceSendFields []string `json:"-"` 347 // NullFields is a list of field names (e.g. "Checksum") to include in API 348 // requests with the JSON null value. By default, fields with empty values are 349 // omitted from API requests. See 350 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 351 NullFields []string `json:"-"` 352 } 353 354 func (s *Artifact) MarshalJSON() ([]byte, error) { 355 type NoMethod Artifact 356 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 357 } 358 359 // ArtifactHashes: Defines a hash object for use in Materials and Products. 360 type ArtifactHashes struct { 361 Sha256 string `json:"sha256,omitempty"` 362 // ForceSendFields is a list of field names (e.g. "Sha256") to unconditionally 363 // include in API requests. By default, fields with empty or default values are 364 // omitted from API requests. See 365 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 366 // details. 367 ForceSendFields []string `json:"-"` 368 // NullFields is a list of field names (e.g. "Sha256") to include in API 369 // requests with the JSON null value. By default, fields with empty values are 370 // omitted from API requests. See 371 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 372 NullFields []string `json:"-"` 373 } 374 375 func (s *ArtifactHashes) MarshalJSON() ([]byte, error) { 376 type NoMethod ArtifactHashes 377 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 378 } 379 380 // ArtifactRule: Defines an object to declare an in-toto artifact rule 381 type ArtifactRule struct { 382 ArtifactRule []string `json:"artifactRule,omitempty"` 383 // ForceSendFields is a list of field names (e.g. "ArtifactRule") to 384 // unconditionally include in API requests. By default, fields with empty or 385 // default values are omitted from API requests. See 386 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 387 // details. 388 ForceSendFields []string `json:"-"` 389 // NullFields is a list of field names (e.g. "ArtifactRule") to include in API 390 // requests with the JSON null value. By default, fields with empty values are 391 // omitted from API requests. See 392 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 393 NullFields []string `json:"-"` 394 } 395 396 func (s *ArtifactRule) MarshalJSON() ([]byte, error) { 397 type NoMethod ArtifactRule 398 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 399 } 400 401 // Assessment: Assessment provides all information that is related to a single 402 // vulnerability for this product. 403 type Assessment struct { 404 // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) 405 // tracking number for the vulnerability. Deprecated: Use vulnerability_id 406 // instead to denote CVEs. 407 Cve string `json:"cve,omitempty"` 408 // Impacts: Contains information about the impact of this vulnerability, this 409 // will change with time. 410 Impacts []string `json:"impacts,omitempty"` 411 // Justification: Justification provides the justification when the state of 412 // the assessment if NOT_AFFECTED. 413 Justification *Justification `json:"justification,omitempty"` 414 // LongDescription: A detailed description of this Vex. 415 LongDescription string `json:"longDescription,omitempty"` 416 // RelatedUris: Holds a list of references associated with this vulnerability 417 // item and assessment. These uris have additional information about the 418 // vulnerability and the assessment itself. E.g. Link to a document which 419 // details how this assessment concluded the state of this vulnerability. 420 RelatedUris []*RelatedUrl `json:"relatedUris,omitempty"` 421 // Remediations: Specifies details on how to handle (and presumably, fix) a 422 // vulnerability. 423 Remediations []*Remediation `json:"remediations,omitempty"` 424 // ShortDescription: A one sentence description of this Vex. 425 ShortDescription string `json:"shortDescription,omitempty"` 426 // State: Provides the state of this Vulnerability assessment. 427 // 428 // Possible values: 429 // "STATE_UNSPECIFIED" - No state is specified. 430 // "AFFECTED" - This product is known to be affected by this vulnerability. 431 // "NOT_AFFECTED" - This product is known to be not affected by this 432 // vulnerability. 433 // "FIXED" - This product contains a fix for this vulnerability. 434 // "UNDER_INVESTIGATION" - It is not known yet whether these versions are or 435 // are not affected by the vulnerability. However, it is still under 436 // investigation. 437 State string `json:"state,omitempty"` 438 // VulnerabilityId: The vulnerability identifier for this Assessment. Will hold 439 // one of common identifiers e.g. CVE, GHSA etc. 440 VulnerabilityId string `json:"vulnerabilityId,omitempty"` 441 // ForceSendFields is a list of field names (e.g. "Cve") to unconditionally 442 // include in API requests. By default, fields with empty or default values are 443 // omitted from API requests. See 444 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 445 // details. 446 ForceSendFields []string `json:"-"` 447 // NullFields is a list of field names (e.g. "Cve") to include in API requests 448 // with the JSON null value. By default, fields with empty values are omitted 449 // from API requests. See 450 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 451 NullFields []string `json:"-"` 452 } 453 454 func (s *Assessment) MarshalJSON() ([]byte, error) { 455 type NoMethod Assessment 456 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 457 } 458 459 // Attestation: Occurrence that represents a single "attestation". The 460 // authenticity of an attestation can be verified using the attached signature. 461 // If the verifier trusts the public key of the signer, then verifying the 462 // signature is sufficient to establish trust. In this circumstance, the 463 // authority to which this attestation is attached is primarily useful for 464 // look-up (how to find this attestation if you already know the authority and 465 // artifact to be verified) and intent (which authority was this attestation 466 // intended to sign for). 467 type Attestation struct { 468 GenericSignedAttestation *GenericSignedAttestation `json:"genericSignedAttestation,omitempty"` 469 // PgpSignedAttestation: A PGP signed attestation. 470 PgpSignedAttestation *PgpSignedAttestation `json:"pgpSignedAttestation,omitempty"` 471 // ForceSendFields is a list of field names (e.g. "GenericSignedAttestation") 472 // to unconditionally include in API requests. By default, fields with empty or 473 // default values are omitted from API requests. See 474 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 475 // details. 476 ForceSendFields []string `json:"-"` 477 // NullFields is a list of field names (e.g. "GenericSignedAttestation") to 478 // include in API requests with the JSON null value. By default, fields with 479 // empty values are omitted from API requests. See 480 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 481 NullFields []string `json:"-"` 482 } 483 484 func (s *Attestation) MarshalJSON() ([]byte, error) { 485 type NoMethod Attestation 486 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 487 } 488 489 // Authority: Note kind that represents a logical attestation "role" or 490 // "authority". For example, an organization might have one `Authority` for 491 // "QA" and one for "build". This note is intended to act strictly as a 492 // grouping mechanism for the attached occurrences (Attestations). This 493 // grouping mechanism also provides a security boundary, since IAM ACLs gate 494 // the ability for a principle to attach an occurrence to a given note. It also 495 // provides a single point of lookup to find all attached attestation 496 // occurrences, even if they don't all live in the same project. 497 type Authority struct { 498 // Hint: Hint hints at the purpose of the attestation authority. 499 Hint *Hint `json:"hint,omitempty"` 500 // ForceSendFields is a list of field names (e.g. "Hint") to unconditionally 501 // include in API requests. By default, fields with empty or default values are 502 // omitted from API requests. See 503 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 504 // details. 505 ForceSendFields []string `json:"-"` 506 // NullFields is a list of field names (e.g. "Hint") to include in API requests 507 // with the JSON null value. By default, fields with empty values are omitted 508 // from API requests. See 509 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 510 NullFields []string `json:"-"` 511 } 512 513 func (s *Authority) MarshalJSON() ([]byte, error) { 514 type NoMethod Authority 515 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 516 } 517 518 // Basis: Basis describes the base image portion (Note) of the DockerImage 519 // relationship. Linked occurrences are derived from this or an equivalent 520 // image via: FROM Or an equivalent reference, e.g. a tag of the resource_url. 521 type Basis struct { 522 // Fingerprint: Required. Immutable. The fingerprint of the base image. 523 Fingerprint *Fingerprint `json:"fingerprint,omitempty"` 524 // ResourceUrl: Required. Immutable. The resource_url for the resource 525 // representing the basis of associated occurrence images. 526 ResourceUrl string `json:"resourceUrl,omitempty"` 527 // ForceSendFields is a list of field names (e.g. "Fingerprint") to 528 // unconditionally include in API requests. By default, fields with empty or 529 // default values are omitted from API requests. See 530 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 531 // details. 532 ForceSendFields []string `json:"-"` 533 // NullFields is a list of field names (e.g. "Fingerprint") to include in API 534 // requests with the JSON null value. By default, fields with empty values are 535 // omitted from API requests. See 536 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 537 NullFields []string `json:"-"` 538 } 539 540 func (s *Basis) MarshalJSON() ([]byte, error) { 541 type NoMethod Basis 542 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 543 } 544 545 // BatchCreateNotesRequest: Request to create notes in batch. 546 type BatchCreateNotesRequest struct { 547 // Notes: Required. The notes to create, the key is expected to be the note ID. 548 // Max allowed length is 1000. 549 Notes map[string]Note `json:"notes,omitempty"` 550 // ForceSendFields is a list of field names (e.g. "Notes") to unconditionally 551 // include in API requests. By default, fields with empty or default values are 552 // omitted from API requests. See 553 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 554 // details. 555 ForceSendFields []string `json:"-"` 556 // NullFields is a list of field names (e.g. "Notes") to include in API 557 // requests with the JSON null value. By default, fields with empty values are 558 // omitted from API requests. See 559 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 560 NullFields []string `json:"-"` 561 } 562 563 func (s *BatchCreateNotesRequest) MarshalJSON() ([]byte, error) { 564 type NoMethod BatchCreateNotesRequest 565 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 566 } 567 568 // BatchCreateNotesResponse: Response for creating notes in batch. 569 type BatchCreateNotesResponse struct { 570 // Notes: The notes that were created. 571 Notes []*Note `json:"notes,omitempty"` 572 573 // ServerResponse contains the HTTP response code and headers from the server. 574 googleapi.ServerResponse `json:"-"` 575 // ForceSendFields is a list of field names (e.g. "Notes") to unconditionally 576 // include in API requests. By default, fields with empty or default values are 577 // omitted from API requests. See 578 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 579 // details. 580 ForceSendFields []string `json:"-"` 581 // NullFields is a list of field names (e.g. "Notes") to include in API 582 // requests with the JSON null value. By default, fields with empty values are 583 // omitted from API requests. See 584 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 585 NullFields []string `json:"-"` 586 } 587 588 func (s *BatchCreateNotesResponse) MarshalJSON() ([]byte, error) { 589 type NoMethod BatchCreateNotesResponse 590 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 591 } 592 593 // BatchCreateOccurrencesRequest: Request to create occurrences in batch. 594 type BatchCreateOccurrencesRequest struct { 595 // Occurrences: Required. The occurrences to create. Max allowed length is 596 // 1000. 597 Occurrences []*Occurrence `json:"occurrences,omitempty"` 598 // ForceSendFields is a list of field names (e.g. "Occurrences") to 599 // unconditionally include in API requests. By default, fields with empty or 600 // default values are omitted from API requests. See 601 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 602 // details. 603 ForceSendFields []string `json:"-"` 604 // NullFields is a list of field names (e.g. "Occurrences") to include in API 605 // requests with the JSON null value. By default, fields with empty values are 606 // omitted from API requests. See 607 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 608 NullFields []string `json:"-"` 609 } 610 611 func (s *BatchCreateOccurrencesRequest) MarshalJSON() ([]byte, error) { 612 type NoMethod BatchCreateOccurrencesRequest 613 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 614 } 615 616 // BatchCreateOccurrencesResponse: Response for creating occurrences in batch. 617 type BatchCreateOccurrencesResponse struct { 618 // Occurrences: The occurrences that were created. 619 Occurrences []*Occurrence `json:"occurrences,omitempty"` 620 621 // ServerResponse contains the HTTP response code and headers from the server. 622 googleapi.ServerResponse `json:"-"` 623 // ForceSendFields is a list of field names (e.g. "Occurrences") to 624 // unconditionally include in API requests. By default, fields with empty or 625 // default values are omitted from API requests. See 626 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 627 // details. 628 ForceSendFields []string `json:"-"` 629 // NullFields is a list of field names (e.g. "Occurrences") to include in API 630 // requests with the JSON null value. By default, fields with empty values are 631 // omitted from API requests. See 632 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 633 NullFields []string `json:"-"` 634 } 635 636 func (s *BatchCreateOccurrencesResponse) MarshalJSON() ([]byte, error) { 637 type NoMethod BatchCreateOccurrencesResponse 638 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 639 } 640 641 // Binding: Associates `members`, or principals, with a `role`. 642 type Binding struct { 643 // Condition: The condition that is associated with this binding. If the 644 // condition evaluates to `true`, then this binding applies to the current 645 // request. If the condition evaluates to `false`, then this binding does not 646 // apply to the current request. However, a different role binding might grant 647 // the same role to one or more of the principals in this binding. To learn 648 // which resources support conditions in their IAM policies, see the IAM 649 // documentation 650 // (https://cloud.google.com/iam/help/conditions/resource-policies). 651 Condition *Expr `json:"condition,omitempty"` 652 // Members: Specifies the principals requesting access for a Google Cloud 653 // resource. `members` can have the following values: * `allUsers`: A special 654 // identifier that represents anyone who is on the internet; with or without a 655 // Google account. * `allAuthenticatedUsers`: A special identifier that 656 // represents anyone who is authenticated with a Google account or a service 657 // account. Does not include identities that come from external identity 658 // providers (IdPs) through identity federation. * `user:{emailid}`: An email 659 // address that represents a specific Google account. For example, 660 // `alice@example.com` . * `serviceAccount:{emailid}`: An email address that 661 // represents a Google service account. For example, 662 // `my-other-app@appspot.gserviceaccount.com`. * 663 // `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An 664 // identifier for a Kubernetes service account 665 // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). 666 // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * 667 // `group:{emailid}`: An email address that represents a Google group. For 668 // example, `admins@example.com`. * `domain:{domain}`: The G Suite domain 669 // (primary) that represents all the users of that domain. For example, 670 // `google.com` or `example.com`. * 671 // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub 672 // ject/{subject_attribute_value}`: A single identity in a workforce identity 673 // pool. * 674 // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ 675 // group/{group_id}`: All workforce identities in a group. * 676 // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ 677 // attribute.{attribute_name}/{attribute_value}`: All workforce identities with 678 // a specific attribute value. * 679 // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ 680 // *`: All identities in a workforce identity pool. * 681 // `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo 682 // rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single 683 // identity in a workload identity pool. * 684 // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global 685 // /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool 686 // group. * 687 // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global 688 // /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value} 689 // `: All identities in a workload identity pool with a certain attribute. * 690 // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global 691 // /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity 692 // pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus 693 // unique identifier) representing a user that has been recently deleted. For 694 // example, `alice@example.com?uid=123456789012345678901`. If the user is 695 // recovered, this value reverts to `user:{emailid}` and the recovered user 696 // retains the role in the binding. * 697 // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus 698 // unique identifier) representing a service account that has been recently 699 // deleted. For example, 700 // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the 701 // service account is undeleted, this value reverts to 702 // `serviceAccount:{emailid}` and the undeleted service account retains the 703 // role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email 704 // address (plus unique identifier) representing a Google group that has been 705 // recently deleted. For example, 706 // `admins@example.com?uid=123456789012345678901`. If the group is recovered, 707 // this value reverts to `group:{emailid}` and the recovered group retains the 708 // role in the binding. * 709 // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool 710 // _id}/subject/{subject_attribute_value}`: Deleted single identity in a 711 // workforce identity pool. For example, 712 // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po 713 // ol-id/subject/my-subject-attribute-value`. 714 Members []string `json:"members,omitempty"` 715 // Role: Role that is assigned to the list of `members`, or principals. For 716 // example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview 717 // of the IAM roles and permissions, see the IAM documentation 718 // (https://cloud.google.com/iam/docs/roles-overview). For a list of the 719 // available pre-defined roles, see here 720 // (https://cloud.google.com/iam/docs/understanding-roles). 721 Role string `json:"role,omitempty"` 722 // ForceSendFields is a list of field names (e.g. "Condition") to 723 // unconditionally include in API requests. By default, fields with empty or 724 // default values are omitted from API requests. See 725 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 726 // details. 727 ForceSendFields []string `json:"-"` 728 // NullFields is a list of field names (e.g. "Condition") to include in API 729 // requests with the JSON null value. By default, fields with empty values are 730 // omitted from API requests. See 731 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 732 NullFields []string `json:"-"` 733 } 734 735 func (s *Binding) MarshalJSON() ([]byte, error) { 736 type NoMethod Binding 737 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 738 } 739 740 // Build: Note holding the version of the provider's builder and the signature 741 // of the provenance message in the build details occurrence. 742 type Build struct { 743 // BuilderVersion: Required. Immutable. Version of the builder which produced 744 // this build. 745 BuilderVersion string `json:"builderVersion,omitempty"` 746 // Signature: Signature of the build in occurrences pointing to this build note 747 // containing build details. 748 Signature *BuildSignature `json:"signature,omitempty"` 749 // ForceSendFields is a list of field names (e.g. "BuilderVersion") to 750 // unconditionally include in API requests. By default, fields with empty or 751 // default values are omitted from API requests. See 752 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 753 // details. 754 ForceSendFields []string `json:"-"` 755 // NullFields is a list of field names (e.g. "BuilderVersion") to include in 756 // API requests with the JSON null value. By default, fields with empty values 757 // are omitted from API requests. See 758 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 759 NullFields []string `json:"-"` 760 } 761 762 func (s *Build) MarshalJSON() ([]byte, error) { 763 type NoMethod Build 764 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 765 } 766 767 type BuildDefinition struct { 768 BuildType string `json:"buildType,omitempty"` 769 ExternalParameters googleapi.RawMessage `json:"externalParameters,omitempty"` 770 InternalParameters googleapi.RawMessage `json:"internalParameters,omitempty"` 771 ResolvedDependencies []*ResourceDescriptor `json:"resolvedDependencies,omitempty"` 772 // ForceSendFields is a list of field names (e.g. "BuildType") to 773 // unconditionally include in API requests. By default, fields with empty or 774 // default values are omitted from API requests. See 775 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 776 // details. 777 ForceSendFields []string `json:"-"` 778 // NullFields is a list of field names (e.g. "BuildType") to include in API 779 // requests with the JSON null value. By default, fields with empty values are 780 // omitted from API requests. See 781 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 782 NullFields []string `json:"-"` 783 } 784 785 func (s *BuildDefinition) MarshalJSON() ([]byte, error) { 786 type NoMethod BuildDefinition 787 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 788 } 789 790 type BuildMetadata struct { 791 FinishedOn string `json:"finishedOn,omitempty"` 792 InvocationId string `json:"invocationId,omitempty"` 793 StartedOn string `json:"startedOn,omitempty"` 794 // ForceSendFields is a list of field names (e.g. "FinishedOn") to 795 // unconditionally include in API requests. By default, fields with empty or 796 // default values are omitted from API requests. See 797 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 798 // details. 799 ForceSendFields []string `json:"-"` 800 // NullFields is a list of field names (e.g. "FinishedOn") to include in API 801 // requests with the JSON null value. By default, fields with empty values are 802 // omitted from API requests. See 803 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 804 NullFields []string `json:"-"` 805 } 806 807 func (s *BuildMetadata) MarshalJSON() ([]byte, error) { 808 type NoMethod BuildMetadata 809 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 810 } 811 812 // BuildProvenance: Provenance of a build. Contains all information needed to 813 // verify the full details about the build from source to completion. 814 type BuildProvenance struct { 815 // BuildOptions: Special options applied to this build. This is a catch-all 816 // field where build providers can enter any desired additional details. 817 BuildOptions map[string]string `json:"buildOptions,omitempty"` 818 // BuilderVersion: Version string of the builder at the time this build was 819 // executed. 820 BuilderVersion string `json:"builderVersion,omitempty"` 821 // BuiltArtifacts: Output of the build. 822 BuiltArtifacts []*Artifact `json:"builtArtifacts,omitempty"` 823 // Commands: Commands requested by the build. 824 Commands []*Command `json:"commands,omitempty"` 825 // CreateTime: Time at which the build was created. 826 CreateTime string `json:"createTime,omitempty"` 827 // Creator: E-mail address of the user who initiated this build. Note that this 828 // was the user's e-mail address at the time the build was initiated; this 829 // address may not represent the same end-user for all time. 830 Creator string `json:"creator,omitempty"` 831 // EndTime: Time at which execution of the build was finished. 832 EndTime string `json:"endTime,omitempty"` 833 // Id: Required. Unique identifier of the build. 834 Id string `json:"id,omitempty"` 835 // LogsUri: URI where any logs for this provenance were written. 836 LogsUri string `json:"logsUri,omitempty"` 837 // ProjectId: ID of the project. 838 ProjectId string `json:"projectId,omitempty"` 839 // SourceProvenance: Details of the Source input to the build. 840 SourceProvenance *Source `json:"sourceProvenance,omitempty"` 841 // StartTime: Time at which execution of the build was started. 842 StartTime string `json:"startTime,omitempty"` 843 // TriggerId: Trigger identifier if the build was triggered automatically; 844 // empty if not. 845 TriggerId string `json:"triggerId,omitempty"` 846 // ForceSendFields is a list of field names (e.g. "BuildOptions") to 847 // unconditionally include in API requests. By default, fields with empty or 848 // default values are omitted from API requests. See 849 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 850 // details. 851 ForceSendFields []string `json:"-"` 852 // NullFields is a list of field names (e.g. "BuildOptions") to include in API 853 // requests with the JSON null value. By default, fields with empty values are 854 // omitted from API requests. See 855 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 856 NullFields []string `json:"-"` 857 } 858 859 func (s *BuildProvenance) MarshalJSON() ([]byte, error) { 860 type NoMethod BuildProvenance 861 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 862 } 863 864 // BuildSignature: Message encapsulating the signature of the verified build. 865 type BuildSignature struct { 866 // KeyId: An ID for the key used to sign. This could be either an ID for the 867 // key stored in `public_key` (such as the ID or fingerprint for a PGP key, or 868 // the CN for a cert), or a reference to an external key (such as a reference 869 // to a key in Cloud Key Management Service). 870 KeyId string `json:"keyId,omitempty"` 871 // KeyType: The type of the key, either stored in `public_key` or referenced in 872 // `key_id`. 873 // 874 // Possible values: 875 // "KEY_TYPE_UNSPECIFIED" - `KeyType` is not set. 876 // "PGP_ASCII_ARMORED" - `PGP ASCII Armored` public key. 877 // "PKIX_PEM" - `PKIX PEM` public key. 878 KeyType string `json:"keyType,omitempty"` 879 // PublicKey: Public key of the builder which can be used to verify that the 880 // related findings are valid and unchanged. If `key_type` is empty, this 881 // defaults to PEM encoded public keys. This field may be empty if `key_id` 882 // references an external key. For Cloud Build based signatures, this is a PEM 883 // encoded public key. To verify the Cloud Build signature, place the contents 884 // of this field into a file (public.pem). The signature field is 885 // base64-decoded into its binary representation in signature.bin, and the 886 // provenance bytes from `BuildDetails` are base64-decoded into a binary 887 // representation in signed.bin. OpenSSL can then verify the signature: 888 // `openssl sha256 -verify public.pem -signature signature.bin signed.bin` 889 PublicKey string `json:"publicKey,omitempty"` 890 // Signature: Required. Signature of the related `BuildProvenance`. In JSON, 891 // this is base-64 encoded. 892 Signature string `json:"signature,omitempty"` 893 // ForceSendFields is a list of field names (e.g. "KeyId") to unconditionally 894 // include in API requests. By default, fields with empty or default values are 895 // omitted from API requests. See 896 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 897 // details. 898 ForceSendFields []string `json:"-"` 899 // NullFields is a list of field names (e.g. "KeyId") to include in API 900 // requests with the JSON null value. By default, fields with empty values are 901 // omitted from API requests. See 902 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 903 NullFields []string `json:"-"` 904 } 905 906 func (s *BuildSignature) MarshalJSON() ([]byte, error) { 907 type NoMethod BuildSignature 908 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 909 } 910 911 // BuildStep: A step in the build pipeline. Next ID: 21 912 type BuildStep struct { 913 // AllowExitCodes: Allow this build step to fail without failing the entire 914 // build if and only if the exit code is one of the specified codes. If 915 // allow_failure is also specified, this field will take precedence. 916 AllowExitCodes []int64 `json:"allowExitCodes,omitempty"` 917 // AllowFailure: Allow this build step to fail without failing the entire 918 // build. If false, the entire build will fail if this step fails. Otherwise, 919 // the build will succeed, but this step will still have a failure status. 920 // Error information will be reported in the failure_detail field. 921 AllowFailure bool `json:"allowFailure,omitempty"` 922 // Args: A list of arguments that will be presented to the step when it is 923 // started. If the image used to run the step's container has an entrypoint, 924 // the `args` are used as arguments to that entrypoint. If the image does not 925 // define an entrypoint, the first element in args is used as the entrypoint, 926 // and the remainder will be used as arguments. 927 Args []string `json:"args,omitempty"` 928 // AutomapSubstitutions: Option to include built-in and custom substitutions as 929 // env variables for this build step. This option will override the global 930 // option in BuildOption. 931 AutomapSubstitutions bool `json:"automapSubstitutions,omitempty"` 932 // Dir: Working directory to use when running this step's container. If this 933 // value is a relative path, it is relative to the build's working directory. 934 // If this value is absolute, it may be outside the build's working directory, 935 // in which case the contents of the path may not be persisted across build 936 // step executions, unless a `volume` for that path is specified. If the build 937 // specifies a `RepoSource` with `dir` and a step with a `dir`, which specifies 938 // an absolute path, the `RepoSource` `dir` is ignored for the step's 939 // execution. 940 Dir string `json:"dir,omitempty"` 941 // Entrypoint: Entrypoint to be used instead of the build step image's default 942 // entrypoint. If unset, the image's default entrypoint is used. 943 Entrypoint string `json:"entrypoint,omitempty"` 944 // Env: A list of environment variable definitions to be used when running a 945 // step. The elements are of the form "KEY=VALUE" for the environment variable 946 // "KEY" being given the value "VALUE". 947 Env []string `json:"env,omitempty"` 948 // ExitCode: Output only. Return code from running the step. 949 ExitCode int64 `json:"exitCode,omitempty"` 950 // Id: Unique identifier for this build step, used in `wait_for` to reference 951 // this build step as a dependency. 952 Id string `json:"id,omitempty"` 953 // Name: Required. The name of the container image that will run this 954 // particular build step. If the image is available in the host's Docker 955 // daemon's cache, it will be run directly. If not, the host will attempt to 956 // pull the image first, using the builder service account's credentials if 957 // necessary. The Docker daemon's cache will already have the latest versions 958 // of all of the officially supported build steps 959 // (https://github.com/GoogleCloudPlatform/cloud-builders 960 // (https://github.com/GoogleCloudPlatform/cloud-builders)). The Docker daemon 961 // will also have cached many of the layers for some popular images, like 962 // "ubuntu", "debian", but they will be refreshed at the time you attempt to 963 // use them. If you built an image in a previous build step, it will be stored 964 // in the host's Docker daemon's cache and is available to use as the name for 965 // a later build step. 966 Name string `json:"name,omitempty"` 967 // PullTiming: Output only. Stores timing information for pulling this build 968 // step's builder image only. 969 PullTiming *TimeSpan `json:"pullTiming,omitempty"` 970 // Script: A shell script to be executed in the step. When script is provided, 971 // the user cannot specify the entrypoint or args. 972 Script string `json:"script,omitempty"` 973 // SecretEnv: A list of environment variables which are encrypted using a Cloud 974 // Key Management Service crypto key. These values must be specified in the 975 // build's `Secret`. 976 SecretEnv []string `json:"secretEnv,omitempty"` 977 // Status: Output only. Status of the build step. At this time, build step 978 // status is only updated on build completion; step status is not updated in 979 // real-time as the build progresses. 980 // 981 // Possible values: 982 // "STATUS_UNKNOWN" - Status of the build is unknown. 983 // "PENDING" - Build has been created and is pending execution and queuing. 984 // It has not been queued. 985 // "QUEUING" - Build has been received and is being queued. 986 // "QUEUED" - Build or step is queued; work has not yet begun. 987 // "WORKING" - Build or step is being executed. 988 // "SUCCESS" - Build or step finished successfully. 989 // "FAILURE" - Build or step failed to complete successfully. 990 // "INTERNAL_ERROR" - Build or step failed due to an internal cause. 991 // "TIMEOUT" - Build or step took longer than was allowed. 992 // "CANCELLED" - Build or step was canceled by a user. 993 // "EXPIRED" - Build was enqueued for longer than the value of `queue_ttl`. 994 Status string `json:"status,omitempty"` 995 // Timeout: Time limit for executing this build step. If not defined, the step 996 // has no time limit and will be allowed to continue to run until either it 997 // completes or the build itself times out. 998 Timeout string `json:"timeout,omitempty"` 999 // Timing: Output only. Stores timing information for executing this build 1000 // step. 1001 Timing *TimeSpan `json:"timing,omitempty"` 1002 // Volumes: List of volumes to mount into the build step. Each volume is 1003 // created as an empty volume prior to execution of the build step. Upon 1004 // completion of the build, volumes and their contents are discarded. Using a 1005 // named volume in only one step is not valid as it is indicative of a build 1006 // request with an incorrect configuration. 1007 Volumes []*Volume `json:"volumes,omitempty"` 1008 // WaitFor: The ID(s) of the step(s) that this build step depends on. This 1009 // build step will not start until all the build steps in `wait_for` have 1010 // completed successfully. If `wait_for` is empty, this build step will start 1011 // when all previous build steps in the `Build.Steps` list have completed 1012 // successfully. 1013 WaitFor []string `json:"waitFor,omitempty"` 1014 // ForceSendFields is a list of field names (e.g. "AllowExitCodes") to 1015 // unconditionally include in API requests. By default, fields with empty or 1016 // default values are omitted from API requests. See 1017 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1018 // details. 1019 ForceSendFields []string `json:"-"` 1020 // NullFields is a list of field names (e.g. "AllowExitCodes") to include in 1021 // API requests with the JSON null value. By default, fields with empty values 1022 // are omitted from API requests. See 1023 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1024 NullFields []string `json:"-"` 1025 } 1026 1027 func (s *BuildStep) MarshalJSON() ([]byte, error) { 1028 type NoMethod BuildStep 1029 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1030 } 1031 1032 // ByProducts: Defines an object for the byproducts field in in-toto links. The 1033 // suggested fields are "stderr", "stdout", and "return-value". 1034 type ByProducts struct { 1035 CustomValues map[string]string `json:"customValues,omitempty"` 1036 // ForceSendFields is a list of field names (e.g. "CustomValues") to 1037 // unconditionally include in API requests. By default, fields with empty or 1038 // default values are omitted from API requests. See 1039 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1040 // details. 1041 ForceSendFields []string `json:"-"` 1042 // NullFields is a list of field names (e.g. "CustomValues") to include in API 1043 // requests with the JSON null value. By default, fields with empty values are 1044 // omitted from API requests. See 1045 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1046 NullFields []string `json:"-"` 1047 } 1048 1049 func (s *ByProducts) MarshalJSON() ([]byte, error) { 1050 type NoMethod ByProducts 1051 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1052 } 1053 1054 // CVSS: Common Vulnerability Scoring System. This message is compatible with 1055 // CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide 1056 // CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For 1057 // CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS 1058 // v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator 1059 type CVSS struct { 1060 // AttackComplexity: Defined in CVSS v3, CVSS v2 1061 // 1062 // Possible values: 1063 // "ATTACK_COMPLEXITY_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 1064 // "ATTACK_COMPLEXITY_LOW" - Defined in CVSS v3, CVSS v2 1065 // "ATTACK_COMPLEXITY_HIGH" - Defined in CVSS v3, CVSS v2 1066 // "ATTACK_COMPLEXITY_MEDIUM" - Defined in CVSS v2 1067 AttackComplexity string `json:"attackComplexity,omitempty"` 1068 // AttackVector: Base Metrics Represents the intrinsic characteristics of a 1069 // vulnerability that are constant over time and across user environments. 1070 // Defined in CVSS v3, CVSS v2 1071 // 1072 // Possible values: 1073 // "ATTACK_VECTOR_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 1074 // "ATTACK_VECTOR_NETWORK" - Defined in CVSS v3, CVSS v2 1075 // "ATTACK_VECTOR_ADJACENT" - Defined in CVSS v3, CVSS v2 1076 // "ATTACK_VECTOR_LOCAL" - Defined in CVSS v3, CVSS v2 1077 // "ATTACK_VECTOR_PHYSICAL" - Defined in CVSS v3 1078 AttackVector string `json:"attackVector,omitempty"` 1079 // Authentication: Defined in CVSS v2 1080 // 1081 // Possible values: 1082 // "AUTHENTICATION_UNSPECIFIED" - Defined in CVSS v2 1083 // "AUTHENTICATION_MULTIPLE" - Defined in CVSS v2 1084 // "AUTHENTICATION_SINGLE" - Defined in CVSS v2 1085 // "AUTHENTICATION_NONE" - Defined in CVSS v2 1086 Authentication string `json:"authentication,omitempty"` 1087 // AvailabilityImpact: Defined in CVSS v3, CVSS v2 1088 // 1089 // Possible values: 1090 // "IMPACT_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 1091 // "IMPACT_HIGH" - Defined in CVSS v3 1092 // "IMPACT_LOW" - Defined in CVSS v3 1093 // "IMPACT_NONE" - Defined in CVSS v3, CVSS v2 1094 // "IMPACT_PARTIAL" - Defined in CVSS v2 1095 // "IMPACT_COMPLETE" - Defined in CVSS v2 1096 AvailabilityImpact string `json:"availabilityImpact,omitempty"` 1097 // BaseScore: The base score is a function of the base metric scores. 1098 BaseScore float64 `json:"baseScore,omitempty"` 1099 // ConfidentialityImpact: Defined in CVSS v3, CVSS v2 1100 // 1101 // Possible values: 1102 // "IMPACT_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 1103 // "IMPACT_HIGH" - Defined in CVSS v3 1104 // "IMPACT_LOW" - Defined in CVSS v3 1105 // "IMPACT_NONE" - Defined in CVSS v3, CVSS v2 1106 // "IMPACT_PARTIAL" - Defined in CVSS v2 1107 // "IMPACT_COMPLETE" - Defined in CVSS v2 1108 ConfidentialityImpact string `json:"confidentialityImpact,omitempty"` 1109 ExploitabilityScore float64 `json:"exploitabilityScore,omitempty"` 1110 ImpactScore float64 `json:"impactScore,omitempty"` 1111 // IntegrityImpact: Defined in CVSS v3, CVSS v2 1112 // 1113 // Possible values: 1114 // "IMPACT_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 1115 // "IMPACT_HIGH" - Defined in CVSS v3 1116 // "IMPACT_LOW" - Defined in CVSS v3 1117 // "IMPACT_NONE" - Defined in CVSS v3, CVSS v2 1118 // "IMPACT_PARTIAL" - Defined in CVSS v2 1119 // "IMPACT_COMPLETE" - Defined in CVSS v2 1120 IntegrityImpact string `json:"integrityImpact,omitempty"` 1121 // PrivilegesRequired: Defined in CVSS v3 1122 // 1123 // Possible values: 1124 // "PRIVILEGES_REQUIRED_UNSPECIFIED" - Defined in CVSS v3 1125 // "PRIVILEGES_REQUIRED_NONE" - Defined in CVSS v3 1126 // "PRIVILEGES_REQUIRED_LOW" - Defined in CVSS v3 1127 // "PRIVILEGES_REQUIRED_HIGH" - Defined in CVSS v3 1128 PrivilegesRequired string `json:"privilegesRequired,omitempty"` 1129 // Scope: Defined in CVSS v3 1130 // 1131 // Possible values: 1132 // "SCOPE_UNSPECIFIED" - Defined in CVSS v3 1133 // "SCOPE_UNCHANGED" - Defined in CVSS v3 1134 // "SCOPE_CHANGED" - Defined in CVSS v3 1135 Scope string `json:"scope,omitempty"` 1136 // UserInteraction: Defined in CVSS v3 1137 // 1138 // Possible values: 1139 // "USER_INTERACTION_UNSPECIFIED" - Defined in CVSS v3 1140 // "USER_INTERACTION_NONE" - Defined in CVSS v3 1141 // "USER_INTERACTION_REQUIRED" - Defined in CVSS v3 1142 UserInteraction string `json:"userInteraction,omitempty"` 1143 // ForceSendFields is a list of field names (e.g. "AttackComplexity") to 1144 // unconditionally include in API requests. By default, fields with empty or 1145 // default values are omitted from API requests. See 1146 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1147 // details. 1148 ForceSendFields []string `json:"-"` 1149 // NullFields is a list of field names (e.g. "AttackComplexity") to include in 1150 // API requests with the JSON null value. By default, fields with empty values 1151 // are omitted from API requests. See 1152 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1153 NullFields []string `json:"-"` 1154 } 1155 1156 func (s *CVSS) MarshalJSON() ([]byte, error) { 1157 type NoMethod CVSS 1158 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1159 } 1160 1161 func (s *CVSS) UnmarshalJSON(data []byte) error { 1162 type NoMethod CVSS 1163 var s1 struct { 1164 BaseScore gensupport.JSONFloat64 `json:"baseScore"` 1165 ExploitabilityScore gensupport.JSONFloat64 `json:"exploitabilityScore"` 1166 ImpactScore gensupport.JSONFloat64 `json:"impactScore"` 1167 *NoMethod 1168 } 1169 s1.NoMethod = (*NoMethod)(s) 1170 if err := json.Unmarshal(data, &s1); err != nil { 1171 return err 1172 } 1173 s.BaseScore = float64(s1.BaseScore) 1174 s.ExploitabilityScore = float64(s1.ExploitabilityScore) 1175 s.ImpactScore = float64(s1.ImpactScore) 1176 return nil 1177 } 1178 1179 // CVSSv3: Deprecated. Common Vulnerability Scoring System version 3. For 1180 // details, see https://www.first.org/cvss/specification-document 1181 type CVSSv3 struct { 1182 // Possible values: 1183 // "ATTACK_COMPLEXITY_UNSPECIFIED" 1184 // "ATTACK_COMPLEXITY_LOW" 1185 // "ATTACK_COMPLEXITY_HIGH" 1186 AttackComplexity string `json:"attackComplexity,omitempty"` 1187 // AttackVector: Base Metrics Represents the intrinsic characteristics of a 1188 // vulnerability that are constant over time and across user environments. 1189 // 1190 // Possible values: 1191 // "ATTACK_VECTOR_UNSPECIFIED" 1192 // "ATTACK_VECTOR_NETWORK" 1193 // "ATTACK_VECTOR_ADJACENT" 1194 // "ATTACK_VECTOR_LOCAL" 1195 // "ATTACK_VECTOR_PHYSICAL" 1196 AttackVector string `json:"attackVector,omitempty"` 1197 // Possible values: 1198 // "IMPACT_UNSPECIFIED" 1199 // "IMPACT_HIGH" 1200 // "IMPACT_LOW" 1201 // "IMPACT_NONE" 1202 AvailabilityImpact string `json:"availabilityImpact,omitempty"` 1203 // BaseScore: The base score is a function of the base metric scores. 1204 BaseScore float64 `json:"baseScore,omitempty"` 1205 // Possible values: 1206 // "IMPACT_UNSPECIFIED" 1207 // "IMPACT_HIGH" 1208 // "IMPACT_LOW" 1209 // "IMPACT_NONE" 1210 ConfidentialityImpact string `json:"confidentialityImpact,omitempty"` 1211 ExploitabilityScore float64 `json:"exploitabilityScore,omitempty"` 1212 ImpactScore float64 `json:"impactScore,omitempty"` 1213 // Possible values: 1214 // "IMPACT_UNSPECIFIED" 1215 // "IMPACT_HIGH" 1216 // "IMPACT_LOW" 1217 // "IMPACT_NONE" 1218 IntegrityImpact string `json:"integrityImpact,omitempty"` 1219 // Possible values: 1220 // "PRIVILEGES_REQUIRED_UNSPECIFIED" 1221 // "PRIVILEGES_REQUIRED_NONE" 1222 // "PRIVILEGES_REQUIRED_LOW" 1223 // "PRIVILEGES_REQUIRED_HIGH" 1224 PrivilegesRequired string `json:"privilegesRequired,omitempty"` 1225 // Possible values: 1226 // "SCOPE_UNSPECIFIED" 1227 // "SCOPE_UNCHANGED" 1228 // "SCOPE_CHANGED" 1229 Scope string `json:"scope,omitempty"` 1230 // Possible values: 1231 // "USER_INTERACTION_UNSPECIFIED" 1232 // "USER_INTERACTION_NONE" 1233 // "USER_INTERACTION_REQUIRED" 1234 UserInteraction string `json:"userInteraction,omitempty"` 1235 // ForceSendFields is a list of field names (e.g. "AttackComplexity") to 1236 // unconditionally include in API requests. By default, fields with empty or 1237 // default values are omitted from API requests. See 1238 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1239 // details. 1240 ForceSendFields []string `json:"-"` 1241 // NullFields is a list of field names (e.g. "AttackComplexity") to include in 1242 // API requests with the JSON null value. By default, fields with empty values 1243 // are omitted from API requests. See 1244 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1245 NullFields []string `json:"-"` 1246 } 1247 1248 func (s *CVSSv3) MarshalJSON() ([]byte, error) { 1249 type NoMethod CVSSv3 1250 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1251 } 1252 1253 func (s *CVSSv3) UnmarshalJSON(data []byte) error { 1254 type NoMethod CVSSv3 1255 var s1 struct { 1256 BaseScore gensupport.JSONFloat64 `json:"baseScore"` 1257 ExploitabilityScore gensupport.JSONFloat64 `json:"exploitabilityScore"` 1258 ImpactScore gensupport.JSONFloat64 `json:"impactScore"` 1259 *NoMethod 1260 } 1261 s1.NoMethod = (*NoMethod)(s) 1262 if err := json.Unmarshal(data, &s1); err != nil { 1263 return err 1264 } 1265 s.BaseScore = float64(s1.BaseScore) 1266 s.ExploitabilityScore = float64(s1.ExploitabilityScore) 1267 s.ImpactScore = float64(s1.ImpactScore) 1268 return nil 1269 } 1270 1271 // CloudRepoSourceContext: A CloudRepoSourceContext denotes a particular 1272 // revision in a Google Cloud Source Repo. 1273 type CloudRepoSourceContext struct { 1274 // AliasContext: An alias, which may be a branch or tag. 1275 AliasContext *AliasContext `json:"aliasContext,omitempty"` 1276 // RepoId: The ID of the repo. 1277 RepoId *RepoId `json:"repoId,omitempty"` 1278 // RevisionId: A revision ID. 1279 RevisionId string `json:"revisionId,omitempty"` 1280 // ForceSendFields is a list of field names (e.g. "AliasContext") to 1281 // unconditionally include in API requests. By default, fields with empty or 1282 // default values are omitted from API requests. See 1283 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1284 // details. 1285 ForceSendFields []string `json:"-"` 1286 // NullFields is a list of field names (e.g. "AliasContext") to include in API 1287 // requests with the JSON null value. By default, fields with empty values are 1288 // omitted from API requests. See 1289 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1290 NullFields []string `json:"-"` 1291 } 1292 1293 func (s *CloudRepoSourceContext) MarshalJSON() ([]byte, error) { 1294 type NoMethod CloudRepoSourceContext 1295 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1296 } 1297 1298 // Command: Command describes a step performed as part of the build pipeline. 1299 type Command struct { 1300 // Args: Command-line arguments used when executing this command. 1301 Args []string `json:"args,omitempty"` 1302 // Dir: Working directory (relative to project source root) used when running 1303 // this command. 1304 Dir string `json:"dir,omitempty"` 1305 // Env: Environment variables set before running this command. 1306 Env []string `json:"env,omitempty"` 1307 // Id: Optional unique identifier for this command, used in wait_for to 1308 // reference this command as a dependency. 1309 Id string `json:"id,omitempty"` 1310 // Name: Required. Name of the command, as presented on the command line, or if 1311 // the command is packaged as a Docker container, as presented to `docker 1312 // pull`. 1313 Name string `json:"name,omitempty"` 1314 // WaitFor: The ID(s) of the command(s) that this command depends on. 1315 WaitFor []string `json:"waitFor,omitempty"` 1316 // ForceSendFields is a list of field names (e.g. "Args") to unconditionally 1317 // include in API requests. By default, fields with empty or default values are 1318 // omitted from API requests. See 1319 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1320 // details. 1321 ForceSendFields []string `json:"-"` 1322 // NullFields is a list of field names (e.g. "Args") to include in API requests 1323 // with the JSON null value. By default, fields with empty values are omitted 1324 // from API requests. See 1325 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1326 NullFields []string `json:"-"` 1327 } 1328 1329 func (s *Command) MarshalJSON() ([]byte, error) { 1330 type NoMethod Command 1331 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1332 } 1333 1334 // ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig: ApprovalConfig 1335 // describes configuration for manual approval of a build. 1336 type ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig struct { 1337 // ApprovalRequired: Whether or not approval is needed. If this is set on a 1338 // build, it will become pending when created, and will need to be explicitly 1339 // approved to start. 1340 ApprovalRequired bool `json:"approvalRequired,omitempty"` 1341 // ForceSendFields is a list of field names (e.g. "ApprovalRequired") to 1342 // unconditionally include in API requests. By default, fields with empty or 1343 // default values are omitted from API requests. See 1344 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1345 // details. 1346 ForceSendFields []string `json:"-"` 1347 // NullFields is a list of field names (e.g. "ApprovalRequired") to include in 1348 // API requests with the JSON null value. By default, fields with empty values 1349 // are omitted from API requests. See 1350 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1351 NullFields []string `json:"-"` 1352 } 1353 1354 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig) MarshalJSON() ([]byte, error) { 1355 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig 1356 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1357 } 1358 1359 // ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult: ApprovalResult 1360 // describes the decision and associated metadata of a manual approval of a 1361 // build. 1362 type ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult struct { 1363 // ApprovalTime: Output only. The time when the approval decision was made. 1364 ApprovalTime string `json:"approvalTime,omitempty"` 1365 // ApproverAccount: Output only. Email of the user that called the ApproveBuild 1366 // API to approve or reject a build at the time that the API was called. 1367 ApproverAccount string `json:"approverAccount,omitempty"` 1368 // Comment: Optional. An optional comment for this manual approval result. 1369 Comment string `json:"comment,omitempty"` 1370 // Decision: Required. The decision of this manual approval. 1371 // 1372 // Possible values: 1373 // "DECISION_UNSPECIFIED" - Default enum type. This should not be used. 1374 // "APPROVED" - Build is approved. 1375 // "REJECTED" - Build is rejected. 1376 Decision string `json:"decision,omitempty"` 1377 // Url: Optional. An optional URL tied to this manual approval result. This 1378 // field is essentially the same as comment, except that it will be rendered by 1379 // the UI differently. An example use case is a link to an external job that 1380 // approved this Build. 1381 Url string `json:"url,omitempty"` 1382 // ForceSendFields is a list of field names (e.g. "ApprovalTime") to 1383 // unconditionally include in API requests. By default, fields with empty or 1384 // default values are omitted from API requests. See 1385 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1386 // details. 1387 ForceSendFields []string `json:"-"` 1388 // NullFields is a list of field names (e.g. "ApprovalTime") to include in API 1389 // requests with the JSON null value. By default, fields with empty values are 1390 // omitted from API requests. See 1391 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1392 NullFields []string `json:"-"` 1393 } 1394 1395 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult) MarshalJSON() ([]byte, error) { 1396 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult 1397 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1398 } 1399 1400 // ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts: Artifacts produced by 1401 // a build that should be uploaded upon successful completion of all build 1402 // steps. 1403 type ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts struct { 1404 // Images: A list of images to be pushed upon the successful completion of all 1405 // build steps. The images will be pushed using the builder service account's 1406 // credentials. The digests of the pushed images will be stored in the Build 1407 // resource's results field. If any of the images fail to be pushed, the build 1408 // is marked FAILURE. 1409 Images []string `json:"images,omitempty"` 1410 // MavenArtifacts: A list of Maven artifacts to be uploaded to Artifact 1411 // Registry upon successful completion of all build steps. Artifacts in the 1412 // workspace matching specified paths globs will be uploaded to the specified 1413 // Artifact Registry repository using the builder service account's 1414 // credentials. If any artifacts fail to be pushed, the build is marked 1415 // FAILURE. 1416 MavenArtifacts []*ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact `json:"mavenArtifacts,omitempty"` 1417 // NpmPackages: A list of npm packages to be uploaded to Artifact Registry upon 1418 // successful completion of all build steps. Npm packages in the specified 1419 // paths will be uploaded to the specified Artifact Registry repository using 1420 // the builder service account's credentials. If any packages fail to be 1421 // pushed, the build is marked FAILURE. 1422 NpmPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage `json:"npmPackages,omitempty"` 1423 // Objects: A list of objects to be uploaded to Cloud Storage upon successful 1424 // completion of all build steps. Files in the workspace matching specified 1425 // paths globs will be uploaded to the specified Cloud Storage location using 1426 // the builder service account's credentials. The location and generation of 1427 // the uploaded objects will be stored in the Build resource's results field. 1428 // If any objects fail to be pushed, the build is marked FAILURE. 1429 Objects *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects `json:"objects,omitempty"` 1430 // PythonPackages: A list of Python packages to be uploaded to Artifact 1431 // Registry upon successful completion of all build steps. The build service 1432 // account credentials will be used to perform the upload. If any objects fail 1433 // to be pushed, the build is marked FAILURE. 1434 PythonPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage `json:"pythonPackages,omitempty"` 1435 // ForceSendFields is a list of field names (e.g. "Images") to unconditionally 1436 // include in API requests. By default, fields with empty or default values are 1437 // omitted from API requests. See 1438 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1439 // details. 1440 ForceSendFields []string `json:"-"` 1441 // NullFields is a list of field names (e.g. "Images") to include in API 1442 // requests with the JSON null value. By default, fields with empty values are 1443 // omitted from API requests. See 1444 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1445 NullFields []string `json:"-"` 1446 } 1447 1448 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts) MarshalJSON() ([]byte, error) { 1449 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts 1450 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1451 } 1452 1453 // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects: Files 1454 // in the workspace to upload to Cloud Storage upon successful completion of 1455 // all build steps. 1456 type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects struct { 1457 // Location: Cloud Storage bucket and optional object path, in the form 1458 // "gs://bucket/path/to/somewhere/". (see Bucket Name Requirements 1459 // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Files 1460 // in the workspace matching any path pattern will be uploaded to Cloud Storage 1461 // with this location as a prefix. 1462 Location string `json:"location,omitempty"` 1463 // Paths: Path globs used to match files in the build's workspace. 1464 Paths []string `json:"paths,omitempty"` 1465 // Timing: Output only. Stores timing information for pushing all artifact 1466 // objects. 1467 Timing *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"timing,omitempty"` 1468 // ForceSendFields is a list of field names (e.g. "Location") to 1469 // unconditionally include in API requests. By default, fields with empty or 1470 // default values are omitted from API requests. See 1471 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1472 // details. 1473 ForceSendFields []string `json:"-"` 1474 // NullFields is a list of field names (e.g. "Location") to include in API 1475 // requests with the JSON null value. By default, fields with empty values are 1476 // omitted from API requests. See 1477 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1478 NullFields []string `json:"-"` 1479 } 1480 1481 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects) MarshalJSON() ([]byte, error) { 1482 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects 1483 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1484 } 1485 1486 // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact: A Maven 1487 // artifact to upload to Artifact Registry upon successful completion of all 1488 // build steps. 1489 type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact struct { 1490 // ArtifactId: Maven `artifactId` value used when uploading the artifact to 1491 // Artifact Registry. 1492 ArtifactId string `json:"artifactId,omitempty"` 1493 // GroupId: Maven `groupId` value used when uploading the artifact to Artifact 1494 // Registry. 1495 GroupId string `json:"groupId,omitempty"` 1496 // Path: Path to an artifact in the build's workspace to be uploaded to 1497 // Artifact Registry. This can be either an absolute path, e.g. 1498 // /workspace/my-app/target/my-app-1.0.SNAPSHOT.jar or a relative path from 1499 // /workspace, e.g. my-app/target/my-app-1.0.SNAPSHOT.jar. 1500 Path string `json:"path,omitempty"` 1501 // Repository: Artifact Registry repository, in the form 1502 // "https://$REGION-maven.pkg.dev/$PROJECT/$REPOSITORY" Artifact in the 1503 // workspace specified by path will be uploaded to Artifact Registry with this 1504 // location as a prefix. 1505 Repository string `json:"repository,omitempty"` 1506 // Version: Maven `version` value used when uploading the artifact to Artifact 1507 // Registry. 1508 Version string `json:"version,omitempty"` 1509 // ForceSendFields is a list of field names (e.g. "ArtifactId") to 1510 // unconditionally include in API requests. By default, fields with empty or 1511 // default values are omitted from API requests. See 1512 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1513 // details. 1514 ForceSendFields []string `json:"-"` 1515 // NullFields is a list of field names (e.g. "ArtifactId") to include in API 1516 // requests with the JSON null value. By default, fields with empty values are 1517 // omitted from API requests. See 1518 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1519 NullFields []string `json:"-"` 1520 } 1521 1522 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact) MarshalJSON() ([]byte, error) { 1523 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact 1524 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1525 } 1526 1527 // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage: Npm package 1528 // to upload to Artifact Registry upon successful completion of all build 1529 // steps. 1530 type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage struct { 1531 // PackagePath: Path to the package.json. e.g. workspace/path/to/package 1532 PackagePath string `json:"packagePath,omitempty"` 1533 // Repository: Artifact Registry repository, in the form 1534 // "https://$REGION-npm.pkg.dev/$PROJECT/$REPOSITORY" Npm package in the 1535 // workspace specified by path will be zipped and uploaded to Artifact Registry 1536 // with this location as a prefix. 1537 Repository string `json:"repository,omitempty"` 1538 // ForceSendFields is a list of field names (e.g. "PackagePath") to 1539 // unconditionally include in API requests. By default, fields with empty or 1540 // default values are omitted from API requests. See 1541 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1542 // details. 1543 ForceSendFields []string `json:"-"` 1544 // NullFields is a list of field names (e.g. "PackagePath") to include in API 1545 // requests with the JSON null value. By default, fields with empty values are 1546 // omitted from API requests. See 1547 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1548 NullFields []string `json:"-"` 1549 } 1550 1551 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage) MarshalJSON() ([]byte, error) { 1552 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage 1553 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1554 } 1555 1556 // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage: Python 1557 // package to upload to Artifact Registry upon successful completion of all 1558 // build steps. A package can encapsulate multiple objects to be uploaded to a 1559 // single repository. 1560 type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage struct { 1561 // Paths: Path globs used to match files in the build's workspace. For Python/ 1562 // Twine, this is usually `dist/*`, and sometimes additionally an `.asc` file. 1563 Paths []string `json:"paths,omitempty"` 1564 // Repository: Artifact Registry repository, in the form 1565 // "https://$REGION-python.pkg.dev/$PROJECT/$REPOSITORY" Files in the workspace 1566 // matching any path pattern will be uploaded to Artifact Registry with this 1567 // location as a prefix. 1568 Repository string `json:"repository,omitempty"` 1569 // ForceSendFields is a list of field names (e.g. "Paths") to unconditionally 1570 // include in API requests. By default, fields with empty or default values are 1571 // omitted from API requests. See 1572 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1573 // details. 1574 ForceSendFields []string `json:"-"` 1575 // NullFields is a list of field names (e.g. "Paths") to include in API 1576 // requests with the JSON null value. By default, fields with empty values are 1577 // omitted from API requests. See 1578 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1579 NullFields []string `json:"-"` 1580 } 1581 1582 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage) MarshalJSON() ([]byte, error) { 1583 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage 1584 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1585 } 1586 1587 // ContaineranalysisGoogleDevtoolsCloudbuildV1Build: A build resource in the 1588 // Cloud Build API. At a high level, a `Build` describes where to find source 1589 // code, how to build it (for example, the builder image to run on the source), 1590 // and where to store the built artifacts. Fields can include the following 1591 // variables, which will be expanded when the build is created: - $PROJECT_ID: 1592 // the project ID of the build. - $PROJECT_NUMBER: the project number of the 1593 // build. - $LOCATION: the location/region of the build. - $BUILD_ID: the 1594 // autogenerated ID of the build. - $REPO_NAME: the source repository name 1595 // specified by RepoSource. - $BRANCH_NAME: the branch name specified by 1596 // RepoSource. - $TAG_NAME: the tag name specified by RepoSource. - 1597 // $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or 1598 // resolved from the specified branch or tag. - $SHORT_SHA: first 7 characters 1599 // of $REVISION_ID or $COMMIT_SHA. 1600 type ContaineranalysisGoogleDevtoolsCloudbuildV1Build struct { 1601 // Approval: Output only. Describes this build's approval configuration, 1602 // status, and result. 1603 Approval *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval `json:"approval,omitempty"` 1604 // Artifacts: Artifacts produced by the build that should be uploaded upon 1605 // successful completion of all build steps. 1606 Artifacts *ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts `json:"artifacts,omitempty"` 1607 // AvailableSecrets: Secrets and secret environment variables. 1608 AvailableSecrets *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets `json:"availableSecrets,omitempty"` 1609 // BuildTriggerId: Output only. The ID of the `BuildTrigger` that triggered 1610 // this build, if it was triggered automatically. 1611 BuildTriggerId string `json:"buildTriggerId,omitempty"` 1612 // CreateTime: Output only. Time at which the request to create the build was 1613 // received. 1614 CreateTime string `json:"createTime,omitempty"` 1615 // FailureInfo: Output only. Contains information about the build when 1616 // status=FAILURE. 1617 FailureInfo *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo `json:"failureInfo,omitempty"` 1618 // FinishTime: Output only. Time at which execution of the build was finished. 1619 // The difference between finish_time and start_time is the duration of the 1620 // build's execution. 1621 FinishTime string `json:"finishTime,omitempty"` 1622 // GitConfig: Optional. Configuration for git operations. 1623 GitConfig *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig `json:"gitConfig,omitempty"` 1624 // Id: Output only. Unique identifier of the build. 1625 Id string `json:"id,omitempty"` 1626 // Images: A list of images to be pushed upon the successful completion of all 1627 // build steps. The images are pushed using the builder service account's 1628 // credentials. The digests of the pushed images will be stored in the `Build` 1629 // resource's results field. If any of the images fail to be pushed, the build 1630 // status is marked `FAILURE`. 1631 Images []string `json:"images,omitempty"` 1632 // LogUrl: Output only. URL to logs for this build in Google Cloud Console. 1633 LogUrl string `json:"logUrl,omitempty"` 1634 // LogsBucket: Cloud Storage bucket where logs should be written (see Bucket 1635 // Name Requirements 1636 // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Logs 1637 // file names will be of the format `${logs_bucket}/log-${build_id}.txt`. 1638 LogsBucket string `json:"logsBucket,omitempty"` 1639 // Name: Output only. The 'Build' name with format: 1640 // `projects/{project}/locations/{location}/builds/{build}`, where {build} is a 1641 // unique identifier generated by the service. 1642 Name string `json:"name,omitempty"` 1643 // Options: Special options for this build. 1644 Options *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions `json:"options,omitempty"` 1645 // ProjectId: Output only. ID of the project. 1646 ProjectId string `json:"projectId,omitempty"` 1647 // QueueTtl: TTL in queue for this build. If provided and the build is enqueued 1648 // longer than this value, the build will expire and the build status will be 1649 // `EXPIRED`. The TTL starts ticking from create_time. 1650 QueueTtl string `json:"queueTtl,omitempty"` 1651 // Results: Output only. Results of the build. 1652 Results *ContaineranalysisGoogleDevtoolsCloudbuildV1Results `json:"results,omitempty"` 1653 // Secrets: Secrets to decrypt using Cloud Key Management Service. Note: Secret 1654 // Manager is the recommended technique for managing sensitive data with Cloud 1655 // Build. Use `available_secrets` to configure builds to access secrets from 1656 // Secret Manager. For instructions, see: 1657 // https://cloud.google.com/cloud-build/docs/securing-builds/use-secrets 1658 Secrets []*ContaineranalysisGoogleDevtoolsCloudbuildV1Secret `json:"secrets,omitempty"` 1659 // ServiceAccount: IAM service account whose credentials will be used at build 1660 // runtime. Must be of the format 1661 // `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. ACCOUNT can be email 1662 // address or uniqueId of the service account. 1663 ServiceAccount string `json:"serviceAccount,omitempty"` 1664 // Source: The location of the source files to build. 1665 Source *ContaineranalysisGoogleDevtoolsCloudbuildV1Source `json:"source,omitempty"` 1666 // SourceProvenance: Output only. A permanent fixed identifier for source. 1667 SourceProvenance *ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance `json:"sourceProvenance,omitempty"` 1668 // StartTime: Output only. Time at which execution of the build was started. 1669 StartTime string `json:"startTime,omitempty"` 1670 // Status: Output only. Status of the build. 1671 // 1672 // Possible values: 1673 // "STATUS_UNKNOWN" - Status of the build is unknown. 1674 // "PENDING" - Build has been created and is pending execution and queuing. 1675 // It has not been queued. 1676 // "QUEUED" - Build or step is queued; work has not yet begun. 1677 // "WORKING" - Build or step is being executed. 1678 // "SUCCESS" - Build or step finished successfully. 1679 // "FAILURE" - Build or step failed to complete successfully. 1680 // "INTERNAL_ERROR" - Build or step failed due to an internal cause. 1681 // "TIMEOUT" - Build or step took longer than was allowed. 1682 // "CANCELLED" - Build or step was canceled by a user. 1683 // "EXPIRED" - Build was enqueued for longer than the value of `queue_ttl`. 1684 Status string `json:"status,omitempty"` 1685 // StatusDetail: Output only. Customer-readable message about the current 1686 // status. 1687 StatusDetail string `json:"statusDetail,omitempty"` 1688 // Steps: Required. The operations to be performed on the workspace. 1689 Steps []*ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep `json:"steps,omitempty"` 1690 // Substitutions: Substitutions data for `Build` resource. 1691 Substitutions map[string]string `json:"substitutions,omitempty"` 1692 // Tags: Tags for annotation of a `Build`. These are not docker tags. 1693 Tags []string `json:"tags,omitempty"` 1694 // Timeout: Amount of time that this build should be allowed to run, to second 1695 // granularity. If this amount of time elapses, work on the build will cease 1696 // and the build status will be `TIMEOUT`. `timeout` starts ticking from 1697 // `startTime`. Default time is 60 minutes. 1698 Timeout string `json:"timeout,omitempty"` 1699 // Timing: Output only. Stores timing information for phases of the build. 1700 // Valid keys are: * BUILD: time to execute all build steps. * PUSH: time to 1701 // push all artifacts including docker images and non docker artifacts. * 1702 // FETCHSOURCE: time to fetch source. * SETUPBUILD: time to set up build. If 1703 // the build does not specify source or images, these keys will not be 1704 // included. 1705 Timing map[string]ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"timing,omitempty"` 1706 // Warnings: Output only. Non-fatal problems encountered during the execution 1707 // of the build. 1708 Warnings []*ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning `json:"warnings,omitempty"` 1709 // ForceSendFields is a list of field names (e.g. "Approval") to 1710 // unconditionally include in API requests. By default, fields with empty or 1711 // default values are omitted from API requests. See 1712 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1713 // details. 1714 ForceSendFields []string `json:"-"` 1715 // NullFields is a list of field names (e.g. "Approval") to include in API 1716 // requests with the JSON null value. By default, fields with empty values are 1717 // omitted from API requests. See 1718 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1719 NullFields []string `json:"-"` 1720 } 1721 1722 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Build) MarshalJSON() ([]byte, error) { 1723 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Build 1724 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1725 } 1726 1727 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval: BuildApproval 1728 // describes a build's approval configuration, state, and result. 1729 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval struct { 1730 // Config: Output only. Configuration for manual approval of this build. 1731 Config *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig `json:"config,omitempty"` 1732 // Result: Output only. Result of manual approval for this Build. 1733 Result *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult `json:"result,omitempty"` 1734 // State: Output only. The state of this build's approval. 1735 // 1736 // Possible values: 1737 // "STATE_UNSPECIFIED" - Default enum type. This should not be used. 1738 // "PENDING" - Build approval is pending. 1739 // "APPROVED" - Build approval has been approved. 1740 // "REJECTED" - Build approval has been rejected. 1741 // "CANCELLED" - Build was cancelled while it was still pending approval. 1742 State string `json:"state,omitempty"` 1743 // ForceSendFields is a list of field names (e.g. "Config") to unconditionally 1744 // include in API requests. By default, fields with empty or default values are 1745 // omitted from API requests. See 1746 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1747 // details. 1748 ForceSendFields []string `json:"-"` 1749 // NullFields is a list of field names (e.g. "Config") to include in API 1750 // requests with the JSON null value. By default, fields with empty values are 1751 // omitted from API requests. See 1752 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1753 NullFields []string `json:"-"` 1754 } 1755 1756 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval) MarshalJSON() ([]byte, error) { 1757 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval 1758 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1759 } 1760 1761 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo: A fatal problem 1762 // encountered during the execution of the build. 1763 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo struct { 1764 // Detail: Explains the failure issue in more detail using hard-coded text. 1765 Detail string `json:"detail,omitempty"` 1766 // Type: The name of the failure. 1767 // 1768 // Possible values: 1769 // "FAILURE_TYPE_UNSPECIFIED" - Type unspecified 1770 // "PUSH_FAILED" - Unable to push the image to the repository. 1771 // "PUSH_IMAGE_NOT_FOUND" - Final image not found. 1772 // "PUSH_NOT_AUTHORIZED" - Unauthorized push of the final image. 1773 // "LOGGING_FAILURE" - Backend logging failures. Should retry. 1774 // "USER_BUILD_STEP" - A build step has failed. 1775 // "FETCH_SOURCE_FAILED" - The source fetching has failed. 1776 Type string `json:"type,omitempty"` 1777 // ForceSendFields is a list of field names (e.g. "Detail") to unconditionally 1778 // include in API requests. By default, fields with empty or default values are 1779 // omitted from API requests. See 1780 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1781 // details. 1782 ForceSendFields []string `json:"-"` 1783 // NullFields is a list of field names (e.g. "Detail") to include in API 1784 // requests with the JSON null value. By default, fields with empty values are 1785 // omitted from API requests. See 1786 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1787 NullFields []string `json:"-"` 1788 } 1789 1790 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo) MarshalJSON() ([]byte, error) { 1791 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo 1792 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1793 } 1794 1795 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions: Optional arguments 1796 // to enable specific features of builds. 1797 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions struct { 1798 // AutomapSubstitutions: Option to include built-in and custom substitutions as 1799 // env variables for all build steps. 1800 AutomapSubstitutions bool `json:"automapSubstitutions,omitempty"` 1801 // DefaultLogsBucketBehavior: Optional. Option to specify how default logs 1802 // buckets are setup. 1803 // 1804 // Possible values: 1805 // "DEFAULT_LOGS_BUCKET_BEHAVIOR_UNSPECIFIED" - Unspecified. 1806 // "REGIONAL_USER_OWNED_BUCKET" - Bucket is located in user-owned project in 1807 // the same region as the build. The builder service account must have access 1808 // to create and write to Cloud Storage buckets in the build project. 1809 DefaultLogsBucketBehavior string `json:"defaultLogsBucketBehavior,omitempty"` 1810 // DiskSizeGb: Requested disk size for the VM that runs the build. Note that 1811 // this is *NOT* "disk free"; some of the space will be used by the operating 1812 // system and build utilities. Also note that this is the minimum disk size 1813 // that will be allocated for the build -- the build may run with a larger disk 1814 // than requested. At present, the maximum disk size is 2000GB; builds that 1815 // request more than the maximum are rejected with an error. 1816 DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` 1817 // DynamicSubstitutions: Option to specify whether or not to apply bash style 1818 // string operations to the substitutions. NOTE: this is always enabled for 1819 // triggered builds and cannot be overridden in the build configuration file. 1820 DynamicSubstitutions bool `json:"dynamicSubstitutions,omitempty"` 1821 // Env: A list of global environment variable definitions that will exist for 1822 // all build steps in this build. If a variable is defined in both globally and 1823 // in a build step, the variable will use the build step value. The elements 1824 // are of the form "KEY=VALUE" for the environment variable "KEY" being given 1825 // the value "VALUE". 1826 Env []string `json:"env,omitempty"` 1827 // LogStreamingOption: Option to define build log streaming behavior to Cloud 1828 // Storage. 1829 // 1830 // Possible values: 1831 // "STREAM_DEFAULT" - Service may automatically determine build log streaming 1832 // behavior. 1833 // "STREAM_ON" - Build logs should be streamed to Cloud Storage. 1834 // "STREAM_OFF" - Build logs should not be streamed to Cloud Storage; they 1835 // will be written when the build is completed. 1836 LogStreamingOption string `json:"logStreamingOption,omitempty"` 1837 // Logging: Option to specify the logging mode, which determines if and where 1838 // build logs are stored. 1839 // 1840 // Possible values: 1841 // "LOGGING_UNSPECIFIED" - The service determines the logging mode. The 1842 // default is `LEGACY`. Do not rely on the default logging behavior as it may 1843 // change in the future. 1844 // "LEGACY" - Build logs are stored in Cloud Logging and Cloud Storage. 1845 // "GCS_ONLY" - Build logs are stored in Cloud Storage. 1846 // "STACKDRIVER_ONLY" - This option is the same as CLOUD_LOGGING_ONLY. 1847 // "CLOUD_LOGGING_ONLY" - Build logs are stored in Cloud Logging. Selecting 1848 // this option will not allow [logs 1849 // streaming](https://cloud.google.com/sdk/gcloud/reference/builds/log). 1850 // "NONE" - Turn off all logging. No build logs will be captured. 1851 Logging string `json:"logging,omitempty"` 1852 // MachineType: Compute Engine machine type on which to run the build. 1853 // 1854 // Possible values: 1855 // "UNSPECIFIED" - Standard machine type. 1856 // "N1_HIGHCPU_8" - Highcpu machine with 8 CPUs. 1857 // "N1_HIGHCPU_32" - Highcpu machine with 32 CPUs. 1858 // "E2_HIGHCPU_8" - Highcpu e2 machine with 8 CPUs. 1859 // "E2_HIGHCPU_32" - Highcpu e2 machine with 32 CPUs. 1860 // "E2_MEDIUM" - E2 machine with 1 CPU. 1861 MachineType string `json:"machineType,omitempty"` 1862 // Pool: Optional. Specification for execution on a `WorkerPool`. See running 1863 // builds in a private pool 1864 // (https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) 1865 // for more information. 1866 Pool *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption `json:"pool,omitempty"` 1867 // RequestedVerifyOption: Requested verifiability options. 1868 // 1869 // Possible values: 1870 // "NOT_VERIFIED" - Not a verifiable build (the default). 1871 // "VERIFIED" - Build must be verified. 1872 RequestedVerifyOption string `json:"requestedVerifyOption,omitempty"` 1873 // SecretEnv: A list of global environment variables, which are encrypted using 1874 // a Cloud Key Management Service crypto key. These values must be specified in 1875 // the build's `Secret`. These variables will be available to all build steps 1876 // in this build. 1877 SecretEnv []string `json:"secretEnv,omitempty"` 1878 // SourceProvenanceHash: Requested hash for SourceProvenance. 1879 // 1880 // Possible values: 1881 // "NONE" - No hash requested. 1882 // "SHA256" - Use a sha256 hash. 1883 // "MD5" - Use a md5 hash. 1884 // "SHA512" - Use a sha512 hash. 1885 SourceProvenanceHash []string `json:"sourceProvenanceHash,omitempty"` 1886 // SubstitutionOption: Option to specify behavior when there is an error in the 1887 // substitution checks. NOTE: this is always set to ALLOW_LOOSE for triggered 1888 // builds and cannot be overridden in the build configuration file. 1889 // 1890 // Possible values: 1891 // "MUST_MATCH" - Fails the build if error in substitutions checks, like 1892 // missing a substitution in the template or in the map. 1893 // "ALLOW_LOOSE" - Do not fail the build if error in substitutions checks. 1894 SubstitutionOption string `json:"substitutionOption,omitempty"` 1895 // Volumes: Global list of volumes to mount for ALL build steps Each volume is 1896 // created as an empty volume prior to starting the build process. Upon 1897 // completion of the build, volumes and their contents are discarded. Global 1898 // volume names and paths cannot conflict with the volumes defined a build 1899 // step. Using a global volume in a build with only one step is not valid as it 1900 // is indicative of a build request with an incorrect configuration. 1901 Volumes []*ContaineranalysisGoogleDevtoolsCloudbuildV1Volume `json:"volumes,omitempty"` 1902 // WorkerPool: This field deprecated; please use `pool.name` instead. 1903 WorkerPool string `json:"workerPool,omitempty"` 1904 // ForceSendFields is a list of field names (e.g. "AutomapSubstitutions") to 1905 // unconditionally include in API requests. By default, fields with empty or 1906 // default values are omitted from API requests. See 1907 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1908 // details. 1909 ForceSendFields []string `json:"-"` 1910 // NullFields is a list of field names (e.g. "AutomapSubstitutions") to include 1911 // in API requests with the JSON null value. By default, fields with empty 1912 // values are omitted from API requests. See 1913 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1914 NullFields []string `json:"-"` 1915 } 1916 1917 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions) MarshalJSON() ([]byte, error) { 1918 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions 1919 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1920 } 1921 1922 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption: Details 1923 // about how a build should be executed on a `WorkerPool`. See running builds 1924 // in a private pool 1925 // (https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) 1926 // for more information. 1927 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption struct { 1928 // Name: The `WorkerPool` resource to execute the build on. You must have 1929 // `cloudbuild.workerpools.use` on the project hosting the WorkerPool. Format 1930 // projects/{project}/locations/{location}/workerPools/{workerPoolId} 1931 Name string `json:"name,omitempty"` 1932 // ForceSendFields is a list of field names (e.g. "Name") to unconditionally 1933 // include in API requests. By default, fields with empty or default values are 1934 // omitted from API requests. See 1935 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 1936 // details. 1937 ForceSendFields []string `json:"-"` 1938 // NullFields is a list of field names (e.g. "Name") to include in API requests 1939 // with the JSON null value. By default, fields with empty values are omitted 1940 // from API requests. See 1941 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 1942 NullFields []string `json:"-"` 1943 } 1944 1945 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption) MarshalJSON() ([]byte, error) { 1946 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption 1947 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 1948 } 1949 1950 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep: A step in the build 1951 // pipeline. 1952 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep struct { 1953 // AllowExitCodes: Allow this build step to fail without failing the entire 1954 // build if and only if the exit code is one of the specified codes. If 1955 // allow_failure is also specified, this field will take precedence. 1956 AllowExitCodes []int64 `json:"allowExitCodes,omitempty"` 1957 // AllowFailure: Allow this build step to fail without failing the entire 1958 // build. If false, the entire build will fail if this step fails. Otherwise, 1959 // the build will succeed, but this step will still have a failure status. 1960 // Error information will be reported in the failure_detail field. 1961 AllowFailure bool `json:"allowFailure,omitempty"` 1962 // Args: A list of arguments that will be presented to the step when it is 1963 // started. If the image used to run the step's container has an entrypoint, 1964 // the `args` are used as arguments to that entrypoint. If the image does not 1965 // define an entrypoint, the first element in args is used as the entrypoint, 1966 // and the remainder will be used as arguments. 1967 Args []string `json:"args,omitempty"` 1968 // AutomapSubstitutions: Option to include built-in and custom substitutions as 1969 // env variables for this build step. This option will override the global 1970 // option in BuildOption. 1971 AutomapSubstitutions bool `json:"automapSubstitutions,omitempty"` 1972 // Dir: Working directory to use when running this step's container. If this 1973 // value is a relative path, it is relative to the build's working directory. 1974 // If this value is absolute, it may be outside the build's working directory, 1975 // in which case the contents of the path may not be persisted across build 1976 // step executions, unless a `volume` for that path is specified. If the build 1977 // specifies a `RepoSource` with `dir` and a step with a `dir`, which specifies 1978 // an absolute path, the `RepoSource` `dir` is ignored for the step's 1979 // execution. 1980 Dir string `json:"dir,omitempty"` 1981 // Entrypoint: Entrypoint to be used instead of the build step image's default 1982 // entrypoint. If unset, the image's default entrypoint is used. 1983 Entrypoint string `json:"entrypoint,omitempty"` 1984 // Env: A list of environment variable definitions to be used when running a 1985 // step. The elements are of the form "KEY=VALUE" for the environment variable 1986 // "KEY" being given the value "VALUE". 1987 Env []string `json:"env,omitempty"` 1988 // ExitCode: Output only. Return code from running the step. 1989 ExitCode int64 `json:"exitCode,omitempty"` 1990 // Id: Unique identifier for this build step, used in `wait_for` to reference 1991 // this build step as a dependency. 1992 Id string `json:"id,omitempty"` 1993 // Name: Required. The name of the container image that will run this 1994 // particular build step. If the image is available in the host's Docker 1995 // daemon's cache, it will be run directly. If not, the host will attempt to 1996 // pull the image first, using the builder service account's credentials if 1997 // necessary. The Docker daemon's cache will already have the latest versions 1998 // of all of the officially supported build steps 1999 // (https://github.com/GoogleCloudPlatform/cloud-builders 2000 // (https://github.com/GoogleCloudPlatform/cloud-builders)). The Docker daemon 2001 // will also have cached many of the layers for some popular images, like 2002 // "ubuntu", "debian", but they will be refreshed at the time you attempt to 2003 // use them. If you built an image in a previous build step, it will be stored 2004 // in the host's Docker daemon's cache and is available to use as the name for 2005 // a later build step. 2006 Name string `json:"name,omitempty"` 2007 // PullTiming: Output only. Stores timing information for pulling this build 2008 // step's builder image only. 2009 PullTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pullTiming,omitempty"` 2010 // Script: A shell script to be executed in the step. When script is provided, 2011 // the user cannot specify the entrypoint or args. 2012 Script string `json:"script,omitempty"` 2013 // SecretEnv: A list of environment variables which are encrypted using a Cloud 2014 // Key Management Service crypto key. These values must be specified in the 2015 // build's `Secret`. 2016 SecretEnv []string `json:"secretEnv,omitempty"` 2017 // Status: Output only. Status of the build step. At this time, build step 2018 // status is only updated on build completion; step status is not updated in 2019 // real-time as the build progresses. 2020 // 2021 // Possible values: 2022 // "STATUS_UNKNOWN" - Status of the build is unknown. 2023 // "PENDING" - Build has been created and is pending execution and queuing. 2024 // It has not been queued. 2025 // "QUEUED" - Build or step is queued; work has not yet begun. 2026 // "WORKING" - Build or step is being executed. 2027 // "SUCCESS" - Build or step finished successfully. 2028 // "FAILURE" - Build or step failed to complete successfully. 2029 // "INTERNAL_ERROR" - Build or step failed due to an internal cause. 2030 // "TIMEOUT" - Build or step took longer than was allowed. 2031 // "CANCELLED" - Build or step was canceled by a user. 2032 // "EXPIRED" - Build was enqueued for longer than the value of `queue_ttl`. 2033 Status string `json:"status,omitempty"` 2034 // Timeout: Time limit for executing this build step. If not defined, the step 2035 // has no time limit and will be allowed to continue to run until either it 2036 // completes or the build itself times out. 2037 Timeout string `json:"timeout,omitempty"` 2038 // Timing: Output only. Stores timing information for executing this build 2039 // step. 2040 Timing *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"timing,omitempty"` 2041 // Volumes: List of volumes to mount into the build step. Each volume is 2042 // created as an empty volume prior to execution of the build step. Upon 2043 // completion of the build, volumes and their contents are discarded. Using a 2044 // named volume in only one step is not valid as it is indicative of a build 2045 // request with an incorrect configuration. 2046 Volumes []*ContaineranalysisGoogleDevtoolsCloudbuildV1Volume `json:"volumes,omitempty"` 2047 // WaitFor: The ID(s) of the step(s) that this build step depends on. This 2048 // build step will not start until all the build steps in `wait_for` have 2049 // completed successfully. If `wait_for` is empty, this build step will start 2050 // when all previous build steps in the `Build.Steps` list have completed 2051 // successfully. 2052 WaitFor []string `json:"waitFor,omitempty"` 2053 // ForceSendFields is a list of field names (e.g. "AllowExitCodes") to 2054 // unconditionally include in API requests. By default, fields with empty or 2055 // default values are omitted from API requests. See 2056 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2057 // details. 2058 ForceSendFields []string `json:"-"` 2059 // NullFields is a list of field names (e.g. "AllowExitCodes") to include in 2060 // API requests with the JSON null value. By default, fields with empty values 2061 // are omitted from API requests. See 2062 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2063 NullFields []string `json:"-"` 2064 } 2065 2066 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep) MarshalJSON() ([]byte, error) { 2067 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep 2068 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2069 } 2070 2071 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning: A non-fatal problem 2072 // encountered during the execution of the build. 2073 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning struct { 2074 // Priority: The priority for this warning. 2075 // 2076 // Possible values: 2077 // "PRIORITY_UNSPECIFIED" - Should not be used. 2078 // "INFO" - e.g. deprecation warnings and alternative feature highlights. 2079 // "WARNING" - e.g. automated detection of possible issues with the build. 2080 // "ALERT" - e.g. alerts that a feature used in the build is pending removal 2081 Priority string `json:"priority,omitempty"` 2082 // Text: Explanation of the warning generated. 2083 Text string `json:"text,omitempty"` 2084 // ForceSendFields is a list of field names (e.g. "Priority") to 2085 // unconditionally include in API requests. By default, fields with empty or 2086 // default values are omitted from API requests. See 2087 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2088 // details. 2089 ForceSendFields []string `json:"-"` 2090 // NullFields is a list of field names (e.g. "Priority") to include in API 2091 // requests with the JSON null value. By default, fields with empty values are 2092 // omitted from API requests. See 2093 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2094 NullFields []string `json:"-"` 2095 } 2096 2097 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning) MarshalJSON() ([]byte, error) { 2098 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning 2099 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2100 } 2101 2102 // ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage: An image built by the 2103 // pipeline. 2104 type ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage struct { 2105 // Digest: Docker Registry 2.0 digest. 2106 Digest string `json:"digest,omitempty"` 2107 // Name: Name used to push the container image to Google Container Registry, as 2108 // presented to `docker push`. 2109 Name string `json:"name,omitempty"` 2110 // PushTiming: Output only. Stores timing information for pushing the specified 2111 // image. 2112 PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` 2113 // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally 2114 // include in API requests. By default, fields with empty or default values are 2115 // omitted from API requests. See 2116 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2117 // details. 2118 ForceSendFields []string `json:"-"` 2119 // NullFields is a list of field names (e.g. "Digest") to include in API 2120 // requests with the JSON null value. By default, fields with empty values are 2121 // omitted from API requests. See 2122 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2123 NullFields []string `json:"-"` 2124 } 2125 2126 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage) MarshalJSON() ([]byte, error) { 2127 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage 2128 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2129 } 2130 2131 // ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository: Location of 2132 // the source in a 2nd-gen Google Cloud Build repository resource. 2133 type ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository struct { 2134 // Dir: Directory, relative to the source root, in which to run the build. 2135 Dir string `json:"dir,omitempty"` 2136 // Repository: Required. Name of the Google Cloud Build repository, formatted 2137 // as `projects/*/locations/*/connections/*/repositories/*`. 2138 Repository string `json:"repository,omitempty"` 2139 // Revision: The revision to fetch from the Git repository such as a branch, a 2140 // tag, a commit SHA, or any Git ref. 2141 Revision string `json:"revision,omitempty"` 2142 // ForceSendFields is a list of field names (e.g. "Dir") to unconditionally 2143 // include in API requests. By default, fields with empty or default values are 2144 // omitted from API requests. See 2145 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2146 // details. 2147 ForceSendFields []string `json:"-"` 2148 // NullFields is a list of field names (e.g. "Dir") to include in API requests 2149 // with the JSON null value. By default, fields with empty values are omitted 2150 // from API requests. See 2151 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2152 NullFields []string `json:"-"` 2153 } 2154 2155 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository) MarshalJSON() ([]byte, error) { 2156 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository 2157 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2158 } 2159 2160 // ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig: This 2161 // config defines the location of a source through Developer Connect. 2162 type ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig struct { 2163 // Dir: Required. Directory, relative to the source root, in which to run the 2164 // build. 2165 Dir string `json:"dir,omitempty"` 2166 // GitRepositoryLink: Required. The Developer Connect Git repository link, 2167 // formatted as `projects/*/locations/*/connections/*/gitRepositoryLink/*`. 2168 GitRepositoryLink string `json:"gitRepositoryLink,omitempty"` 2169 // Revision: Required. The revision to fetch from the Git repository such as a 2170 // branch, a tag, a commit SHA, or any Git ref. 2171 Revision string `json:"revision,omitempty"` 2172 // ForceSendFields is a list of field names (e.g. "Dir") to unconditionally 2173 // include in API requests. By default, fields with empty or default values are 2174 // omitted from API requests. See 2175 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2176 // details. 2177 ForceSendFields []string `json:"-"` 2178 // NullFields is a list of field names (e.g. "Dir") to include in API requests 2179 // with the JSON null value. By default, fields with empty values are omitted 2180 // from API requests. See 2181 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2182 NullFields []string `json:"-"` 2183 } 2184 2185 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig) MarshalJSON() ([]byte, error) { 2186 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig 2187 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2188 } 2189 2190 // ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes: Container message for 2191 // hashes of byte content of files, used in SourceProvenance messages to verify 2192 // integrity of source input to the build. 2193 type ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes struct { 2194 // FileHash: Collection of file hashes. 2195 FileHash []*ContaineranalysisGoogleDevtoolsCloudbuildV1Hash `json:"fileHash,omitempty"` 2196 // ForceSendFields is a list of field names (e.g. "FileHash") to 2197 // unconditionally include in API requests. By default, fields with empty or 2198 // default values are omitted from API requests. See 2199 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2200 // details. 2201 ForceSendFields []string `json:"-"` 2202 // NullFields is a list of field names (e.g. "FileHash") to include in API 2203 // requests with the JSON null value. By default, fields with empty values are 2204 // omitted from API requests. See 2205 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2206 NullFields []string `json:"-"` 2207 } 2208 2209 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes) MarshalJSON() ([]byte, error) { 2210 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes 2211 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2212 } 2213 2214 // ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig: GitConfig is a 2215 // configuration for git operations. 2216 type ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig struct { 2217 // Http: Configuration for HTTP related git operations. 2218 Http *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig `json:"http,omitempty"` 2219 // ForceSendFields is a list of field names (e.g. "Http") to unconditionally 2220 // include in API requests. By default, fields with empty or default values are 2221 // omitted from API requests. See 2222 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2223 // details. 2224 ForceSendFields []string `json:"-"` 2225 // NullFields is a list of field names (e.g. "Http") to include in API requests 2226 // with the JSON null value. By default, fields with empty values are omitted 2227 // from API requests. See 2228 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2229 NullFields []string `json:"-"` 2230 } 2231 2232 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig) MarshalJSON() ([]byte, error) { 2233 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig 2234 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2235 } 2236 2237 // ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig: HttpConfig 2238 // is a configuration for HTTP related git operations. 2239 type ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig struct { 2240 // ProxySecretVersionName: SecretVersion resource of the HTTP proxy URL. The 2241 // proxy URL should be in format protocol://@]proxyhost[:port]. 2242 ProxySecretVersionName string `json:"proxySecretVersionName,omitempty"` 2243 // ForceSendFields is a list of field names (e.g. "ProxySecretVersionName") to 2244 // unconditionally include in API requests. By default, fields with empty or 2245 // default values are omitted from API requests. See 2246 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2247 // details. 2248 ForceSendFields []string `json:"-"` 2249 // NullFields is a list of field names (e.g. "ProxySecretVersionName") to 2250 // include in API requests with the JSON null value. By default, fields with 2251 // empty values are omitted from API requests. See 2252 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2253 NullFields []string `json:"-"` 2254 } 2255 2256 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig) MarshalJSON() ([]byte, error) { 2257 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig 2258 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2259 } 2260 2261 // ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource: Location of the source 2262 // in any accessible Git repository. 2263 type ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource struct { 2264 // Dir: Directory, relative to the source root, in which to run the build. This 2265 // must be a relative path. If a step's `dir` is specified and is an absolute 2266 // path, this value is ignored for that step's execution. 2267 Dir string `json:"dir,omitempty"` 2268 // Revision: The revision to fetch from the Git repository such as a branch, a 2269 // tag, a commit SHA, or any Git ref. Cloud Build uses `git fetch` to fetch the 2270 // revision from the Git repository; therefore make sure that the string you 2271 // provide for `revision` is parsable by the command. For information on string 2272 // values accepted by `git fetch`, see 2273 // https://git-scm.com/docs/gitrevisions#_specifying_revisions. For information 2274 // on `git fetch`, see https://git-scm.com/docs/git-fetch. 2275 Revision string `json:"revision,omitempty"` 2276 // Url: Location of the Git repo to build. This will be used as a `git remote`, 2277 // see https://git-scm.com/docs/git-remote. 2278 Url string `json:"url,omitempty"` 2279 // ForceSendFields is a list of field names (e.g. "Dir") to unconditionally 2280 // include in API requests. By default, fields with empty or default values are 2281 // omitted from API requests. See 2282 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2283 // details. 2284 ForceSendFields []string `json:"-"` 2285 // NullFields is a list of field names (e.g. "Dir") to include in API requests 2286 // with the JSON null value. By default, fields with empty values are omitted 2287 // from API requests. See 2288 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2289 NullFields []string `json:"-"` 2290 } 2291 2292 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource) MarshalJSON() ([]byte, error) { 2293 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource 2294 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2295 } 2296 2297 // ContaineranalysisGoogleDevtoolsCloudbuildV1Hash: Container message for hash 2298 // values. 2299 type ContaineranalysisGoogleDevtoolsCloudbuildV1Hash struct { 2300 // Type: The type of hash that was performed. 2301 // 2302 // Possible values: 2303 // "NONE" - No hash requested. 2304 // "SHA256" - Use a sha256 hash. 2305 // "MD5" - Use a md5 hash. 2306 // "SHA512" - Use a sha512 hash. 2307 Type string `json:"type,omitempty"` 2308 // Value: The hash value. 2309 Value string `json:"value,omitempty"` 2310 // ForceSendFields is a list of field names (e.g. "Type") to unconditionally 2311 // include in API requests. By default, fields with empty or default values are 2312 // omitted from API requests. See 2313 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2314 // details. 2315 ForceSendFields []string `json:"-"` 2316 // NullFields is a list of field names (e.g. "Type") to include in API requests 2317 // with the JSON null value. By default, fields with empty values are omitted 2318 // from API requests. See 2319 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2320 NullFields []string `json:"-"` 2321 } 2322 2323 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Hash) MarshalJSON() ([]byte, error) { 2324 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Hash 2325 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2326 } 2327 2328 // ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret: Pairs a set of 2329 // secret environment variables mapped to encrypted values with the Cloud KMS 2330 // key to use to decrypt the value. 2331 type ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret struct { 2332 // EnvMap: Map of environment variable name to its encrypted value. Secret 2333 // environment variables must be unique across all of a build's secrets, and 2334 // must be used by at least one build step. Values can be at most 64 KB in 2335 // size. There can be at most 100 secret values across all of a build's 2336 // secrets. 2337 EnvMap map[string]string `json:"envMap,omitempty"` 2338 // KmsKeyName: Resource name of Cloud KMS crypto key to decrypt the encrypted 2339 // value. In format: projects/*/locations/*/keyRings/*/cryptoKeys/* 2340 KmsKeyName string `json:"kmsKeyName,omitempty"` 2341 // ForceSendFields is a list of field names (e.g. "EnvMap") to unconditionally 2342 // include in API requests. By default, fields with empty or default values are 2343 // omitted from API requests. See 2344 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2345 // details. 2346 ForceSendFields []string `json:"-"` 2347 // NullFields is a list of field names (e.g. "EnvMap") to include in API 2348 // requests with the JSON null value. By default, fields with empty values are 2349 // omitted from API requests. See 2350 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2351 NullFields []string `json:"-"` 2352 } 2353 2354 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret) MarshalJSON() ([]byte, error) { 2355 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret 2356 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2357 } 2358 2359 // ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource: Location of the 2360 // source in a Google Cloud Source Repository. 2361 type ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource struct { 2362 // BranchName: Regex matching branches to build. The syntax of the regular 2363 // expressions accepted is the syntax accepted by RE2 and described at 2364 // https://github.com/google/re2/wiki/Syntax 2365 BranchName string `json:"branchName,omitempty"` 2366 // CommitSha: Explicit commit SHA to build. 2367 CommitSha string `json:"commitSha,omitempty"` 2368 // Dir: Directory, relative to the source root, in which to run the build. This 2369 // must be a relative path. If a step's `dir` is specified and is an absolute 2370 // path, this value is ignored for that step's execution. 2371 Dir string `json:"dir,omitempty"` 2372 // InvertRegex: Only trigger a build if the revision regex does NOT match the 2373 // revision regex. 2374 InvertRegex bool `json:"invertRegex,omitempty"` 2375 // ProjectId: ID of the project that owns the Cloud Source Repository. If 2376 // omitted, the project ID requesting the build is assumed. 2377 ProjectId string `json:"projectId,omitempty"` 2378 // RepoName: Name of the Cloud Source Repository. 2379 RepoName string `json:"repoName,omitempty"` 2380 // Substitutions: Substitutions to use in a triggered build. Should only be 2381 // used with RunBuildTrigger 2382 Substitutions map[string]string `json:"substitutions,omitempty"` 2383 // TagName: Regex matching tags to build. The syntax of the regular expressions 2384 // accepted is the syntax accepted by RE2 and described at 2385 // https://github.com/google/re2/wiki/Syntax 2386 TagName string `json:"tagName,omitempty"` 2387 // ForceSendFields is a list of field names (e.g. "BranchName") to 2388 // unconditionally include in API requests. By default, fields with empty or 2389 // default values are omitted from API requests. See 2390 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2391 // details. 2392 ForceSendFields []string `json:"-"` 2393 // NullFields is a list of field names (e.g. "BranchName") to include in API 2394 // requests with the JSON null value. By default, fields with empty values are 2395 // omitted from API requests. See 2396 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2397 NullFields []string `json:"-"` 2398 } 2399 2400 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource) MarshalJSON() ([]byte, error) { 2401 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource 2402 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2403 } 2404 2405 // ContaineranalysisGoogleDevtoolsCloudbuildV1Results: Artifacts created by the 2406 // build pipeline. 2407 type ContaineranalysisGoogleDevtoolsCloudbuildV1Results struct { 2408 // ArtifactManifest: Path to the artifact manifest for non-container artifacts 2409 // uploaded to Cloud Storage. Only populated when artifacts are uploaded to 2410 // Cloud Storage. 2411 ArtifactManifest string `json:"artifactManifest,omitempty"` 2412 // ArtifactTiming: Time to push all non-container artifacts to Cloud Storage. 2413 ArtifactTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"artifactTiming,omitempty"` 2414 // BuildStepImages: List of build step digests, in the order corresponding to 2415 // build step indices. 2416 BuildStepImages []string `json:"buildStepImages,omitempty"` 2417 // BuildStepOutputs: List of build step outputs, produced by builder images, in 2418 // the order corresponding to build step indices. Cloud Builders 2419 // (https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this 2420 // output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data 2421 // is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't 2422 // be substituted. 2423 BuildStepOutputs []string `json:"buildStepOutputs,omitempty"` 2424 // Images: Container images that were built as a part of the build. 2425 Images []*ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage `json:"images,omitempty"` 2426 // MavenArtifacts: Maven artifacts uploaded to Artifact Registry at the end of 2427 // the build. 2428 MavenArtifacts []*ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact `json:"mavenArtifacts,omitempty"` 2429 // NpmPackages: Npm packages uploaded to Artifact Registry at the end of the 2430 // build. 2431 NpmPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage `json:"npmPackages,omitempty"` 2432 // NumArtifacts: Number of non-container artifacts uploaded to Cloud Storage. 2433 // Only populated when artifacts are uploaded to Cloud Storage. 2434 NumArtifacts int64 `json:"numArtifacts,omitempty,string"` 2435 // PythonPackages: Python artifacts uploaded to Artifact Registry at the end of 2436 // the build. 2437 PythonPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage `json:"pythonPackages,omitempty"` 2438 // ForceSendFields is a list of field names (e.g. "ArtifactManifest") to 2439 // unconditionally include in API requests. By default, fields with empty or 2440 // default values are omitted from API requests. See 2441 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2442 // details. 2443 ForceSendFields []string `json:"-"` 2444 // NullFields is a list of field names (e.g. "ArtifactManifest") to include in 2445 // API requests with the JSON null value. By default, fields with empty values 2446 // are omitted from API requests. See 2447 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2448 NullFields []string `json:"-"` 2449 } 2450 2451 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Results) MarshalJSON() ([]byte, error) { 2452 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Results 2453 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2454 } 2455 2456 // ContaineranalysisGoogleDevtoolsCloudbuildV1Secret: Pairs a set of secret 2457 // environment variables containing encrypted values with the Cloud KMS key to 2458 // use to decrypt the value. Note: Use `kmsKeyName` with `available_secrets` 2459 // instead of using `kmsKeyName` with `secret`. For instructions see: 2460 // https://cloud.google.com/cloud-build/docs/securing-builds/use-encrypted-credentials. 2461 type ContaineranalysisGoogleDevtoolsCloudbuildV1Secret struct { 2462 // KmsKeyName: Cloud KMS key name to use to decrypt these envs. 2463 KmsKeyName string `json:"kmsKeyName,omitempty"` 2464 // SecretEnv: Map of environment variable name to its encrypted value. Secret 2465 // environment variables must be unique across all of a build's secrets, and 2466 // must be used by at least one build step. Values can be at most 64 KB in 2467 // size. There can be at most 100 secret values across all of a build's 2468 // secrets. 2469 SecretEnv map[string]string `json:"secretEnv,omitempty"` 2470 // ForceSendFields is a list of field names (e.g. "KmsKeyName") to 2471 // unconditionally include in API requests. By default, fields with empty or 2472 // default values are omitted from API requests. See 2473 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2474 // details. 2475 ForceSendFields []string `json:"-"` 2476 // NullFields is a list of field names (e.g. "KmsKeyName") to include in API 2477 // requests with the JSON null value. By default, fields with empty values are 2478 // omitted from API requests. See 2479 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2480 NullFields []string `json:"-"` 2481 } 2482 2483 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secret) MarshalJSON() ([]byte, error) { 2484 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Secret 2485 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2486 } 2487 2488 // ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret: Pairs a 2489 // secret environment variable with a SecretVersion in Secret Manager. 2490 type ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret struct { 2491 // Env: Environment variable name to associate with the secret. Secret 2492 // environment variables must be unique across all of a build's secrets, and 2493 // must be used by at least one build step. 2494 Env string `json:"env,omitempty"` 2495 // VersionName: Resource name of the SecretVersion. In format: 2496 // projects/*/secrets/*/versions/* 2497 VersionName string `json:"versionName,omitempty"` 2498 // ForceSendFields is a list of field names (e.g. "Env") to unconditionally 2499 // include in API requests. By default, fields with empty or default values are 2500 // omitted from API requests. See 2501 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2502 // details. 2503 ForceSendFields []string `json:"-"` 2504 // NullFields is a list of field names (e.g. "Env") to include in API requests 2505 // with the JSON null value. By default, fields with empty values are omitted 2506 // from API requests. See 2507 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2508 NullFields []string `json:"-"` 2509 } 2510 2511 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret) MarshalJSON() ([]byte, error) { 2512 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret 2513 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2514 } 2515 2516 // ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets: Secrets and secret 2517 // environment variables. 2518 type ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets struct { 2519 // Inline: Secrets encrypted with KMS key and the associated secret environment 2520 // variable. 2521 Inline []*ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret `json:"inline,omitempty"` 2522 // SecretManager: Secrets in Secret Manager and associated secret environment 2523 // variable. 2524 SecretManager []*ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret `json:"secretManager,omitempty"` 2525 // ForceSendFields is a list of field names (e.g. "Inline") to unconditionally 2526 // include in API requests. By default, fields with empty or default values are 2527 // omitted from API requests. See 2528 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2529 // details. 2530 ForceSendFields []string `json:"-"` 2531 // NullFields is a list of field names (e.g. "Inline") to include in API 2532 // requests with the JSON null value. By default, fields with empty values are 2533 // omitted from API requests. See 2534 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2535 NullFields []string `json:"-"` 2536 } 2537 2538 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets) MarshalJSON() ([]byte, error) { 2539 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets 2540 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2541 } 2542 2543 // ContaineranalysisGoogleDevtoolsCloudbuildV1Source: Location of the source in 2544 // a supported storage service. 2545 type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { 2546 // ConnectedRepository: Optional. If provided, get the source from this 2nd-gen 2547 // Google Cloud Build repository resource. 2548 ConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"connectedRepository,omitempty"` 2549 // DeveloperConnectConfig: If provided, get the source from this Developer 2550 // Connect config. 2551 DeveloperConnectConfig *ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig `json:"developerConnectConfig,omitempty"` 2552 // GitSource: If provided, get the source from this Git repository. 2553 GitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"gitSource,omitempty"` 2554 // RepoSource: If provided, get the source from this location in a Cloud Source 2555 // Repository. 2556 RepoSource *ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource `json:"repoSource,omitempty"` 2557 // StorageSource: If provided, get the source from this location in Cloud 2558 // Storage. 2559 StorageSource *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource `json:"storageSource,omitempty"` 2560 // StorageSourceManifest: If provided, get the source from this manifest in 2561 // Cloud Storage. This feature is in Preview; see description here 2562 // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). 2563 StorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"storageSourceManifest,omitempty"` 2564 // ForceSendFields is a list of field names (e.g. "ConnectedRepository") to 2565 // unconditionally include in API requests. By default, fields with empty or 2566 // default values are omitted from API requests. See 2567 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2568 // details. 2569 ForceSendFields []string `json:"-"` 2570 // NullFields is a list of field names (e.g. "ConnectedRepository") to include 2571 // in API requests with the JSON null value. By default, fields with empty 2572 // values are omitted from API requests. See 2573 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2574 NullFields []string `json:"-"` 2575 } 2576 2577 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Source) MarshalJSON() ([]byte, error) { 2578 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Source 2579 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2580 } 2581 2582 // ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance: Provenance of 2583 // the source. Ways to find the original source, or verify that some source was 2584 // used for this build. 2585 type ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance struct { 2586 // FileHashes: Output only. Hash(es) of the build source, which can be used to 2587 // verify that the original source integrity was maintained in the build. Note 2588 // that `FileHashes` will only be populated if `BuildOptions` has requested a 2589 // `SourceProvenanceHash`. The keys to this map are file paths used as build 2590 // source and the values contain the hash values for those files. If the build 2591 // source came in a single package such as a gzipped tarfile (`.tar.gz`), the 2592 // `FileHash` will be for the single path to that file. 2593 FileHashes map[string]ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` 2594 // ResolvedConnectedRepository: Output only. A copy of the build's 2595 // `source.connected_repository`, if exists, with any revisions resolved. 2596 ResolvedConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"resolvedConnectedRepository,omitempty"` 2597 // ResolvedGitSource: Output only. A copy of the build's `source.git_source`, 2598 // if exists, with any revisions resolved. 2599 ResolvedGitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"resolvedGitSource,omitempty"` 2600 // ResolvedRepoSource: A copy of the build's `source.repo_source`, if exists, 2601 // with any revisions resolved. 2602 ResolvedRepoSource *ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource `json:"resolvedRepoSource,omitempty"` 2603 // ResolvedStorageSource: A copy of the build's `source.storage_source`, if 2604 // exists, with any generations resolved. 2605 ResolvedStorageSource *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource `json:"resolvedStorageSource,omitempty"` 2606 // ResolvedStorageSourceManifest: A copy of the build's 2607 // `source.storage_source_manifest`, if exists, with any revisions resolved. 2608 // This feature is in Preview. 2609 ResolvedStorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"resolvedStorageSourceManifest,omitempty"` 2610 // ForceSendFields is a list of field names (e.g. "FileHashes") to 2611 // unconditionally include in API requests. By default, fields with empty or 2612 // default values are omitted from API requests. See 2613 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2614 // details. 2615 ForceSendFields []string `json:"-"` 2616 // NullFields is a list of field names (e.g. "FileHashes") to include in API 2617 // requests with the JSON null value. By default, fields with empty values are 2618 // omitted from API requests. See 2619 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2620 NullFields []string `json:"-"` 2621 } 2622 2623 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance) MarshalJSON() ([]byte, error) { 2624 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance 2625 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2626 } 2627 2628 // ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource: Location of the 2629 // source in an archive file in Cloud Storage. 2630 type ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource struct { 2631 // Bucket: Cloud Storage bucket containing the source (see Bucket Name 2632 // Requirements 2633 // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). 2634 Bucket string `json:"bucket,omitempty"` 2635 // Generation: Cloud Storage generation for the object. If the generation is 2636 // omitted, the latest generation will be used. 2637 Generation int64 `json:"generation,omitempty,string"` 2638 // Object: Cloud Storage object containing the source. This object must be a 2639 // zipped (`.zip`) or gzipped archive file (`.tar.gz`) containing source to 2640 // build. 2641 Object string `json:"object,omitempty"` 2642 // SourceFetcher: Optional. Option to specify the tool to fetch the source file 2643 // for the build. 2644 // 2645 // Possible values: 2646 // "SOURCE_FETCHER_UNSPECIFIED" - Unspecified defaults to GSUTIL. 2647 // "GSUTIL" - Use the "gsutil" tool to download the source file. 2648 // "GCS_FETCHER" - Use the Cloud Storage Fetcher tool to download the source 2649 // file. 2650 SourceFetcher string `json:"sourceFetcher,omitempty"` 2651 // ForceSendFields is a list of field names (e.g. "Bucket") to unconditionally 2652 // include in API requests. By default, fields with empty or default values are 2653 // omitted from API requests. See 2654 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2655 // details. 2656 ForceSendFields []string `json:"-"` 2657 // NullFields is a list of field names (e.g. "Bucket") to include in API 2658 // requests with the JSON null value. By default, fields with empty values are 2659 // omitted from API requests. See 2660 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2661 NullFields []string `json:"-"` 2662 } 2663 2664 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource) MarshalJSON() ([]byte, error) { 2665 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource 2666 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2667 } 2668 2669 // ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest: Location 2670 // of the source manifest in Cloud Storage. This feature is in Preview; see 2671 // description here 2672 // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). 2673 type ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest struct { 2674 // Bucket: Cloud Storage bucket containing the source manifest (see Bucket Name 2675 // Requirements 2676 // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). 2677 Bucket string `json:"bucket,omitempty"` 2678 // Generation: Cloud Storage generation for the object. If the generation is 2679 // omitted, the latest generation will be used. 2680 Generation int64 `json:"generation,omitempty,string"` 2681 // Object: Cloud Storage object containing the source manifest. This object 2682 // must be a JSON file. 2683 Object string `json:"object,omitempty"` 2684 // ForceSendFields is a list of field names (e.g. "Bucket") to unconditionally 2685 // include in API requests. By default, fields with empty or default values are 2686 // omitted from API requests. See 2687 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2688 // details. 2689 ForceSendFields []string `json:"-"` 2690 // NullFields is a list of field names (e.g. "Bucket") to include in API 2691 // requests with the JSON null value. By default, fields with empty values are 2692 // omitted from API requests. See 2693 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2694 NullFields []string `json:"-"` 2695 } 2696 2697 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest) MarshalJSON() ([]byte, error) { 2698 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest 2699 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2700 } 2701 2702 // ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan: Start and end times for 2703 // a build execution phase. 2704 type ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan struct { 2705 // EndTime: End of time span. 2706 EndTime string `json:"endTime,omitempty"` 2707 // StartTime: Start of time span. 2708 StartTime string `json:"startTime,omitempty"` 2709 // ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally 2710 // include in API requests. By default, fields with empty or default values are 2711 // omitted from API requests. See 2712 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2713 // details. 2714 ForceSendFields []string `json:"-"` 2715 // NullFields is a list of field names (e.g. "EndTime") to include in API 2716 // requests with the JSON null value. By default, fields with empty values are 2717 // omitted from API requests. See 2718 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2719 NullFields []string `json:"-"` 2720 } 2721 2722 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan) MarshalJSON() ([]byte, error) { 2723 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan 2724 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2725 } 2726 2727 // ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact: A Maven 2728 // artifact uploaded using the MavenArtifact directive. 2729 type ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact struct { 2730 // FileHashes: Hash types and values of the Maven Artifact. 2731 FileHashes *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` 2732 // PushTiming: Output only. Stores timing information for pushing the specified 2733 // artifact. 2734 PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` 2735 // Uri: URI of the uploaded artifact. 2736 Uri string `json:"uri,omitempty"` 2737 // ForceSendFields is a list of field names (e.g. "FileHashes") to 2738 // unconditionally include in API requests. By default, fields with empty or 2739 // default values are omitted from API requests. See 2740 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2741 // details. 2742 ForceSendFields []string `json:"-"` 2743 // NullFields is a list of field names (e.g. "FileHashes") to include in API 2744 // requests with the JSON null value. By default, fields with empty values are 2745 // omitted from API requests. See 2746 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2747 NullFields []string `json:"-"` 2748 } 2749 2750 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact) MarshalJSON() ([]byte, error) { 2751 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact 2752 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2753 } 2754 2755 // ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage: An npm 2756 // package uploaded to Artifact Registry using the NpmPackage directive. 2757 type ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage struct { 2758 // FileHashes: Hash types and values of the npm package. 2759 FileHashes *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` 2760 // PushTiming: Output only. Stores timing information for pushing the specified 2761 // artifact. 2762 PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` 2763 // Uri: URI of the uploaded npm package. 2764 Uri string `json:"uri,omitempty"` 2765 // ForceSendFields is a list of field names (e.g. "FileHashes") to 2766 // unconditionally include in API requests. By default, fields with empty or 2767 // default values are omitted from API requests. See 2768 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2769 // details. 2770 ForceSendFields []string `json:"-"` 2771 // NullFields is a list of field names (e.g. "FileHashes") to include in API 2772 // requests with the JSON null value. By default, fields with empty values are 2773 // omitted from API requests. See 2774 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2775 NullFields []string `json:"-"` 2776 } 2777 2778 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage) MarshalJSON() ([]byte, error) { 2779 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage 2780 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2781 } 2782 2783 // ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage: Artifact 2784 // uploaded using the PythonPackage directive. 2785 type ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage struct { 2786 // FileHashes: Hash types and values of the Python Artifact. 2787 FileHashes *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` 2788 // PushTiming: Output only. Stores timing information for pushing the specified 2789 // artifact. 2790 PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` 2791 // Uri: URI of the uploaded artifact. 2792 Uri string `json:"uri,omitempty"` 2793 // ForceSendFields is a list of field names (e.g. "FileHashes") to 2794 // unconditionally include in API requests. By default, fields with empty or 2795 // default values are omitted from API requests. See 2796 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2797 // details. 2798 ForceSendFields []string `json:"-"` 2799 // NullFields is a list of field names (e.g. "FileHashes") to include in API 2800 // requests with the JSON null value. By default, fields with empty values are 2801 // omitted from API requests. See 2802 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2803 NullFields []string `json:"-"` 2804 } 2805 2806 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage) MarshalJSON() ([]byte, error) { 2807 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage 2808 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2809 } 2810 2811 // ContaineranalysisGoogleDevtoolsCloudbuildV1Volume: Volume describes a Docker 2812 // container volume which is mounted into build steps in order to persist files 2813 // across build step execution. 2814 type ContaineranalysisGoogleDevtoolsCloudbuildV1Volume struct { 2815 // Name: Name of the volume to mount. Volume names must be unique per build 2816 // step and must be valid names for Docker volumes. Each named volume must be 2817 // used by at least two build steps. 2818 Name string `json:"name,omitempty"` 2819 // Path: Path at which to mount the volume. Paths must be absolute and cannot 2820 // conflict with other volume paths on the same build step or with certain 2821 // reserved volume paths. 2822 Path string `json:"path,omitempty"` 2823 // ForceSendFields is a list of field names (e.g. "Name") to unconditionally 2824 // include in API requests. By default, fields with empty or default values are 2825 // omitted from API requests. See 2826 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2827 // details. 2828 ForceSendFields []string `json:"-"` 2829 // NullFields is a list of field names (e.g. "Name") to include in API requests 2830 // with the JSON null value. By default, fields with empty values are omitted 2831 // from API requests. See 2832 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2833 NullFields []string `json:"-"` 2834 } 2835 2836 func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Volume) MarshalJSON() ([]byte, error) { 2837 type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Volume 2838 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2839 } 2840 2841 // Deployable: An artifact that can be deployed in some runtime. 2842 type Deployable struct { 2843 // ResourceUri: Required. Resource URI for the artifact being deployed. 2844 ResourceUri []string `json:"resourceUri,omitempty"` 2845 // ForceSendFields is a list of field names (e.g. "ResourceUri") to 2846 // unconditionally include in API requests. By default, fields with empty or 2847 // default values are omitted from API requests. See 2848 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2849 // details. 2850 ForceSendFields []string `json:"-"` 2851 // NullFields is a list of field names (e.g. "ResourceUri") to include in API 2852 // requests with the JSON null value. By default, fields with empty values are 2853 // omitted from API requests. See 2854 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2855 NullFields []string `json:"-"` 2856 } 2857 2858 func (s *Deployable) MarshalJSON() ([]byte, error) { 2859 type NoMethod Deployable 2860 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2861 } 2862 2863 // Deployment: The period during which some deployable was active in a runtime. 2864 type Deployment struct { 2865 // Address: Address of the runtime element hosting this deployment. 2866 Address string `json:"address,omitempty"` 2867 // Config: Configuration used to create this deployment. 2868 Config string `json:"config,omitempty"` 2869 // DeployTime: Required. Beginning of the lifetime of this deployment. 2870 DeployTime string `json:"deployTime,omitempty"` 2871 // Platform: Platform hosting this deployment. 2872 // 2873 // Possible values: 2874 // "PLATFORM_UNSPECIFIED" - Unknown. 2875 // "GKE" - Google Container Engine. 2876 // "FLEX" - Google App Engine: Flexible Environment. 2877 // "CUSTOM" - Custom user-defined platform. 2878 Platform string `json:"platform,omitempty"` 2879 // ResourceUri: Output only. Resource URI for the artifact being deployed taken 2880 // from the deployable field with the same name. 2881 ResourceUri []string `json:"resourceUri,omitempty"` 2882 // UndeployTime: End of the lifetime of this deployment. 2883 UndeployTime string `json:"undeployTime,omitempty"` 2884 // UserEmail: Identity of the user that triggered this deployment. 2885 UserEmail string `json:"userEmail,omitempty"` 2886 // ForceSendFields is a list of field names (e.g. "Address") to unconditionally 2887 // include in API requests. By default, fields with empty or default values are 2888 // omitted from API requests. See 2889 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2890 // details. 2891 ForceSendFields []string `json:"-"` 2892 // NullFields is a list of field names (e.g. "Address") to include in API 2893 // requests with the JSON null value. By default, fields with empty values are 2894 // omitted from API requests. See 2895 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2896 NullFields []string `json:"-"` 2897 } 2898 2899 func (s *Deployment) MarshalJSON() ([]byte, error) { 2900 type NoMethod Deployment 2901 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2902 } 2903 2904 // Derived: Derived describes the derived image portion (Occurrence) of the 2905 // DockerImage relationship. This image would be produced from a Dockerfile 2906 // with FROM . 2907 type Derived struct { 2908 // BaseResourceUrl: Output only. This contains the base image URL for the 2909 // derived image occurrence. 2910 BaseResourceUrl string `json:"baseResourceUrl,omitempty"` 2911 // Distance: Output only. The number of layers by which this image differs from 2912 // the associated image basis. 2913 Distance int64 `json:"distance,omitempty"` 2914 // Fingerprint: Required. The fingerprint of the derived image. 2915 Fingerprint *Fingerprint `json:"fingerprint,omitempty"` 2916 // LayerInfo: This contains layer-specific metadata, if populated it has length 2917 // "distance" and is ordered with [distance] being the layer immediately 2918 // following the base image and [1] being the final layer. 2919 LayerInfo []*Layer `json:"layerInfo,omitempty"` 2920 // ForceSendFields is a list of field names (e.g. "BaseResourceUrl") to 2921 // unconditionally include in API requests. By default, fields with empty or 2922 // default values are omitted from API requests. See 2923 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2924 // details. 2925 ForceSendFields []string `json:"-"` 2926 // NullFields is a list of field names (e.g. "BaseResourceUrl") to include in 2927 // API requests with the JSON null value. By default, fields with empty values 2928 // are omitted from API requests. See 2929 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2930 NullFields []string `json:"-"` 2931 } 2932 2933 func (s *Derived) MarshalJSON() ([]byte, error) { 2934 type NoMethod Derived 2935 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2936 } 2937 2938 // Detail: Identifies all appearances of this vulnerability in the package for 2939 // a specific distro/location. For example: glibc in 2940 // cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 2941 type Detail struct { 2942 // CpeUri: Required. The CPE URI in cpe format 2943 // (https://cpe.mitre.org/specification/) in which the vulnerability manifests. 2944 // Examples include distro or storage location for vulnerable jar. 2945 CpeUri string `json:"cpeUri,omitempty"` 2946 // Description: A vendor-specific description of this note. 2947 Description string `json:"description,omitempty"` 2948 // FixedLocation: The fix for this specific package version. 2949 FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"` 2950 // IsObsolete: Whether this detail is obsolete. Occurrences are expected not to 2951 // point to obsolete details. 2952 IsObsolete bool `json:"isObsolete,omitempty"` 2953 // MaxAffectedVersion: The max version of the package in which the 2954 // vulnerability exists. 2955 MaxAffectedVersion *Version `json:"maxAffectedVersion,omitempty"` 2956 // MinAffectedVersion: The min version of the package in which the 2957 // vulnerability exists. 2958 MinAffectedVersion *Version `json:"minAffectedVersion,omitempty"` 2959 // Package: Required. The name of the package where the vulnerability was 2960 // found. 2961 Package string `json:"package,omitempty"` 2962 // PackageType: The type of package; whether native or non native(ruby gems, 2963 // node.js packages etc). 2964 PackageType string `json:"packageType,omitempty"` 2965 // SeverityName: The severity (eg: distro assigned severity) for this 2966 // vulnerability. 2967 SeverityName string `json:"severityName,omitempty"` 2968 // Source: The source from which the information in this Detail was obtained. 2969 Source string `json:"source,omitempty"` 2970 // SourceUpdateTime: The time this information was last changed at the source. 2971 // This is an upstream timestamp from the underlying information source - e.g. 2972 // Ubuntu security tracker. 2973 SourceUpdateTime string `json:"sourceUpdateTime,omitempty"` 2974 // Vendor: The name of the vendor of the product. 2975 Vendor string `json:"vendor,omitempty"` 2976 // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally 2977 // include in API requests. By default, fields with empty or default values are 2978 // omitted from API requests. See 2979 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 2980 // details. 2981 ForceSendFields []string `json:"-"` 2982 // NullFields is a list of field names (e.g. "CpeUri") to include in API 2983 // requests with the JSON null value. By default, fields with empty values are 2984 // omitted from API requests. See 2985 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 2986 NullFields []string `json:"-"` 2987 } 2988 2989 func (s *Detail) MarshalJSON() ([]byte, error) { 2990 type NoMethod Detail 2991 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 2992 } 2993 2994 // Details: Details of an attestation occurrence. 2995 type Details struct { 2996 // Attestation: Required. Attestation for the resource. 2997 Attestation *Attestation `json:"attestation,omitempty"` 2998 // ForceSendFields is a list of field names (e.g. "Attestation") to 2999 // unconditionally include in API requests. By default, fields with empty or 3000 // default values are omitted from API requests. See 3001 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3002 // details. 3003 ForceSendFields []string `json:"-"` 3004 // NullFields is a list of field names (e.g. "Attestation") to include in API 3005 // requests with the JSON null value. By default, fields with empty values are 3006 // omitted from API requests. See 3007 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3008 NullFields []string `json:"-"` 3009 } 3010 3011 func (s *Details) MarshalJSON() ([]byte, error) { 3012 type NoMethod Details 3013 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3014 } 3015 3016 // Digest: Digest information. 3017 type Digest struct { 3018 // Algo: `SHA1`, `SHA512` etc. 3019 Algo string `json:"algo,omitempty"` 3020 // DigestBytes: Value of the digest. 3021 DigestBytes string `json:"digestBytes,omitempty"` 3022 // ForceSendFields is a list of field names (e.g. "Algo") to unconditionally 3023 // include in API requests. By default, fields with empty or default values are 3024 // omitted from API requests. See 3025 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3026 // details. 3027 ForceSendFields []string `json:"-"` 3028 // NullFields is a list of field names (e.g. "Algo") to include in API requests 3029 // with the JSON null value. By default, fields with empty values are omitted 3030 // from API requests. See 3031 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3032 NullFields []string `json:"-"` 3033 } 3034 3035 func (s *Digest) MarshalJSON() ([]byte, error) { 3036 type NoMethod Digest 3037 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3038 } 3039 3040 // Discovered: Provides information about the analysis status of a discovered 3041 // resource. 3042 type Discovered struct { 3043 AnalysisCompleted *AnalysisCompleted `json:"analysisCompleted,omitempty"` 3044 // AnalysisError: Indicates any errors encountered during analysis of a 3045 // resource. There could be 0 or more of these errors. 3046 AnalysisError []*Status `json:"analysisError,omitempty"` 3047 // AnalysisStatus: The status of discovery for the resource. 3048 // 3049 // Possible values: 3050 // "ANALYSIS_STATUS_UNSPECIFIED" - Unknown. 3051 // "PENDING" - Resource is known but no action has been taken yet. 3052 // "SCANNING" - Resource is being analyzed. 3053 // "FINISHED_SUCCESS" - Analysis has finished successfully. 3054 // "COMPLETE" - Analysis has completed. 3055 // "FINISHED_FAILED" - Analysis has finished unsuccessfully, the analysis 3056 // itself is in a bad state. 3057 // "FINISHED_UNSUPPORTED" - The resource is known not to be supported 3058 AnalysisStatus string `json:"analysisStatus,omitempty"` 3059 // AnalysisStatusError: When an error is encountered this will contain a 3060 // LocalizedMessage under details to show to the user. The LocalizedMessage is 3061 // output only and populated by the API. 3062 AnalysisStatusError *Status `json:"analysisStatusError,omitempty"` 3063 // ContinuousAnalysis: Whether the resource is continuously analyzed. 3064 // 3065 // Possible values: 3066 // "CONTINUOUS_ANALYSIS_UNSPECIFIED" - Unknown. 3067 // "ACTIVE" - The resource is continuously analyzed. 3068 // "INACTIVE" - The resource is ignored for continuous analysis. 3069 ContinuousAnalysis string `json:"continuousAnalysis,omitempty"` 3070 // LastAnalysisTime: The last time continuous analysis was done for this 3071 // resource. Deprecated, do not use. 3072 LastAnalysisTime string `json:"lastAnalysisTime,omitempty"` 3073 // LastScanTime: The last time this resource was scanned. 3074 LastScanTime string `json:"lastScanTime,omitempty"` 3075 // SbomStatus: The status of an SBOM generation. 3076 SbomStatus *SBOMStatus `json:"sbomStatus,omitempty"` 3077 // ForceSendFields is a list of field names (e.g. "AnalysisCompleted") to 3078 // unconditionally include in API requests. By default, fields with empty or 3079 // default values are omitted from API requests. See 3080 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3081 // details. 3082 ForceSendFields []string `json:"-"` 3083 // NullFields is a list of field names (e.g. "AnalysisCompleted") to include in 3084 // API requests with the JSON null value. By default, fields with empty values 3085 // are omitted from API requests. See 3086 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3087 NullFields []string `json:"-"` 3088 } 3089 3090 func (s *Discovered) MarshalJSON() ([]byte, error) { 3091 type NoMethod Discovered 3092 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3093 } 3094 3095 // Discovery: A note that indicates a type of analysis a provider would 3096 // perform. This note exists in a provider's project. A `Discovery` occurrence 3097 // is created in a consumer's project at the start of analysis. 3098 type Discovery struct { 3099 // AnalysisKind: Required. Immutable. The kind of analysis that is handled by 3100 // this discovery. 3101 // 3102 // Possible values: 3103 // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. 3104 // "VULNERABILITY" - The note and occurrence represent a package 3105 // vulnerability. 3106 // "BUILD" - The note and occurrence assert build provenance. 3107 // "IMAGE" - This represents an image basis relationship. 3108 // "PACKAGE" - This represents a package installed via a package manager. 3109 // "DEPLOYMENT" - The note and occurrence track deployment events. 3110 // "DISCOVERY" - The note and occurrence track the initial discovery status 3111 // of a resource. 3112 // "ATTESTATION" - This represents a logical "role" that can attest to 3113 // artifacts. 3114 // "INTOTO" - This represents an in-toto link. 3115 // "SBOM" - This represents a software bill of materials. 3116 // "SPDX_PACKAGE" - This represents an SPDX Package. 3117 // "SPDX_FILE" - This represents an SPDX File. 3118 // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. 3119 // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability Assessment. 3120 // "SBOM_REFERENCE" - This represents an SBOM Reference. 3121 AnalysisKind string `json:"analysisKind,omitempty"` 3122 // ForceSendFields is a list of field names (e.g. "AnalysisKind") to 3123 // unconditionally include in API requests. By default, fields with empty or 3124 // default values are omitted from API requests. See 3125 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3126 // details. 3127 ForceSendFields []string `json:"-"` 3128 // NullFields is a list of field names (e.g. "AnalysisKind") to include in API 3129 // requests with the JSON null value. By default, fields with empty values are 3130 // omitted from API requests. See 3131 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3132 NullFields []string `json:"-"` 3133 } 3134 3135 func (s *Discovery) MarshalJSON() ([]byte, error) { 3136 type NoMethod Discovery 3137 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3138 } 3139 3140 // Distribution: This represents a particular channel of distribution for a 3141 // given package. E.g., Debian's jessie-backports dpkg mirror. 3142 type Distribution struct { 3143 // Architecture: The CPU architecture for which packages in this distribution 3144 // channel were built. 3145 // 3146 // Possible values: 3147 // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. 3148 // "X86" - X86 architecture. 3149 // "X64" - X64 architecture. 3150 Architecture string `json:"architecture,omitempty"` 3151 // CpeUri: Required. The cpe_uri in CPE format 3152 // (https://cpe.mitre.org/specification/) denoting the package manager version 3153 // distributing a package. 3154 CpeUri string `json:"cpeUri,omitempty"` 3155 // Description: The distribution channel-specific description of this package. 3156 Description string `json:"description,omitempty"` 3157 // LatestVersion: The latest available version of this package in this 3158 // distribution channel. 3159 LatestVersion *Version `json:"latestVersion,omitempty"` 3160 // Maintainer: A freeform string denoting the maintainer of this package. 3161 Maintainer string `json:"maintainer,omitempty"` 3162 // Url: The distribution channel-specific homepage for this package. 3163 Url string `json:"url,omitempty"` 3164 // ForceSendFields is a list of field names (e.g. "Architecture") to 3165 // unconditionally include in API requests. By default, fields with empty or 3166 // default values are omitted from API requests. See 3167 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3168 // details. 3169 ForceSendFields []string `json:"-"` 3170 // NullFields is a list of field names (e.g. "Architecture") to include in API 3171 // requests with the JSON null value. By default, fields with empty values are 3172 // omitted from API requests. See 3173 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3174 NullFields []string `json:"-"` 3175 } 3176 3177 func (s *Distribution) MarshalJSON() ([]byte, error) { 3178 type NoMethod Distribution 3179 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3180 } 3181 3182 // DocumentNote: DocumentNote represents an SPDX Document Creation Information 3183 // section: https://spdx.github.io/spdx-spec/2-document-creation-information/ 3184 type DocumentNote struct { 3185 // DataLicence: Compliance with the SPDX specification includes populating the 3186 // SPDX fields therein with data related to such fields ("SPDX-Metadata") 3187 DataLicence string `json:"dataLicence,omitempty"` 3188 // SpdxVersion: Provide a reference number that can be used to understand how 3189 // to parse and interpret the rest of the file 3190 SpdxVersion string `json:"spdxVersion,omitempty"` 3191 // ForceSendFields is a list of field names (e.g. "DataLicence") to 3192 // unconditionally include in API requests. By default, fields with empty or 3193 // default values are omitted from API requests. See 3194 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3195 // details. 3196 ForceSendFields []string `json:"-"` 3197 // NullFields is a list of field names (e.g. "DataLicence") to include in API 3198 // requests with the JSON null value. By default, fields with empty values are 3199 // omitted from API requests. See 3200 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3201 NullFields []string `json:"-"` 3202 } 3203 3204 func (s *DocumentNote) MarshalJSON() ([]byte, error) { 3205 type NoMethod DocumentNote 3206 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3207 } 3208 3209 // DocumentOccurrence: DocumentOccurrence represents an SPDX Document Creation 3210 // Information section: 3211 // https://spdx.github.io/spdx-spec/2-document-creation-information/ 3212 type DocumentOccurrence struct { 3213 // CreateTime: Identify when the SPDX file was originally created. The date is 3214 // to be specified according to combined date and time in UTC format as 3215 // specified in ISO 8601 standard 3216 CreateTime string `json:"createTime,omitempty"` 3217 // CreatorComment: A field for creators of the SPDX file to provide general 3218 // comments about the creation of the SPDX file or any other relevant comment 3219 // not included in the other fields 3220 CreatorComment string `json:"creatorComment,omitempty"` 3221 // Creators: Identify who (or what, in the case of a tool) created the SPDX 3222 // file. If the SPDX file was created by an individual, indicate the person's 3223 // name 3224 Creators []string `json:"creators,omitempty"` 3225 // DocumentComment: A field for creators of the SPDX file content to provide 3226 // comments to the consumers of the SPDX document 3227 DocumentComment string `json:"documentComment,omitempty"` 3228 // ExternalDocumentRefs: Identify any external SPDX documents referenced within 3229 // this SPDX document 3230 ExternalDocumentRefs []string `json:"externalDocumentRefs,omitempty"` 3231 // Id: Identify the current SPDX document which may be referenced in 3232 // relationships by other files, packages internally and documents externally 3233 Id string `json:"id,omitempty"` 3234 // LicenseListVersion: A field for creators of the SPDX file to provide the 3235 // version of the SPDX License List used when the SPDX file was created 3236 LicenseListVersion string `json:"licenseListVersion,omitempty"` 3237 // Namespace: Provide an SPDX document specific namespace as a unique absolute 3238 // Uniform Resource Identifier (URI) as specified in RFC-3986, with the 3239 // exception of the ‘#’ delimiter 3240 Namespace string `json:"namespace,omitempty"` 3241 // Title: Identify name of this document as designated by creator 3242 Title string `json:"title,omitempty"` 3243 // ForceSendFields is a list of field names (e.g. "CreateTime") to 3244 // unconditionally include in API requests. By default, fields with empty or 3245 // default values are omitted from API requests. See 3246 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3247 // details. 3248 ForceSendFields []string `json:"-"` 3249 // NullFields is a list of field names (e.g. "CreateTime") to include in API 3250 // requests with the JSON null value. By default, fields with empty values are 3251 // omitted from API requests. See 3252 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3253 NullFields []string `json:"-"` 3254 } 3255 3256 func (s *DocumentOccurrence) MarshalJSON() ([]byte, error) { 3257 type NoMethod DocumentOccurrence 3258 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3259 } 3260 3261 // Empty: A generic empty message that you can re-use to avoid defining 3262 // duplicated empty messages in your APIs. A typical example is to use it as 3263 // the request or the response type of an API method. For instance: service Foo 3264 // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } 3265 type Empty struct { 3266 // ServerResponse contains the HTTP response code and headers from the server. 3267 googleapi.ServerResponse `json:"-"` 3268 } 3269 3270 // Envelope: MUST match 3271 // https://github.com/secure-systems-lab/dsse/blob/master/envelope.proto. An 3272 // authenticated message of arbitrary type. 3273 type Envelope struct { 3274 Payload string `json:"payload,omitempty"` 3275 PayloadType string `json:"payloadType,omitempty"` 3276 Signatures []*EnvelopeSignature `json:"signatures,omitempty"` 3277 // ForceSendFields is a list of field names (e.g. "Payload") to unconditionally 3278 // include in API requests. By default, fields with empty or default values are 3279 // omitted from API requests. See 3280 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3281 // details. 3282 ForceSendFields []string `json:"-"` 3283 // NullFields is a list of field names (e.g. "Payload") to include in API 3284 // requests with the JSON null value. By default, fields with empty values are 3285 // omitted from API requests. See 3286 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3287 NullFields []string `json:"-"` 3288 } 3289 3290 func (s *Envelope) MarshalJSON() ([]byte, error) { 3291 type NoMethod Envelope 3292 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3293 } 3294 3295 type EnvelopeSignature struct { 3296 Keyid string `json:"keyid,omitempty"` 3297 Sig string `json:"sig,omitempty"` 3298 // ForceSendFields is a list of field names (e.g. "Keyid") to unconditionally 3299 // include in API requests. By default, fields with empty or default values are 3300 // omitted from API requests. See 3301 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3302 // details. 3303 ForceSendFields []string `json:"-"` 3304 // NullFields is a list of field names (e.g. "Keyid") to include in API 3305 // requests with the JSON null value. By default, fields with empty values are 3306 // omitted from API requests. See 3307 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3308 NullFields []string `json:"-"` 3309 } 3310 3311 func (s *EnvelopeSignature) MarshalJSON() ([]byte, error) { 3312 type NoMethod EnvelopeSignature 3313 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3314 } 3315 3316 // Environment: Defines an object for the environment field in in-toto links. 3317 // The suggested fields are "variables", "filesystem", and "workdir". 3318 type Environment struct { 3319 CustomValues map[string]string `json:"customValues,omitempty"` 3320 // ForceSendFields is a list of field names (e.g. "CustomValues") to 3321 // unconditionally include in API requests. By default, fields with empty or 3322 // default values are omitted from API requests. See 3323 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3324 // details. 3325 ForceSendFields []string `json:"-"` 3326 // NullFields is a list of field names (e.g. "CustomValues") to include in API 3327 // requests with the JSON null value. By default, fields with empty values are 3328 // omitted from API requests. See 3329 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3330 NullFields []string `json:"-"` 3331 } 3332 3333 func (s *Environment) MarshalJSON() ([]byte, error) { 3334 type NoMethod Environment 3335 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3336 } 3337 3338 // ExportSBOMRequest: The request to a call of ExportSBOM 3339 type ExportSBOMRequest struct { 3340 } 3341 3342 // ExportSBOMResponse: The response from a call to ExportSBOM 3343 type ExportSBOMResponse struct { 3344 // DiscoveryOccurrenceId: The name of the discovery occurrence in the form 3345 // "projects/{project_id}/occurrences/{OCCURRENCE_ID} It can be used to track 3346 // the progression of the SBOM export. 3347 DiscoveryOccurrenceId string `json:"discoveryOccurrenceId,omitempty"` 3348 3349 // ServerResponse contains the HTTP response code and headers from the server. 3350 googleapi.ServerResponse `json:"-"` 3351 // ForceSendFields is a list of field names (e.g. "DiscoveryOccurrenceId") to 3352 // unconditionally include in API requests. By default, fields with empty or 3353 // default values are omitted from API requests. See 3354 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3355 // details. 3356 ForceSendFields []string `json:"-"` 3357 // NullFields is a list of field names (e.g. "DiscoveryOccurrenceId") to 3358 // include in API requests with the JSON null value. By default, fields with 3359 // empty values are omitted from API requests. See 3360 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3361 NullFields []string `json:"-"` 3362 } 3363 3364 func (s *ExportSBOMResponse) MarshalJSON() ([]byte, error) { 3365 type NoMethod ExportSBOMResponse 3366 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3367 } 3368 3369 // Expr: Represents a textual expression in the Common Expression Language 3370 // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics 3371 // of CEL are documented at https://github.com/google/cel-spec. Example 3372 // (Comparison): title: "Summary size limit" description: "Determines if a 3373 // summary is less than 100 chars" expression: "document.summary.size() < 100" 3374 // Example (Equality): title: "Requestor is owner" description: "Determines if 3375 // requestor is the document owner" expression: "document.owner == 3376 // request.auth.claims.email" Example (Logic): title: "Public documents" 3377 // description: "Determine whether the document should be publicly visible" 3378 // expression: "document.type != 'private' && document.type != 'internal'" 3379 // Example (Data Manipulation): title: "Notification string" description: 3380 // "Create a notification string with a timestamp." expression: "'New message 3381 // received at ' + string(document.create_time)" The exact variables and 3382 // functions that may be referenced within an expression are determined by the 3383 // service that evaluates it. See the service documentation for additional 3384 // information. 3385 type Expr struct { 3386 // Description: Optional. Description of the expression. This is a longer text 3387 // which describes the expression, e.g. when hovered over it in a UI. 3388 Description string `json:"description,omitempty"` 3389 // Expression: Textual representation of an expression in Common Expression 3390 // Language syntax. 3391 Expression string `json:"expression,omitempty"` 3392 // Location: Optional. String indicating the location of the expression for 3393 // error reporting, e.g. a file name and a position in the file. 3394 Location string `json:"location,omitempty"` 3395 // Title: Optional. Title for the expression, i.e. a short string describing 3396 // its purpose. This can be used e.g. in UIs which allow to enter the 3397 // expression. 3398 Title string `json:"title,omitempty"` 3399 // ForceSendFields is a list of field names (e.g. "Description") to 3400 // unconditionally include in API requests. By default, fields with empty or 3401 // default values are omitted from API requests. See 3402 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3403 // details. 3404 ForceSendFields []string `json:"-"` 3405 // NullFields is a list of field names (e.g. "Description") to include in API 3406 // requests with the JSON null value. By default, fields with empty values are 3407 // omitted from API requests. See 3408 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3409 NullFields []string `json:"-"` 3410 } 3411 3412 func (s *Expr) MarshalJSON() ([]byte, error) { 3413 type NoMethod Expr 3414 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3415 } 3416 3417 // ExternalRef: An External Reference allows a Package to reference an external 3418 // source of additional information, metadata, enumerations, asset identifiers, 3419 // or downloadable content believed to be relevant to the Package 3420 type ExternalRef struct { 3421 // Category: An External Reference allows a Package to reference an external 3422 // source of additional information, metadata, enumerations, asset identifiers, 3423 // or downloadable content believed to be relevant to the Package 3424 // 3425 // Possible values: 3426 // "CATEGORY_UNSPECIFIED" - Unspecified 3427 // "SECURITY" - Security (e.g. cpe22Type, cpe23Type) 3428 // "PACKAGE_MANAGER" - Package Manager (e.g. maven-central, npm, nuget, 3429 // bower, purl) 3430 // "PERSISTENT_ID" - Persistent-Id (e.g. swh) 3431 // "OTHER" - Other 3432 Category string `json:"category,omitempty"` 3433 // Comment: Human-readable information about the purpose and target of the 3434 // reference 3435 Comment string `json:"comment,omitempty"` 3436 // Locator: The unique string with no spaces necessary to access the 3437 // package-specific information, metadata, or content within the target 3438 // location 3439 Locator string `json:"locator,omitempty"` 3440 // Type: Type of category (e.g. 'npm' for the PACKAGE_MANAGER category) 3441 Type string `json:"type,omitempty"` 3442 // ForceSendFields is a list of field names (e.g. "Category") to 3443 // unconditionally include in API requests. By default, fields with empty or 3444 // default values are omitted from API requests. See 3445 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3446 // details. 3447 ForceSendFields []string `json:"-"` 3448 // NullFields is a list of field names (e.g. "Category") to include in API 3449 // requests with the JSON null value. By default, fields with empty values are 3450 // omitted from API requests. See 3451 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3452 NullFields []string `json:"-"` 3453 } 3454 3455 func (s *ExternalRef) MarshalJSON() ([]byte, error) { 3456 type NoMethod ExternalRef 3457 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3458 } 3459 3460 // FileHashes: Container message for hashes of byte content of files, used in 3461 // source messages to verify integrity of source input to the build. 3462 type FileHashes struct { 3463 // FileHash: Required. Collection of file hashes. 3464 FileHash []*Hash `json:"fileHash,omitempty"` 3465 // ForceSendFields is a list of field names (e.g. "FileHash") to 3466 // unconditionally include in API requests. By default, fields with empty or 3467 // default values are omitted from API requests. See 3468 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3469 // details. 3470 ForceSendFields []string `json:"-"` 3471 // NullFields is a list of field names (e.g. "FileHash") to include in API 3472 // requests with the JSON null value. By default, fields with empty values are 3473 // omitted from API requests. See 3474 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3475 NullFields []string `json:"-"` 3476 } 3477 3478 func (s *FileHashes) MarshalJSON() ([]byte, error) { 3479 type NoMethod FileHashes 3480 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3481 } 3482 3483 // FileNote: FileNote represents an SPDX File Information section: 3484 // https://spdx.github.io/spdx-spec/4-file-information/ 3485 type FileNote struct { 3486 // Checksum: Provide a unique identifier to match analysis information on each 3487 // specific file in a package 3488 Checksum []string `json:"checksum,omitempty"` 3489 // FileType: This field provides information about the type of file identified 3490 // 3491 // Possible values: 3492 // "FILE_TYPE_UNSPECIFIED" - Unspecified 3493 // "SOURCE" - The file is human readable source code (.c, .html, etc.) 3494 // "BINARY" - The file is a compiled object, target image or binary 3495 // executable (.o, .a, etc.) 3496 // "ARCHIVE" - The file represents an archive (.tar, .jar, etc.) 3497 // "APPLICATION" - The file is associated with a specific application type 3498 // (MIME type of application/*) 3499 // "AUDIO" - The file is associated with an audio file (MIME type of audio/* 3500 // , e.g. .mp3) 3501 // "IMAGE" - The file is associated with an picture image file (MIME type of 3502 // image/*, e.g., .jpg, .gif) 3503 // "TEXT" - The file is human readable text file (MIME type of text/*) 3504 // "VIDEO" - The file is associated with a video file type (MIME type of 3505 // video/*) 3506 // "DOCUMENTATION" - The file serves as documentation 3507 // "SPDX" - The file is an SPDX document 3508 // "OTHER" - The file doesn't fit into the above categories (generated 3509 // artifacts, data files, etc.) 3510 FileType string `json:"fileType,omitempty"` 3511 // Title: Identify the full path and filename that corresponds to the file 3512 // information in this section 3513 Title string `json:"title,omitempty"` 3514 // ForceSendFields is a list of field names (e.g. "Checksum") to 3515 // unconditionally include in API requests. By default, fields with empty or 3516 // default values are omitted from API requests. See 3517 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3518 // details. 3519 ForceSendFields []string `json:"-"` 3520 // NullFields is a list of field names (e.g. "Checksum") to include in API 3521 // requests with the JSON null value. By default, fields with empty values are 3522 // omitted from API requests. See 3523 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3524 NullFields []string `json:"-"` 3525 } 3526 3527 func (s *FileNote) MarshalJSON() ([]byte, error) { 3528 type NoMethod FileNote 3529 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3530 } 3531 3532 // FileOccurrence: FileOccurrence represents an SPDX File Information section: 3533 // https://spdx.github.io/spdx-spec/4-file-information/ 3534 type FileOccurrence struct { 3535 // Attributions: This field provides a place for the SPDX data creator to 3536 // record, at the file level, acknowledgements that may be needed to be 3537 // communicated in some contexts 3538 Attributions []string `json:"attributions,omitempty"` 3539 // Comment: This field provides a place for the SPDX file creator to record any 3540 // general comments about the file 3541 Comment string `json:"comment,omitempty"` 3542 // Contributors: This field provides a place for the SPDX file creator to 3543 // record file contributors 3544 Contributors []string `json:"contributors,omitempty"` 3545 // Copyright: Identify the copyright holder of the file, as well as any dates 3546 // present 3547 Copyright string `json:"copyright,omitempty"` 3548 // FilesLicenseInfo: This field contains the license information actually found 3549 // in the file, if any 3550 FilesLicenseInfo []string `json:"filesLicenseInfo,omitempty"` 3551 // Id: Uniquely identify any element in an SPDX document which may be 3552 // referenced by other elements 3553 Id string `json:"id,omitempty"` 3554 // LicenseConcluded: This field contains the license the SPDX file creator has 3555 // concluded as governing the file or alternative values if the governing 3556 // license cannot be determined 3557 LicenseConcluded *License `json:"licenseConcluded,omitempty"` 3558 // Notice: This field provides a place for the SPDX file creator to record 3559 // license notices or other such related notices found in the file 3560 Notice string `json:"notice,omitempty"` 3561 // ForceSendFields is a list of field names (e.g. "Attributions") to 3562 // unconditionally include in API requests. By default, fields with empty or 3563 // default values are omitted from API requests. See 3564 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3565 // details. 3566 ForceSendFields []string `json:"-"` 3567 // NullFields is a list of field names (e.g. "Attributions") to include in API 3568 // requests with the JSON null value. By default, fields with empty values are 3569 // omitted from API requests. See 3570 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3571 NullFields []string `json:"-"` 3572 } 3573 3574 func (s *FileOccurrence) MarshalJSON() ([]byte, error) { 3575 type NoMethod FileOccurrence 3576 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3577 } 3578 3579 // Fingerprint: A set of properties that uniquely identify a given Docker 3580 // image. 3581 type Fingerprint struct { 3582 // V1Name: Required. The layer ID of the final layer in the Docker image's v1 3583 // representation. 3584 V1Name string `json:"v1Name,omitempty"` 3585 // V2Blob: Required. The ordered list of v2 blobs that represent a given image. 3586 V2Blob []string `json:"v2Blob,omitempty"` 3587 // V2Name: Output only. The name of the image's v2 blobs computed via: [bottom] 3588 // := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) Only the name of 3589 // the final blob is kept. 3590 V2Name string `json:"v2Name,omitempty"` 3591 // ForceSendFields is a list of field names (e.g. "V1Name") to unconditionally 3592 // include in API requests. By default, fields with empty or default values are 3593 // omitted from API requests. See 3594 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3595 // details. 3596 ForceSendFields []string `json:"-"` 3597 // NullFields is a list of field names (e.g. "V1Name") to include in API 3598 // requests with the JSON null value. By default, fields with empty values are 3599 // omitted from API requests. See 3600 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3601 NullFields []string `json:"-"` 3602 } 3603 3604 func (s *Fingerprint) MarshalJSON() ([]byte, error) { 3605 type NoMethod Fingerprint 3606 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3607 } 3608 3609 // FixableTotalByDigest: Per resource and severity counts of fixable and total 3610 // vulnerabilities. 3611 type FixableTotalByDigest struct { 3612 // FixableCount: The number of fixable vulnerabilities associated with this 3613 // resource. 3614 FixableCount int64 `json:"fixableCount,omitempty,string"` 3615 // Resource: The affected resource. 3616 Resource *Resource `json:"resource,omitempty"` 3617 // Severity: The severity for this count. SEVERITY_UNSPECIFIED indicates total 3618 // across all severities. 3619 // 3620 // Possible values: 3621 // "SEVERITY_UNSPECIFIED" - Unknown. 3622 // "MINIMAL" - Minimal severity. 3623 // "LOW" - Low severity. 3624 // "MEDIUM" - Medium severity. 3625 // "HIGH" - High severity. 3626 // "CRITICAL" - Critical severity. 3627 Severity string `json:"severity,omitempty"` 3628 // TotalCount: The total number of vulnerabilities associated with this 3629 // resource. 3630 TotalCount int64 `json:"totalCount,omitempty,string"` 3631 // ForceSendFields is a list of field names (e.g. "FixableCount") to 3632 // unconditionally include in API requests. By default, fields with empty or 3633 // default values are omitted from API requests. See 3634 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3635 // details. 3636 ForceSendFields []string `json:"-"` 3637 // NullFields is a list of field names (e.g. "FixableCount") to include in API 3638 // requests with the JSON null value. By default, fields with empty values are 3639 // omitted from API requests. See 3640 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3641 NullFields []string `json:"-"` 3642 } 3643 3644 func (s *FixableTotalByDigest) MarshalJSON() ([]byte, error) { 3645 type NoMethod FixableTotalByDigest 3646 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3647 } 3648 3649 // GeneratePackagesSummaryRequest: GeneratePackagesSummaryRequest is the 3650 // request body for the GeneratePackagesSummary API method. It just takes a 3651 // single name argument, referring to the resource. 3652 type GeneratePackagesSummaryRequest struct { 3653 } 3654 3655 // GenericSignedAttestation: An attestation wrapper that uses the Grafeas 3656 // `Signature` message. This attestation must define the `serialized_payload` 3657 // that the `signatures` verify and any metadata necessary to interpret that 3658 // plaintext. The signatures should always be over the `serialized_payload` 3659 // bytestring. 3660 type GenericSignedAttestation struct { 3661 // ContentType: Type (for example schema) of the attestation payload that was 3662 // signed. The verifier must ensure that the provided type is one that the 3663 // verifier supports, and that the attestation payload is a valid instantiation 3664 // of that type (for example by validating a JSON schema). 3665 // 3666 // Possible values: 3667 // "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set. 3668 // "SIMPLE_SIGNING_JSON" - Atomic format attestation signature. See 3669 // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276c3e0f64e77723e7/docs/atomic-signature.md 3670 // The payload extracted in `plaintext` is a JSON blob conforming to the linked 3671 // schema. 3672 ContentType string `json:"contentType,omitempty"` 3673 // SerializedPayload: The serialized payload that is verified by one or more 3674 // `signatures`. The encoding and semantic meaning of this payload must match 3675 // what is set in `content_type`. 3676 SerializedPayload string `json:"serializedPayload,omitempty"` 3677 // Signatures: One or more signatures over `serialized_payload`. Verifier 3678 // implementations should consider this attestation message verified if at 3679 // least one `signature` verifies `serialized_payload`. See `Signature` in 3680 // common.proto for more details on signature structure and verification. 3681 Signatures []*Signature `json:"signatures,omitempty"` 3682 // ForceSendFields is a list of field names (e.g. "ContentType") to 3683 // unconditionally include in API requests. By default, fields with empty or 3684 // default values are omitted from API requests. See 3685 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3686 // details. 3687 ForceSendFields []string `json:"-"` 3688 // NullFields is a list of field names (e.g. "ContentType") to include in API 3689 // requests with the JSON null value. By default, fields with empty values are 3690 // omitted from API requests. See 3691 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3692 NullFields []string `json:"-"` 3693 } 3694 3695 func (s *GenericSignedAttestation) MarshalJSON() ([]byte, error) { 3696 type NoMethod GenericSignedAttestation 3697 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3698 } 3699 3700 // GerritSourceContext: A SourceContext referring to a Gerrit project. 3701 type GerritSourceContext struct { 3702 // AliasContext: An alias, which may be a branch or tag. 3703 AliasContext *AliasContext `json:"aliasContext,omitempty"` 3704 // GerritProject: The full project name within the host. Projects may be 3705 // nested, so "project/subproject" is a valid project name. The "repo name" is 3706 // the hostURI/project. 3707 GerritProject string `json:"gerritProject,omitempty"` 3708 // HostUri: The URI of a running Gerrit instance. 3709 HostUri string `json:"hostUri,omitempty"` 3710 // RevisionId: A revision (commit) ID. 3711 RevisionId string `json:"revisionId,omitempty"` 3712 // ForceSendFields is a list of field names (e.g. "AliasContext") to 3713 // unconditionally include in API requests. By default, fields with empty or 3714 // default values are omitted from API requests. See 3715 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3716 // details. 3717 ForceSendFields []string `json:"-"` 3718 // NullFields is a list of field names (e.g. "AliasContext") to include in API 3719 // requests with the JSON null value. By default, fields with empty values are 3720 // omitted from API requests. See 3721 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3722 NullFields []string `json:"-"` 3723 } 3724 3725 func (s *GerritSourceContext) MarshalJSON() ([]byte, error) { 3726 type NoMethod GerritSourceContext 3727 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3728 } 3729 3730 // GetIamPolicyRequest: Request message for `GetIamPolicy` method. 3731 type GetIamPolicyRequest struct { 3732 // Options: OPTIONAL: A `GetPolicyOptions` object for specifying options to 3733 // `GetIamPolicy`. 3734 Options *GetPolicyOptions `json:"options,omitempty"` 3735 // ForceSendFields is a list of field names (e.g. "Options") to unconditionally 3736 // include in API requests. By default, fields with empty or default values are 3737 // omitted from API requests. See 3738 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3739 // details. 3740 ForceSendFields []string `json:"-"` 3741 // NullFields is a list of field names (e.g. "Options") to include in API 3742 // requests with the JSON null value. By default, fields with empty values are 3743 // omitted from API requests. See 3744 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3745 NullFields []string `json:"-"` 3746 } 3747 3748 func (s *GetIamPolicyRequest) MarshalJSON() ([]byte, error) { 3749 type NoMethod GetIamPolicyRequest 3750 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3751 } 3752 3753 // GetPolicyOptions: Encapsulates settings provided to GetIamPolicy. 3754 type GetPolicyOptions struct { 3755 // RequestedPolicyVersion: Optional. The maximum policy version that will be 3756 // used to format the policy. Valid values are 0, 1, and 3. Requests specifying 3757 // an invalid value will be rejected. Requests for policies with any 3758 // conditional role bindings must specify version 3. Policies with no 3759 // conditional role bindings may specify any valid value or leave the field 3760 // unset. The policy in the response might use the policy version that you 3761 // specified, or it might use a lower policy version. For example, if you 3762 // specify version 3, but the policy has no conditional role bindings, the 3763 // response uses version 1. To learn which resources support conditions in 3764 // their IAM policies, see the IAM documentation 3765 // (https://cloud.google.com/iam/help/conditions/resource-policies). 3766 RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"` 3767 // ForceSendFields is a list of field names (e.g. "RequestedPolicyVersion") to 3768 // unconditionally include in API requests. By default, fields with empty or 3769 // default values are omitted from API requests. See 3770 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3771 // details. 3772 ForceSendFields []string `json:"-"` 3773 // NullFields is a list of field names (e.g. "RequestedPolicyVersion") to 3774 // include in API requests with the JSON null value. By default, fields with 3775 // empty values are omitted from API requests. See 3776 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3777 NullFields []string `json:"-"` 3778 } 3779 3780 func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) { 3781 type NoMethod GetPolicyOptions 3782 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3783 } 3784 3785 // GitSourceContext: A GitSourceContext denotes a particular revision in a 3786 // third party Git repository (e.g., GitHub). 3787 type GitSourceContext struct { 3788 // RevisionId: Git commit hash. 3789 RevisionId string `json:"revisionId,omitempty"` 3790 // Url: Git repository URL. 3791 Url string `json:"url,omitempty"` 3792 // ForceSendFields is a list of field names (e.g. "RevisionId") to 3793 // unconditionally include in API requests. By default, fields with empty or 3794 // default values are omitted from API requests. See 3795 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3796 // details. 3797 ForceSendFields []string `json:"-"` 3798 // NullFields is a list of field names (e.g. "RevisionId") to include in API 3799 // requests with the JSON null value. By default, fields with empty values are 3800 // omitted from API requests. See 3801 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3802 NullFields []string `json:"-"` 3803 } 3804 3805 func (s *GitSourceContext) MarshalJSON() ([]byte, error) { 3806 type NoMethod GitSourceContext 3807 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3808 } 3809 3810 // GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata: Metadata for all 3811 // operations used and required for all operations that created by Container 3812 // Analysis Providers 3813 type GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata struct { 3814 // CreateTime: Output only. The time this operation was created. 3815 CreateTime string `json:"createTime,omitempty"` 3816 // EndTime: Output only. The time that this operation was marked completed or 3817 // failed. 3818 EndTime string `json:"endTime,omitempty"` 3819 // ForceSendFields is a list of field names (e.g. "CreateTime") to 3820 // unconditionally include in API requests. By default, fields with empty or 3821 // default values are omitted from API requests. See 3822 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3823 // details. 3824 ForceSendFields []string `json:"-"` 3825 // NullFields is a list of field names (e.g. "CreateTime") to include in API 3826 // requests with the JSON null value. By default, fields with empty values are 3827 // omitted from API requests. See 3828 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3829 NullFields []string `json:"-"` 3830 } 3831 3832 func (s *GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata) MarshalJSON() ([]byte, error) { 3833 type NoMethod GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata 3834 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3835 } 3836 3837 // GrafeasV1beta1BuildDetails: Details of a build occurrence. 3838 type GrafeasV1beta1BuildDetails struct { 3839 InTotoSlsaProvenanceV1 *InTotoSlsaProvenanceV1 `json:"inTotoSlsaProvenanceV1,omitempty"` 3840 // Provenance: Required. The actual provenance for the build. 3841 Provenance *BuildProvenance `json:"provenance,omitempty"` 3842 // ProvenanceBytes: Serialized JSON representation of the provenance, used in 3843 // generating the build signature in the corresponding build note. After 3844 // verifying the signature, `provenance_bytes` can be unmarshalled and compared 3845 // to the provenance to confirm that it is unchanged. A base64-encoded string 3846 // representation of the provenance bytes is used for the signature in order to 3847 // interoperate with openssl which expects this format for signature 3848 // verification. The serialized form is captured both to avoid ambiguity in how 3849 // the provenance is marshalled to json as well to prevent incompatibilities 3850 // with future changes. 3851 ProvenanceBytes string `json:"provenanceBytes,omitempty"` 3852 // ForceSendFields is a list of field names (e.g. "InTotoSlsaProvenanceV1") to 3853 // unconditionally include in API requests. By default, fields with empty or 3854 // default values are omitted from API requests. See 3855 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3856 // details. 3857 ForceSendFields []string `json:"-"` 3858 // NullFields is a list of field names (e.g. "InTotoSlsaProvenanceV1") to 3859 // include in API requests with the JSON null value. By default, fields with 3860 // empty values are omitted from API requests. See 3861 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3862 NullFields []string `json:"-"` 3863 } 3864 3865 func (s *GrafeasV1beta1BuildDetails) MarshalJSON() ([]byte, error) { 3866 type NoMethod GrafeasV1beta1BuildDetails 3867 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3868 } 3869 3870 // GrafeasV1beta1DeploymentDetails: Details of a deployment occurrence. 3871 type GrafeasV1beta1DeploymentDetails struct { 3872 // Deployment: Required. Deployment history for the resource. 3873 Deployment *Deployment `json:"deployment,omitempty"` 3874 // ForceSendFields is a list of field names (e.g. "Deployment") to 3875 // unconditionally include in API requests. By default, fields with empty or 3876 // default values are omitted from API requests. See 3877 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3878 // details. 3879 ForceSendFields []string `json:"-"` 3880 // NullFields is a list of field names (e.g. "Deployment") to include in API 3881 // requests with the JSON null value. By default, fields with empty values are 3882 // omitted from API requests. See 3883 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3884 NullFields []string `json:"-"` 3885 } 3886 3887 func (s *GrafeasV1beta1DeploymentDetails) MarshalJSON() ([]byte, error) { 3888 type NoMethod GrafeasV1beta1DeploymentDetails 3889 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3890 } 3891 3892 // GrafeasV1beta1DiscoveryDetails: Details of a discovery occurrence. 3893 type GrafeasV1beta1DiscoveryDetails struct { 3894 // Discovered: Required. Analysis status for the discovered resource. 3895 Discovered *Discovered `json:"discovered,omitempty"` 3896 // ForceSendFields is a list of field names (e.g. "Discovered") to 3897 // unconditionally include in API requests. By default, fields with empty or 3898 // default values are omitted from API requests. See 3899 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3900 // details. 3901 ForceSendFields []string `json:"-"` 3902 // NullFields is a list of field names (e.g. "Discovered") to include in API 3903 // requests with the JSON null value. By default, fields with empty values are 3904 // omitted from API requests. See 3905 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3906 NullFields []string `json:"-"` 3907 } 3908 3909 func (s *GrafeasV1beta1DiscoveryDetails) MarshalJSON() ([]byte, error) { 3910 type NoMethod GrafeasV1beta1DiscoveryDetails 3911 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3912 } 3913 3914 // GrafeasV1beta1ImageDetails: Details of an image occurrence. 3915 type GrafeasV1beta1ImageDetails struct { 3916 // DerivedImage: Required. Immutable. The child image derived from the base 3917 // image. 3918 DerivedImage *Derived `json:"derivedImage,omitempty"` 3919 // ForceSendFields is a list of field names (e.g. "DerivedImage") to 3920 // unconditionally include in API requests. By default, fields with empty or 3921 // default values are omitted from API requests. See 3922 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3923 // details. 3924 ForceSendFields []string `json:"-"` 3925 // NullFields is a list of field names (e.g. "DerivedImage") to include in API 3926 // requests with the JSON null value. By default, fields with empty values are 3927 // omitted from API requests. See 3928 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3929 NullFields []string `json:"-"` 3930 } 3931 3932 func (s *GrafeasV1beta1ImageDetails) MarshalJSON() ([]byte, error) { 3933 type NoMethod GrafeasV1beta1ImageDetails 3934 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3935 } 3936 3937 type GrafeasV1beta1IntotoArtifact struct { 3938 Hashes *ArtifactHashes `json:"hashes,omitempty"` 3939 ResourceUri string `json:"resourceUri,omitempty"` 3940 // ForceSendFields is a list of field names (e.g. "Hashes") to unconditionally 3941 // include in API requests. By default, fields with empty or default values are 3942 // omitted from API requests. See 3943 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3944 // details. 3945 ForceSendFields []string `json:"-"` 3946 // NullFields is a list of field names (e.g. "Hashes") to include in API 3947 // requests with the JSON null value. By default, fields with empty values are 3948 // omitted from API requests. See 3949 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3950 NullFields []string `json:"-"` 3951 } 3952 3953 func (s *GrafeasV1beta1IntotoArtifact) MarshalJSON() ([]byte, error) { 3954 type NoMethod GrafeasV1beta1IntotoArtifact 3955 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3956 } 3957 3958 // GrafeasV1beta1IntotoDetails: This corresponds to a signed in-toto link - it 3959 // is made up of one or more signatures and the in-toto link itself. This is 3960 // used for occurrences of a Grafeas in-toto note. 3961 type GrafeasV1beta1IntotoDetails struct { 3962 Signatures []*GrafeasV1beta1IntotoSignature `json:"signatures,omitempty"` 3963 Signed *Link `json:"signed,omitempty"` 3964 // ForceSendFields is a list of field names (e.g. "Signatures") to 3965 // unconditionally include in API requests. By default, fields with empty or 3966 // default values are omitted from API requests. See 3967 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3968 // details. 3969 ForceSendFields []string `json:"-"` 3970 // NullFields is a list of field names (e.g. "Signatures") to include in API 3971 // requests with the JSON null value. By default, fields with empty values are 3972 // omitted from API requests. See 3973 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3974 NullFields []string `json:"-"` 3975 } 3976 3977 func (s *GrafeasV1beta1IntotoDetails) MarshalJSON() ([]byte, error) { 3978 type NoMethod GrafeasV1beta1IntotoDetails 3979 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 3980 } 3981 3982 // GrafeasV1beta1IntotoSignature: A signature object consists of the KeyID used 3983 // and the signature itself. 3984 type GrafeasV1beta1IntotoSignature struct { 3985 Keyid string `json:"keyid,omitempty"` 3986 Sig string `json:"sig,omitempty"` 3987 // ForceSendFields is a list of field names (e.g. "Keyid") to unconditionally 3988 // include in API requests. By default, fields with empty or default values are 3989 // omitted from API requests. See 3990 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 3991 // details. 3992 ForceSendFields []string `json:"-"` 3993 // NullFields is a list of field names (e.g. "Keyid") to include in API 3994 // requests with the JSON null value. By default, fields with empty values are 3995 // omitted from API requests. See 3996 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 3997 NullFields []string `json:"-"` 3998 } 3999 4000 func (s *GrafeasV1beta1IntotoSignature) MarshalJSON() ([]byte, error) { 4001 type NoMethod GrafeasV1beta1IntotoSignature 4002 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4003 } 4004 4005 // GrafeasV1beta1PackageDetails: Details of a package occurrence. 4006 type GrafeasV1beta1PackageDetails struct { 4007 // Installation: Required. Where the package was installed. 4008 Installation *Installation `json:"installation,omitempty"` 4009 // ForceSendFields is a list of field names (e.g. "Installation") to 4010 // unconditionally include in API requests. By default, fields with empty or 4011 // default values are omitted from API requests. See 4012 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4013 // details. 4014 ForceSendFields []string `json:"-"` 4015 // NullFields is a list of field names (e.g. "Installation") to include in API 4016 // requests with the JSON null value. By default, fields with empty values are 4017 // omitted from API requests. See 4018 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4019 NullFields []string `json:"-"` 4020 } 4021 4022 func (s *GrafeasV1beta1PackageDetails) MarshalJSON() ([]byte, error) { 4023 type NoMethod GrafeasV1beta1PackageDetails 4024 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4025 } 4026 4027 // GrafeasV1beta1VulnerabilityDetails: Details of a vulnerability Occurrence. 4028 type GrafeasV1beta1VulnerabilityDetails struct { 4029 // CvssScore: Output only. The CVSS score of this vulnerability. CVSS score is 4030 // on a scale of 0-10 where 0 indicates low severity and 10 indicates high 4031 // severity. 4032 CvssScore float64 `json:"cvssScore,omitempty"` 4033 // CvssV2: The cvss v2 score for the vulnerability. 4034 CvssV2 *CVSS `json:"cvssV2,omitempty"` 4035 // CvssV3: The cvss v3 score for the vulnerability. 4036 CvssV3 *CVSS `json:"cvssV3,omitempty"` 4037 // CvssVersion: Output only. CVSS version used to populate cvss_score and 4038 // severity. 4039 // 4040 // Possible values: 4041 // "CVSS_VERSION_UNSPECIFIED" 4042 // "CVSS_VERSION_2" 4043 // "CVSS_VERSION_3" 4044 CvssVersion string `json:"cvssVersion,omitempty"` 4045 // EffectiveSeverity: The distro assigned severity for this vulnerability when 4046 // it is available, and note provider assigned severity when distro has not yet 4047 // assigned a severity for this vulnerability. When there are multiple 4048 // PackageIssues for this vulnerability, they can have different effective 4049 // severities because some might be provided by the distro while others are 4050 // provided by the language ecosystem for a language pack. For this reason, it 4051 // is advised to use the effective severity on the PackageIssue level. In the 4052 // case where multiple PackageIssues have differing effective severities, this 4053 // field should be the highest severity for any of the PackageIssues. 4054 // 4055 // Possible values: 4056 // "SEVERITY_UNSPECIFIED" - Unknown. 4057 // "MINIMAL" - Minimal severity. 4058 // "LOW" - Low severity. 4059 // "MEDIUM" - Medium severity. 4060 // "HIGH" - High severity. 4061 // "CRITICAL" - Critical severity. 4062 EffectiveSeverity string `json:"effectiveSeverity,omitempty"` 4063 // ExtraDetails: Occurrence-specific extra details about the vulnerability. 4064 ExtraDetails string `json:"extraDetails,omitempty"` 4065 // LongDescription: Output only. A detailed description of this vulnerability. 4066 LongDescription string `json:"longDescription,omitempty"` 4067 // PackageIssue: Required. The set of affected locations and their fixes (if 4068 // available) within the associated resource. 4069 PackageIssue []*PackageIssue `json:"packageIssue,omitempty"` 4070 // RelatedUrls: Output only. URLs related to this vulnerability. 4071 RelatedUrls []*RelatedUrl `json:"relatedUrls,omitempty"` 4072 // Severity: Output only. The note provider assigned Severity of the 4073 // vulnerability. 4074 // 4075 // Possible values: 4076 // "SEVERITY_UNSPECIFIED" - Unknown. 4077 // "MINIMAL" - Minimal severity. 4078 // "LOW" - Low severity. 4079 // "MEDIUM" - Medium severity. 4080 // "HIGH" - High severity. 4081 // "CRITICAL" - Critical severity. 4082 Severity string `json:"severity,omitempty"` 4083 // ShortDescription: Output only. A one sentence description of this 4084 // vulnerability. 4085 ShortDescription string `json:"shortDescription,omitempty"` 4086 // Type: The type of package; whether native or non native(ruby gems, node.js 4087 // packages etc) 4088 Type string `json:"type,omitempty"` 4089 VexAssessment *VexAssessment `json:"vexAssessment,omitempty"` 4090 // ForceSendFields is a list of field names (e.g. "CvssScore") to 4091 // unconditionally include in API requests. By default, fields with empty or 4092 // default values are omitted from API requests. See 4093 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4094 // details. 4095 ForceSendFields []string `json:"-"` 4096 // NullFields is a list of field names (e.g. "CvssScore") to include in API 4097 // requests with the JSON null value. By default, fields with empty values are 4098 // omitted from API requests. See 4099 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4100 NullFields []string `json:"-"` 4101 } 4102 4103 func (s *GrafeasV1beta1VulnerabilityDetails) MarshalJSON() ([]byte, error) { 4104 type NoMethod GrafeasV1beta1VulnerabilityDetails 4105 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4106 } 4107 4108 func (s *GrafeasV1beta1VulnerabilityDetails) UnmarshalJSON(data []byte) error { 4109 type NoMethod GrafeasV1beta1VulnerabilityDetails 4110 var s1 struct { 4111 CvssScore gensupport.JSONFloat64 `json:"cvssScore"` 4112 *NoMethod 4113 } 4114 s1.NoMethod = (*NoMethod)(s) 4115 if err := json.Unmarshal(data, &s1); err != nil { 4116 return err 4117 } 4118 s.CvssScore = float64(s1.CvssScore) 4119 return nil 4120 } 4121 4122 // Hash: Container message for hash values. 4123 type Hash struct { 4124 // Type: Required. The type of hash that was performed. 4125 // 4126 // Possible values: 4127 // "HASH_TYPE_UNSPECIFIED" - Unknown. 4128 // "SHA256" - A SHA-256 hash. 4129 // "GO_MODULE_H1" - Dirhash of a Go module's source code which is then 4130 // hex-encoded. See b/244466565 and 4131 // https://github.com/in-toto/attestation/pull/108. 4132 // "SHA512" - A SHA-512 hash. 4133 Type string `json:"type,omitempty"` 4134 // Value: Required. The hash value. 4135 Value string `json:"value,omitempty"` 4136 // ForceSendFields is a list of field names (e.g. "Type") to unconditionally 4137 // include in API requests. By default, fields with empty or default values are 4138 // omitted from API requests. See 4139 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4140 // details. 4141 ForceSendFields []string `json:"-"` 4142 // NullFields is a list of field names (e.g. "Type") to include in API requests 4143 // with the JSON null value. By default, fields with empty values are omitted 4144 // from API requests. See 4145 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4146 NullFields []string `json:"-"` 4147 } 4148 4149 func (s *Hash) MarshalJSON() ([]byte, error) { 4150 type NoMethod Hash 4151 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4152 } 4153 4154 // Hint: This submessage provides human-readable hints about the purpose of the 4155 // authority. Because the name of a note acts as its resource reference, it is 4156 // important to disambiguate the canonical name of the Note (which might be a 4157 // UUID for security purposes) from "readable" names more suitable for debug 4158 // output. Note that these hints should not be used to look up authorities in 4159 // security sensitive contexts, such as when looking up attestations to verify. 4160 type Hint struct { 4161 // HumanReadableName: Required. The human readable name of this attestation 4162 // authority, for example "qa". 4163 HumanReadableName string `json:"humanReadableName,omitempty"` 4164 // ForceSendFields is a list of field names (e.g. "HumanReadableName") to 4165 // unconditionally include in API requests. By default, fields with empty or 4166 // default values are omitted from API requests. See 4167 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4168 // details. 4169 ForceSendFields []string `json:"-"` 4170 // NullFields is a list of field names (e.g. "HumanReadableName") to include in 4171 // API requests with the JSON null value. By default, fields with empty values 4172 // are omitted from API requests. See 4173 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4174 NullFields []string `json:"-"` 4175 } 4176 4177 func (s *Hint) MarshalJSON() ([]byte, error) { 4178 type NoMethod Hint 4179 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4180 } 4181 4182 // InToto: This contains the fields corresponding to the definition of a 4183 // software supply chain step in an in-toto layout. This information goes into 4184 // a Grafeas note. 4185 type InToto struct { 4186 // ExpectedCommand: This field contains the expected command used to perform 4187 // the step. 4188 ExpectedCommand []string `json:"expectedCommand,omitempty"` 4189 // ExpectedMaterials: The following fields contain in-toto artifact rules 4190 // identifying the artifacts that enter this supply chain step, and exit the 4191 // supply chain step, i.e. materials and products of the step. 4192 ExpectedMaterials []*ArtifactRule `json:"expectedMaterials,omitempty"` 4193 ExpectedProducts []*ArtifactRule `json:"expectedProducts,omitempty"` 4194 // SigningKeys: This field contains the public keys that can be used to verify 4195 // the signatures on the step metadata. 4196 SigningKeys []*SigningKey `json:"signingKeys,omitempty"` 4197 // StepName: This field identifies the name of the step in the supply chain. 4198 StepName string `json:"stepName,omitempty"` 4199 // Threshold: This field contains a value that indicates the minimum number of 4200 // keys that need to be used to sign the step's in-toto link. 4201 Threshold int64 `json:"threshold,omitempty,string"` 4202 // ForceSendFields is a list of field names (e.g. "ExpectedCommand") to 4203 // unconditionally include in API requests. By default, fields with empty or 4204 // default values are omitted from API requests. See 4205 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4206 // details. 4207 ForceSendFields []string `json:"-"` 4208 // NullFields is a list of field names (e.g. "ExpectedCommand") to include in 4209 // API requests with the JSON null value. By default, fields with empty values 4210 // are omitted from API requests. See 4211 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4212 NullFields []string `json:"-"` 4213 } 4214 4215 func (s *InToto) MarshalJSON() ([]byte, error) { 4216 type NoMethod InToto 4217 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4218 } 4219 4220 type InTotoSlsaProvenanceV1 struct { 4221 // Type: InToto spec defined at 4222 // https://github.com/in-toto/attestation/tree/main/spec#statement 4223 Type string `json:"_type,omitempty"` 4224 Predicate *SlsaProvenanceV1 `json:"predicate,omitempty"` 4225 PredicateType string `json:"predicateType,omitempty"` 4226 Subject []*Subject `json:"subject,omitempty"` 4227 // ForceSendFields is a list of field names (e.g. "Type") to unconditionally 4228 // include in API requests. By default, fields with empty or default values are 4229 // omitted from API requests. See 4230 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4231 // details. 4232 ForceSendFields []string `json:"-"` 4233 // NullFields is a list of field names (e.g. "Type") to include in API requests 4234 // with the JSON null value. By default, fields with empty values are omitted 4235 // from API requests. See 4236 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4237 NullFields []string `json:"-"` 4238 } 4239 4240 func (s *InTotoSlsaProvenanceV1) MarshalJSON() ([]byte, error) { 4241 type NoMethod InTotoSlsaProvenanceV1 4242 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4243 } 4244 4245 // Installation: This represents how a particular software package may be 4246 // installed on a system. 4247 type Installation struct { 4248 // Architecture: Output only. The CPU architecture for which packages in this 4249 // distribution channel were built. Architecture will be blank for language 4250 // packages. 4251 // 4252 // Possible values: 4253 // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. 4254 // "X86" - X86 architecture. 4255 // "X64" - X64 architecture. 4256 Architecture string `json:"architecture,omitempty"` 4257 // CpeUri: Output only. The cpe_uri in CPE format 4258 // (https://cpe.mitre.org/specification/) denoting the package manager version 4259 // distributing a package. The cpe_uri will be blank for language packages. 4260 CpeUri string `json:"cpeUri,omitempty"` 4261 // License: Licenses that have been declared by the authors of the package. 4262 License *License `json:"license,omitempty"` 4263 // Location: All of the places within the filesystem versions of this package 4264 // have been found. 4265 Location []*Location `json:"location,omitempty"` 4266 // Name: Required. Output only. The name of the installed package. 4267 Name string `json:"name,omitempty"` 4268 // PackageType: Output only. The type of package; whether native or non native 4269 // (e.g., ruby gems, node.js packages, etc.). 4270 PackageType string `json:"packageType,omitempty"` 4271 // Version: Output only. The version of the package. 4272 Version *Version `json:"version,omitempty"` 4273 // ForceSendFields is a list of field names (e.g. "Architecture") to 4274 // unconditionally include in API requests. By default, fields with empty or 4275 // default values are omitted from API requests. See 4276 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4277 // details. 4278 ForceSendFields []string `json:"-"` 4279 // NullFields is a list of field names (e.g. "Architecture") to include in API 4280 // requests with the JSON null value. By default, fields with empty values are 4281 // omitted from API requests. See 4282 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4283 NullFields []string `json:"-"` 4284 } 4285 4286 func (s *Installation) MarshalJSON() ([]byte, error) { 4287 type NoMethod Installation 4288 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4289 } 4290 4291 // Justification: Justification provides the justification when the state of 4292 // the assessment if NOT_AFFECTED. 4293 type Justification struct { 4294 // Details: Additional details on why this justification was chosen. 4295 Details string `json:"details,omitempty"` 4296 // JustificationType: The justification type for this vulnerability. 4297 // 4298 // Possible values: 4299 // "JUSTIFICATION_TYPE_UNSPECIFIED" - JUSTIFICATION_TYPE_UNSPECIFIED. 4300 // "COMPONENT_NOT_PRESENT" - The vulnerable component is not present in the 4301 // product. 4302 // "VULNERABLE_CODE_NOT_PRESENT" - The vulnerable code is not present. 4303 // Typically this case occurs when source code is configured or built in a way 4304 // that excludes the vulnerable code. 4305 // "VULNERABLE_CODE_NOT_IN_EXECUTE_PATH" - The vulnerable code can not be 4306 // executed. Typically this case occurs when the product includes the 4307 // vulnerable code but does not call or use the vulnerable code. 4308 // "VULNERABLE_CODE_CANNOT_BE_CONTROLLED_BY_ADVERSARY" - The vulnerable code 4309 // cannot be controlled by an attacker to exploit the vulnerability. 4310 // "INLINE_MITIGATIONS_ALREADY_EXIST" - The product includes built-in 4311 // protections or features that prevent exploitation of the vulnerability. 4312 // These built-in protections cannot be subverted by the attacker and cannot be 4313 // configured or disabled by the user. These mitigations completely prevent 4314 // exploitation based on known attack vectors. 4315 JustificationType string `json:"justificationType,omitempty"` 4316 // ForceSendFields is a list of field names (e.g. "Details") to unconditionally 4317 // include in API requests. By default, fields with empty or default values are 4318 // omitted from API requests. See 4319 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4320 // details. 4321 ForceSendFields []string `json:"-"` 4322 // NullFields is a list of field names (e.g. "Details") to include in API 4323 // requests with the JSON null value. By default, fields with empty values are 4324 // omitted from API requests. See 4325 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4326 NullFields []string `json:"-"` 4327 } 4328 4329 func (s *Justification) MarshalJSON() ([]byte, error) { 4330 type NoMethod Justification 4331 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4332 } 4333 4334 type KnowledgeBase struct { 4335 // Name: The KB name (generally of the form KB[0-9]+ i.e. KB123456). 4336 Name string `json:"name,omitempty"` 4337 // Url: A link to the KB in the Windows update catalog - 4338 // https://www.catalog.update.microsoft.com/ 4339 Url string `json:"url,omitempty"` 4340 // ForceSendFields is a list of field names (e.g. "Name") to unconditionally 4341 // include in API requests. By default, fields with empty or default values are 4342 // omitted from API requests. See 4343 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4344 // details. 4345 ForceSendFields []string `json:"-"` 4346 // NullFields is a list of field names (e.g. "Name") to include in API requests 4347 // with the JSON null value. By default, fields with empty values are omitted 4348 // from API requests. See 4349 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4350 NullFields []string `json:"-"` 4351 } 4352 4353 func (s *KnowledgeBase) MarshalJSON() ([]byte, error) { 4354 type NoMethod KnowledgeBase 4355 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4356 } 4357 4358 // Layer: Layer holds metadata specific to a layer of a Docker image. 4359 type Layer struct { 4360 // Arguments: The recovered arguments to the Dockerfile directive. 4361 Arguments string `json:"arguments,omitempty"` 4362 // Directive: Required. The recovered Dockerfile directive used to construct 4363 // this layer. 4364 // 4365 // Possible values: 4366 // "DIRECTIVE_UNSPECIFIED" - Default value for unsupported/missing directive. 4367 // "MAINTAINER" - https://docs.docker.com/engine/reference/builder/ 4368 // "RUN" - https://docs.docker.com/engine/reference/builder/ 4369 // "CMD" - https://docs.docker.com/engine/reference/builder/ 4370 // "LABEL" - https://docs.docker.com/engine/reference/builder/ 4371 // "EXPOSE" - https://docs.docker.com/engine/reference/builder/ 4372 // "ENV" - https://docs.docker.com/engine/reference/builder/ 4373 // "ADD" - https://docs.docker.com/engine/reference/builder/ 4374 // "COPY" - https://docs.docker.com/engine/reference/builder/ 4375 // "ENTRYPOINT" - https://docs.docker.com/engine/reference/builder/ 4376 // "VOLUME" - https://docs.docker.com/engine/reference/builder/ 4377 // "USER" - https://docs.docker.com/engine/reference/builder/ 4378 // "WORKDIR" - https://docs.docker.com/engine/reference/builder/ 4379 // "ARG" - https://docs.docker.com/engine/reference/builder/ 4380 // "ONBUILD" - https://docs.docker.com/engine/reference/builder/ 4381 // "STOPSIGNAL" - https://docs.docker.com/engine/reference/builder/ 4382 // "HEALTHCHECK" - https://docs.docker.com/engine/reference/builder/ 4383 // "SHELL" - https://docs.docker.com/engine/reference/builder/ 4384 Directive string `json:"directive,omitempty"` 4385 // ForceSendFields is a list of field names (e.g. "Arguments") to 4386 // unconditionally include in API requests. By default, fields with empty or 4387 // default values are omitted from API requests. See 4388 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4389 // details. 4390 ForceSendFields []string `json:"-"` 4391 // NullFields is a list of field names (e.g. "Arguments") to include in API 4392 // requests with the JSON null value. By default, fields with empty values are 4393 // omitted from API requests. See 4394 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4395 NullFields []string `json:"-"` 4396 } 4397 4398 func (s *Layer) MarshalJSON() ([]byte, error) { 4399 type NoMethod Layer 4400 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4401 } 4402 4403 // License: License information. 4404 type License struct { 4405 // Comments: Comments 4406 Comments string `json:"comments,omitempty"` 4407 // Expression: Often a single license can be used to represent the licensing 4408 // terms. Sometimes it is necessary to include a choice of one or more licenses 4409 // or some combination of license identifiers. Examples: "LGPL-2.1-only OR 4410 // MIT", "LGPL-2.1-only AND MIT", "GPL-2.0-or-later WITH Bison-exception-2.2". 4411 Expression string `json:"expression,omitempty"` 4412 // ForceSendFields is a list of field names (e.g. "Comments") to 4413 // unconditionally include in API requests. By default, fields with empty or 4414 // default values are omitted from API requests. See 4415 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4416 // details. 4417 ForceSendFields []string `json:"-"` 4418 // NullFields is a list of field names (e.g. "Comments") to include in API 4419 // requests with the JSON null value. By default, fields with empty values are 4420 // omitted from API requests. See 4421 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4422 NullFields []string `json:"-"` 4423 } 4424 4425 func (s *License) MarshalJSON() ([]byte, error) { 4426 type NoMethod License 4427 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4428 } 4429 4430 // LicensesSummary: Per license count 4431 type LicensesSummary struct { 4432 // Count: The number of fixable vulnerabilities associated with this resource. 4433 Count int64 `json:"count,omitempty,string"` 4434 // License: The license of the package. Note that the format of this value is 4435 // not guaranteed. It may be nil, an empty string, a boolean value (A | B), a 4436 // differently formed boolean value (A OR B), etc... 4437 License string `json:"license,omitempty"` 4438 // ForceSendFields is a list of field names (e.g. "Count") to unconditionally 4439 // include in API requests. By default, fields with empty or default values are 4440 // omitted from API requests. See 4441 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4442 // details. 4443 ForceSendFields []string `json:"-"` 4444 // NullFields is a list of field names (e.g. "Count") to include in API 4445 // requests with the JSON null value. By default, fields with empty values are 4446 // omitted from API requests. See 4447 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4448 NullFields []string `json:"-"` 4449 } 4450 4451 func (s *LicensesSummary) MarshalJSON() ([]byte, error) { 4452 type NoMethod LicensesSummary 4453 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4454 } 4455 4456 // Link: This corresponds to an in-toto link. 4457 type Link struct { 4458 // Byproducts: ByProducts are data generated as part of a software supply chain 4459 // step, but are not the actual result of the step. 4460 Byproducts *ByProducts `json:"byproducts,omitempty"` 4461 // Command: This field contains the full command executed for the step. This 4462 // can also be empty if links are generated for operations that aren't directly 4463 // mapped to a specific command. Each term in the command is an independent 4464 // string in the list. An example of a command in the in-toto metadata field 4465 // is: "command": ["git", "clone", 4466 // "https://github.com/in-toto/demo-project.git"] 4467 Command []string `json:"command,omitempty"` 4468 // Environment: This is a field that can be used to capture information about 4469 // the environment. It is suggested for this field to contain information that 4470 // details environment variables, filesystem information, and the present 4471 // working directory. The recommended structure of this field is: 4472 // "environment": { "custom_values": { "variables": "", "filesystem": "", 4473 // "workdir": "", "": "..." } } 4474 Environment *Environment `json:"environment,omitempty"` 4475 // Materials: Materials are the supply chain artifacts that go into the step 4476 // and are used for the operation performed. The key of the map is the path of 4477 // the artifact and the structure contains the recorded hash information. An 4478 // example is: "materials": [ { "resource_uri": "foo/bar", "hashes": { 4479 // "sha256": "ebebf...", : } } ] 4480 Materials []*GrafeasV1beta1IntotoArtifact `json:"materials,omitempty"` 4481 // Products: Products are the supply chain artifacts generated as a result of 4482 // the step. The structure is identical to that of materials. 4483 Products []*GrafeasV1beta1IntotoArtifact `json:"products,omitempty"` 4484 // ForceSendFields is a list of field names (e.g. "Byproducts") to 4485 // unconditionally include in API requests. By default, fields with empty or 4486 // default values are omitted from API requests. See 4487 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4488 // details. 4489 ForceSendFields []string `json:"-"` 4490 // NullFields is a list of field names (e.g. "Byproducts") to include in API 4491 // requests with the JSON null value. By default, fields with empty values are 4492 // omitted from API requests. See 4493 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4494 NullFields []string `json:"-"` 4495 } 4496 4497 func (s *Link) MarshalJSON() ([]byte, error) { 4498 type NoMethod Link 4499 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4500 } 4501 4502 // ListNoteOccurrencesResponse: Response for listing occurrences for a note. 4503 type ListNoteOccurrencesResponse struct { 4504 // NextPageToken: Token to provide to skip to a particular spot in the list. 4505 NextPageToken string `json:"nextPageToken,omitempty"` 4506 // Occurrences: The occurrences attached to the specified note. 4507 Occurrences []*Occurrence `json:"occurrences,omitempty"` 4508 4509 // ServerResponse contains the HTTP response code and headers from the server. 4510 googleapi.ServerResponse `json:"-"` 4511 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4512 // unconditionally include in API requests. By default, fields with empty or 4513 // default values are omitted from API requests. See 4514 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4515 // details. 4516 ForceSendFields []string `json:"-"` 4517 // NullFields is a list of field names (e.g. "NextPageToken") to include in API 4518 // requests with the JSON null value. By default, fields with empty values are 4519 // omitted from API requests. See 4520 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4521 NullFields []string `json:"-"` 4522 } 4523 4524 func (s *ListNoteOccurrencesResponse) MarshalJSON() ([]byte, error) { 4525 type NoMethod ListNoteOccurrencesResponse 4526 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4527 } 4528 4529 // ListNotesResponse: Response for listing notes. 4530 type ListNotesResponse struct { 4531 // NextPageToken: The next pagination token in the list response. It should be 4532 // used as `page_token` for the following request. An empty value means no more 4533 // results. 4534 NextPageToken string `json:"nextPageToken,omitempty"` 4535 // Notes: The notes requested. 4536 Notes []*Note `json:"notes,omitempty"` 4537 4538 // ServerResponse contains the HTTP response code and headers from the server. 4539 googleapi.ServerResponse `json:"-"` 4540 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4541 // unconditionally include in API requests. By default, fields with empty or 4542 // default values are omitted from API requests. See 4543 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4544 // details. 4545 ForceSendFields []string `json:"-"` 4546 // NullFields is a list of field names (e.g. "NextPageToken") to include in API 4547 // requests with the JSON null value. By default, fields with empty values are 4548 // omitted from API requests. See 4549 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4550 NullFields []string `json:"-"` 4551 } 4552 4553 func (s *ListNotesResponse) MarshalJSON() ([]byte, error) { 4554 type NoMethod ListNotesResponse 4555 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4556 } 4557 4558 // ListOccurrencesResponse: Response for listing occurrences. 4559 type ListOccurrencesResponse struct { 4560 // NextPageToken: The next pagination token in the list response. It should be 4561 // used as `page_token` for the following request. An empty value means no more 4562 // results. 4563 NextPageToken string `json:"nextPageToken,omitempty"` 4564 // Occurrences: The occurrences requested. 4565 Occurrences []*Occurrence `json:"occurrences,omitempty"` 4566 4567 // ServerResponse contains the HTTP response code and headers from the server. 4568 googleapi.ServerResponse `json:"-"` 4569 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 4570 // unconditionally include in API requests. By default, fields with empty or 4571 // default values are omitted from API requests. See 4572 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4573 // details. 4574 ForceSendFields []string `json:"-"` 4575 // NullFields is a list of field names (e.g. "NextPageToken") to include in API 4576 // requests with the JSON null value. By default, fields with empty values are 4577 // omitted from API requests. See 4578 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4579 NullFields []string `json:"-"` 4580 } 4581 4582 func (s *ListOccurrencesResponse) MarshalJSON() ([]byte, error) { 4583 type NoMethod ListOccurrencesResponse 4584 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4585 } 4586 4587 // Location: An occurrence of a particular package installation found within a 4588 // system's filesystem. E.g., glibc was found in `/var/lib/dpkg/status`. 4589 type Location struct { 4590 // CpeUri: Deprecated. The CPE URI in CPE format 4591 // (https://cpe.mitre.org/specification/) denoting the package manager version 4592 // distributing a package. 4593 CpeUri string `json:"cpeUri,omitempty"` 4594 // Path: The path from which we gathered that this package/version is 4595 // installed. 4596 Path string `json:"path,omitempty"` 4597 // Version: Deprecated. The version installed at this location. 4598 Version *Version `json:"version,omitempty"` 4599 // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally 4600 // include in API requests. By default, fields with empty or default values are 4601 // omitted from API requests. See 4602 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4603 // details. 4604 ForceSendFields []string `json:"-"` 4605 // NullFields is a list of field names (e.g. "CpeUri") to include in API 4606 // requests with the JSON null value. By default, fields with empty values are 4607 // omitted from API requests. See 4608 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4609 NullFields []string `json:"-"` 4610 } 4611 4612 func (s *Location) MarshalJSON() ([]byte, error) { 4613 type NoMethod Location 4614 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4615 } 4616 4617 // Note: A type of analysis that can be done for a resource. 4618 type Note struct { 4619 // AttestationAuthority: A note describing an attestation role. 4620 AttestationAuthority *Authority `json:"attestationAuthority,omitempty"` 4621 // BaseImage: A note describing a base image. 4622 BaseImage *Basis `json:"baseImage,omitempty"` 4623 // Build: A note describing build provenance for a verifiable build. 4624 Build *Build `json:"build,omitempty"` 4625 // CreateTime: Output only. The time this note was created. This field can be 4626 // used as a filter in list requests. 4627 CreateTime string `json:"createTime,omitempty"` 4628 // Deployable: A note describing something that can be deployed. 4629 Deployable *Deployable `json:"deployable,omitempty"` 4630 // Discovery: A note describing the initial analysis of a resource. 4631 Discovery *Discovery `json:"discovery,omitempty"` 4632 // ExpirationTime: Time of expiration for this note. Empty if note does not 4633 // expire. 4634 ExpirationTime string `json:"expirationTime,omitempty"` 4635 // Intoto: A note describing an in-toto link. 4636 Intoto *InToto `json:"intoto,omitempty"` 4637 // Kind: Output only. The type of analysis. This field can be used as a filter 4638 // in list requests. 4639 // 4640 // Possible values: 4641 // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. 4642 // "VULNERABILITY" - The note and occurrence represent a package 4643 // vulnerability. 4644 // "BUILD" - The note and occurrence assert build provenance. 4645 // "IMAGE" - This represents an image basis relationship. 4646 // "PACKAGE" - This represents a package installed via a package manager. 4647 // "DEPLOYMENT" - The note and occurrence track deployment events. 4648 // "DISCOVERY" - The note and occurrence track the initial discovery status 4649 // of a resource. 4650 // "ATTESTATION" - This represents a logical "role" that can attest to 4651 // artifacts. 4652 // "INTOTO" - This represents an in-toto link. 4653 // "SBOM" - This represents a software bill of materials. 4654 // "SPDX_PACKAGE" - This represents an SPDX Package. 4655 // "SPDX_FILE" - This represents an SPDX File. 4656 // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. 4657 // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability Assessment. 4658 // "SBOM_REFERENCE" - This represents an SBOM Reference. 4659 Kind string `json:"kind,omitempty"` 4660 // LongDescription: A detailed description of this note. 4661 LongDescription string `json:"longDescription,omitempty"` 4662 // Name: Output only. The name of the note in the form of 4663 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 4664 Name string `json:"name,omitempty"` 4665 // Package: A note describing a package hosted by various package managers. 4666 Package *Package `json:"package,omitempty"` 4667 // RelatedNoteNames: Other notes related to this note. 4668 RelatedNoteNames []string `json:"relatedNoteNames,omitempty"` 4669 // RelatedUrl: URLs associated with this note. 4670 RelatedUrl []*RelatedUrl `json:"relatedUrl,omitempty"` 4671 // Sbom: A note describing a software bill of materials. 4672 Sbom *DocumentNote `json:"sbom,omitempty"` 4673 // SbomReference: A note describing an SBOM reference. 4674 SbomReference *SBOMReferenceNote `json:"sbomReference,omitempty"` 4675 // ShortDescription: A one sentence description of this note. 4676 ShortDescription string `json:"shortDescription,omitempty"` 4677 // SpdxFile: A note describing an SPDX File. 4678 SpdxFile *FileNote `json:"spdxFile,omitempty"` 4679 // SpdxPackage: A note describing an SPDX Package. 4680 SpdxPackage *PackageInfoNote `json:"spdxPackage,omitempty"` 4681 // SpdxRelationship: A note describing an SPDX File. 4682 SpdxRelationship *RelationshipNote `json:"spdxRelationship,omitempty"` 4683 // UpdateTime: Output only. The time this note was last updated. This field can 4684 // be used as a filter in list requests. 4685 UpdateTime string `json:"updateTime,omitempty"` 4686 // Vulnerability: A note describing a package vulnerability. 4687 Vulnerability *Vulnerability `json:"vulnerability,omitempty"` 4688 // VulnerabilityAssessment: A note describing a vulnerability assessment. 4689 VulnerabilityAssessment *VulnerabilityAssessmentNote `json:"vulnerabilityAssessment,omitempty"` 4690 4691 // ServerResponse contains the HTTP response code and headers from the server. 4692 googleapi.ServerResponse `json:"-"` 4693 // ForceSendFields is a list of field names (e.g. "AttestationAuthority") to 4694 // unconditionally include in API requests. By default, fields with empty or 4695 // default values are omitted from API requests. See 4696 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4697 // details. 4698 ForceSendFields []string `json:"-"` 4699 // NullFields is a list of field names (e.g. "AttestationAuthority") to include 4700 // in API requests with the JSON null value. By default, fields with empty 4701 // values are omitted from API requests. See 4702 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4703 NullFields []string `json:"-"` 4704 } 4705 4706 func (s *Note) MarshalJSON() ([]byte, error) { 4707 type NoMethod Note 4708 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4709 } 4710 4711 // Occurrence: An instance of an analysis type that has been found on a 4712 // resource. 4713 type Occurrence struct { 4714 // Attestation: Describes an attestation of an artifact. 4715 Attestation *Details `json:"attestation,omitempty"` 4716 // Build: Describes a verifiable build. 4717 Build *GrafeasV1beta1BuildDetails `json:"build,omitempty"` 4718 // CreateTime: Output only. The time this occurrence was created. 4719 CreateTime string `json:"createTime,omitempty"` 4720 // Deployment: Describes the deployment of an artifact on a runtime. 4721 Deployment *GrafeasV1beta1DeploymentDetails `json:"deployment,omitempty"` 4722 // DerivedImage: Describes how this resource derives from the basis in the 4723 // associated note. 4724 DerivedImage *GrafeasV1beta1ImageDetails `json:"derivedImage,omitempty"` 4725 // Discovered: Describes when a resource was discovered. 4726 Discovered *GrafeasV1beta1DiscoveryDetails `json:"discovered,omitempty"` 4727 // Envelope: https://github.com/secure-systems-lab/dsse 4728 Envelope *Envelope `json:"envelope,omitempty"` 4729 // Installation: Describes the installation of a package on the linked 4730 // resource. 4731 Installation *GrafeasV1beta1PackageDetails `json:"installation,omitempty"` 4732 // Intoto: Describes a specific in-toto link. 4733 Intoto *GrafeasV1beta1IntotoDetails `json:"intoto,omitempty"` 4734 // Kind: Output only. This explicitly denotes which of the occurrence details 4735 // are specified. This field can be used as a filter in list requests. 4736 // 4737 // Possible values: 4738 // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. 4739 // "VULNERABILITY" - The note and occurrence represent a package 4740 // vulnerability. 4741 // "BUILD" - The note and occurrence assert build provenance. 4742 // "IMAGE" - This represents an image basis relationship. 4743 // "PACKAGE" - This represents a package installed via a package manager. 4744 // "DEPLOYMENT" - The note and occurrence track deployment events. 4745 // "DISCOVERY" - The note and occurrence track the initial discovery status 4746 // of a resource. 4747 // "ATTESTATION" - This represents a logical "role" that can attest to 4748 // artifacts. 4749 // "INTOTO" - This represents an in-toto link. 4750 // "SBOM" - This represents a software bill of materials. 4751 // "SPDX_PACKAGE" - This represents an SPDX Package. 4752 // "SPDX_FILE" - This represents an SPDX File. 4753 // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. 4754 // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability Assessment. 4755 // "SBOM_REFERENCE" - This represents an SBOM Reference. 4756 Kind string `json:"kind,omitempty"` 4757 // Name: Output only. The name of the occurrence in the form of 4758 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 4759 Name string `json:"name,omitempty"` 4760 // NoteName: Required. Immutable. The analysis note associated with this 4761 // occurrence, in the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This 4762 // field can be used as a filter in list requests. 4763 NoteName string `json:"noteName,omitempty"` 4764 // Remediation: A description of actions that can be taken to remedy the note. 4765 Remediation string `json:"remediation,omitempty"` 4766 // Resource: Required. Immutable. The resource for which the occurrence 4767 // applies. 4768 Resource *Resource `json:"resource,omitempty"` 4769 // Sbom: Describes a specific software bill of materials document. 4770 Sbom *DocumentOccurrence `json:"sbom,omitempty"` 4771 // SbomReference: Describes a specific SBOM reference occurrences. 4772 SbomReference *SBOMReferenceOccurrence `json:"sbomReference,omitempty"` 4773 // SpdxFile: Describes a specific SPDX File. 4774 SpdxFile *FileOccurrence `json:"spdxFile,omitempty"` 4775 // SpdxPackage: Describes a specific SPDX Package. 4776 SpdxPackage *PackageInfoOccurrence `json:"spdxPackage,omitempty"` 4777 // SpdxRelationship: Describes a specific SPDX Relationship. 4778 SpdxRelationship *RelationshipOccurrence `json:"spdxRelationship,omitempty"` 4779 // UpdateTime: Output only. The time this occurrence was last updated. 4780 UpdateTime string `json:"updateTime,omitempty"` 4781 // Vulnerability: Describes a security vulnerability. 4782 Vulnerability *GrafeasV1beta1VulnerabilityDetails `json:"vulnerability,omitempty"` 4783 4784 // ServerResponse contains the HTTP response code and headers from the server. 4785 googleapi.ServerResponse `json:"-"` 4786 // ForceSendFields is a list of field names (e.g. "Attestation") to 4787 // unconditionally include in API requests. By default, fields with empty or 4788 // default values are omitted from API requests. See 4789 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4790 // details. 4791 ForceSendFields []string `json:"-"` 4792 // NullFields is a list of field names (e.g. "Attestation") to include in API 4793 // requests with the JSON null value. By default, fields with empty values are 4794 // omitted from API requests. See 4795 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4796 NullFields []string `json:"-"` 4797 } 4798 4799 func (s *Occurrence) MarshalJSON() ([]byte, error) { 4800 type NoMethod Occurrence 4801 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4802 } 4803 4804 // Package: Package represents a particular package version. 4805 type Package struct { 4806 // Architecture: The CPU architecture for which packages in this distribution 4807 // channel were built. Architecture will be blank for language packages. 4808 // 4809 // Possible values: 4810 // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. 4811 // "X86" - X86 architecture. 4812 // "X64" - X64 architecture. 4813 Architecture string `json:"architecture,omitempty"` 4814 // CpeUri: The cpe_uri in CPE format (https://cpe.mitre.org/specification/) 4815 // denoting the package manager version distributing a package. The cpe_uri 4816 // will be blank for language packages. 4817 CpeUri string `json:"cpeUri,omitempty"` 4818 // Description: The description of this package. 4819 Description string `json:"description,omitempty"` 4820 // Digest: Hash value, typically a file digest, that allows unique 4821 // identification a specific package. 4822 Digest []*Digest `json:"digest,omitempty"` 4823 // Distribution: The various channels by which a package is distributed. 4824 Distribution []*Distribution `json:"distribution,omitempty"` 4825 // License: Licenses that have been declared by the authors of the package. 4826 License *License `json:"license,omitempty"` 4827 // Maintainer: A freeform text denoting the maintainer of this package. 4828 Maintainer string `json:"maintainer,omitempty"` 4829 // Name: Required. Immutable. The name of the package. 4830 Name string `json:"name,omitempty"` 4831 // PackageType: The type of package; whether native or non native (e.g., ruby 4832 // gems, node.js packages, etc.). 4833 PackageType string `json:"packageType,omitempty"` 4834 // Url: The homepage for this package. 4835 Url string `json:"url,omitempty"` 4836 // Version: The version of the package. 4837 Version *Version `json:"version,omitempty"` 4838 // ForceSendFields is a list of field names (e.g. "Architecture") to 4839 // unconditionally include in API requests. By default, fields with empty or 4840 // default values are omitted from API requests. See 4841 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4842 // details. 4843 ForceSendFields []string `json:"-"` 4844 // NullFields is a list of field names (e.g. "Architecture") to include in API 4845 // requests with the JSON null value. By default, fields with empty values are 4846 // omitted from API requests. See 4847 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4848 NullFields []string `json:"-"` 4849 } 4850 4851 func (s *Package) MarshalJSON() ([]byte, error) { 4852 type NoMethod Package 4853 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4854 } 4855 4856 // PackageInfoNote: PackageInfoNote represents an SPDX Package Information 4857 // section: https://spdx.github.io/spdx-spec/3-package-information/ 4858 type PackageInfoNote struct { 4859 // Analyzed: Indicates whether the file content of this package has been 4860 // available for or subjected to analysis when creating the SPDX document 4861 Analyzed bool `json:"analyzed,omitempty"` 4862 // Attribution: A place for the SPDX data creator to record, at the package 4863 // level, acknowledgements that may be needed to be communicated in some 4864 // contexts 4865 Attribution string `json:"attribution,omitempty"` 4866 // Checksum: Provide an independently reproducible mechanism that permits 4867 // unique identification of a specific package that correlates to the data in 4868 // this SPDX file 4869 Checksum string `json:"checksum,omitempty"` 4870 // Copyright: Identify the copyright holders of the package, as well as any 4871 // dates present 4872 Copyright string `json:"copyright,omitempty"` 4873 // DetailedDescription: A more detailed description of the package 4874 DetailedDescription string `json:"detailedDescription,omitempty"` 4875 // DownloadLocation: This section identifies the download Universal Resource 4876 // Locator (URL), or a specific location within a version control system (VCS) 4877 // for the package at the time that the SPDX file was created 4878 DownloadLocation string `json:"downloadLocation,omitempty"` 4879 // ExternalRefs: ExternalRef 4880 ExternalRefs []*ExternalRef `json:"externalRefs,omitempty"` 4881 // FilesLicenseInfo: Contain the license the SPDX file creator has concluded as 4882 // governing the This field is to contain a list of all licenses found in the 4883 // package. The relationship between licenses (i.e., conjunctive, disjunctive) 4884 // is not specified in this field – it is simply a listing of all licenses 4885 // found 4886 FilesLicenseInfo []string `json:"filesLicenseInfo,omitempty"` 4887 // HomePage: Provide a place for the SPDX file creator to record a web site 4888 // that serves as the package's home page 4889 HomePage string `json:"homePage,omitempty"` 4890 // LicenseDeclared: List the licenses that have been declared by the authors of 4891 // the package 4892 LicenseDeclared *License `json:"licenseDeclared,omitempty"` 4893 // Originator: If the package identified in the SPDX file originated from a 4894 // different person or organization than identified as Package Supplier, this 4895 // field identifies from where or whom the package originally came 4896 Originator string `json:"originator,omitempty"` 4897 // PackageType: The type of package: OS, MAVEN, GO, GO_STDLIB, etc. 4898 PackageType string `json:"packageType,omitempty"` 4899 // SummaryDescription: A short description of the package 4900 SummaryDescription string `json:"summaryDescription,omitempty"` 4901 // Supplier: Identify the actual distribution source for the package/directory 4902 // identified in the SPDX file 4903 Supplier string `json:"supplier,omitempty"` 4904 // Title: Identify the full name of the package as given by the Package 4905 // Originator 4906 Title string `json:"title,omitempty"` 4907 // VerificationCode: This field provides an independently reproducible 4908 // mechanism identifying specific contents of a package based on the actual 4909 // files (except the SPDX file itself, if it is included in the package) that 4910 // make up each package and that correlates to the data in this SPDX file 4911 VerificationCode string `json:"verificationCode,omitempty"` 4912 // Version: Identify the version of the package 4913 Version string `json:"version,omitempty"` 4914 // ForceSendFields is a list of field names (e.g. "Analyzed") to 4915 // unconditionally include in API requests. By default, fields with empty or 4916 // default values are omitted from API requests. See 4917 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4918 // details. 4919 ForceSendFields []string `json:"-"` 4920 // NullFields is a list of field names (e.g. "Analyzed") to include in API 4921 // requests with the JSON null value. By default, fields with empty values are 4922 // omitted from API requests. See 4923 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4924 NullFields []string `json:"-"` 4925 } 4926 4927 func (s *PackageInfoNote) MarshalJSON() ([]byte, error) { 4928 type NoMethod PackageInfoNote 4929 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4930 } 4931 4932 // PackageInfoOccurrence: PackageInfoOccurrence represents an SPDX Package 4933 // Information section: https://spdx.github.io/spdx-spec/3-package-information/ 4934 type PackageInfoOccurrence struct { 4935 // Comment: A place for the SPDX file creator to record any general comments 4936 // about the package being described 4937 Comment string `json:"comment,omitempty"` 4938 // Filename: Provide the actual file name of the package, or path of the 4939 // directory being treated as a package 4940 Filename string `json:"filename,omitempty"` 4941 // HomePage: Output only. Provide a place for the SPDX file creator to record a 4942 // web site that serves as the package's home page 4943 HomePage string `json:"homePage,omitempty"` 4944 // Id: Uniquely identify any element in an SPDX document which may be 4945 // referenced by other elements 4946 Id string `json:"id,omitempty"` 4947 // LicenseConcluded: package or alternative values, if the governing license 4948 // cannot be determined 4949 LicenseConcluded *License `json:"licenseConcluded,omitempty"` 4950 // PackageType: Output only. The type of package: OS, MAVEN, GO, GO_STDLIB, 4951 // etc. 4952 PackageType string `json:"packageType,omitempty"` 4953 // SourceInfo: Provide a place for the SPDX file creator to record any relevant 4954 // background information or additional comments about the origin of the 4955 // package 4956 SourceInfo string `json:"sourceInfo,omitempty"` 4957 // SummaryDescription: Output only. A short description of the package 4958 SummaryDescription string `json:"summaryDescription,omitempty"` 4959 // Title: Output only. Identify the full name of the package as given by the 4960 // Package Originator 4961 Title string `json:"title,omitempty"` 4962 // Version: Output only. Identify the version of the package 4963 Version string `json:"version,omitempty"` 4964 // ForceSendFields is a list of field names (e.g. "Comment") to unconditionally 4965 // include in API requests. By default, fields with empty or default values are 4966 // omitted from API requests. See 4967 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 4968 // details. 4969 ForceSendFields []string `json:"-"` 4970 // NullFields is a list of field names (e.g. "Comment") to include in API 4971 // requests with the JSON null value. By default, fields with empty values are 4972 // omitted from API requests. See 4973 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 4974 NullFields []string `json:"-"` 4975 } 4976 4977 func (s *PackageInfoOccurrence) MarshalJSON() ([]byte, error) { 4978 type NoMethod PackageInfoOccurrence 4979 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 4980 } 4981 4982 // PackageIssue: This message wraps a location affected by a vulnerability and 4983 // its associated fix (if one is available). 4984 type PackageIssue struct { 4985 // AffectedLocation: Required. The location of the vulnerability. 4986 AffectedLocation *VulnerabilityLocation `json:"affectedLocation,omitempty"` 4987 // EffectiveSeverity: Output only. The distro or language system assigned 4988 // severity for this vulnerability when that is available and note provider 4989 // assigned severity when it is not available. 4990 // 4991 // Possible values: 4992 // "SEVERITY_UNSPECIFIED" - Unknown. 4993 // "MINIMAL" - Minimal severity. 4994 // "LOW" - Low severity. 4995 // "MEDIUM" - Medium severity. 4996 // "HIGH" - High severity. 4997 // "CRITICAL" - Critical severity. 4998 EffectiveSeverity string `json:"effectiveSeverity,omitempty"` 4999 // FixedLocation: The location of the available fix for vulnerability. 5000 FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"` 5001 // PackageType: The type of package (e.g. OS, MAVEN, GO). 5002 PackageType string `json:"packageType,omitempty"` 5003 // SeverityName: Deprecated, use Details.effective_severity instead The 5004 // severity (e.g., distro assigned severity) for this vulnerability. 5005 SeverityName string `json:"severityName,omitempty"` 5006 // ForceSendFields is a list of field names (e.g. "AffectedLocation") to 5007 // unconditionally include in API requests. By default, fields with empty or 5008 // default values are omitted from API requests. See 5009 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5010 // details. 5011 ForceSendFields []string `json:"-"` 5012 // NullFields is a list of field names (e.g. "AffectedLocation") to include in 5013 // API requests with the JSON null value. By default, fields with empty values 5014 // are omitted from API requests. See 5015 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5016 NullFields []string `json:"-"` 5017 } 5018 5019 func (s *PackageIssue) MarshalJSON() ([]byte, error) { 5020 type NoMethod PackageIssue 5021 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5022 } 5023 5024 // PackagesSummaryResponse: A summary of the packages found within the given 5025 // resource. 5026 type PackagesSummaryResponse struct { 5027 // LicensesSummary: A listing by license name of each of the licenses and their 5028 // counts. 5029 LicensesSummary []*LicensesSummary `json:"licensesSummary,omitempty"` 5030 // ResourceUrl: The unique URL of the image or the container for which this 5031 // summary applies. 5032 ResourceUrl string `json:"resourceUrl,omitempty"` 5033 5034 // ServerResponse contains the HTTP response code and headers from the server. 5035 googleapi.ServerResponse `json:"-"` 5036 // ForceSendFields is a list of field names (e.g. "LicensesSummary") to 5037 // unconditionally include in API requests. By default, fields with empty or 5038 // default values are omitted from API requests. See 5039 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5040 // details. 5041 ForceSendFields []string `json:"-"` 5042 // NullFields is a list of field names (e.g. "LicensesSummary") to include in 5043 // API requests with the JSON null value. By default, fields with empty values 5044 // are omitted from API requests. See 5045 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5046 NullFields []string `json:"-"` 5047 } 5048 5049 func (s *PackagesSummaryResponse) MarshalJSON() ([]byte, error) { 5050 type NoMethod PackagesSummaryResponse 5051 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5052 } 5053 5054 // PgpSignedAttestation: An attestation wrapper with a PGP-compatible 5055 // signature. This message only supports `ATTACHED` signatures, where the 5056 // payload that is signed is included alongside the signature itself in the 5057 // same file. 5058 type PgpSignedAttestation struct { 5059 // ContentType: Type (for example schema) of the attestation payload that was 5060 // signed. The verifier must ensure that the provided type is one that the 5061 // verifier supports, and that the attestation payload is a valid instantiation 5062 // of that type (for example by validating a JSON schema). 5063 // 5064 // Possible values: 5065 // "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set. 5066 // "SIMPLE_SIGNING_JSON" - Atomic format attestation signature. See 5067 // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276c3e0f64e77723e7/docs/atomic-signature.md 5068 // The payload extracted from `signature` is a JSON blob conforming to the 5069 // linked schema. 5070 ContentType string `json:"contentType,omitempty"` 5071 // PgpKeyId: The cryptographic fingerprint of the key used to generate the 5072 // signature, as output by, e.g. `gpg --list-keys`. This should be the version 5073 // 4, full 160-bit fingerprint, expressed as a 40 character hexadecimal string. 5074 // See https://tools.ietf.org/html/rfc4880#section-12.2 for details. 5075 // Implementations may choose to acknowledge "LONG", "SHORT", or other 5076 // abbreviated key IDs, but only the full fingerprint is guaranteed to work. In 5077 // gpg, the full fingerprint can be retrieved from the `fpr` field returned 5078 // when calling --list-keys with --with-colons. For example: ``` gpg 5079 // --with-colons --with-fingerprint --force-v4-certs \ --list-keys 5080 // attester@example.com tru::1:1513631572:0:3:1:5 pub:...... 5081 // fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: ``` Above, the 5082 // fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. 5083 PgpKeyId string `json:"pgpKeyId,omitempty"` 5084 // Signature: Required. The raw content of the signature, as output by GNU 5085 // Privacy Guard (GPG) or equivalent. Since this message only supports attached 5086 // signatures, the payload that was signed must be attached. While the 5087 // signature format supported is dependent on the verification implementation, 5088 // currently only ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` 5089 // rather than `--clearsign` to gpg) are supported. Concretely, `gpg --sign 5090 // --armor --output=signature.gpg payload.json` will create the signature 5091 // content expected in this field in `signature.gpg` for the `payload.json` 5092 // attestation payload. 5093 Signature string `json:"signature,omitempty"` 5094 // ForceSendFields is a list of field names (e.g. "ContentType") to 5095 // unconditionally include in API requests. By default, fields with empty or 5096 // default values are omitted from API requests. See 5097 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5098 // details. 5099 ForceSendFields []string `json:"-"` 5100 // NullFields is a list of field names (e.g. "ContentType") to include in API 5101 // requests with the JSON null value. By default, fields with empty values are 5102 // omitted from API requests. See 5103 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5104 NullFields []string `json:"-"` 5105 } 5106 5107 func (s *PgpSignedAttestation) MarshalJSON() ([]byte, error) { 5108 type NoMethod PgpSignedAttestation 5109 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5110 } 5111 5112 // Policy: An Identity and Access Management (IAM) policy, which specifies 5113 // access controls for Google Cloud resources. A `Policy` is a collection of 5114 // `bindings`. A `binding` binds one or more `members`, or principals, to a 5115 // single `role`. Principals can be user accounts, service accounts, Google 5116 // groups, and domains (such as G Suite). A `role` is a named list of 5117 // permissions; each `role` can be an IAM predefined role or a user-created 5118 // custom role. For some types of Google Cloud resources, a `binding` can also 5119 // specify a `condition`, which is a logical expression that allows access to a 5120 // resource only if the expression evaluates to `true`. A condition can add 5121 // constraints based on attributes of the request, the resource, or both. To 5122 // learn which resources support conditions in their IAM policies, see the IAM 5123 // documentation 5124 // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON 5125 // example:** ``` { "bindings": [ { "role": 5126 // "roles/resourcemanager.organizationAdmin", "members": [ 5127 // "user:mike@example.com", "group:admins@example.com", "domain:google.com", 5128 // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": 5129 // "roles/resourcemanager.organizationViewer", "members": [ 5130 // "user:eve@example.com" ], "condition": { "title": "expirable access", 5131 // "description": "Does not grant access after Sep 2020", "expression": 5132 // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": 5133 // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - 5134 // members: - user:mike@example.com - group:admins@example.com - 5135 // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com 5136 // role: roles/resourcemanager.organizationAdmin - members: - 5137 // user:eve@example.com role: roles/resourcemanager.organizationViewer 5138 // condition: title: expirable access description: Does not grant access after 5139 // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') 5140 // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, 5141 // see the IAM documentation (https://cloud.google.com/iam/docs/). 5142 type Policy struct { 5143 // Bindings: Associates a list of `members`, or principals, with a `role`. 5144 // Optionally, may specify a `condition` that determines how and when the 5145 // `bindings` are applied. Each of the `bindings` must contain at least one 5146 // principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; 5147 // up to 250 of these principals can be Google groups. Each occurrence of a 5148 // principal counts towards these limits. For example, if the `bindings` grant 5149 // 50 different roles to `user:alice@example.com`, and not to any other 5150 // principal, then you can add another 1,450 principals to the `bindings` in 5151 // the `Policy`. 5152 Bindings []*Binding `json:"bindings,omitempty"` 5153 // Etag: `etag` is used for optimistic concurrency control as a way to help 5154 // prevent simultaneous updates of a policy from overwriting each other. It is 5155 // strongly suggested that systems make use of the `etag` in the 5156 // read-modify-write cycle to perform policy updates in order to avoid race 5157 // conditions: An `etag` is returned in the response to `getIamPolicy`, and 5158 // systems are expected to put that etag in the request to `setIamPolicy` to 5159 // ensure that their change will be applied to the same version of the policy. 5160 // **Important:** If you use IAM Conditions, you must include the `etag` field 5161 // whenever you call `setIamPolicy`. If you omit this field, then IAM allows 5162 // you to overwrite a version `3` policy with a version `1` policy, and all of 5163 // the conditions in the version `3` policy are lost. 5164 Etag string `json:"etag,omitempty"` 5165 // Version: Specifies the format of the policy. Valid values are `0`, `1`, and 5166 // `3`. Requests that specify an invalid value are rejected. Any operation that 5167 // affects conditional role bindings must specify version `3`. This requirement 5168 // applies to the following operations: * Getting a policy that includes a 5169 // conditional role binding * Adding a conditional role binding to a policy * 5170 // Changing a conditional role binding in a policy * Removing any role binding, 5171 // with or without a condition, from a policy that includes conditions 5172 // **Important:** If you use IAM Conditions, you must include the `etag` field 5173 // whenever you call `setIamPolicy`. If you omit this field, then IAM allows 5174 // you to overwrite a version `3` policy with a version `1` policy, and all of 5175 // the conditions in the version `3` policy are lost. If a policy does not 5176 // include any conditions, operations on that policy may specify any valid 5177 // version or leave the field unset. To learn which resources support 5178 // conditions in their IAM policies, see the IAM documentation 5179 // (https://cloud.google.com/iam/help/conditions/resource-policies). 5180 Version int64 `json:"version,omitempty"` 5181 5182 // ServerResponse contains the HTTP response code and headers from the server. 5183 googleapi.ServerResponse `json:"-"` 5184 // ForceSendFields is a list of field names (e.g. "Bindings") to 5185 // unconditionally include in API requests. By default, fields with empty or 5186 // default values are omitted from API requests. See 5187 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5188 // details. 5189 ForceSendFields []string `json:"-"` 5190 // NullFields is a list of field names (e.g. "Bindings") to include in API 5191 // requests with the JSON null value. By default, fields with empty values are 5192 // omitted from API requests. See 5193 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5194 NullFields []string `json:"-"` 5195 } 5196 5197 func (s *Policy) MarshalJSON() ([]byte, error) { 5198 type NoMethod Policy 5199 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5200 } 5201 5202 // Product: Product contains information about a product and how to uniquely 5203 // identify it. 5204 type Product struct { 5205 // GenericUri: Contains a URI which is vendor-specific. Example: The artifact 5206 // repository URL of an image. 5207 GenericUri string `json:"genericUri,omitempty"` 5208 // Id: Token that identifies a product so that it can be referred to from other 5209 // parts in the document. There is no predefined format as long as it uniquely 5210 // identifies a group in the context of the current document. 5211 Id string `json:"id,omitempty"` 5212 // Name: Name of the product. 5213 Name string `json:"name,omitempty"` 5214 // ForceSendFields is a list of field names (e.g. "GenericUri") to 5215 // unconditionally include in API requests. By default, fields with empty or 5216 // default values are omitted from API requests. See 5217 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5218 // details. 5219 ForceSendFields []string `json:"-"` 5220 // NullFields is a list of field names (e.g. "GenericUri") to include in API 5221 // requests with the JSON null value. By default, fields with empty values are 5222 // omitted from API requests. See 5223 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5224 NullFields []string `json:"-"` 5225 } 5226 5227 func (s *Product) MarshalJSON() ([]byte, error) { 5228 type NoMethod Product 5229 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5230 } 5231 5232 // ProjectRepoId: Selects a repo using a Google Cloud Platform project ID 5233 // (e.g., winged-cargo-31) and a repo name within that project. 5234 type ProjectRepoId struct { 5235 // ProjectId: The ID of the project. 5236 ProjectId string `json:"projectId,omitempty"` 5237 // RepoName: The name of the repo. Leave empty for the default repo. 5238 RepoName string `json:"repoName,omitempty"` 5239 // ForceSendFields is a list of field names (e.g. "ProjectId") to 5240 // unconditionally include in API requests. By default, fields with empty or 5241 // default values are omitted from API requests. See 5242 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5243 // details. 5244 ForceSendFields []string `json:"-"` 5245 // NullFields is a list of field names (e.g. "ProjectId") to include in API 5246 // requests with the JSON null value. By default, fields with empty values are 5247 // omitted from API requests. See 5248 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5249 NullFields []string `json:"-"` 5250 } 5251 5252 func (s *ProjectRepoId) MarshalJSON() ([]byte, error) { 5253 type NoMethod ProjectRepoId 5254 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5255 } 5256 5257 type ProvenanceBuilder struct { 5258 BuilderDependencies []*ResourceDescriptor `json:"builderDependencies,omitempty"` 5259 Id string `json:"id,omitempty"` 5260 Version map[string]string `json:"version,omitempty"` 5261 // ForceSendFields is a list of field names (e.g. "BuilderDependencies") to 5262 // unconditionally include in API requests. By default, fields with empty or 5263 // default values are omitted from API requests. See 5264 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5265 // details. 5266 ForceSendFields []string `json:"-"` 5267 // NullFields is a list of field names (e.g. "BuilderDependencies") to include 5268 // in API requests with the JSON null value. By default, fields with empty 5269 // values are omitted from API requests. See 5270 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5271 NullFields []string `json:"-"` 5272 } 5273 5274 func (s *ProvenanceBuilder) MarshalJSON() ([]byte, error) { 5275 type NoMethod ProvenanceBuilder 5276 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5277 } 5278 5279 // Publisher: Publisher contains information about the publisher of this Note. 5280 type Publisher struct { 5281 // IssuingAuthority: Provides information about the authority of the issuing 5282 // party to release the document, in particular, the party's constituency and 5283 // responsibilities or other obligations. 5284 IssuingAuthority string `json:"issuingAuthority,omitempty"` 5285 // Name: Name of the publisher. Examples: 'Google', 'Google Cloud Platform'. 5286 Name string `json:"name,omitempty"` 5287 // PublisherNamespace: The context or namespace. Contains a URL which is under 5288 // control of the issuing party and can be used as a globally unique identifier 5289 // for that issuing party. Example: https://csaf.io 5290 PublisherNamespace string `json:"publisherNamespace,omitempty"` 5291 // ForceSendFields is a list of field names (e.g. "IssuingAuthority") to 5292 // unconditionally include in API requests. By default, fields with empty or 5293 // default values are omitted from API requests. See 5294 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5295 // details. 5296 ForceSendFields []string `json:"-"` 5297 // NullFields is a list of field names (e.g. "IssuingAuthority") to include in 5298 // API requests with the JSON null value. By default, fields with empty values 5299 // are omitted from API requests. See 5300 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5301 NullFields []string `json:"-"` 5302 } 5303 5304 func (s *Publisher) MarshalJSON() ([]byte, error) { 5305 type NoMethod Publisher 5306 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5307 } 5308 5309 // RelatedUrl: Metadata for any related URL information. 5310 type RelatedUrl struct { 5311 // Label: Label to describe usage of the URL. 5312 Label string `json:"label,omitempty"` 5313 // Url: Specific URL associated with the resource. 5314 Url string `json:"url,omitempty"` 5315 // ForceSendFields is a list of field names (e.g. "Label") to unconditionally 5316 // include in API requests. By default, fields with empty or default values are 5317 // omitted from API requests. See 5318 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5319 // details. 5320 ForceSendFields []string `json:"-"` 5321 // NullFields is a list of field names (e.g. "Label") to include in API 5322 // requests with the JSON null value. By default, fields with empty values are 5323 // omitted from API requests. See 5324 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5325 NullFields []string `json:"-"` 5326 } 5327 5328 func (s *RelatedUrl) MarshalJSON() ([]byte, error) { 5329 type NoMethod RelatedUrl 5330 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5331 } 5332 5333 // RelationshipNote: RelationshipNote represents an SPDX Relationship section: 5334 // https://spdx.github.io/spdx-spec/7-relationships-between-SPDX-elements/ 5335 type RelationshipNote struct { 5336 // Type: The type of relationship between the source and target SPDX elements 5337 // 5338 // Possible values: 5339 // "RELATIONSHIP_TYPE_UNSPECIFIED" - Unspecified 5340 // "DESCRIBES" - Is to be used when SPDXRef-DOCUMENT describes SPDXRef-A 5341 // "DESCRIBED_BY" - Is to be used when SPDXRef-A is described by 5342 // SPDXREF-Document 5343 // "CONTAINS" - Is to be used when SPDXRef-A contains SPDXRef-B 5344 // "CONTAINED_BY" - Is to be used when SPDXRef-A is contained by SPDXRef-B 5345 // "DEPENDS_ON" - Is to be used when SPDXRef-A depends on SPDXRef-B 5346 // "DEPENDENCY_OF" - Is to be used when SPDXRef-A is dependency of SPDXRef-B 5347 // "DEPENDENCY_MANIFEST_OF" - Is to be used when SPDXRef-A is a manifest file 5348 // that lists a set of dependencies for SPDXRef-B 5349 // "BUILD_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a build dependency 5350 // of SPDXRef-B 5351 // "DEV_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a development 5352 // dependency of SPDXRef-B 5353 // "OPTIONAL_DEPENDENCY_OF" - Is to be used when SPDXRef-A is an optional 5354 // dependency of SPDXRef-B 5355 // "PROVIDED_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a to be 5356 // provided dependency of SPDXRef-B 5357 // "TEST_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a test dependency 5358 // of SPDXRef-B 5359 // "RUNTIME_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a dependency 5360 // required for the execution of SPDXRef-B 5361 // "EXAMPLE_OF" - Is to be used when SPDXRef-A is an example of SPDXRef-B 5362 // "GENERATES" - Is to be used when SPDXRef-A generates SPDXRef-B 5363 // "GENERATED_FROM" - Is to be used when SPDXRef-A was generated from 5364 // SPDXRef-B 5365 // "ANCESTOR_OF" - Is to be used when SPDXRef-A is an ancestor (same lineage 5366 // but pre-dates) SPDXRef-B 5367 // "DESCENDANT_OF" - Is to be used when SPDXRef-A is a descendant of (same 5368 // lineage but postdates) SPDXRef-B 5369 // "VARIANT_OF" - Is to be used when SPDXRef-A is a variant of (same lineage 5370 // but not clear which came first) SPDXRef-B 5371 // "DISTRIBUTION_ARTIFACT" - Is to be used when distributing SPDXRef-A 5372 // requires that SPDXRef-B also be distributed 5373 // "PATCH_FOR" - Is to be used when SPDXRef-A is a patch file for (to be 5374 // applied to) SPDXRef-B 5375 // "PATCH_APPLIED" - Is to be used when SPDXRef-A is a patch file that has 5376 // been applied to SPDXRef-B 5377 // "COPY_OF" - Is to be used when SPDXRef-A is an exact copy of SPDXRef-B 5378 // "FILE_ADDED" - Is to be used when SPDXRef-A is a file that was added to 5379 // SPDXRef-B 5380 // "FILE_DELETED" - Is to be used when SPDXRef-A is a file that was deleted 5381 // from SPDXRef-B 5382 // "FILE_MODIFIED" - Is to be used when SPDXRef-A is a file that was modified 5383 // from SPDXRef-B 5384 // "EXPANDED_FROM_ARCHIVE" - Is to be used when SPDXRef-A is expanded from 5385 // the archive SPDXRef-B 5386 // "DYNAMIC_LINK" - Is to be used when SPDXRef-A dynamically links to 5387 // SPDXRef-B 5388 // "STATIC_LINK" - Is to be used when SPDXRef-A statically links to SPDXRef-B 5389 // "DATA_FILE_OF" - Is to be used when SPDXRef-A is a data file used in 5390 // SPDXRef-B 5391 // "TEST_CASE_OF" - Is to be used when SPDXRef-A is a test case used in 5392 // testing SPDXRef-B 5393 // "BUILD_TOOL_OF" - Is to be used when SPDXRef-A is used to build SPDXRef-B 5394 // "DEV_TOOL_OF" - Is to be used when SPDXRef-A is used as a development tool 5395 // for SPDXRef-B 5396 // "TEST_OF" - Is to be used when SPDXRef-A is used for testing SPDXRef-B 5397 // "TEST_TOOL_OF" - Is to be used when SPDXRef-A is used as a test tool for 5398 // SPDXRef-B 5399 // "DOCUMENTATION_OF" - Is to be used when SPDXRef-A provides documentation 5400 // of SPDXRef-B 5401 // "OPTIONAL_COMPONENT_OF" - Is to be used when SPDXRef-A is an optional 5402 // component of SPDXRef-B 5403 // "METAFILE_OF" - Is to be used when SPDXRef-A is a metafile of SPDXRef-B 5404 // "PACKAGE_OF" - Is to be used when SPDXRef-A is used as a package as part 5405 // of SPDXRef-B 5406 // "AMENDS" - Is to be used when (current) SPDXRef-DOCUMENT amends the SPDX 5407 // information in SPDXRef-B 5408 // "PREREQUISITE_FOR" - Is to be used when SPDXRef-A is a prerequisite for 5409 // SPDXRef-B 5410 // "HAS_PREREQUISITE" - Is to be used when SPDXRef-A has as a prerequisite 5411 // SPDXRef-B 5412 // "OTHER" - Is to be used for a relationship which has not been defined in 5413 // the formal SPDX specification. A description of the relationship should be 5414 // included in the Relationship comments field 5415 Type string `json:"type,omitempty"` 5416 // ForceSendFields is a list of field names (e.g. "Type") to unconditionally 5417 // include in API requests. By default, fields with empty or default values are 5418 // omitted from API requests. See 5419 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5420 // details. 5421 ForceSendFields []string `json:"-"` 5422 // NullFields is a list of field names (e.g. "Type") to include in API requests 5423 // with the JSON null value. By default, fields with empty values are omitted 5424 // from API requests. See 5425 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5426 NullFields []string `json:"-"` 5427 } 5428 5429 func (s *RelationshipNote) MarshalJSON() ([]byte, error) { 5430 type NoMethod RelationshipNote 5431 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5432 } 5433 5434 // RelationshipOccurrence: RelationshipOccurrence represents an SPDX 5435 // Relationship section: 5436 // https://spdx.github.io/spdx-spec/7-relationships-between-SPDX-elements/ 5437 type RelationshipOccurrence struct { 5438 // Comment: A place for the SPDX file creator to record any general comments 5439 // about the relationship 5440 Comment string `json:"comment,omitempty"` 5441 // Source: Also referred to as SPDXRef-A The source SPDX element (file, 5442 // package, etc) 5443 Source string `json:"source,omitempty"` 5444 // Target: Also referred to as SPDXRef-B The target SPDC element (file, 5445 // package, etc) In cases where there are "known unknowns", the use of the 5446 // keyword NOASSERTION can be used The keywords NONE can be used to indicate 5447 // that an SPDX element (package/file/snippet) has no other elements connected 5448 // by some relationship to it 5449 Target string `json:"target,omitempty"` 5450 // Type: Output only. The type of relationship between the source and target 5451 // SPDX elements 5452 // 5453 // Possible values: 5454 // "RELATIONSHIP_TYPE_UNSPECIFIED" - Unspecified 5455 // "DESCRIBES" - Is to be used when SPDXRef-DOCUMENT describes SPDXRef-A 5456 // "DESCRIBED_BY" - Is to be used when SPDXRef-A is described by 5457 // SPDXREF-Document 5458 // "CONTAINS" - Is to be used when SPDXRef-A contains SPDXRef-B 5459 // "CONTAINED_BY" - Is to be used when SPDXRef-A is contained by SPDXRef-B 5460 // "DEPENDS_ON" - Is to be used when SPDXRef-A depends on SPDXRef-B 5461 // "DEPENDENCY_OF" - Is to be used when SPDXRef-A is dependency of SPDXRef-B 5462 // "DEPENDENCY_MANIFEST_OF" - Is to be used when SPDXRef-A is a manifest file 5463 // that lists a set of dependencies for SPDXRef-B 5464 // "BUILD_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a build dependency 5465 // of SPDXRef-B 5466 // "DEV_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a development 5467 // dependency of SPDXRef-B 5468 // "OPTIONAL_DEPENDENCY_OF" - Is to be used when SPDXRef-A is an optional 5469 // dependency of SPDXRef-B 5470 // "PROVIDED_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a to be 5471 // provided dependency of SPDXRef-B 5472 // "TEST_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a test dependency 5473 // of SPDXRef-B 5474 // "RUNTIME_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a dependency 5475 // required for the execution of SPDXRef-B 5476 // "EXAMPLE_OF" - Is to be used when SPDXRef-A is an example of SPDXRef-B 5477 // "GENERATES" - Is to be used when SPDXRef-A generates SPDXRef-B 5478 // "GENERATED_FROM" - Is to be used when SPDXRef-A was generated from 5479 // SPDXRef-B 5480 // "ANCESTOR_OF" - Is to be used when SPDXRef-A is an ancestor (same lineage 5481 // but pre-dates) SPDXRef-B 5482 // "DESCENDANT_OF" - Is to be used when SPDXRef-A is a descendant of (same 5483 // lineage but postdates) SPDXRef-B 5484 // "VARIANT_OF" - Is to be used when SPDXRef-A is a variant of (same lineage 5485 // but not clear which came first) SPDXRef-B 5486 // "DISTRIBUTION_ARTIFACT" - Is to be used when distributing SPDXRef-A 5487 // requires that SPDXRef-B also be distributed 5488 // "PATCH_FOR" - Is to be used when SPDXRef-A is a patch file for (to be 5489 // applied to) SPDXRef-B 5490 // "PATCH_APPLIED" - Is to be used when SPDXRef-A is a patch file that has 5491 // been applied to SPDXRef-B 5492 // "COPY_OF" - Is to be used when SPDXRef-A is an exact copy of SPDXRef-B 5493 // "FILE_ADDED" - Is to be used when SPDXRef-A is a file that was added to 5494 // SPDXRef-B 5495 // "FILE_DELETED" - Is to be used when SPDXRef-A is a file that was deleted 5496 // from SPDXRef-B 5497 // "FILE_MODIFIED" - Is to be used when SPDXRef-A is a file that was modified 5498 // from SPDXRef-B 5499 // "EXPANDED_FROM_ARCHIVE" - Is to be used when SPDXRef-A is expanded from 5500 // the archive SPDXRef-B 5501 // "DYNAMIC_LINK" - Is to be used when SPDXRef-A dynamically links to 5502 // SPDXRef-B 5503 // "STATIC_LINK" - Is to be used when SPDXRef-A statically links to SPDXRef-B 5504 // "DATA_FILE_OF" - Is to be used when SPDXRef-A is a data file used in 5505 // SPDXRef-B 5506 // "TEST_CASE_OF" - Is to be used when SPDXRef-A is a test case used in 5507 // testing SPDXRef-B 5508 // "BUILD_TOOL_OF" - Is to be used when SPDXRef-A is used to build SPDXRef-B 5509 // "DEV_TOOL_OF" - Is to be used when SPDXRef-A is used as a development tool 5510 // for SPDXRef-B 5511 // "TEST_OF" - Is to be used when SPDXRef-A is used for testing SPDXRef-B 5512 // "TEST_TOOL_OF" - Is to be used when SPDXRef-A is used as a test tool for 5513 // SPDXRef-B 5514 // "DOCUMENTATION_OF" - Is to be used when SPDXRef-A provides documentation 5515 // of SPDXRef-B 5516 // "OPTIONAL_COMPONENT_OF" - Is to be used when SPDXRef-A is an optional 5517 // component of SPDXRef-B 5518 // "METAFILE_OF" - Is to be used when SPDXRef-A is a metafile of SPDXRef-B 5519 // "PACKAGE_OF" - Is to be used when SPDXRef-A is used as a package as part 5520 // of SPDXRef-B 5521 // "AMENDS" - Is to be used when (current) SPDXRef-DOCUMENT amends the SPDX 5522 // information in SPDXRef-B 5523 // "PREREQUISITE_FOR" - Is to be used when SPDXRef-A is a prerequisite for 5524 // SPDXRef-B 5525 // "HAS_PREREQUISITE" - Is to be used when SPDXRef-A has as a prerequisite 5526 // SPDXRef-B 5527 // "OTHER" - Is to be used for a relationship which has not been defined in 5528 // the formal SPDX specification. A description of the relationship should be 5529 // included in the Relationship comments field 5530 Type string `json:"type,omitempty"` 5531 // ForceSendFields is a list of field names (e.g. "Comment") to unconditionally 5532 // include in API requests. By default, fields with empty or default values are 5533 // omitted from API requests. See 5534 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5535 // details. 5536 ForceSendFields []string `json:"-"` 5537 // NullFields is a list of field names (e.g. "Comment") to include in API 5538 // requests with the JSON null value. By default, fields with empty values are 5539 // omitted from API requests. See 5540 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5541 NullFields []string `json:"-"` 5542 } 5543 5544 func (s *RelationshipOccurrence) MarshalJSON() ([]byte, error) { 5545 type NoMethod RelationshipOccurrence 5546 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5547 } 5548 5549 // Remediation: Specifies details on how to handle (and presumably, fix) a 5550 // vulnerability. 5551 type Remediation struct { 5552 // Details: Contains a comprehensive human-readable discussion of the 5553 // remediation. 5554 Details string `json:"details,omitempty"` 5555 // RemediationType: The type of remediation that can be applied. 5556 // 5557 // Possible values: 5558 // "REMEDIATION_TYPE_UNSPECIFIED" - No remediation type specified. 5559 // "MITIGATION" - A MITIGATION is available. 5560 // "NO_FIX_PLANNED" - No fix is planned. 5561 // "NONE_AVAILABLE" - Not available. 5562 // "VENDOR_FIX" - A vendor fix is available. 5563 // "WORKAROUND" - A workaround is available. 5564 RemediationType string `json:"remediationType,omitempty"` 5565 // RemediationUri: Contains the URL where to obtain the remediation. 5566 RemediationUri *RelatedUrl `json:"remediationUri,omitempty"` 5567 // ForceSendFields is a list of field names (e.g. "Details") to unconditionally 5568 // include in API requests. By default, fields with empty or default values are 5569 // omitted from API requests. See 5570 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5571 // details. 5572 ForceSendFields []string `json:"-"` 5573 // NullFields is a list of field names (e.g. "Details") to include in API 5574 // requests with the JSON null value. By default, fields with empty values are 5575 // omitted from API requests. See 5576 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5577 NullFields []string `json:"-"` 5578 } 5579 5580 func (s *Remediation) MarshalJSON() ([]byte, error) { 5581 type NoMethod Remediation 5582 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5583 } 5584 5585 // RepoId: A unique identifier for a Cloud Repo. 5586 type RepoId struct { 5587 // ProjectRepoId: A combination of a project ID and a repo name. 5588 ProjectRepoId *ProjectRepoId `json:"projectRepoId,omitempty"` 5589 // Uid: A server-assigned, globally unique identifier. 5590 Uid string `json:"uid,omitempty"` 5591 // ForceSendFields is a list of field names (e.g. "ProjectRepoId") to 5592 // unconditionally include in API requests. By default, fields with empty or 5593 // default values are omitted from API requests. See 5594 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5595 // details. 5596 ForceSendFields []string `json:"-"` 5597 // NullFields is a list of field names (e.g. "ProjectRepoId") to include in API 5598 // requests with the JSON null value. By default, fields with empty values are 5599 // omitted from API requests. See 5600 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5601 NullFields []string `json:"-"` 5602 } 5603 5604 func (s *RepoId) MarshalJSON() ([]byte, error) { 5605 type NoMethod RepoId 5606 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5607 } 5608 5609 // Resource: An entity that can have metadata. For example, a Docker image. 5610 type Resource struct { 5611 // ContentHash: Deprecated, do not use. Use uri instead. The hash of the 5612 // resource content. For example, the Docker digest. 5613 ContentHash *Hash `json:"contentHash,omitempty"` 5614 // Name: Deprecated, do not use. Use uri instead. The name of the resource. For 5615 // example, the name of a Docker image - "Debian". 5616 Name string `json:"name,omitempty"` 5617 // Uri: Required. The unique URI of the resource. For example, 5618 // `https://gcr.io/project/image@sha256:foo` for a Docker image. 5619 Uri string `json:"uri,omitempty"` 5620 // ForceSendFields is a list of field names (e.g. "ContentHash") to 5621 // unconditionally include in API requests. By default, fields with empty or 5622 // default values are omitted from API requests. See 5623 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5624 // details. 5625 ForceSendFields []string `json:"-"` 5626 // NullFields is a list of field names (e.g. "ContentHash") to include in API 5627 // requests with the JSON null value. By default, fields with empty values are 5628 // omitted from API requests. See 5629 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5630 NullFields []string `json:"-"` 5631 } 5632 5633 func (s *Resource) MarshalJSON() ([]byte, error) { 5634 type NoMethod Resource 5635 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5636 } 5637 5638 type ResourceDescriptor struct { 5639 Annotations googleapi.RawMessage `json:"annotations,omitempty"` 5640 Content string `json:"content,omitempty"` 5641 Digest map[string]string `json:"digest,omitempty"` 5642 DownloadLocation string `json:"downloadLocation,omitempty"` 5643 MediaType string `json:"mediaType,omitempty"` 5644 Name string `json:"name,omitempty"` 5645 Uri string `json:"uri,omitempty"` 5646 // ForceSendFields is a list of field names (e.g. "Annotations") to 5647 // unconditionally include in API requests. By default, fields with empty or 5648 // default values are omitted from API requests. See 5649 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5650 // details. 5651 ForceSendFields []string `json:"-"` 5652 // NullFields is a list of field names (e.g. "Annotations") to include in API 5653 // requests with the JSON null value. By default, fields with empty values are 5654 // omitted from API requests. See 5655 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5656 NullFields []string `json:"-"` 5657 } 5658 5659 func (s *ResourceDescriptor) MarshalJSON() ([]byte, error) { 5660 type NoMethod ResourceDescriptor 5661 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5662 } 5663 5664 type RunDetails struct { 5665 Builder *ProvenanceBuilder `json:"builder,omitempty"` 5666 Byproducts []*ResourceDescriptor `json:"byproducts,omitempty"` 5667 Metadata *BuildMetadata `json:"metadata,omitempty"` 5668 // ForceSendFields is a list of field names (e.g. "Builder") to unconditionally 5669 // include in API requests. By default, fields with empty or default values are 5670 // omitted from API requests. See 5671 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5672 // details. 5673 ForceSendFields []string `json:"-"` 5674 // NullFields is a list of field names (e.g. "Builder") to include in API 5675 // requests with the JSON null value. By default, fields with empty values are 5676 // omitted from API requests. See 5677 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5678 NullFields []string `json:"-"` 5679 } 5680 5681 func (s *RunDetails) MarshalJSON() ([]byte, error) { 5682 type NoMethod RunDetails 5683 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5684 } 5685 5686 // SBOMReferenceNote: The note representing an SBOM reference. 5687 type SBOMReferenceNote struct { 5688 // Format: The format that SBOM takes. E.g. may be spdx, cyclonedx, etc... 5689 Format string `json:"format,omitempty"` 5690 // Version: The version of the format that the SBOM takes. E.g. if the format 5691 // is spdx, the version may be 2.3. 5692 Version string `json:"version,omitempty"` 5693 // ForceSendFields is a list of field names (e.g. "Format") to unconditionally 5694 // include in API requests. By default, fields with empty or default values are 5695 // omitted from API requests. See 5696 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5697 // details. 5698 ForceSendFields []string `json:"-"` 5699 // NullFields is a list of field names (e.g. "Format") to include in API 5700 // requests with the JSON null value. By default, fields with empty values are 5701 // omitted from API requests. See 5702 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5703 NullFields []string `json:"-"` 5704 } 5705 5706 func (s *SBOMReferenceNote) MarshalJSON() ([]byte, error) { 5707 type NoMethod SBOMReferenceNote 5708 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5709 } 5710 5711 // SBOMReferenceOccurrence: The occurrence representing an SBOM reference as 5712 // applied to a specific resource. The occurrence follows the DSSE 5713 // specification. See 5714 // https://github.com/secure-systems-lab/dsse/blob/master/envelope.md for more 5715 // details. 5716 type SBOMReferenceOccurrence struct { 5717 // Payload: The actual payload that contains the SBOM reference data. 5718 Payload *SbomReferenceIntotoPayload `json:"payload,omitempty"` 5719 // PayloadType: The kind of payload that SbomReferenceIntotoPayload takes. 5720 // Since it's in the intoto format, this value is expected to be 5721 // 'application/vnd.in-toto+json'. 5722 PayloadType string `json:"payloadType,omitempty"` 5723 // Signatures: The signatures over the payload. 5724 Signatures []*EnvelopeSignature `json:"signatures,omitempty"` 5725 // ForceSendFields is a list of field names (e.g. "Payload") to unconditionally 5726 // include in API requests. By default, fields with empty or default values are 5727 // omitted from API requests. See 5728 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5729 // details. 5730 ForceSendFields []string `json:"-"` 5731 // NullFields is a list of field names (e.g. "Payload") to include in API 5732 // requests with the JSON null value. By default, fields with empty values are 5733 // omitted from API requests. See 5734 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5735 NullFields []string `json:"-"` 5736 } 5737 5738 func (s *SBOMReferenceOccurrence) MarshalJSON() ([]byte, error) { 5739 type NoMethod SBOMReferenceOccurrence 5740 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5741 } 5742 5743 // SBOMStatus: The status of an SBOM generation. 5744 type SBOMStatus struct { 5745 // Error: If there was an error generating an SBOM, this will indicate what 5746 // that error was. 5747 Error string `json:"error,omitempty"` 5748 // SbomState: The progress of the SBOM generation. 5749 // 5750 // Possible values: 5751 // "SBOM_STATE_UNSPECIFIED" - Default unknown state. 5752 // "PENDING" - SBOM scanning is pending. 5753 // "COMPLETE" - SBOM scanning has completed. 5754 SbomState string `json:"sbomState,omitempty"` 5755 // ForceSendFields is a list of field names (e.g. "Error") to unconditionally 5756 // include in API requests. By default, fields with empty or default values are 5757 // omitted from API requests. See 5758 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5759 // details. 5760 ForceSendFields []string `json:"-"` 5761 // NullFields is a list of field names (e.g. "Error") to include in API 5762 // requests with the JSON null value. By default, fields with empty values are 5763 // omitted from API requests. See 5764 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5765 NullFields []string `json:"-"` 5766 } 5767 5768 func (s *SBOMStatus) MarshalJSON() ([]byte, error) { 5769 type NoMethod SBOMStatus 5770 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5771 } 5772 5773 // SbomReferenceIntotoPayload: The actual payload that contains the SBOM 5774 // Reference data. The payload follows the intoto statement specification. See 5775 // https://github.com/in-toto/attestation/blob/main/spec/v1.0/statement.md for 5776 // more details. 5777 type SbomReferenceIntotoPayload struct { 5778 // Type: Identifier for the schema of the Statement. 5779 Type string `json:"_type,omitempty"` 5780 // Predicate: Additional parameters of the Predicate. Includes the actual data 5781 // about the SBOM. 5782 Predicate *SbomReferenceIntotoPredicate `json:"predicate,omitempty"` 5783 // PredicateType: URI identifying the type of the Predicate. 5784 PredicateType string `json:"predicateType,omitempty"` 5785 // Subject: Set of software artifacts that the attestation applies to. Each 5786 // element represents a single software artifact. 5787 Subject []*Subject `json:"subject,omitempty"` 5788 // ForceSendFields is a list of field names (e.g. "Type") to unconditionally 5789 // include in API requests. By default, fields with empty or default values are 5790 // omitted from API requests. See 5791 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5792 // details. 5793 ForceSendFields []string `json:"-"` 5794 // NullFields is a list of field names (e.g. "Type") to include in API requests 5795 // with the JSON null value. By default, fields with empty values are omitted 5796 // from API requests. See 5797 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5798 NullFields []string `json:"-"` 5799 } 5800 5801 func (s *SbomReferenceIntotoPayload) MarshalJSON() ([]byte, error) { 5802 type NoMethod SbomReferenceIntotoPayload 5803 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5804 } 5805 5806 // SbomReferenceIntotoPredicate: A predicate which describes the SBOM being 5807 // referenced. 5808 type SbomReferenceIntotoPredicate struct { 5809 // Digest: A map of algorithm to digest of the contents of the SBOM. 5810 Digest map[string]string `json:"digest,omitempty"` 5811 // Location: The location of the SBOM. 5812 Location string `json:"location,omitempty"` 5813 // MimeType: The mime type of the SBOM. 5814 MimeType string `json:"mimeType,omitempty"` 5815 // ReferrerId: The person or system referring this predicate to the consumer. 5816 ReferrerId string `json:"referrerId,omitempty"` 5817 // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally 5818 // include in API requests. By default, fields with empty or default values are 5819 // omitted from API requests. See 5820 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5821 // details. 5822 ForceSendFields []string `json:"-"` 5823 // NullFields is a list of field names (e.g. "Digest") to include in API 5824 // requests with the JSON null value. By default, fields with empty values are 5825 // omitted from API requests. See 5826 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5827 NullFields []string `json:"-"` 5828 } 5829 5830 func (s *SbomReferenceIntotoPredicate) MarshalJSON() ([]byte, error) { 5831 type NoMethod SbomReferenceIntotoPredicate 5832 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5833 } 5834 5835 // SetIamPolicyRequest: Request message for `SetIamPolicy` method. 5836 type SetIamPolicyRequest struct { 5837 // Policy: REQUIRED: The complete policy to be applied to the `resource`. The 5838 // size of the policy is limited to a few 10s of KB. An empty policy is a valid 5839 // policy but certain Google Cloud services (such as Projects) might reject 5840 // them. 5841 Policy *Policy `json:"policy,omitempty"` 5842 // ForceSendFields is a list of field names (e.g. "Policy") to unconditionally 5843 // include in API requests. By default, fields with empty or default values are 5844 // omitted from API requests. See 5845 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5846 // details. 5847 ForceSendFields []string `json:"-"` 5848 // NullFields is a list of field names (e.g. "Policy") to include in API 5849 // requests with the JSON null value. By default, fields with empty values are 5850 // omitted from API requests. See 5851 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5852 NullFields []string `json:"-"` 5853 } 5854 5855 func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { 5856 type NoMethod SetIamPolicyRequest 5857 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5858 } 5859 5860 // Signature: Verifiers (e.g. Kritis implementations) MUST verify signatures 5861 // with respect to the trust anchors defined in policy (e.g. a Kritis policy). 5862 // Typically this means that the verifier has been configured with a map from 5863 // `public_key_id` to public key material (and any required parameters, e.g. 5864 // signing algorithm). In particular, verification implementations MUST NOT 5865 // treat the signature `public_key_id` as anything more than a key lookup hint. 5866 // The `public_key_id` DOES NOT validate or authenticate a public key; it only 5867 // provides a mechanism for quickly selecting a public key ALREADY CONFIGURED 5868 // on the verifier through a trusted channel. Verification implementations MUST 5869 // reject signatures in any of the following circumstances: * The 5870 // `public_key_id` is not recognized by the verifier. * The public key that 5871 // `public_key_id` refers to does not verify the signature with respect to the 5872 // payload. The `signature` contents SHOULD NOT be "attached" (where the 5873 // payload is included with the serialized `signature` bytes). Verifiers MUST 5874 // ignore any "attached" payload and only verify signatures with respect to 5875 // explicitly provided payload (e.g. a `payload` field on the proto message 5876 // that holds this Signature, or the canonical serialization of the proto 5877 // message that holds this signature). 5878 type Signature struct { 5879 // PublicKeyId: The identifier for the public key that verifies this signature. 5880 // * The `public_key_id` is required. * The `public_key_id` SHOULD be an 5881 // RFC3986 conformant URI. * When possible, the `public_key_id` SHOULD be an 5882 // immutable reference, such as a cryptographic digest. Examples of valid 5883 // `public_key_id`s: OpenPGP V4 public key fingerprint: * 5884 // "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA" See 5885 // https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more 5886 // details on this scheme. RFC6920 digest-named SubjectPublicKeyInfo (digest of 5887 // the DER serialization): * 5888 // "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU" * 5889 // "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95a127158 5890 // 9a5" 5891 PublicKeyId string `json:"publicKeyId,omitempty"` 5892 // Signature: The content of the signature, an opaque bytestring. The payload 5893 // that this signature verifies MUST be unambiguously provided with the 5894 // Signature during verification. A wrapper message might provide the payload 5895 // explicitly. Alternatively, a message might have a canonical serialization 5896 // that can always be unambiguously computed to derive the payload. 5897 Signature string `json:"signature,omitempty"` 5898 // ForceSendFields is a list of field names (e.g. "PublicKeyId") to 5899 // unconditionally include in API requests. By default, fields with empty or 5900 // default values are omitted from API requests. See 5901 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5902 // details. 5903 ForceSendFields []string `json:"-"` 5904 // NullFields is a list of field names (e.g. "PublicKeyId") to include in API 5905 // requests with the JSON null value. By default, fields with empty values are 5906 // omitted from API requests. See 5907 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5908 NullFields []string `json:"-"` 5909 } 5910 5911 func (s *Signature) MarshalJSON() ([]byte, error) { 5912 type NoMethod Signature 5913 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5914 } 5915 5916 // SigningKey: This defines the format used to record keys used in the software 5917 // supply chain. An in-toto link is attested using one or more keys defined in 5918 // the in-toto layout. An example of this is: { "key_id": 5919 // "776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...", "key_type": 5920 // "rsa", "public_key_value": "-----BEGIN PUBLIC 5921 // KEY-----\nMIIBojANBgkqhkiG9w0B...", "key_scheme": "rsassa-pss-sha256" } The 5922 // format for in-toto's key definition can be found in section 4.2 of the 5923 // in-toto specification. 5924 type SigningKey struct { 5925 // KeyId: key_id is an identifier for the signing key. 5926 KeyId string `json:"keyId,omitempty"` 5927 // KeyScheme: This field contains the corresponding signature scheme. Eg: 5928 // "rsassa-pss-sha256". 5929 KeyScheme string `json:"keyScheme,omitempty"` 5930 // KeyType: This field identifies the specific signing method. Eg: "rsa", 5931 // "ed25519", and "ecdsa". 5932 KeyType string `json:"keyType,omitempty"` 5933 // PublicKeyValue: This field contains the actual public key. 5934 PublicKeyValue string `json:"publicKeyValue,omitempty"` 5935 // ForceSendFields is a list of field names (e.g. "KeyId") to unconditionally 5936 // include in API requests. By default, fields with empty or default values are 5937 // omitted from API requests. See 5938 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5939 // details. 5940 ForceSendFields []string `json:"-"` 5941 // NullFields is a list of field names (e.g. "KeyId") to include in API 5942 // requests with the JSON null value. By default, fields with empty values are 5943 // omitted from API requests. See 5944 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5945 NullFields []string `json:"-"` 5946 } 5947 5948 func (s *SigningKey) MarshalJSON() ([]byte, error) { 5949 type NoMethod SigningKey 5950 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5951 } 5952 5953 // SlsaProvenanceV1: Keep in sync with schema at 5954 // https://github.com/slsa-framework/slsa/blob/main/docs/provenance/schema/v1/provenance.proto 5955 // Builder renamed to ProvenanceBuilder because of Java conflicts. 5956 type SlsaProvenanceV1 struct { 5957 BuildDefinition *BuildDefinition `json:"buildDefinition,omitempty"` 5958 RunDetails *RunDetails `json:"runDetails,omitempty"` 5959 // ForceSendFields is a list of field names (e.g. "BuildDefinition") to 5960 // unconditionally include in API requests. By default, fields with empty or 5961 // default values are omitted from API requests. See 5962 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 5963 // details. 5964 ForceSendFields []string `json:"-"` 5965 // NullFields is a list of field names (e.g. "BuildDefinition") to include in 5966 // API requests with the JSON null value. By default, fields with empty values 5967 // are omitted from API requests. See 5968 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 5969 NullFields []string `json:"-"` 5970 } 5971 5972 func (s *SlsaProvenanceV1) MarshalJSON() ([]byte, error) { 5973 type NoMethod SlsaProvenanceV1 5974 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 5975 } 5976 5977 // Source: Source describes the location of the source used for the build. 5978 type Source struct { 5979 // AdditionalContexts: If provided, some of the source code used for the build 5980 // may be found in these locations, in the case where the source repository had 5981 // multiple remotes or submodules. This list will not include the context 5982 // specified in the context field. 5983 AdditionalContexts []*SourceContext `json:"additionalContexts,omitempty"` 5984 // ArtifactStorageSourceUri: If provided, the input binary artifacts for the 5985 // build came from this location. 5986 ArtifactStorageSourceUri string `json:"artifactStorageSourceUri,omitempty"` 5987 // Context: If provided, the source code used for the build came from this 5988 // location. 5989 Context *SourceContext `json:"context,omitempty"` 5990 // FileHashes: Hash(es) of the build source, which can be used to verify that 5991 // the original source integrity was maintained in the build. The keys to this 5992 // map are file paths used as build source and the values contain the hash 5993 // values for those files. If the build source came in a single package such as 5994 // a gzipped tarfile (.tar.gz), the FileHash will be for the single path to 5995 // that file. 5996 FileHashes map[string]FileHashes `json:"fileHashes,omitempty"` 5997 // ForceSendFields is a list of field names (e.g. "AdditionalContexts") to 5998 // unconditionally include in API requests. By default, fields with empty or 5999 // default values are omitted from API requests. See 6000 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6001 // details. 6002 ForceSendFields []string `json:"-"` 6003 // NullFields is a list of field names (e.g. "AdditionalContexts") to include 6004 // in API requests with the JSON null value. By default, fields with empty 6005 // values are omitted from API requests. See 6006 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6007 NullFields []string `json:"-"` 6008 } 6009 6010 func (s *Source) MarshalJSON() ([]byte, error) { 6011 type NoMethod Source 6012 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6013 } 6014 6015 // SourceContext: A SourceContext is a reference to a tree of files. A 6016 // SourceContext together with a path point to a unique revision of a single 6017 // file or directory. 6018 type SourceContext struct { 6019 // CloudRepo: A SourceContext referring to a revision in a Google Cloud Source 6020 // Repo. 6021 CloudRepo *CloudRepoSourceContext `json:"cloudRepo,omitempty"` 6022 // Gerrit: A SourceContext referring to a Gerrit project. 6023 Gerrit *GerritSourceContext `json:"gerrit,omitempty"` 6024 // Git: A SourceContext referring to any third party Git repo (e.g., GitHub). 6025 Git *GitSourceContext `json:"git,omitempty"` 6026 // Labels: Labels with user defined metadata. 6027 Labels map[string]string `json:"labels,omitempty"` 6028 // ForceSendFields is a list of field names (e.g. "CloudRepo") to 6029 // unconditionally include in API requests. By default, fields with empty or 6030 // default values are omitted from API requests. See 6031 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6032 // details. 6033 ForceSendFields []string `json:"-"` 6034 // NullFields is a list of field names (e.g. "CloudRepo") to include in API 6035 // requests with the JSON null value. By default, fields with empty values are 6036 // omitted from API requests. See 6037 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6038 NullFields []string `json:"-"` 6039 } 6040 6041 func (s *SourceContext) MarshalJSON() ([]byte, error) { 6042 type NoMethod SourceContext 6043 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6044 } 6045 6046 // Status: The `Status` type defines a logical error model that is suitable for 6047 // different programming environments, including REST APIs and RPC APIs. It is 6048 // used by gRPC (https://github.com/grpc). Each `Status` message contains three 6049 // pieces of data: error code, error message, and error details. You can find 6050 // out more about this error model and how to work with it in the API Design 6051 // Guide (https://cloud.google.com/apis/design/errors). 6052 type Status struct { 6053 // Code: The status code, which should be an enum value of google.rpc.Code. 6054 Code int64 `json:"code,omitempty"` 6055 // Details: A list of messages that carry the error details. There is a common 6056 // set of message types for APIs to use. 6057 Details []googleapi.RawMessage `json:"details,omitempty"` 6058 // Message: A developer-facing error message, which should be in English. Any 6059 // user-facing error message should be localized and sent in the 6060 // google.rpc.Status.details field, or localized by the client. 6061 Message string `json:"message,omitempty"` 6062 // ForceSendFields is a list of field names (e.g. "Code") to unconditionally 6063 // include in API requests. By default, fields with empty or default values are 6064 // omitted from API requests. See 6065 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6066 // details. 6067 ForceSendFields []string `json:"-"` 6068 // NullFields is a list of field names (e.g. "Code") to include in API requests 6069 // with the JSON null value. By default, fields with empty values are omitted 6070 // from API requests. See 6071 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6072 NullFields []string `json:"-"` 6073 } 6074 6075 func (s *Status) MarshalJSON() ([]byte, error) { 6076 type NoMethod Status 6077 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6078 } 6079 6080 // Subject: Set of software artifacts that the attestation applies to. Each 6081 // element represents a single software artifact. 6082 type Subject struct { 6083 // Digest: "": "" Algorithms can be e.g. sha256, sha512 See 6084 // https://github.com/in-toto/attestation/blob/main/spec/field_types.md#DigestSet 6085 Digest map[string]string `json:"digest,omitempty"` 6086 // Name: Identifier to distinguish this artifact from others within the 6087 // subject. 6088 Name string `json:"name,omitempty"` 6089 // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally 6090 // include in API requests. By default, fields with empty or default values are 6091 // omitted from API requests. See 6092 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6093 // details. 6094 ForceSendFields []string `json:"-"` 6095 // NullFields is a list of field names (e.g. "Digest") to include in API 6096 // requests with the JSON null value. By default, fields with empty values are 6097 // omitted from API requests. See 6098 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6099 NullFields []string `json:"-"` 6100 } 6101 6102 func (s *Subject) MarshalJSON() ([]byte, error) { 6103 type NoMethod Subject 6104 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6105 } 6106 6107 // TestIamPermissionsRequest: Request message for `TestIamPermissions` method. 6108 type TestIamPermissionsRequest struct { 6109 // Permissions: The set of permissions to check for the `resource`. Permissions 6110 // with wildcards (such as `*` or `storage.*`) are not allowed. For more 6111 // information see IAM Overview 6112 // (https://cloud.google.com/iam/docs/overview#permissions). 6113 Permissions []string `json:"permissions,omitempty"` 6114 // ForceSendFields is a list of field names (e.g. "Permissions") to 6115 // unconditionally include in API requests. By default, fields with empty or 6116 // default values are omitted from API requests. See 6117 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6118 // details. 6119 ForceSendFields []string `json:"-"` 6120 // NullFields is a list of field names (e.g. "Permissions") to include in API 6121 // requests with the JSON null value. By default, fields with empty values are 6122 // omitted from API requests. See 6123 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6124 NullFields []string `json:"-"` 6125 } 6126 6127 func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { 6128 type NoMethod TestIamPermissionsRequest 6129 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6130 } 6131 6132 // TestIamPermissionsResponse: Response message for `TestIamPermissions` 6133 // method. 6134 type TestIamPermissionsResponse struct { 6135 // Permissions: A subset of `TestPermissionsRequest.permissions` that the 6136 // caller is allowed. 6137 Permissions []string `json:"permissions,omitempty"` 6138 6139 // ServerResponse contains the HTTP response code and headers from the server. 6140 googleapi.ServerResponse `json:"-"` 6141 // ForceSendFields is a list of field names (e.g. "Permissions") to 6142 // unconditionally include in API requests. By default, fields with empty or 6143 // default values are omitted from API requests. See 6144 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6145 // details. 6146 ForceSendFields []string `json:"-"` 6147 // NullFields is a list of field names (e.g. "Permissions") to include in API 6148 // requests with the JSON null value. By default, fields with empty values are 6149 // omitted from API requests. See 6150 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6151 NullFields []string `json:"-"` 6152 } 6153 6154 func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { 6155 type NoMethod TestIamPermissionsResponse 6156 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6157 } 6158 6159 // TimeSpan: Start and end times for a build execution phase. Next ID: 3 6160 type TimeSpan struct { 6161 // EndTime: End of time span. 6162 EndTime string `json:"endTime,omitempty"` 6163 // StartTime: Start of time span. 6164 StartTime string `json:"startTime,omitempty"` 6165 // ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally 6166 // include in API requests. By default, fields with empty or default values are 6167 // omitted from API requests. See 6168 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6169 // details. 6170 ForceSendFields []string `json:"-"` 6171 // NullFields is a list of field names (e.g. "EndTime") to include in API 6172 // requests with the JSON null value. By default, fields with empty values are 6173 // omitted from API requests. See 6174 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6175 NullFields []string `json:"-"` 6176 } 6177 6178 func (s *TimeSpan) MarshalJSON() ([]byte, error) { 6179 type NoMethod TimeSpan 6180 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6181 } 6182 6183 // Version: Version contains structured information about the version of a 6184 // package. 6185 type Version struct { 6186 // Epoch: Used to correct mistakes in the version numbering scheme. 6187 Epoch int64 `json:"epoch,omitempty"` 6188 // Inclusive: Whether this version is specifying part of an inclusive range. 6189 // Grafeas does not have the capability to specify version ranges; instead we 6190 // have fields that specify start version and end versions. At times this is 6191 // insufficient - we also need to specify whether the version is included in 6192 // the range or is excluded from the range. This boolean is expected to be set 6193 // to true when the version is included in a range. 6194 Inclusive bool `json:"inclusive,omitempty"` 6195 // Kind: Required. Distinguishes between sentinel MIN/MAX versions and normal 6196 // versions. 6197 // 6198 // Possible values: 6199 // "VERSION_KIND_UNSPECIFIED" - Unknown. 6200 // "NORMAL" - A standard package version. 6201 // "MINIMUM" - A special version representing negative infinity. 6202 // "MAXIMUM" - A special version representing positive infinity. 6203 Kind string `json:"kind,omitempty"` 6204 // Name: Required only when version kind is NORMAL. The main part of the 6205 // version name. 6206 Name string `json:"name,omitempty"` 6207 // Revision: The iteration of the package build from the above version. 6208 Revision string `json:"revision,omitempty"` 6209 // ForceSendFields is a list of field names (e.g. "Epoch") to unconditionally 6210 // include in API requests. By default, fields with empty or default values are 6211 // omitted from API requests. See 6212 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6213 // details. 6214 ForceSendFields []string `json:"-"` 6215 // NullFields is a list of field names (e.g. "Epoch") to include in API 6216 // requests with the JSON null value. By default, fields with empty values are 6217 // omitted from API requests. See 6218 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6219 NullFields []string `json:"-"` 6220 } 6221 6222 func (s *Version) MarshalJSON() ([]byte, error) { 6223 type NoMethod Version 6224 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6225 } 6226 6227 // VexAssessment: VexAssessment provides all publisher provided Vex information 6228 // that is related to this vulnerability. 6229 type VexAssessment struct { 6230 // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) 6231 // tracking number for the vulnerability. Deprecated: Use vulnerability_id 6232 // instead to denote CVEs. 6233 Cve string `json:"cve,omitempty"` 6234 // Impacts: Contains information about the impact of this vulnerability, this 6235 // will change with time. 6236 Impacts []string `json:"impacts,omitempty"` 6237 // Justification: Justification provides the justification when the state of 6238 // the assessment if NOT_AFFECTED. 6239 Justification *Justification `json:"justification,omitempty"` 6240 // NoteName: The VulnerabilityAssessment note from which this VexAssessment was 6241 // generated. This will be of the form: 6242 // `projects/[PROJECT_ID]/notes/[NOTE_ID]`. 6243 NoteName string `json:"noteName,omitempty"` 6244 // RelatedUris: Holds a list of references associated with this vulnerability 6245 // item and assessment. 6246 RelatedUris []*RelatedUrl `json:"relatedUris,omitempty"` 6247 // Remediations: Specifies details on how to handle (and presumably, fix) a 6248 // vulnerability. 6249 Remediations []*Remediation `json:"remediations,omitempty"` 6250 // State: Provides the state of this Vulnerability assessment. 6251 // 6252 // Possible values: 6253 // "STATE_UNSPECIFIED" - No state is specified. 6254 // "AFFECTED" - This product is known to be affected by this vulnerability. 6255 // "NOT_AFFECTED" - This product is known to be not affected by this 6256 // vulnerability. 6257 // "FIXED" - This product contains a fix for this vulnerability. 6258 // "UNDER_INVESTIGATION" - It is not known yet whether these versions are or 6259 // are not affected by the vulnerability. However, it is still under 6260 // investigation. 6261 State string `json:"state,omitempty"` 6262 // VulnerabilityId: The vulnerability identifier for this Assessment. Will hold 6263 // one of common identifiers e.g. CVE, GHSA etc. 6264 VulnerabilityId string `json:"vulnerabilityId,omitempty"` 6265 // ForceSendFields is a list of field names (e.g. "Cve") to unconditionally 6266 // include in API requests. By default, fields with empty or default values are 6267 // omitted from API requests. See 6268 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6269 // details. 6270 ForceSendFields []string `json:"-"` 6271 // NullFields is a list of field names (e.g. "Cve") to include in API requests 6272 // with the JSON null value. By default, fields with empty values are omitted 6273 // from API requests. See 6274 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6275 NullFields []string `json:"-"` 6276 } 6277 6278 func (s *VexAssessment) MarshalJSON() ([]byte, error) { 6279 type NoMethod VexAssessment 6280 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6281 } 6282 6283 // Volume: Volume describes a Docker container volume which is mounted into 6284 // build steps in order to persist files across build step execution. Next ID: 6285 // 3 6286 type Volume struct { 6287 // Name: Name of the volume to mount. Volume names must be unique per build 6288 // step and must be valid names for Docker volumes. Each named volume must be 6289 // used by at least two build steps. 6290 Name string `json:"name,omitempty"` 6291 // Path: Path at which to mount the volume. Paths must be absolute and cannot 6292 // conflict with other volume paths on the same build step or with certain 6293 // reserved volume paths. 6294 Path string `json:"path,omitempty"` 6295 // ForceSendFields is a list of field names (e.g. "Name") to unconditionally 6296 // include in API requests. By default, fields with empty or default values are 6297 // omitted from API requests. See 6298 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6299 // details. 6300 ForceSendFields []string `json:"-"` 6301 // NullFields is a list of field names (e.g. "Name") to include in API requests 6302 // with the JSON null value. By default, fields with empty values are omitted 6303 // from API requests. See 6304 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6305 NullFields []string `json:"-"` 6306 } 6307 6308 func (s *Volume) MarshalJSON() ([]byte, error) { 6309 type NoMethod Volume 6310 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6311 } 6312 6313 // Vulnerability: Vulnerability provides metadata about a security 6314 // vulnerability in a Note. 6315 type Vulnerability struct { 6316 // CvssScore: The CVSS score for this vulnerability. 6317 CvssScore float64 `json:"cvssScore,omitempty"` 6318 // CvssV2: The full description of the CVSS for version 2. 6319 CvssV2 *CVSS `json:"cvssV2,omitempty"` 6320 // CvssV3: The full description of the CVSS for version 3. 6321 CvssV3 *CVSSv3 `json:"cvssV3,omitempty"` 6322 // CvssVersion: CVSS version used to populate cvss_score and severity. 6323 // 6324 // Possible values: 6325 // "CVSS_VERSION_UNSPECIFIED" 6326 // "CVSS_VERSION_2" 6327 // "CVSS_VERSION_3" 6328 CvssVersion string `json:"cvssVersion,omitempty"` 6329 // Cwe: A list of CWE for this vulnerability. For details, see: 6330 // https://cwe.mitre.org/index.html 6331 Cwe []string `json:"cwe,omitempty"` 6332 // Details: All information about the package to specifically identify this 6333 // vulnerability. One entry per (version range and cpe_uri) the package 6334 // vulnerability has manifested in. 6335 Details []*Detail `json:"details,omitempty"` 6336 // Severity: Note provider assigned impact of the vulnerability. 6337 // 6338 // Possible values: 6339 // "SEVERITY_UNSPECIFIED" - Unknown. 6340 // "MINIMAL" - Minimal severity. 6341 // "LOW" - Low severity. 6342 // "MEDIUM" - Medium severity. 6343 // "HIGH" - High severity. 6344 // "CRITICAL" - Critical severity. 6345 Severity string `json:"severity,omitempty"` 6346 // SourceUpdateTime: The time this information was last changed at the source. 6347 // This is an upstream timestamp from the underlying information source - e.g. 6348 // Ubuntu security tracker. 6349 SourceUpdateTime string `json:"sourceUpdateTime,omitempty"` 6350 // WindowsDetails: Windows details get their own format because the information 6351 // format and model don't match a normal detail. Specifically Windows updates 6352 // are done as patches, thus Windows vulnerabilities really are a missing 6353 // package, rather than a package being at an incorrect version. 6354 WindowsDetails []*WindowsDetail `json:"windowsDetails,omitempty"` 6355 // ForceSendFields is a list of field names (e.g. "CvssScore") to 6356 // unconditionally include in API requests. By default, fields with empty or 6357 // default values are omitted from API requests. See 6358 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6359 // details. 6360 ForceSendFields []string `json:"-"` 6361 // NullFields is a list of field names (e.g. "CvssScore") to include in API 6362 // requests with the JSON null value. By default, fields with empty values are 6363 // omitted from API requests. See 6364 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6365 NullFields []string `json:"-"` 6366 } 6367 6368 func (s *Vulnerability) MarshalJSON() ([]byte, error) { 6369 type NoMethod Vulnerability 6370 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6371 } 6372 6373 func (s *Vulnerability) UnmarshalJSON(data []byte) error { 6374 type NoMethod Vulnerability 6375 var s1 struct { 6376 CvssScore gensupport.JSONFloat64 `json:"cvssScore"` 6377 *NoMethod 6378 } 6379 s1.NoMethod = (*NoMethod)(s) 6380 if err := json.Unmarshal(data, &s1); err != nil { 6381 return err 6382 } 6383 s.CvssScore = float64(s1.CvssScore) 6384 return nil 6385 } 6386 6387 // VulnerabilityAssessmentNote: A single VulnerabilityAssessmentNote represents 6388 // one particular product's vulnerability assessment for one CVE. 6389 type VulnerabilityAssessmentNote struct { 6390 // Assessment: Represents a vulnerability assessment for the product. 6391 Assessment *Assessment `json:"assessment,omitempty"` 6392 // LanguageCode: Identifies the language used by this document, corresponding 6393 // to IETF BCP 47 / RFC 5646. 6394 LanguageCode string `json:"languageCode,omitempty"` 6395 // LongDescription: A detailed description of this Vex. 6396 LongDescription string `json:"longDescription,omitempty"` 6397 // Product: The product affected by this vex. 6398 Product *Product `json:"product,omitempty"` 6399 // Publisher: Publisher details of this Note. 6400 Publisher *Publisher `json:"publisher,omitempty"` 6401 // ShortDescription: A one sentence description of this Vex. 6402 ShortDescription string `json:"shortDescription,omitempty"` 6403 // Title: The title of the note. E.g. `Vex-Debian-11.4` 6404 Title string `json:"title,omitempty"` 6405 // ForceSendFields is a list of field names (e.g. "Assessment") to 6406 // unconditionally include in API requests. By default, fields with empty or 6407 // default values are omitted from API requests. See 6408 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6409 // details. 6410 ForceSendFields []string `json:"-"` 6411 // NullFields is a list of field names (e.g. "Assessment") to include in API 6412 // requests with the JSON null value. By default, fields with empty values are 6413 // omitted from API requests. See 6414 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6415 NullFields []string `json:"-"` 6416 } 6417 6418 func (s *VulnerabilityAssessmentNote) MarshalJSON() ([]byte, error) { 6419 type NoMethod VulnerabilityAssessmentNote 6420 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6421 } 6422 6423 // VulnerabilityLocation: The location of the vulnerability. 6424 type VulnerabilityLocation struct { 6425 // CpeUri: Required. The CPE URI in cpe format 6426 // (https://cpe.mitre.org/specification/) format. Examples include distro or 6427 // storage location for vulnerable jar. 6428 CpeUri string `json:"cpeUri,omitempty"` 6429 // Package: Required. The package being described. 6430 Package string `json:"package,omitempty"` 6431 // Version: Required. The version of the package being described. 6432 Version *Version `json:"version,omitempty"` 6433 // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally 6434 // include in API requests. By default, fields with empty or default values are 6435 // omitted from API requests. See 6436 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6437 // details. 6438 ForceSendFields []string `json:"-"` 6439 // NullFields is a list of field names (e.g. "CpeUri") to include in API 6440 // requests with the JSON null value. By default, fields with empty values are 6441 // omitted from API requests. See 6442 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6443 NullFields []string `json:"-"` 6444 } 6445 6446 func (s *VulnerabilityLocation) MarshalJSON() ([]byte, error) { 6447 type NoMethod VulnerabilityLocation 6448 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6449 } 6450 6451 // VulnerabilityOccurrencesSummary: A summary of how many vulnerability 6452 // occurrences there are per resource and severity type. 6453 type VulnerabilityOccurrencesSummary struct { 6454 // Counts: A listing by resource of the number of fixable and total 6455 // vulnerabilities. 6456 Counts []*FixableTotalByDigest `json:"counts,omitempty"` 6457 6458 // ServerResponse contains the HTTP response code and headers from the server. 6459 googleapi.ServerResponse `json:"-"` 6460 // ForceSendFields is a list of field names (e.g. "Counts") to unconditionally 6461 // include in API requests. By default, fields with empty or default values are 6462 // omitted from API requests. See 6463 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6464 // details. 6465 ForceSendFields []string `json:"-"` 6466 // NullFields is a list of field names (e.g. "Counts") to include in API 6467 // requests with the JSON null value. By default, fields with empty values are 6468 // omitted from API requests. See 6469 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6470 NullFields []string `json:"-"` 6471 } 6472 6473 func (s *VulnerabilityOccurrencesSummary) MarshalJSON() ([]byte, error) { 6474 type NoMethod VulnerabilityOccurrencesSummary 6475 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6476 } 6477 6478 type WindowsDetail struct { 6479 // CpeUri: Required. The CPE URI in cpe format 6480 // (https://cpe.mitre.org/specification/) in which the vulnerability manifests. 6481 // Examples include distro or storage location for vulnerable jar. 6482 CpeUri string `json:"cpeUri,omitempty"` 6483 // Description: The description of the vulnerability. 6484 Description string `json:"description,omitempty"` 6485 // FixingKbs: Required. The names of the KBs which have hotfixes to mitigate 6486 // this vulnerability. Note that there may be multiple hotfixes (and thus 6487 // multiple KBs) that mitigate a given vulnerability. Currently any listed kb's 6488 // presence is considered a fix. 6489 FixingKbs []*KnowledgeBase `json:"fixingKbs,omitempty"` 6490 // Name: Required. The name of the vulnerability. 6491 Name string `json:"name,omitempty"` 6492 // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally 6493 // include in API requests. By default, fields with empty or default values are 6494 // omitted from API requests. See 6495 // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more 6496 // details. 6497 ForceSendFields []string `json:"-"` 6498 // NullFields is a list of field names (e.g. "CpeUri") to include in API 6499 // requests with the JSON null value. By default, fields with empty values are 6500 // omitted from API requests. See 6501 // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. 6502 NullFields []string `json:"-"` 6503 } 6504 6505 func (s *WindowsDetail) MarshalJSON() ([]byte, error) { 6506 type NoMethod WindowsDetail 6507 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) 6508 } 6509 6510 type ProjectsLocationsNotesGetCall struct { 6511 s *Service 6512 name string 6513 urlParams_ gensupport.URLParams 6514 ifNoneMatch_ string 6515 ctx_ context.Context 6516 header_ http.Header 6517 } 6518 6519 // Get: Gets the specified note. 6520 // 6521 // - name: The name of the note in the form of 6522 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 6523 func (r *ProjectsLocationsNotesService) Get(name string) *ProjectsLocationsNotesGetCall { 6524 c := &ProjectsLocationsNotesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6525 c.name = name 6526 return c 6527 } 6528 6529 // Fields allows partial responses to be retrieved. See 6530 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 6531 // details. 6532 func (c *ProjectsLocationsNotesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsNotesGetCall { 6533 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6534 return c 6535 } 6536 6537 // IfNoneMatch sets an optional parameter which makes the operation fail if the 6538 // object's ETag matches the given value. This is useful for getting updates 6539 // only after the object has changed since the last request. 6540 func (c *ProjectsLocationsNotesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsNotesGetCall { 6541 c.ifNoneMatch_ = entityTag 6542 return c 6543 } 6544 6545 // Context sets the context to be used in this call's Do method. 6546 func (c *ProjectsLocationsNotesGetCall) Context(ctx context.Context) *ProjectsLocationsNotesGetCall { 6547 c.ctx_ = ctx 6548 return c 6549 } 6550 6551 // Header returns a http.Header that can be modified by the caller to add 6552 // headers to the request. 6553 func (c *ProjectsLocationsNotesGetCall) Header() http.Header { 6554 if c.header_ == nil { 6555 c.header_ = make(http.Header) 6556 } 6557 return c.header_ 6558 } 6559 6560 func (c *ProjectsLocationsNotesGetCall) doRequest(alt string) (*http.Response, error) { 6561 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 6562 if c.ifNoneMatch_ != "" { 6563 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6564 } 6565 var body io.Reader = nil 6566 c.urlParams_.Set("alt", alt) 6567 c.urlParams_.Set("prettyPrint", "false") 6568 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 6569 urls += "?" + c.urlParams_.Encode() 6570 req, err := http.NewRequest("GET", urls, body) 6571 if err != nil { 6572 return nil, err 6573 } 6574 req.Header = reqHeaders 6575 googleapi.Expand(req.URL, map[string]string{ 6576 "name": c.name, 6577 }) 6578 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6579 } 6580 6581 // Do executes the "containeranalysis.projects.locations.notes.get" call. 6582 // Any non-2xx status code is an error. Response headers are in either 6583 // *Note.ServerResponse.Header or (if a response was returned at all) in 6584 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 6585 // whether the returned error was because http.StatusNotModified was returned. 6586 func (c *ProjectsLocationsNotesGetCall) Do(opts ...googleapi.CallOption) (*Note, error) { 6587 gensupport.SetOptions(c.urlParams_, opts...) 6588 res, err := c.doRequest("json") 6589 if res != nil && res.StatusCode == http.StatusNotModified { 6590 if res.Body != nil { 6591 res.Body.Close() 6592 } 6593 return nil, gensupport.WrapError(&googleapi.Error{ 6594 Code: res.StatusCode, 6595 Header: res.Header, 6596 }) 6597 } 6598 if err != nil { 6599 return nil, err 6600 } 6601 defer googleapi.CloseBody(res) 6602 if err := googleapi.CheckResponse(res); err != nil { 6603 return nil, gensupport.WrapError(err) 6604 } 6605 ret := &Note{ 6606 ServerResponse: googleapi.ServerResponse{ 6607 Header: res.Header, 6608 HTTPStatusCode: res.StatusCode, 6609 }, 6610 } 6611 target := &ret 6612 if err := gensupport.DecodeResponse(target, res); err != nil { 6613 return nil, err 6614 } 6615 return ret, nil 6616 } 6617 6618 type ProjectsLocationsNotesListCall struct { 6619 s *Service 6620 parent string 6621 urlParams_ gensupport.URLParams 6622 ifNoneMatch_ string 6623 ctx_ context.Context 6624 header_ http.Header 6625 } 6626 6627 // List: Lists notes for the specified project. 6628 // 6629 // - parent: The name of the project to list notes for in the form of 6630 // `projects/[PROJECT_ID]`. 6631 func (r *ProjectsLocationsNotesService) List(parent string) *ProjectsLocationsNotesListCall { 6632 c := &ProjectsLocationsNotesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6633 c.parent = parent 6634 return c 6635 } 6636 6637 // Filter sets the optional parameter "filter": The filter expression. 6638 func (c *ProjectsLocationsNotesListCall) Filter(filter string) *ProjectsLocationsNotesListCall { 6639 c.urlParams_.Set("filter", filter) 6640 return c 6641 } 6642 6643 // PageSize sets the optional parameter "pageSize": Number of notes to return 6644 // in the list. Must be positive. Max allowed page size is 1000. If not 6645 // specified, page size defaults to 20. 6646 func (c *ProjectsLocationsNotesListCall) PageSize(pageSize int64) *ProjectsLocationsNotesListCall { 6647 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 6648 return c 6649 } 6650 6651 // PageToken sets the optional parameter "pageToken": Token to provide to skip 6652 // to a particular spot in the list. 6653 func (c *ProjectsLocationsNotesListCall) PageToken(pageToken string) *ProjectsLocationsNotesListCall { 6654 c.urlParams_.Set("pageToken", pageToken) 6655 return c 6656 } 6657 6658 // Fields allows partial responses to be retrieved. See 6659 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 6660 // details. 6661 func (c *ProjectsLocationsNotesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNotesListCall { 6662 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6663 return c 6664 } 6665 6666 // IfNoneMatch sets an optional parameter which makes the operation fail if the 6667 // object's ETag matches the given value. This is useful for getting updates 6668 // only after the object has changed since the last request. 6669 func (c *ProjectsLocationsNotesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNotesListCall { 6670 c.ifNoneMatch_ = entityTag 6671 return c 6672 } 6673 6674 // Context sets the context to be used in this call's Do method. 6675 func (c *ProjectsLocationsNotesListCall) Context(ctx context.Context) *ProjectsLocationsNotesListCall { 6676 c.ctx_ = ctx 6677 return c 6678 } 6679 6680 // Header returns a http.Header that can be modified by the caller to add 6681 // headers to the request. 6682 func (c *ProjectsLocationsNotesListCall) Header() http.Header { 6683 if c.header_ == nil { 6684 c.header_ = make(http.Header) 6685 } 6686 return c.header_ 6687 } 6688 6689 func (c *ProjectsLocationsNotesListCall) doRequest(alt string) (*http.Response, error) { 6690 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 6691 if c.ifNoneMatch_ != "" { 6692 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6693 } 6694 var body io.Reader = nil 6695 c.urlParams_.Set("alt", alt) 6696 c.urlParams_.Set("prettyPrint", "false") 6697 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") 6698 urls += "?" + c.urlParams_.Encode() 6699 req, err := http.NewRequest("GET", urls, body) 6700 if err != nil { 6701 return nil, err 6702 } 6703 req.Header = reqHeaders 6704 googleapi.Expand(req.URL, map[string]string{ 6705 "parent": c.parent, 6706 }) 6707 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6708 } 6709 6710 // Do executes the "containeranalysis.projects.locations.notes.list" call. 6711 // Any non-2xx status code is an error. Response headers are in either 6712 // *ListNotesResponse.ServerResponse.Header or (if a response was returned at 6713 // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 6714 // check whether the returned error was because http.StatusNotModified was 6715 // returned. 6716 func (c *ProjectsLocationsNotesListCall) Do(opts ...googleapi.CallOption) (*ListNotesResponse, error) { 6717 gensupport.SetOptions(c.urlParams_, opts...) 6718 res, err := c.doRequest("json") 6719 if res != nil && res.StatusCode == http.StatusNotModified { 6720 if res.Body != nil { 6721 res.Body.Close() 6722 } 6723 return nil, gensupport.WrapError(&googleapi.Error{ 6724 Code: res.StatusCode, 6725 Header: res.Header, 6726 }) 6727 } 6728 if err != nil { 6729 return nil, err 6730 } 6731 defer googleapi.CloseBody(res) 6732 if err := googleapi.CheckResponse(res); err != nil { 6733 return nil, gensupport.WrapError(err) 6734 } 6735 ret := &ListNotesResponse{ 6736 ServerResponse: googleapi.ServerResponse{ 6737 Header: res.Header, 6738 HTTPStatusCode: res.StatusCode, 6739 }, 6740 } 6741 target := &ret 6742 if err := gensupport.DecodeResponse(target, res); err != nil { 6743 return nil, err 6744 } 6745 return ret, nil 6746 } 6747 6748 // Pages invokes f for each page of results. 6749 // A non-nil error returned from f will halt the iteration. 6750 // The provided context supersedes any context provided to the Context method. 6751 func (c *ProjectsLocationsNotesListCall) Pages(ctx context.Context, f func(*ListNotesResponse) error) error { 6752 c.ctx_ = ctx 6753 defer c.PageToken(c.urlParams_.Get("pageToken")) 6754 for { 6755 x, err := c.Do() 6756 if err != nil { 6757 return err 6758 } 6759 if err := f(x); err != nil { 6760 return err 6761 } 6762 if x.NextPageToken == "" { 6763 return nil 6764 } 6765 c.PageToken(x.NextPageToken) 6766 } 6767 } 6768 6769 type ProjectsLocationsNotesOccurrencesListCall struct { 6770 s *Service 6771 name string 6772 urlParams_ gensupport.URLParams 6773 ifNoneMatch_ string 6774 ctx_ context.Context 6775 header_ http.Header 6776 } 6777 6778 // List: Lists occurrences referencing the specified note. Provider projects 6779 // can use this method to get all occurrences across consumer projects 6780 // referencing the specified note. 6781 // 6782 // - name: The name of the note to list occurrences for in the form of 6783 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 6784 func (r *ProjectsLocationsNotesOccurrencesService) List(name string) *ProjectsLocationsNotesOccurrencesListCall { 6785 c := &ProjectsLocationsNotesOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6786 c.name = name 6787 return c 6788 } 6789 6790 // Filter sets the optional parameter "filter": The filter expression. 6791 func (c *ProjectsLocationsNotesOccurrencesListCall) Filter(filter string) *ProjectsLocationsNotesOccurrencesListCall { 6792 c.urlParams_.Set("filter", filter) 6793 return c 6794 } 6795 6796 // PageSize sets the optional parameter "pageSize": Number of occurrences to 6797 // return in the list. 6798 func (c *ProjectsLocationsNotesOccurrencesListCall) PageSize(pageSize int64) *ProjectsLocationsNotesOccurrencesListCall { 6799 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 6800 return c 6801 } 6802 6803 // PageToken sets the optional parameter "pageToken": Token to provide to skip 6804 // to a particular spot in the list. 6805 func (c *ProjectsLocationsNotesOccurrencesListCall) PageToken(pageToken string) *ProjectsLocationsNotesOccurrencesListCall { 6806 c.urlParams_.Set("pageToken", pageToken) 6807 return c 6808 } 6809 6810 // Fields allows partial responses to be retrieved. See 6811 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 6812 // details. 6813 func (c *ProjectsLocationsNotesOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNotesOccurrencesListCall { 6814 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6815 return c 6816 } 6817 6818 // IfNoneMatch sets an optional parameter which makes the operation fail if the 6819 // object's ETag matches the given value. This is useful for getting updates 6820 // only after the object has changed since the last request. 6821 func (c *ProjectsLocationsNotesOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNotesOccurrencesListCall { 6822 c.ifNoneMatch_ = entityTag 6823 return c 6824 } 6825 6826 // Context sets the context to be used in this call's Do method. 6827 func (c *ProjectsLocationsNotesOccurrencesListCall) Context(ctx context.Context) *ProjectsLocationsNotesOccurrencesListCall { 6828 c.ctx_ = ctx 6829 return c 6830 } 6831 6832 // Header returns a http.Header that can be modified by the caller to add 6833 // headers to the request. 6834 func (c *ProjectsLocationsNotesOccurrencesListCall) Header() http.Header { 6835 if c.header_ == nil { 6836 c.header_ = make(http.Header) 6837 } 6838 return c.header_ 6839 } 6840 6841 func (c *ProjectsLocationsNotesOccurrencesListCall) doRequest(alt string) (*http.Response, error) { 6842 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 6843 if c.ifNoneMatch_ != "" { 6844 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6845 } 6846 var body io.Reader = nil 6847 c.urlParams_.Set("alt", alt) 6848 c.urlParams_.Set("prettyPrint", "false") 6849 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/occurrences") 6850 urls += "?" + c.urlParams_.Encode() 6851 req, err := http.NewRequest("GET", urls, body) 6852 if err != nil { 6853 return nil, err 6854 } 6855 req.Header = reqHeaders 6856 googleapi.Expand(req.URL, map[string]string{ 6857 "name": c.name, 6858 }) 6859 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6860 } 6861 6862 // Do executes the "containeranalysis.projects.locations.notes.occurrences.list" call. 6863 // Any non-2xx status code is an error. Response headers are in either 6864 // *ListNoteOccurrencesResponse.ServerResponse.Header or (if a response was 6865 // returned at all) in error.(*googleapi.Error).Header. Use 6866 // googleapi.IsNotModified to check whether the returned error was because 6867 // http.StatusNotModified was returned. 6868 func (c *ProjectsLocationsNotesOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListNoteOccurrencesResponse, error) { 6869 gensupport.SetOptions(c.urlParams_, opts...) 6870 res, err := c.doRequest("json") 6871 if res != nil && res.StatusCode == http.StatusNotModified { 6872 if res.Body != nil { 6873 res.Body.Close() 6874 } 6875 return nil, gensupport.WrapError(&googleapi.Error{ 6876 Code: res.StatusCode, 6877 Header: res.Header, 6878 }) 6879 } 6880 if err != nil { 6881 return nil, err 6882 } 6883 defer googleapi.CloseBody(res) 6884 if err := googleapi.CheckResponse(res); err != nil { 6885 return nil, gensupport.WrapError(err) 6886 } 6887 ret := &ListNoteOccurrencesResponse{ 6888 ServerResponse: googleapi.ServerResponse{ 6889 Header: res.Header, 6890 HTTPStatusCode: res.StatusCode, 6891 }, 6892 } 6893 target := &ret 6894 if err := gensupport.DecodeResponse(target, res); err != nil { 6895 return nil, err 6896 } 6897 return ret, nil 6898 } 6899 6900 // Pages invokes f for each page of results. 6901 // A non-nil error returned from f will halt the iteration. 6902 // The provided context supersedes any context provided to the Context method. 6903 func (c *ProjectsLocationsNotesOccurrencesListCall) Pages(ctx context.Context, f func(*ListNoteOccurrencesResponse) error) error { 6904 c.ctx_ = ctx 6905 defer c.PageToken(c.urlParams_.Get("pageToken")) 6906 for { 6907 x, err := c.Do() 6908 if err != nil { 6909 return err 6910 } 6911 if err := f(x); err != nil { 6912 return err 6913 } 6914 if x.NextPageToken == "" { 6915 return nil 6916 } 6917 c.PageToken(x.NextPageToken) 6918 } 6919 } 6920 6921 type ProjectsLocationsOccurrencesGetCall struct { 6922 s *Service 6923 name string 6924 urlParams_ gensupport.URLParams 6925 ifNoneMatch_ string 6926 ctx_ context.Context 6927 header_ http.Header 6928 } 6929 6930 // Get: Gets the specified occurrence. 6931 // 6932 // - name: The name of the occurrence in the form of 6933 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 6934 func (r *ProjectsLocationsOccurrencesService) Get(name string) *ProjectsLocationsOccurrencesGetCall { 6935 c := &ProjectsLocationsOccurrencesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 6936 c.name = name 6937 return c 6938 } 6939 6940 // Fields allows partial responses to be retrieved. See 6941 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 6942 // details. 6943 func (c *ProjectsLocationsOccurrencesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesGetCall { 6944 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 6945 return c 6946 } 6947 6948 // IfNoneMatch sets an optional parameter which makes the operation fail if the 6949 // object's ETag matches the given value. This is useful for getting updates 6950 // only after the object has changed since the last request. 6951 func (c *ProjectsLocationsOccurrencesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesGetCall { 6952 c.ifNoneMatch_ = entityTag 6953 return c 6954 } 6955 6956 // Context sets the context to be used in this call's Do method. 6957 func (c *ProjectsLocationsOccurrencesGetCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesGetCall { 6958 c.ctx_ = ctx 6959 return c 6960 } 6961 6962 // Header returns a http.Header that can be modified by the caller to add 6963 // headers to the request. 6964 func (c *ProjectsLocationsOccurrencesGetCall) Header() http.Header { 6965 if c.header_ == nil { 6966 c.header_ = make(http.Header) 6967 } 6968 return c.header_ 6969 } 6970 6971 func (c *ProjectsLocationsOccurrencesGetCall) doRequest(alt string) (*http.Response, error) { 6972 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 6973 if c.ifNoneMatch_ != "" { 6974 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 6975 } 6976 var body io.Reader = nil 6977 c.urlParams_.Set("alt", alt) 6978 c.urlParams_.Set("prettyPrint", "false") 6979 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 6980 urls += "?" + c.urlParams_.Encode() 6981 req, err := http.NewRequest("GET", urls, body) 6982 if err != nil { 6983 return nil, err 6984 } 6985 req.Header = reqHeaders 6986 googleapi.Expand(req.URL, map[string]string{ 6987 "name": c.name, 6988 }) 6989 return gensupport.SendRequest(c.ctx_, c.s.client, req) 6990 } 6991 6992 // Do executes the "containeranalysis.projects.locations.occurrences.get" call. 6993 // Any non-2xx status code is an error. Response headers are in either 6994 // *Occurrence.ServerResponse.Header or (if a response was returned at all) in 6995 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 6996 // whether the returned error was because http.StatusNotModified was returned. 6997 func (c *ProjectsLocationsOccurrencesGetCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 6998 gensupport.SetOptions(c.urlParams_, opts...) 6999 res, err := c.doRequest("json") 7000 if res != nil && res.StatusCode == http.StatusNotModified { 7001 if res.Body != nil { 7002 res.Body.Close() 7003 } 7004 return nil, gensupport.WrapError(&googleapi.Error{ 7005 Code: res.StatusCode, 7006 Header: res.Header, 7007 }) 7008 } 7009 if err != nil { 7010 return nil, err 7011 } 7012 defer googleapi.CloseBody(res) 7013 if err := googleapi.CheckResponse(res); err != nil { 7014 return nil, gensupport.WrapError(err) 7015 } 7016 ret := &Occurrence{ 7017 ServerResponse: googleapi.ServerResponse{ 7018 Header: res.Header, 7019 HTTPStatusCode: res.StatusCode, 7020 }, 7021 } 7022 target := &ret 7023 if err := gensupport.DecodeResponse(target, res); err != nil { 7024 return nil, err 7025 } 7026 return ret, nil 7027 } 7028 7029 type ProjectsLocationsOccurrencesGetNotesCall struct { 7030 s *Service 7031 name string 7032 urlParams_ gensupport.URLParams 7033 ifNoneMatch_ string 7034 ctx_ context.Context 7035 header_ http.Header 7036 } 7037 7038 // GetNotes: Gets the note attached to the specified occurrence. Consumer 7039 // projects can use this method to get a note that belongs to a provider 7040 // project. 7041 // 7042 // - name: The name of the occurrence in the form of 7043 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 7044 func (r *ProjectsLocationsOccurrencesService) GetNotes(name string) *ProjectsLocationsOccurrencesGetNotesCall { 7045 c := &ProjectsLocationsOccurrencesGetNotesCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7046 c.name = name 7047 return c 7048 } 7049 7050 // Fields allows partial responses to be retrieved. See 7051 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7052 // details. 7053 func (c *ProjectsLocationsOccurrencesGetNotesCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesGetNotesCall { 7054 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7055 return c 7056 } 7057 7058 // IfNoneMatch sets an optional parameter which makes the operation fail if the 7059 // object's ETag matches the given value. This is useful for getting updates 7060 // only after the object has changed since the last request. 7061 func (c *ProjectsLocationsOccurrencesGetNotesCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesGetNotesCall { 7062 c.ifNoneMatch_ = entityTag 7063 return c 7064 } 7065 7066 // Context sets the context to be used in this call's Do method. 7067 func (c *ProjectsLocationsOccurrencesGetNotesCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesGetNotesCall { 7068 c.ctx_ = ctx 7069 return c 7070 } 7071 7072 // Header returns a http.Header that can be modified by the caller to add 7073 // headers to the request. 7074 func (c *ProjectsLocationsOccurrencesGetNotesCall) Header() http.Header { 7075 if c.header_ == nil { 7076 c.header_ = make(http.Header) 7077 } 7078 return c.header_ 7079 } 7080 7081 func (c *ProjectsLocationsOccurrencesGetNotesCall) doRequest(alt string) (*http.Response, error) { 7082 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 7083 if c.ifNoneMatch_ != "" { 7084 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7085 } 7086 var body io.Reader = nil 7087 c.urlParams_.Set("alt", alt) 7088 c.urlParams_.Set("prettyPrint", "false") 7089 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/notes") 7090 urls += "?" + c.urlParams_.Encode() 7091 req, err := http.NewRequest("GET", urls, body) 7092 if err != nil { 7093 return nil, err 7094 } 7095 req.Header = reqHeaders 7096 googleapi.Expand(req.URL, map[string]string{ 7097 "name": c.name, 7098 }) 7099 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7100 } 7101 7102 // Do executes the "containeranalysis.projects.locations.occurrences.getNotes" call. 7103 // Any non-2xx status code is an error. Response headers are in either 7104 // *Note.ServerResponse.Header or (if a response was returned at all) in 7105 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 7106 // whether the returned error was because http.StatusNotModified was returned. 7107 func (c *ProjectsLocationsOccurrencesGetNotesCall) Do(opts ...googleapi.CallOption) (*Note, error) { 7108 gensupport.SetOptions(c.urlParams_, opts...) 7109 res, err := c.doRequest("json") 7110 if res != nil && res.StatusCode == http.StatusNotModified { 7111 if res.Body != nil { 7112 res.Body.Close() 7113 } 7114 return nil, gensupport.WrapError(&googleapi.Error{ 7115 Code: res.StatusCode, 7116 Header: res.Header, 7117 }) 7118 } 7119 if err != nil { 7120 return nil, err 7121 } 7122 defer googleapi.CloseBody(res) 7123 if err := googleapi.CheckResponse(res); err != nil { 7124 return nil, gensupport.WrapError(err) 7125 } 7126 ret := &Note{ 7127 ServerResponse: googleapi.ServerResponse{ 7128 Header: res.Header, 7129 HTTPStatusCode: res.StatusCode, 7130 }, 7131 } 7132 target := &ret 7133 if err := gensupport.DecodeResponse(target, res); err != nil { 7134 return nil, err 7135 } 7136 return ret, nil 7137 } 7138 7139 type ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall struct { 7140 s *Service 7141 parent string 7142 urlParams_ gensupport.URLParams 7143 ifNoneMatch_ string 7144 ctx_ context.Context 7145 header_ http.Header 7146 } 7147 7148 // GetVulnerabilitySummary: Gets a summary of the number and severity of 7149 // occurrences. 7150 // 7151 // - parent: The name of the project to get a vulnerability summary for in the 7152 // form of `projects/[PROJECT_ID]`. 7153 func (r *ProjectsLocationsOccurrencesService) GetVulnerabilitySummary(parent string) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { 7154 c := &ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7155 c.parent = parent 7156 return c 7157 } 7158 7159 // Filter sets the optional parameter "filter": The filter expression. 7160 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Filter(filter string) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { 7161 c.urlParams_.Set("filter", filter) 7162 return c 7163 } 7164 7165 // Fields allows partial responses to be retrieved. See 7166 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7167 // details. 7168 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { 7169 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7170 return c 7171 } 7172 7173 // IfNoneMatch sets an optional parameter which makes the operation fail if the 7174 // object's ETag matches the given value. This is useful for getting updates 7175 // only after the object has changed since the last request. 7176 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { 7177 c.ifNoneMatch_ = entityTag 7178 return c 7179 } 7180 7181 // Context sets the context to be used in this call's Do method. 7182 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { 7183 c.ctx_ = ctx 7184 return c 7185 } 7186 7187 // Header returns a http.Header that can be modified by the caller to add 7188 // headers to the request. 7189 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Header() http.Header { 7190 if c.header_ == nil { 7191 c.header_ = make(http.Header) 7192 } 7193 return c.header_ 7194 } 7195 7196 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) doRequest(alt string) (*http.Response, error) { 7197 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 7198 if c.ifNoneMatch_ != "" { 7199 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7200 } 7201 var body io.Reader = nil 7202 c.urlParams_.Set("alt", alt) 7203 c.urlParams_.Set("prettyPrint", "false") 7204 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:vulnerabilitySummary") 7205 urls += "?" + c.urlParams_.Encode() 7206 req, err := http.NewRequest("GET", urls, body) 7207 if err != nil { 7208 return nil, err 7209 } 7210 req.Header = reqHeaders 7211 googleapi.Expand(req.URL, map[string]string{ 7212 "parent": c.parent, 7213 }) 7214 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7215 } 7216 7217 // Do executes the "containeranalysis.projects.locations.occurrences.getVulnerabilitySummary" call. 7218 // Any non-2xx status code is an error. Response headers are in either 7219 // *VulnerabilityOccurrencesSummary.ServerResponse.Header or (if a response was 7220 // returned at all) in error.(*googleapi.Error).Header. Use 7221 // googleapi.IsNotModified to check whether the returned error was because 7222 // http.StatusNotModified was returned. 7223 func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Do(opts ...googleapi.CallOption) (*VulnerabilityOccurrencesSummary, error) { 7224 gensupport.SetOptions(c.urlParams_, opts...) 7225 res, err := c.doRequest("json") 7226 if res != nil && res.StatusCode == http.StatusNotModified { 7227 if res.Body != nil { 7228 res.Body.Close() 7229 } 7230 return nil, gensupport.WrapError(&googleapi.Error{ 7231 Code: res.StatusCode, 7232 Header: res.Header, 7233 }) 7234 } 7235 if err != nil { 7236 return nil, err 7237 } 7238 defer googleapi.CloseBody(res) 7239 if err := googleapi.CheckResponse(res); err != nil { 7240 return nil, gensupport.WrapError(err) 7241 } 7242 ret := &VulnerabilityOccurrencesSummary{ 7243 ServerResponse: googleapi.ServerResponse{ 7244 Header: res.Header, 7245 HTTPStatusCode: res.StatusCode, 7246 }, 7247 } 7248 target := &ret 7249 if err := gensupport.DecodeResponse(target, res); err != nil { 7250 return nil, err 7251 } 7252 return ret, nil 7253 } 7254 7255 type ProjectsLocationsOccurrencesListCall struct { 7256 s *Service 7257 parent string 7258 urlParams_ gensupport.URLParams 7259 ifNoneMatch_ string 7260 ctx_ context.Context 7261 header_ http.Header 7262 } 7263 7264 // List: Lists occurrences for the specified project. 7265 // 7266 // - parent: The name of the project to list occurrences for in the form of 7267 // `projects/[PROJECT_ID]`. 7268 func (r *ProjectsLocationsOccurrencesService) List(parent string) *ProjectsLocationsOccurrencesListCall { 7269 c := &ProjectsLocationsOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7270 c.parent = parent 7271 return c 7272 } 7273 7274 // Filter sets the optional parameter "filter": The filter expression. 7275 func (c *ProjectsLocationsOccurrencesListCall) Filter(filter string) *ProjectsLocationsOccurrencesListCall { 7276 c.urlParams_.Set("filter", filter) 7277 return c 7278 } 7279 7280 // PageSize sets the optional parameter "pageSize": Number of occurrences to 7281 // return in the list. Must be positive. Max allowed page size is 1000. If not 7282 // specified, page size defaults to 20. 7283 func (c *ProjectsLocationsOccurrencesListCall) PageSize(pageSize int64) *ProjectsLocationsOccurrencesListCall { 7284 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 7285 return c 7286 } 7287 7288 // PageToken sets the optional parameter "pageToken": Token to provide to skip 7289 // to a particular spot in the list. 7290 func (c *ProjectsLocationsOccurrencesListCall) PageToken(pageToken string) *ProjectsLocationsOccurrencesListCall { 7291 c.urlParams_.Set("pageToken", pageToken) 7292 return c 7293 } 7294 7295 // Fields allows partial responses to be retrieved. See 7296 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7297 // details. 7298 func (c *ProjectsLocationsOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesListCall { 7299 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7300 return c 7301 } 7302 7303 // IfNoneMatch sets an optional parameter which makes the operation fail if the 7304 // object's ETag matches the given value. This is useful for getting updates 7305 // only after the object has changed since the last request. 7306 func (c *ProjectsLocationsOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesListCall { 7307 c.ifNoneMatch_ = entityTag 7308 return c 7309 } 7310 7311 // Context sets the context to be used in this call's Do method. 7312 func (c *ProjectsLocationsOccurrencesListCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesListCall { 7313 c.ctx_ = ctx 7314 return c 7315 } 7316 7317 // Header returns a http.Header that can be modified by the caller to add 7318 // headers to the request. 7319 func (c *ProjectsLocationsOccurrencesListCall) Header() http.Header { 7320 if c.header_ == nil { 7321 c.header_ = make(http.Header) 7322 } 7323 return c.header_ 7324 } 7325 7326 func (c *ProjectsLocationsOccurrencesListCall) doRequest(alt string) (*http.Response, error) { 7327 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 7328 if c.ifNoneMatch_ != "" { 7329 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7330 } 7331 var body io.Reader = nil 7332 c.urlParams_.Set("alt", alt) 7333 c.urlParams_.Set("prettyPrint", "false") 7334 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") 7335 urls += "?" + c.urlParams_.Encode() 7336 req, err := http.NewRequest("GET", urls, body) 7337 if err != nil { 7338 return nil, err 7339 } 7340 req.Header = reqHeaders 7341 googleapi.Expand(req.URL, map[string]string{ 7342 "parent": c.parent, 7343 }) 7344 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7345 } 7346 7347 // Do executes the "containeranalysis.projects.locations.occurrences.list" call. 7348 // Any non-2xx status code is an error. Response headers are in either 7349 // *ListOccurrencesResponse.ServerResponse.Header or (if a response was 7350 // returned at all) in error.(*googleapi.Error).Header. Use 7351 // googleapi.IsNotModified to check whether the returned error was because 7352 // http.StatusNotModified was returned. 7353 func (c *ProjectsLocationsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOccurrencesResponse, error) { 7354 gensupport.SetOptions(c.urlParams_, opts...) 7355 res, err := c.doRequest("json") 7356 if res != nil && res.StatusCode == http.StatusNotModified { 7357 if res.Body != nil { 7358 res.Body.Close() 7359 } 7360 return nil, gensupport.WrapError(&googleapi.Error{ 7361 Code: res.StatusCode, 7362 Header: res.Header, 7363 }) 7364 } 7365 if err != nil { 7366 return nil, err 7367 } 7368 defer googleapi.CloseBody(res) 7369 if err := googleapi.CheckResponse(res); err != nil { 7370 return nil, gensupport.WrapError(err) 7371 } 7372 ret := &ListOccurrencesResponse{ 7373 ServerResponse: googleapi.ServerResponse{ 7374 Header: res.Header, 7375 HTTPStatusCode: res.StatusCode, 7376 }, 7377 } 7378 target := &ret 7379 if err := gensupport.DecodeResponse(target, res); err != nil { 7380 return nil, err 7381 } 7382 return ret, nil 7383 } 7384 7385 // Pages invokes f for each page of results. 7386 // A non-nil error returned from f will halt the iteration. 7387 // The provided context supersedes any context provided to the Context method. 7388 func (c *ProjectsLocationsOccurrencesListCall) Pages(ctx context.Context, f func(*ListOccurrencesResponse) error) error { 7389 c.ctx_ = ctx 7390 defer c.PageToken(c.urlParams_.Get("pageToken")) 7391 for { 7392 x, err := c.Do() 7393 if err != nil { 7394 return err 7395 } 7396 if err := f(x); err != nil { 7397 return err 7398 } 7399 if x.NextPageToken == "" { 7400 return nil 7401 } 7402 c.PageToken(x.NextPageToken) 7403 } 7404 } 7405 7406 type ProjectsLocationsResourcesExportSBOMCall struct { 7407 s *Service 7408 name string 7409 exportsbomrequest *ExportSBOMRequest 7410 urlParams_ gensupport.URLParams 7411 ctx_ context.Context 7412 header_ http.Header 7413 } 7414 7415 // ExportSBOM: Generates an SBOM and other dependency information for the given 7416 // resource. 7417 // 7418 // - name: The name of the resource in the form of 7419 // `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. 7420 func (r *ProjectsLocationsResourcesService) ExportSBOM(name string, exportsbomrequest *ExportSBOMRequest) *ProjectsLocationsResourcesExportSBOMCall { 7421 c := &ProjectsLocationsResourcesExportSBOMCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7422 c.name = name 7423 c.exportsbomrequest = exportsbomrequest 7424 return c 7425 } 7426 7427 // Fields allows partial responses to be retrieved. See 7428 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7429 // details. 7430 func (c *ProjectsLocationsResourcesExportSBOMCall) Fields(s ...googleapi.Field) *ProjectsLocationsResourcesExportSBOMCall { 7431 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7432 return c 7433 } 7434 7435 // Context sets the context to be used in this call's Do method. 7436 func (c *ProjectsLocationsResourcesExportSBOMCall) Context(ctx context.Context) *ProjectsLocationsResourcesExportSBOMCall { 7437 c.ctx_ = ctx 7438 return c 7439 } 7440 7441 // Header returns a http.Header that can be modified by the caller to add 7442 // headers to the request. 7443 func (c *ProjectsLocationsResourcesExportSBOMCall) Header() http.Header { 7444 if c.header_ == nil { 7445 c.header_ = make(http.Header) 7446 } 7447 return c.header_ 7448 } 7449 7450 func (c *ProjectsLocationsResourcesExportSBOMCall) doRequest(alt string) (*http.Response, error) { 7451 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 7452 var body io.Reader = nil 7453 body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportsbomrequest) 7454 if err != nil { 7455 return nil, err 7456 } 7457 c.urlParams_.Set("alt", alt) 7458 c.urlParams_.Set("prettyPrint", "false") 7459 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:exportSBOM") 7460 urls += "?" + c.urlParams_.Encode() 7461 req, err := http.NewRequest("POST", urls, body) 7462 if err != nil { 7463 return nil, err 7464 } 7465 req.Header = reqHeaders 7466 googleapi.Expand(req.URL, map[string]string{ 7467 "name": c.name, 7468 }) 7469 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7470 } 7471 7472 // Do executes the "containeranalysis.projects.locations.resources.exportSBOM" call. 7473 // Any non-2xx status code is an error. Response headers are in either 7474 // *ExportSBOMResponse.ServerResponse.Header or (if a response was returned at 7475 // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 7476 // check whether the returned error was because http.StatusNotModified was 7477 // returned. 7478 func (c *ProjectsLocationsResourcesExportSBOMCall) Do(opts ...googleapi.CallOption) (*ExportSBOMResponse, error) { 7479 gensupport.SetOptions(c.urlParams_, opts...) 7480 res, err := c.doRequest("json") 7481 if res != nil && res.StatusCode == http.StatusNotModified { 7482 if res.Body != nil { 7483 res.Body.Close() 7484 } 7485 return nil, gensupport.WrapError(&googleapi.Error{ 7486 Code: res.StatusCode, 7487 Header: res.Header, 7488 }) 7489 } 7490 if err != nil { 7491 return nil, err 7492 } 7493 defer googleapi.CloseBody(res) 7494 if err := googleapi.CheckResponse(res); err != nil { 7495 return nil, gensupport.WrapError(err) 7496 } 7497 ret := &ExportSBOMResponse{ 7498 ServerResponse: googleapi.ServerResponse{ 7499 Header: res.Header, 7500 HTTPStatusCode: res.StatusCode, 7501 }, 7502 } 7503 target := &ret 7504 if err := gensupport.DecodeResponse(target, res); err != nil { 7505 return nil, err 7506 } 7507 return ret, nil 7508 } 7509 7510 type ProjectsLocationsResourcesGeneratePackagesSummaryCall struct { 7511 s *Service 7512 name string 7513 generatepackagessummaryrequest *GeneratePackagesSummaryRequest 7514 urlParams_ gensupport.URLParams 7515 ctx_ context.Context 7516 header_ http.Header 7517 } 7518 7519 // GeneratePackagesSummary: Gets a summary of the packages within a given 7520 // resource. 7521 // 7522 // - name: The name of the resource to get a packages summary for in the form 7523 // of `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. 7524 func (r *ProjectsLocationsResourcesService) GeneratePackagesSummary(name string, generatepackagessummaryrequest *GeneratePackagesSummaryRequest) *ProjectsLocationsResourcesGeneratePackagesSummaryCall { 7525 c := &ProjectsLocationsResourcesGeneratePackagesSummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7526 c.name = name 7527 c.generatepackagessummaryrequest = generatepackagessummaryrequest 7528 return c 7529 } 7530 7531 // Fields allows partial responses to be retrieved. See 7532 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7533 // details. 7534 func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Fields(s ...googleapi.Field) *ProjectsLocationsResourcesGeneratePackagesSummaryCall { 7535 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7536 return c 7537 } 7538 7539 // Context sets the context to be used in this call's Do method. 7540 func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Context(ctx context.Context) *ProjectsLocationsResourcesGeneratePackagesSummaryCall { 7541 c.ctx_ = ctx 7542 return c 7543 } 7544 7545 // Header returns a http.Header that can be modified by the caller to add 7546 // headers to the request. 7547 func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Header() http.Header { 7548 if c.header_ == nil { 7549 c.header_ = make(http.Header) 7550 } 7551 return c.header_ 7552 } 7553 7554 func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) doRequest(alt string) (*http.Response, error) { 7555 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 7556 var body io.Reader = nil 7557 body, err := googleapi.WithoutDataWrapper.JSONReader(c.generatepackagessummaryrequest) 7558 if err != nil { 7559 return nil, err 7560 } 7561 c.urlParams_.Set("alt", alt) 7562 c.urlParams_.Set("prettyPrint", "false") 7563 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:generatePackagesSummary") 7564 urls += "?" + c.urlParams_.Encode() 7565 req, err := http.NewRequest("POST", urls, body) 7566 if err != nil { 7567 return nil, err 7568 } 7569 req.Header = reqHeaders 7570 googleapi.Expand(req.URL, map[string]string{ 7571 "name": c.name, 7572 }) 7573 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7574 } 7575 7576 // Do executes the "containeranalysis.projects.locations.resources.generatePackagesSummary" call. 7577 // Any non-2xx status code is an error. Response headers are in either 7578 // *PackagesSummaryResponse.ServerResponse.Header or (if a response was 7579 // returned at all) in error.(*googleapi.Error).Header. Use 7580 // googleapi.IsNotModified to check whether the returned error was because 7581 // http.StatusNotModified was returned. 7582 func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Do(opts ...googleapi.CallOption) (*PackagesSummaryResponse, error) { 7583 gensupport.SetOptions(c.urlParams_, opts...) 7584 res, err := c.doRequest("json") 7585 if res != nil && res.StatusCode == http.StatusNotModified { 7586 if res.Body != nil { 7587 res.Body.Close() 7588 } 7589 return nil, gensupport.WrapError(&googleapi.Error{ 7590 Code: res.StatusCode, 7591 Header: res.Header, 7592 }) 7593 } 7594 if err != nil { 7595 return nil, err 7596 } 7597 defer googleapi.CloseBody(res) 7598 if err := googleapi.CheckResponse(res); err != nil { 7599 return nil, gensupport.WrapError(err) 7600 } 7601 ret := &PackagesSummaryResponse{ 7602 ServerResponse: googleapi.ServerResponse{ 7603 Header: res.Header, 7604 HTTPStatusCode: res.StatusCode, 7605 }, 7606 } 7607 target := &ret 7608 if err := gensupport.DecodeResponse(target, res); err != nil { 7609 return nil, err 7610 } 7611 return ret, nil 7612 } 7613 7614 type ProjectsNotesBatchCreateCall struct { 7615 s *Service 7616 parent string 7617 batchcreatenotesrequest *BatchCreateNotesRequest 7618 urlParams_ gensupport.URLParams 7619 ctx_ context.Context 7620 header_ http.Header 7621 } 7622 7623 // BatchCreate: Creates new notes in batch. 7624 // 7625 // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, 7626 // under which the notes are to be created. 7627 func (r *ProjectsNotesService) BatchCreate(parent string, batchcreatenotesrequest *BatchCreateNotesRequest) *ProjectsNotesBatchCreateCall { 7628 c := &ProjectsNotesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7629 c.parent = parent 7630 c.batchcreatenotesrequest = batchcreatenotesrequest 7631 return c 7632 } 7633 7634 // Fields allows partial responses to be retrieved. See 7635 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7636 // details. 7637 func (c *ProjectsNotesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsNotesBatchCreateCall { 7638 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7639 return c 7640 } 7641 7642 // Context sets the context to be used in this call's Do method. 7643 func (c *ProjectsNotesBatchCreateCall) Context(ctx context.Context) *ProjectsNotesBatchCreateCall { 7644 c.ctx_ = ctx 7645 return c 7646 } 7647 7648 // Header returns a http.Header that can be modified by the caller to add 7649 // headers to the request. 7650 func (c *ProjectsNotesBatchCreateCall) Header() http.Header { 7651 if c.header_ == nil { 7652 c.header_ = make(http.Header) 7653 } 7654 return c.header_ 7655 } 7656 7657 func (c *ProjectsNotesBatchCreateCall) doRequest(alt string) (*http.Response, error) { 7658 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 7659 var body io.Reader = nil 7660 body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreatenotesrequest) 7661 if err != nil { 7662 return nil, err 7663 } 7664 c.urlParams_.Set("alt", alt) 7665 c.urlParams_.Set("prettyPrint", "false") 7666 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes:batchCreate") 7667 urls += "?" + c.urlParams_.Encode() 7668 req, err := http.NewRequest("POST", urls, body) 7669 if err != nil { 7670 return nil, err 7671 } 7672 req.Header = reqHeaders 7673 googleapi.Expand(req.URL, map[string]string{ 7674 "parent": c.parent, 7675 }) 7676 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7677 } 7678 7679 // Do executes the "containeranalysis.projects.notes.batchCreate" call. 7680 // Any non-2xx status code is an error. Response headers are in either 7681 // *BatchCreateNotesResponse.ServerResponse.Header or (if a response was 7682 // returned at all) in error.(*googleapi.Error).Header. Use 7683 // googleapi.IsNotModified to check whether the returned error was because 7684 // http.StatusNotModified was returned. 7685 func (c *ProjectsNotesBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateNotesResponse, error) { 7686 gensupport.SetOptions(c.urlParams_, opts...) 7687 res, err := c.doRequest("json") 7688 if res != nil && res.StatusCode == http.StatusNotModified { 7689 if res.Body != nil { 7690 res.Body.Close() 7691 } 7692 return nil, gensupport.WrapError(&googleapi.Error{ 7693 Code: res.StatusCode, 7694 Header: res.Header, 7695 }) 7696 } 7697 if err != nil { 7698 return nil, err 7699 } 7700 defer googleapi.CloseBody(res) 7701 if err := googleapi.CheckResponse(res); err != nil { 7702 return nil, gensupport.WrapError(err) 7703 } 7704 ret := &BatchCreateNotesResponse{ 7705 ServerResponse: googleapi.ServerResponse{ 7706 Header: res.Header, 7707 HTTPStatusCode: res.StatusCode, 7708 }, 7709 } 7710 target := &ret 7711 if err := gensupport.DecodeResponse(target, res); err != nil { 7712 return nil, err 7713 } 7714 return ret, nil 7715 } 7716 7717 type ProjectsNotesCreateCall struct { 7718 s *Service 7719 parent string 7720 note *Note 7721 urlParams_ gensupport.URLParams 7722 ctx_ context.Context 7723 header_ http.Header 7724 } 7725 7726 // Create: Creates a new note. 7727 // 7728 // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, 7729 // under which the note is to be created. 7730 func (r *ProjectsNotesService) Create(parent string, note *Note) *ProjectsNotesCreateCall { 7731 c := &ProjectsNotesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7732 c.parent = parent 7733 c.note = note 7734 return c 7735 } 7736 7737 // NoteId sets the optional parameter "noteId": Required. The ID to use for 7738 // this note. 7739 func (c *ProjectsNotesCreateCall) NoteId(noteId string) *ProjectsNotesCreateCall { 7740 c.urlParams_.Set("noteId", noteId) 7741 return c 7742 } 7743 7744 // Fields allows partial responses to be retrieved. See 7745 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7746 // details. 7747 func (c *ProjectsNotesCreateCall) Fields(s ...googleapi.Field) *ProjectsNotesCreateCall { 7748 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7749 return c 7750 } 7751 7752 // Context sets the context to be used in this call's Do method. 7753 func (c *ProjectsNotesCreateCall) Context(ctx context.Context) *ProjectsNotesCreateCall { 7754 c.ctx_ = ctx 7755 return c 7756 } 7757 7758 // Header returns a http.Header that can be modified by the caller to add 7759 // headers to the request. 7760 func (c *ProjectsNotesCreateCall) Header() http.Header { 7761 if c.header_ == nil { 7762 c.header_ = make(http.Header) 7763 } 7764 return c.header_ 7765 } 7766 7767 func (c *ProjectsNotesCreateCall) doRequest(alt string) (*http.Response, error) { 7768 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 7769 var body io.Reader = nil 7770 body, err := googleapi.WithoutDataWrapper.JSONReader(c.note) 7771 if err != nil { 7772 return nil, err 7773 } 7774 c.urlParams_.Set("alt", alt) 7775 c.urlParams_.Set("prettyPrint", "false") 7776 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") 7777 urls += "?" + c.urlParams_.Encode() 7778 req, err := http.NewRequest("POST", urls, body) 7779 if err != nil { 7780 return nil, err 7781 } 7782 req.Header = reqHeaders 7783 googleapi.Expand(req.URL, map[string]string{ 7784 "parent": c.parent, 7785 }) 7786 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7787 } 7788 7789 // Do executes the "containeranalysis.projects.notes.create" call. 7790 // Any non-2xx status code is an error. Response headers are in either 7791 // *Note.ServerResponse.Header or (if a response was returned at all) in 7792 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 7793 // whether the returned error was because http.StatusNotModified was returned. 7794 func (c *ProjectsNotesCreateCall) Do(opts ...googleapi.CallOption) (*Note, error) { 7795 gensupport.SetOptions(c.urlParams_, opts...) 7796 res, err := c.doRequest("json") 7797 if res != nil && res.StatusCode == http.StatusNotModified { 7798 if res.Body != nil { 7799 res.Body.Close() 7800 } 7801 return nil, gensupport.WrapError(&googleapi.Error{ 7802 Code: res.StatusCode, 7803 Header: res.Header, 7804 }) 7805 } 7806 if err != nil { 7807 return nil, err 7808 } 7809 defer googleapi.CloseBody(res) 7810 if err := googleapi.CheckResponse(res); err != nil { 7811 return nil, gensupport.WrapError(err) 7812 } 7813 ret := &Note{ 7814 ServerResponse: googleapi.ServerResponse{ 7815 Header: res.Header, 7816 HTTPStatusCode: res.StatusCode, 7817 }, 7818 } 7819 target := &ret 7820 if err := gensupport.DecodeResponse(target, res); err != nil { 7821 return nil, err 7822 } 7823 return ret, nil 7824 } 7825 7826 type ProjectsNotesDeleteCall struct { 7827 s *Service 7828 name string 7829 urlParams_ gensupport.URLParams 7830 ctx_ context.Context 7831 header_ http.Header 7832 } 7833 7834 // Delete: Deletes the specified note. 7835 // 7836 // - name: The name of the note in the form of 7837 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 7838 func (r *ProjectsNotesService) Delete(name string) *ProjectsNotesDeleteCall { 7839 c := &ProjectsNotesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7840 c.name = name 7841 return c 7842 } 7843 7844 // Fields allows partial responses to be retrieved. See 7845 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7846 // details. 7847 func (c *ProjectsNotesDeleteCall) Fields(s ...googleapi.Field) *ProjectsNotesDeleteCall { 7848 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7849 return c 7850 } 7851 7852 // Context sets the context to be used in this call's Do method. 7853 func (c *ProjectsNotesDeleteCall) Context(ctx context.Context) *ProjectsNotesDeleteCall { 7854 c.ctx_ = ctx 7855 return c 7856 } 7857 7858 // Header returns a http.Header that can be modified by the caller to add 7859 // headers to the request. 7860 func (c *ProjectsNotesDeleteCall) Header() http.Header { 7861 if c.header_ == nil { 7862 c.header_ = make(http.Header) 7863 } 7864 return c.header_ 7865 } 7866 7867 func (c *ProjectsNotesDeleteCall) doRequest(alt string) (*http.Response, error) { 7868 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 7869 var body io.Reader = nil 7870 c.urlParams_.Set("alt", alt) 7871 c.urlParams_.Set("prettyPrint", "false") 7872 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 7873 urls += "?" + c.urlParams_.Encode() 7874 req, err := http.NewRequest("DELETE", urls, body) 7875 if err != nil { 7876 return nil, err 7877 } 7878 req.Header = reqHeaders 7879 googleapi.Expand(req.URL, map[string]string{ 7880 "name": c.name, 7881 }) 7882 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7883 } 7884 7885 // Do executes the "containeranalysis.projects.notes.delete" call. 7886 // Any non-2xx status code is an error. Response headers are in either 7887 // *Empty.ServerResponse.Header or (if a response was returned at all) in 7888 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 7889 // whether the returned error was because http.StatusNotModified was returned. 7890 func (c *ProjectsNotesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 7891 gensupport.SetOptions(c.urlParams_, opts...) 7892 res, err := c.doRequest("json") 7893 if res != nil && res.StatusCode == http.StatusNotModified { 7894 if res.Body != nil { 7895 res.Body.Close() 7896 } 7897 return nil, gensupport.WrapError(&googleapi.Error{ 7898 Code: res.StatusCode, 7899 Header: res.Header, 7900 }) 7901 } 7902 if err != nil { 7903 return nil, err 7904 } 7905 defer googleapi.CloseBody(res) 7906 if err := googleapi.CheckResponse(res); err != nil { 7907 return nil, gensupport.WrapError(err) 7908 } 7909 ret := &Empty{ 7910 ServerResponse: googleapi.ServerResponse{ 7911 Header: res.Header, 7912 HTTPStatusCode: res.StatusCode, 7913 }, 7914 } 7915 target := &ret 7916 if err := gensupport.DecodeResponse(target, res); err != nil { 7917 return nil, err 7918 } 7919 return ret, nil 7920 } 7921 7922 type ProjectsNotesGetCall struct { 7923 s *Service 7924 name string 7925 urlParams_ gensupport.URLParams 7926 ifNoneMatch_ string 7927 ctx_ context.Context 7928 header_ http.Header 7929 } 7930 7931 // Get: Gets the specified note. 7932 // 7933 // - name: The name of the note in the form of 7934 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 7935 func (r *ProjectsNotesService) Get(name string) *ProjectsNotesGetCall { 7936 c := &ProjectsNotesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 7937 c.name = name 7938 return c 7939 } 7940 7941 // Fields allows partial responses to be retrieved. See 7942 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 7943 // details. 7944 func (c *ProjectsNotesGetCall) Fields(s ...googleapi.Field) *ProjectsNotesGetCall { 7945 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 7946 return c 7947 } 7948 7949 // IfNoneMatch sets an optional parameter which makes the operation fail if the 7950 // object's ETag matches the given value. This is useful for getting updates 7951 // only after the object has changed since the last request. 7952 func (c *ProjectsNotesGetCall) IfNoneMatch(entityTag string) *ProjectsNotesGetCall { 7953 c.ifNoneMatch_ = entityTag 7954 return c 7955 } 7956 7957 // Context sets the context to be used in this call's Do method. 7958 func (c *ProjectsNotesGetCall) Context(ctx context.Context) *ProjectsNotesGetCall { 7959 c.ctx_ = ctx 7960 return c 7961 } 7962 7963 // Header returns a http.Header that can be modified by the caller to add 7964 // headers to the request. 7965 func (c *ProjectsNotesGetCall) Header() http.Header { 7966 if c.header_ == nil { 7967 c.header_ = make(http.Header) 7968 } 7969 return c.header_ 7970 } 7971 7972 func (c *ProjectsNotesGetCall) doRequest(alt string) (*http.Response, error) { 7973 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 7974 if c.ifNoneMatch_ != "" { 7975 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 7976 } 7977 var body io.Reader = nil 7978 c.urlParams_.Set("alt", alt) 7979 c.urlParams_.Set("prettyPrint", "false") 7980 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 7981 urls += "?" + c.urlParams_.Encode() 7982 req, err := http.NewRequest("GET", urls, body) 7983 if err != nil { 7984 return nil, err 7985 } 7986 req.Header = reqHeaders 7987 googleapi.Expand(req.URL, map[string]string{ 7988 "name": c.name, 7989 }) 7990 return gensupport.SendRequest(c.ctx_, c.s.client, req) 7991 } 7992 7993 // Do executes the "containeranalysis.projects.notes.get" call. 7994 // Any non-2xx status code is an error. Response headers are in either 7995 // *Note.ServerResponse.Header or (if a response was returned at all) in 7996 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 7997 // whether the returned error was because http.StatusNotModified was returned. 7998 func (c *ProjectsNotesGetCall) Do(opts ...googleapi.CallOption) (*Note, error) { 7999 gensupport.SetOptions(c.urlParams_, opts...) 8000 res, err := c.doRequest("json") 8001 if res != nil && res.StatusCode == http.StatusNotModified { 8002 if res.Body != nil { 8003 res.Body.Close() 8004 } 8005 return nil, gensupport.WrapError(&googleapi.Error{ 8006 Code: res.StatusCode, 8007 Header: res.Header, 8008 }) 8009 } 8010 if err != nil { 8011 return nil, err 8012 } 8013 defer googleapi.CloseBody(res) 8014 if err := googleapi.CheckResponse(res); err != nil { 8015 return nil, gensupport.WrapError(err) 8016 } 8017 ret := &Note{ 8018 ServerResponse: googleapi.ServerResponse{ 8019 Header: res.Header, 8020 HTTPStatusCode: res.StatusCode, 8021 }, 8022 } 8023 target := &ret 8024 if err := gensupport.DecodeResponse(target, res); err != nil { 8025 return nil, err 8026 } 8027 return ret, nil 8028 } 8029 8030 type ProjectsNotesGetIamPolicyCall struct { 8031 s *Service 8032 resource string 8033 getiampolicyrequest *GetIamPolicyRequest 8034 urlParams_ gensupport.URLParams 8035 ctx_ context.Context 8036 header_ http.Header 8037 } 8038 8039 // GetIamPolicy: Gets the access control policy for a note or an occurrence 8040 // resource. Requires `containeranalysis.notes.setIamPolicy` or 8041 // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a 8042 // note or occurrence, respectively. The resource takes the format 8043 // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and 8044 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. 8045 // 8046 // - resource: REQUIRED: The resource for which the policy is being requested. 8047 // See Resource names (https://cloud.google.com/apis/design/resource_names) 8048 // for the appropriate value for this field. 8049 func (r *ProjectsNotesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsNotesGetIamPolicyCall { 8050 c := &ProjectsNotesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8051 c.resource = resource 8052 c.getiampolicyrequest = getiampolicyrequest 8053 return c 8054 } 8055 8056 // Fields allows partial responses to be retrieved. See 8057 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8058 // details. 8059 func (c *ProjectsNotesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsNotesGetIamPolicyCall { 8060 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8061 return c 8062 } 8063 8064 // Context sets the context to be used in this call's Do method. 8065 func (c *ProjectsNotesGetIamPolicyCall) Context(ctx context.Context) *ProjectsNotesGetIamPolicyCall { 8066 c.ctx_ = ctx 8067 return c 8068 } 8069 8070 // Header returns a http.Header that can be modified by the caller to add 8071 // headers to the request. 8072 func (c *ProjectsNotesGetIamPolicyCall) Header() http.Header { 8073 if c.header_ == nil { 8074 c.header_ = make(http.Header) 8075 } 8076 return c.header_ 8077 } 8078 8079 func (c *ProjectsNotesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 8080 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 8081 var body io.Reader = nil 8082 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 8083 if err != nil { 8084 return nil, err 8085 } 8086 c.urlParams_.Set("alt", alt) 8087 c.urlParams_.Set("prettyPrint", "false") 8088 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy") 8089 urls += "?" + c.urlParams_.Encode() 8090 req, err := http.NewRequest("POST", urls, body) 8091 if err != nil { 8092 return nil, err 8093 } 8094 req.Header = reqHeaders 8095 googleapi.Expand(req.URL, map[string]string{ 8096 "resource": c.resource, 8097 }) 8098 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8099 } 8100 8101 // Do executes the "containeranalysis.projects.notes.getIamPolicy" call. 8102 // Any non-2xx status code is an error. Response headers are in either 8103 // *Policy.ServerResponse.Header or (if a response was returned at all) in 8104 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 8105 // whether the returned error was because http.StatusNotModified was returned. 8106 func (c *ProjectsNotesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 8107 gensupport.SetOptions(c.urlParams_, opts...) 8108 res, err := c.doRequest("json") 8109 if res != nil && res.StatusCode == http.StatusNotModified { 8110 if res.Body != nil { 8111 res.Body.Close() 8112 } 8113 return nil, gensupport.WrapError(&googleapi.Error{ 8114 Code: res.StatusCode, 8115 Header: res.Header, 8116 }) 8117 } 8118 if err != nil { 8119 return nil, err 8120 } 8121 defer googleapi.CloseBody(res) 8122 if err := googleapi.CheckResponse(res); err != nil { 8123 return nil, gensupport.WrapError(err) 8124 } 8125 ret := &Policy{ 8126 ServerResponse: googleapi.ServerResponse{ 8127 Header: res.Header, 8128 HTTPStatusCode: res.StatusCode, 8129 }, 8130 } 8131 target := &ret 8132 if err := gensupport.DecodeResponse(target, res); err != nil { 8133 return nil, err 8134 } 8135 return ret, nil 8136 } 8137 8138 type ProjectsNotesListCall struct { 8139 s *Service 8140 parent string 8141 urlParams_ gensupport.URLParams 8142 ifNoneMatch_ string 8143 ctx_ context.Context 8144 header_ http.Header 8145 } 8146 8147 // List: Lists notes for the specified project. 8148 // 8149 // - parent: The name of the project to list notes for in the form of 8150 // `projects/[PROJECT_ID]`. 8151 func (r *ProjectsNotesService) List(parent string) *ProjectsNotesListCall { 8152 c := &ProjectsNotesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8153 c.parent = parent 8154 return c 8155 } 8156 8157 // Filter sets the optional parameter "filter": The filter expression. 8158 func (c *ProjectsNotesListCall) Filter(filter string) *ProjectsNotesListCall { 8159 c.urlParams_.Set("filter", filter) 8160 return c 8161 } 8162 8163 // PageSize sets the optional parameter "pageSize": Number of notes to return 8164 // in the list. Must be positive. Max allowed page size is 1000. If not 8165 // specified, page size defaults to 20. 8166 func (c *ProjectsNotesListCall) PageSize(pageSize int64) *ProjectsNotesListCall { 8167 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 8168 return c 8169 } 8170 8171 // PageToken sets the optional parameter "pageToken": Token to provide to skip 8172 // to a particular spot in the list. 8173 func (c *ProjectsNotesListCall) PageToken(pageToken string) *ProjectsNotesListCall { 8174 c.urlParams_.Set("pageToken", pageToken) 8175 return c 8176 } 8177 8178 // Fields allows partial responses to be retrieved. See 8179 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8180 // details. 8181 func (c *ProjectsNotesListCall) Fields(s ...googleapi.Field) *ProjectsNotesListCall { 8182 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8183 return c 8184 } 8185 8186 // IfNoneMatch sets an optional parameter which makes the operation fail if the 8187 // object's ETag matches the given value. This is useful for getting updates 8188 // only after the object has changed since the last request. 8189 func (c *ProjectsNotesListCall) IfNoneMatch(entityTag string) *ProjectsNotesListCall { 8190 c.ifNoneMatch_ = entityTag 8191 return c 8192 } 8193 8194 // Context sets the context to be used in this call's Do method. 8195 func (c *ProjectsNotesListCall) Context(ctx context.Context) *ProjectsNotesListCall { 8196 c.ctx_ = ctx 8197 return c 8198 } 8199 8200 // Header returns a http.Header that can be modified by the caller to add 8201 // headers to the request. 8202 func (c *ProjectsNotesListCall) Header() http.Header { 8203 if c.header_ == nil { 8204 c.header_ = make(http.Header) 8205 } 8206 return c.header_ 8207 } 8208 8209 func (c *ProjectsNotesListCall) doRequest(alt string) (*http.Response, error) { 8210 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 8211 if c.ifNoneMatch_ != "" { 8212 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8213 } 8214 var body io.Reader = nil 8215 c.urlParams_.Set("alt", alt) 8216 c.urlParams_.Set("prettyPrint", "false") 8217 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") 8218 urls += "?" + c.urlParams_.Encode() 8219 req, err := http.NewRequest("GET", urls, body) 8220 if err != nil { 8221 return nil, err 8222 } 8223 req.Header = reqHeaders 8224 googleapi.Expand(req.URL, map[string]string{ 8225 "parent": c.parent, 8226 }) 8227 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8228 } 8229 8230 // Do executes the "containeranalysis.projects.notes.list" call. 8231 // Any non-2xx status code is an error. Response headers are in either 8232 // *ListNotesResponse.ServerResponse.Header or (if a response was returned at 8233 // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 8234 // check whether the returned error was because http.StatusNotModified was 8235 // returned. 8236 func (c *ProjectsNotesListCall) Do(opts ...googleapi.CallOption) (*ListNotesResponse, error) { 8237 gensupport.SetOptions(c.urlParams_, opts...) 8238 res, err := c.doRequest("json") 8239 if res != nil && res.StatusCode == http.StatusNotModified { 8240 if res.Body != nil { 8241 res.Body.Close() 8242 } 8243 return nil, gensupport.WrapError(&googleapi.Error{ 8244 Code: res.StatusCode, 8245 Header: res.Header, 8246 }) 8247 } 8248 if err != nil { 8249 return nil, err 8250 } 8251 defer googleapi.CloseBody(res) 8252 if err := googleapi.CheckResponse(res); err != nil { 8253 return nil, gensupport.WrapError(err) 8254 } 8255 ret := &ListNotesResponse{ 8256 ServerResponse: googleapi.ServerResponse{ 8257 Header: res.Header, 8258 HTTPStatusCode: res.StatusCode, 8259 }, 8260 } 8261 target := &ret 8262 if err := gensupport.DecodeResponse(target, res); err != nil { 8263 return nil, err 8264 } 8265 return ret, nil 8266 } 8267 8268 // Pages invokes f for each page of results. 8269 // A non-nil error returned from f will halt the iteration. 8270 // The provided context supersedes any context provided to the Context method. 8271 func (c *ProjectsNotesListCall) Pages(ctx context.Context, f func(*ListNotesResponse) error) error { 8272 c.ctx_ = ctx 8273 defer c.PageToken(c.urlParams_.Get("pageToken")) 8274 for { 8275 x, err := c.Do() 8276 if err != nil { 8277 return err 8278 } 8279 if err := f(x); err != nil { 8280 return err 8281 } 8282 if x.NextPageToken == "" { 8283 return nil 8284 } 8285 c.PageToken(x.NextPageToken) 8286 } 8287 } 8288 8289 type ProjectsNotesPatchCall struct { 8290 s *Service 8291 name string 8292 note *Note 8293 urlParams_ gensupport.URLParams 8294 ctx_ context.Context 8295 header_ http.Header 8296 } 8297 8298 // Patch: Updates the specified note. 8299 // 8300 // - name: The name of the note in the form of 8301 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 8302 func (r *ProjectsNotesService) Patch(name string, note *Note) *ProjectsNotesPatchCall { 8303 c := &ProjectsNotesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8304 c.name = name 8305 c.note = note 8306 return c 8307 } 8308 8309 // UpdateMask sets the optional parameter "updateMask": The fields to update. 8310 func (c *ProjectsNotesPatchCall) UpdateMask(updateMask string) *ProjectsNotesPatchCall { 8311 c.urlParams_.Set("updateMask", updateMask) 8312 return c 8313 } 8314 8315 // Fields allows partial responses to be retrieved. See 8316 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8317 // details. 8318 func (c *ProjectsNotesPatchCall) Fields(s ...googleapi.Field) *ProjectsNotesPatchCall { 8319 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8320 return c 8321 } 8322 8323 // Context sets the context to be used in this call's Do method. 8324 func (c *ProjectsNotesPatchCall) Context(ctx context.Context) *ProjectsNotesPatchCall { 8325 c.ctx_ = ctx 8326 return c 8327 } 8328 8329 // Header returns a http.Header that can be modified by the caller to add 8330 // headers to the request. 8331 func (c *ProjectsNotesPatchCall) Header() http.Header { 8332 if c.header_ == nil { 8333 c.header_ = make(http.Header) 8334 } 8335 return c.header_ 8336 } 8337 8338 func (c *ProjectsNotesPatchCall) doRequest(alt string) (*http.Response, error) { 8339 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 8340 var body io.Reader = nil 8341 body, err := googleapi.WithoutDataWrapper.JSONReader(c.note) 8342 if err != nil { 8343 return nil, err 8344 } 8345 c.urlParams_.Set("alt", alt) 8346 c.urlParams_.Set("prettyPrint", "false") 8347 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 8348 urls += "?" + c.urlParams_.Encode() 8349 req, err := http.NewRequest("PATCH", urls, body) 8350 if err != nil { 8351 return nil, err 8352 } 8353 req.Header = reqHeaders 8354 googleapi.Expand(req.URL, map[string]string{ 8355 "name": c.name, 8356 }) 8357 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8358 } 8359 8360 // Do executes the "containeranalysis.projects.notes.patch" call. 8361 // Any non-2xx status code is an error. Response headers are in either 8362 // *Note.ServerResponse.Header or (if a response was returned at all) in 8363 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 8364 // whether the returned error was because http.StatusNotModified was returned. 8365 func (c *ProjectsNotesPatchCall) Do(opts ...googleapi.CallOption) (*Note, error) { 8366 gensupport.SetOptions(c.urlParams_, opts...) 8367 res, err := c.doRequest("json") 8368 if res != nil && res.StatusCode == http.StatusNotModified { 8369 if res.Body != nil { 8370 res.Body.Close() 8371 } 8372 return nil, gensupport.WrapError(&googleapi.Error{ 8373 Code: res.StatusCode, 8374 Header: res.Header, 8375 }) 8376 } 8377 if err != nil { 8378 return nil, err 8379 } 8380 defer googleapi.CloseBody(res) 8381 if err := googleapi.CheckResponse(res); err != nil { 8382 return nil, gensupport.WrapError(err) 8383 } 8384 ret := &Note{ 8385 ServerResponse: googleapi.ServerResponse{ 8386 Header: res.Header, 8387 HTTPStatusCode: res.StatusCode, 8388 }, 8389 } 8390 target := &ret 8391 if err := gensupport.DecodeResponse(target, res); err != nil { 8392 return nil, err 8393 } 8394 return ret, nil 8395 } 8396 8397 type ProjectsNotesSetIamPolicyCall struct { 8398 s *Service 8399 resource string 8400 setiampolicyrequest *SetIamPolicyRequest 8401 urlParams_ gensupport.URLParams 8402 ctx_ context.Context 8403 header_ http.Header 8404 } 8405 8406 // SetIamPolicy: Sets the access control policy on the specified note or 8407 // occurrence. Requires `containeranalysis.notes.setIamPolicy` or 8408 // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a 8409 // note or an occurrence, respectively. The resource takes the format 8410 // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and 8411 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. 8412 // 8413 // - resource: REQUIRED: The resource for which the policy is being specified. 8414 // See Resource names (https://cloud.google.com/apis/design/resource_names) 8415 // for the appropriate value for this field. 8416 func (r *ProjectsNotesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsNotesSetIamPolicyCall { 8417 c := &ProjectsNotesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8418 c.resource = resource 8419 c.setiampolicyrequest = setiampolicyrequest 8420 return c 8421 } 8422 8423 // Fields allows partial responses to be retrieved. See 8424 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8425 // details. 8426 func (c *ProjectsNotesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsNotesSetIamPolicyCall { 8427 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8428 return c 8429 } 8430 8431 // Context sets the context to be used in this call's Do method. 8432 func (c *ProjectsNotesSetIamPolicyCall) Context(ctx context.Context) *ProjectsNotesSetIamPolicyCall { 8433 c.ctx_ = ctx 8434 return c 8435 } 8436 8437 // Header returns a http.Header that can be modified by the caller to add 8438 // headers to the request. 8439 func (c *ProjectsNotesSetIamPolicyCall) Header() http.Header { 8440 if c.header_ == nil { 8441 c.header_ = make(http.Header) 8442 } 8443 return c.header_ 8444 } 8445 8446 func (c *ProjectsNotesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 8447 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 8448 var body io.Reader = nil 8449 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 8450 if err != nil { 8451 return nil, err 8452 } 8453 c.urlParams_.Set("alt", alt) 8454 c.urlParams_.Set("prettyPrint", "false") 8455 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy") 8456 urls += "?" + c.urlParams_.Encode() 8457 req, err := http.NewRequest("POST", urls, body) 8458 if err != nil { 8459 return nil, err 8460 } 8461 req.Header = reqHeaders 8462 googleapi.Expand(req.URL, map[string]string{ 8463 "resource": c.resource, 8464 }) 8465 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8466 } 8467 8468 // Do executes the "containeranalysis.projects.notes.setIamPolicy" call. 8469 // Any non-2xx status code is an error. Response headers are in either 8470 // *Policy.ServerResponse.Header or (if a response was returned at all) in 8471 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 8472 // whether the returned error was because http.StatusNotModified was returned. 8473 func (c *ProjectsNotesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 8474 gensupport.SetOptions(c.urlParams_, opts...) 8475 res, err := c.doRequest("json") 8476 if res != nil && res.StatusCode == http.StatusNotModified { 8477 if res.Body != nil { 8478 res.Body.Close() 8479 } 8480 return nil, gensupport.WrapError(&googleapi.Error{ 8481 Code: res.StatusCode, 8482 Header: res.Header, 8483 }) 8484 } 8485 if err != nil { 8486 return nil, err 8487 } 8488 defer googleapi.CloseBody(res) 8489 if err := googleapi.CheckResponse(res); err != nil { 8490 return nil, gensupport.WrapError(err) 8491 } 8492 ret := &Policy{ 8493 ServerResponse: googleapi.ServerResponse{ 8494 Header: res.Header, 8495 HTTPStatusCode: res.StatusCode, 8496 }, 8497 } 8498 target := &ret 8499 if err := gensupport.DecodeResponse(target, res); err != nil { 8500 return nil, err 8501 } 8502 return ret, nil 8503 } 8504 8505 type ProjectsNotesTestIamPermissionsCall struct { 8506 s *Service 8507 resource string 8508 testiampermissionsrequest *TestIamPermissionsRequest 8509 urlParams_ gensupport.URLParams 8510 ctx_ context.Context 8511 header_ http.Header 8512 } 8513 8514 // TestIamPermissions: Returns the permissions that a caller has on the 8515 // specified note or occurrence. Requires list permission on the project (for 8516 // example, `containeranalysis.notes.list`). The resource takes the format 8517 // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and 8518 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. 8519 // 8520 // - resource: REQUIRED: The resource for which the policy detail is being 8521 // requested. See Resource names 8522 // (https://cloud.google.com/apis/design/resource_names) for the appropriate 8523 // value for this field. 8524 func (r *ProjectsNotesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsNotesTestIamPermissionsCall { 8525 c := &ProjectsNotesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8526 c.resource = resource 8527 c.testiampermissionsrequest = testiampermissionsrequest 8528 return c 8529 } 8530 8531 // Fields allows partial responses to be retrieved. See 8532 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8533 // details. 8534 func (c *ProjectsNotesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsNotesTestIamPermissionsCall { 8535 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8536 return c 8537 } 8538 8539 // Context sets the context to be used in this call's Do method. 8540 func (c *ProjectsNotesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsNotesTestIamPermissionsCall { 8541 c.ctx_ = ctx 8542 return c 8543 } 8544 8545 // Header returns a http.Header that can be modified by the caller to add 8546 // headers to the request. 8547 func (c *ProjectsNotesTestIamPermissionsCall) Header() http.Header { 8548 if c.header_ == nil { 8549 c.header_ = make(http.Header) 8550 } 8551 return c.header_ 8552 } 8553 8554 func (c *ProjectsNotesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 8555 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 8556 var body io.Reader = nil 8557 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 8558 if err != nil { 8559 return nil, err 8560 } 8561 c.urlParams_.Set("alt", alt) 8562 c.urlParams_.Set("prettyPrint", "false") 8563 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions") 8564 urls += "?" + c.urlParams_.Encode() 8565 req, err := http.NewRequest("POST", urls, body) 8566 if err != nil { 8567 return nil, err 8568 } 8569 req.Header = reqHeaders 8570 googleapi.Expand(req.URL, map[string]string{ 8571 "resource": c.resource, 8572 }) 8573 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8574 } 8575 8576 // Do executes the "containeranalysis.projects.notes.testIamPermissions" call. 8577 // Any non-2xx status code is an error. Response headers are in either 8578 // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was 8579 // returned at all) in error.(*googleapi.Error).Header. Use 8580 // googleapi.IsNotModified to check whether the returned error was because 8581 // http.StatusNotModified was returned. 8582 func (c *ProjectsNotesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 8583 gensupport.SetOptions(c.urlParams_, opts...) 8584 res, err := c.doRequest("json") 8585 if res != nil && res.StatusCode == http.StatusNotModified { 8586 if res.Body != nil { 8587 res.Body.Close() 8588 } 8589 return nil, gensupport.WrapError(&googleapi.Error{ 8590 Code: res.StatusCode, 8591 Header: res.Header, 8592 }) 8593 } 8594 if err != nil { 8595 return nil, err 8596 } 8597 defer googleapi.CloseBody(res) 8598 if err := googleapi.CheckResponse(res); err != nil { 8599 return nil, gensupport.WrapError(err) 8600 } 8601 ret := &TestIamPermissionsResponse{ 8602 ServerResponse: googleapi.ServerResponse{ 8603 Header: res.Header, 8604 HTTPStatusCode: res.StatusCode, 8605 }, 8606 } 8607 target := &ret 8608 if err := gensupport.DecodeResponse(target, res); err != nil { 8609 return nil, err 8610 } 8611 return ret, nil 8612 } 8613 8614 type ProjectsNotesOccurrencesListCall struct { 8615 s *Service 8616 name string 8617 urlParams_ gensupport.URLParams 8618 ifNoneMatch_ string 8619 ctx_ context.Context 8620 header_ http.Header 8621 } 8622 8623 // List: Lists occurrences referencing the specified note. Provider projects 8624 // can use this method to get all occurrences across consumer projects 8625 // referencing the specified note. 8626 // 8627 // - name: The name of the note to list occurrences for in the form of 8628 // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 8629 func (r *ProjectsNotesOccurrencesService) List(name string) *ProjectsNotesOccurrencesListCall { 8630 c := &ProjectsNotesOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8631 c.name = name 8632 return c 8633 } 8634 8635 // Filter sets the optional parameter "filter": The filter expression. 8636 func (c *ProjectsNotesOccurrencesListCall) Filter(filter string) *ProjectsNotesOccurrencesListCall { 8637 c.urlParams_.Set("filter", filter) 8638 return c 8639 } 8640 8641 // PageSize sets the optional parameter "pageSize": Number of occurrences to 8642 // return in the list. 8643 func (c *ProjectsNotesOccurrencesListCall) PageSize(pageSize int64) *ProjectsNotesOccurrencesListCall { 8644 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 8645 return c 8646 } 8647 8648 // PageToken sets the optional parameter "pageToken": Token to provide to skip 8649 // to a particular spot in the list. 8650 func (c *ProjectsNotesOccurrencesListCall) PageToken(pageToken string) *ProjectsNotesOccurrencesListCall { 8651 c.urlParams_.Set("pageToken", pageToken) 8652 return c 8653 } 8654 8655 // Fields allows partial responses to be retrieved. See 8656 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8657 // details. 8658 func (c *ProjectsNotesOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsNotesOccurrencesListCall { 8659 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8660 return c 8661 } 8662 8663 // IfNoneMatch sets an optional parameter which makes the operation fail if the 8664 // object's ETag matches the given value. This is useful for getting updates 8665 // only after the object has changed since the last request. 8666 func (c *ProjectsNotesOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsNotesOccurrencesListCall { 8667 c.ifNoneMatch_ = entityTag 8668 return c 8669 } 8670 8671 // Context sets the context to be used in this call's Do method. 8672 func (c *ProjectsNotesOccurrencesListCall) Context(ctx context.Context) *ProjectsNotesOccurrencesListCall { 8673 c.ctx_ = ctx 8674 return c 8675 } 8676 8677 // Header returns a http.Header that can be modified by the caller to add 8678 // headers to the request. 8679 func (c *ProjectsNotesOccurrencesListCall) Header() http.Header { 8680 if c.header_ == nil { 8681 c.header_ = make(http.Header) 8682 } 8683 return c.header_ 8684 } 8685 8686 func (c *ProjectsNotesOccurrencesListCall) doRequest(alt string) (*http.Response, error) { 8687 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 8688 if c.ifNoneMatch_ != "" { 8689 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 8690 } 8691 var body io.Reader = nil 8692 c.urlParams_.Set("alt", alt) 8693 c.urlParams_.Set("prettyPrint", "false") 8694 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/occurrences") 8695 urls += "?" + c.urlParams_.Encode() 8696 req, err := http.NewRequest("GET", urls, body) 8697 if err != nil { 8698 return nil, err 8699 } 8700 req.Header = reqHeaders 8701 googleapi.Expand(req.URL, map[string]string{ 8702 "name": c.name, 8703 }) 8704 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8705 } 8706 8707 // Do executes the "containeranalysis.projects.notes.occurrences.list" call. 8708 // Any non-2xx status code is an error. Response headers are in either 8709 // *ListNoteOccurrencesResponse.ServerResponse.Header or (if a response was 8710 // returned at all) in error.(*googleapi.Error).Header. Use 8711 // googleapi.IsNotModified to check whether the returned error was because 8712 // http.StatusNotModified was returned. 8713 func (c *ProjectsNotesOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListNoteOccurrencesResponse, error) { 8714 gensupport.SetOptions(c.urlParams_, opts...) 8715 res, err := c.doRequest("json") 8716 if res != nil && res.StatusCode == http.StatusNotModified { 8717 if res.Body != nil { 8718 res.Body.Close() 8719 } 8720 return nil, gensupport.WrapError(&googleapi.Error{ 8721 Code: res.StatusCode, 8722 Header: res.Header, 8723 }) 8724 } 8725 if err != nil { 8726 return nil, err 8727 } 8728 defer googleapi.CloseBody(res) 8729 if err := googleapi.CheckResponse(res); err != nil { 8730 return nil, gensupport.WrapError(err) 8731 } 8732 ret := &ListNoteOccurrencesResponse{ 8733 ServerResponse: googleapi.ServerResponse{ 8734 Header: res.Header, 8735 HTTPStatusCode: res.StatusCode, 8736 }, 8737 } 8738 target := &ret 8739 if err := gensupport.DecodeResponse(target, res); err != nil { 8740 return nil, err 8741 } 8742 return ret, nil 8743 } 8744 8745 // Pages invokes f for each page of results. 8746 // A non-nil error returned from f will halt the iteration. 8747 // The provided context supersedes any context provided to the Context method. 8748 func (c *ProjectsNotesOccurrencesListCall) Pages(ctx context.Context, f func(*ListNoteOccurrencesResponse) error) error { 8749 c.ctx_ = ctx 8750 defer c.PageToken(c.urlParams_.Get("pageToken")) 8751 for { 8752 x, err := c.Do() 8753 if err != nil { 8754 return err 8755 } 8756 if err := f(x); err != nil { 8757 return err 8758 } 8759 if x.NextPageToken == "" { 8760 return nil 8761 } 8762 c.PageToken(x.NextPageToken) 8763 } 8764 } 8765 8766 type ProjectsOccurrencesBatchCreateCall struct { 8767 s *Service 8768 parent string 8769 batchcreateoccurrencesrequest *BatchCreateOccurrencesRequest 8770 urlParams_ gensupport.URLParams 8771 ctx_ context.Context 8772 header_ http.Header 8773 } 8774 8775 // BatchCreate: Creates new occurrences in batch. 8776 // 8777 // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, 8778 // under which the occurrences are to be created. 8779 func (r *ProjectsOccurrencesService) BatchCreate(parent string, batchcreateoccurrencesrequest *BatchCreateOccurrencesRequest) *ProjectsOccurrencesBatchCreateCall { 8780 c := &ProjectsOccurrencesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8781 c.parent = parent 8782 c.batchcreateoccurrencesrequest = batchcreateoccurrencesrequest 8783 return c 8784 } 8785 8786 // Fields allows partial responses to be retrieved. See 8787 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8788 // details. 8789 func (c *ProjectsOccurrencesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesBatchCreateCall { 8790 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8791 return c 8792 } 8793 8794 // Context sets the context to be used in this call's Do method. 8795 func (c *ProjectsOccurrencesBatchCreateCall) Context(ctx context.Context) *ProjectsOccurrencesBatchCreateCall { 8796 c.ctx_ = ctx 8797 return c 8798 } 8799 8800 // Header returns a http.Header that can be modified by the caller to add 8801 // headers to the request. 8802 func (c *ProjectsOccurrencesBatchCreateCall) Header() http.Header { 8803 if c.header_ == nil { 8804 c.header_ = make(http.Header) 8805 } 8806 return c.header_ 8807 } 8808 8809 func (c *ProjectsOccurrencesBatchCreateCall) doRequest(alt string) (*http.Response, error) { 8810 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 8811 var body io.Reader = nil 8812 body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreateoccurrencesrequest) 8813 if err != nil { 8814 return nil, err 8815 } 8816 c.urlParams_.Set("alt", alt) 8817 c.urlParams_.Set("prettyPrint", "false") 8818 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:batchCreate") 8819 urls += "?" + c.urlParams_.Encode() 8820 req, err := http.NewRequest("POST", urls, body) 8821 if err != nil { 8822 return nil, err 8823 } 8824 req.Header = reqHeaders 8825 googleapi.Expand(req.URL, map[string]string{ 8826 "parent": c.parent, 8827 }) 8828 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8829 } 8830 8831 // Do executes the "containeranalysis.projects.occurrences.batchCreate" call. 8832 // Any non-2xx status code is an error. Response headers are in either 8833 // *BatchCreateOccurrencesResponse.ServerResponse.Header or (if a response was 8834 // returned at all) in error.(*googleapi.Error).Header. Use 8835 // googleapi.IsNotModified to check whether the returned error was because 8836 // http.StatusNotModified was returned. 8837 func (c *ProjectsOccurrencesBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateOccurrencesResponse, error) { 8838 gensupport.SetOptions(c.urlParams_, opts...) 8839 res, err := c.doRequest("json") 8840 if res != nil && res.StatusCode == http.StatusNotModified { 8841 if res.Body != nil { 8842 res.Body.Close() 8843 } 8844 return nil, gensupport.WrapError(&googleapi.Error{ 8845 Code: res.StatusCode, 8846 Header: res.Header, 8847 }) 8848 } 8849 if err != nil { 8850 return nil, err 8851 } 8852 defer googleapi.CloseBody(res) 8853 if err := googleapi.CheckResponse(res); err != nil { 8854 return nil, gensupport.WrapError(err) 8855 } 8856 ret := &BatchCreateOccurrencesResponse{ 8857 ServerResponse: googleapi.ServerResponse{ 8858 Header: res.Header, 8859 HTTPStatusCode: res.StatusCode, 8860 }, 8861 } 8862 target := &ret 8863 if err := gensupport.DecodeResponse(target, res); err != nil { 8864 return nil, err 8865 } 8866 return ret, nil 8867 } 8868 8869 type ProjectsOccurrencesCreateCall struct { 8870 s *Service 8871 parent string 8872 occurrence *Occurrence 8873 urlParams_ gensupport.URLParams 8874 ctx_ context.Context 8875 header_ http.Header 8876 } 8877 8878 // Create: Creates a new occurrence. 8879 // 8880 // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, 8881 // under which the occurrence is to be created. 8882 func (r *ProjectsOccurrencesService) Create(parent string, occurrence *Occurrence) *ProjectsOccurrencesCreateCall { 8883 c := &ProjectsOccurrencesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8884 c.parent = parent 8885 c.occurrence = occurrence 8886 return c 8887 } 8888 8889 // Fields allows partial responses to be retrieved. See 8890 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8891 // details. 8892 func (c *ProjectsOccurrencesCreateCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesCreateCall { 8893 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8894 return c 8895 } 8896 8897 // Context sets the context to be used in this call's Do method. 8898 func (c *ProjectsOccurrencesCreateCall) Context(ctx context.Context) *ProjectsOccurrencesCreateCall { 8899 c.ctx_ = ctx 8900 return c 8901 } 8902 8903 // Header returns a http.Header that can be modified by the caller to add 8904 // headers to the request. 8905 func (c *ProjectsOccurrencesCreateCall) Header() http.Header { 8906 if c.header_ == nil { 8907 c.header_ = make(http.Header) 8908 } 8909 return c.header_ 8910 } 8911 8912 func (c *ProjectsOccurrencesCreateCall) doRequest(alt string) (*http.Response, error) { 8913 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 8914 var body io.Reader = nil 8915 body, err := googleapi.WithoutDataWrapper.JSONReader(c.occurrence) 8916 if err != nil { 8917 return nil, err 8918 } 8919 c.urlParams_.Set("alt", alt) 8920 c.urlParams_.Set("prettyPrint", "false") 8921 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") 8922 urls += "?" + c.urlParams_.Encode() 8923 req, err := http.NewRequest("POST", urls, body) 8924 if err != nil { 8925 return nil, err 8926 } 8927 req.Header = reqHeaders 8928 googleapi.Expand(req.URL, map[string]string{ 8929 "parent": c.parent, 8930 }) 8931 return gensupport.SendRequest(c.ctx_, c.s.client, req) 8932 } 8933 8934 // Do executes the "containeranalysis.projects.occurrences.create" call. 8935 // Any non-2xx status code is an error. Response headers are in either 8936 // *Occurrence.ServerResponse.Header or (if a response was returned at all) in 8937 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 8938 // whether the returned error was because http.StatusNotModified was returned. 8939 func (c *ProjectsOccurrencesCreateCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 8940 gensupport.SetOptions(c.urlParams_, opts...) 8941 res, err := c.doRequest("json") 8942 if res != nil && res.StatusCode == http.StatusNotModified { 8943 if res.Body != nil { 8944 res.Body.Close() 8945 } 8946 return nil, gensupport.WrapError(&googleapi.Error{ 8947 Code: res.StatusCode, 8948 Header: res.Header, 8949 }) 8950 } 8951 if err != nil { 8952 return nil, err 8953 } 8954 defer googleapi.CloseBody(res) 8955 if err := googleapi.CheckResponse(res); err != nil { 8956 return nil, gensupport.WrapError(err) 8957 } 8958 ret := &Occurrence{ 8959 ServerResponse: googleapi.ServerResponse{ 8960 Header: res.Header, 8961 HTTPStatusCode: res.StatusCode, 8962 }, 8963 } 8964 target := &ret 8965 if err := gensupport.DecodeResponse(target, res); err != nil { 8966 return nil, err 8967 } 8968 return ret, nil 8969 } 8970 8971 type ProjectsOccurrencesDeleteCall struct { 8972 s *Service 8973 name string 8974 urlParams_ gensupport.URLParams 8975 ctx_ context.Context 8976 header_ http.Header 8977 } 8978 8979 // Delete: Deletes the specified occurrence. For example, use this method to 8980 // delete an occurrence when the occurrence is no longer applicable for the 8981 // given resource. 8982 // 8983 // - name: The name of the occurrence in the form of 8984 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 8985 func (r *ProjectsOccurrencesService) Delete(name string) *ProjectsOccurrencesDeleteCall { 8986 c := &ProjectsOccurrencesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 8987 c.name = name 8988 return c 8989 } 8990 8991 // Fields allows partial responses to be retrieved. See 8992 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 8993 // details. 8994 func (c *ProjectsOccurrencesDeleteCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesDeleteCall { 8995 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 8996 return c 8997 } 8998 8999 // Context sets the context to be used in this call's Do method. 9000 func (c *ProjectsOccurrencesDeleteCall) Context(ctx context.Context) *ProjectsOccurrencesDeleteCall { 9001 c.ctx_ = ctx 9002 return c 9003 } 9004 9005 // Header returns a http.Header that can be modified by the caller to add 9006 // headers to the request. 9007 func (c *ProjectsOccurrencesDeleteCall) Header() http.Header { 9008 if c.header_ == nil { 9009 c.header_ = make(http.Header) 9010 } 9011 return c.header_ 9012 } 9013 9014 func (c *ProjectsOccurrencesDeleteCall) doRequest(alt string) (*http.Response, error) { 9015 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 9016 var body io.Reader = nil 9017 c.urlParams_.Set("alt", alt) 9018 c.urlParams_.Set("prettyPrint", "false") 9019 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 9020 urls += "?" + c.urlParams_.Encode() 9021 req, err := http.NewRequest("DELETE", urls, body) 9022 if err != nil { 9023 return nil, err 9024 } 9025 req.Header = reqHeaders 9026 googleapi.Expand(req.URL, map[string]string{ 9027 "name": c.name, 9028 }) 9029 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9030 } 9031 9032 // Do executes the "containeranalysis.projects.occurrences.delete" call. 9033 // Any non-2xx status code is an error. Response headers are in either 9034 // *Empty.ServerResponse.Header or (if a response was returned at all) in 9035 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9036 // whether the returned error was because http.StatusNotModified was returned. 9037 func (c *ProjectsOccurrencesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 9038 gensupport.SetOptions(c.urlParams_, opts...) 9039 res, err := c.doRequest("json") 9040 if res != nil && res.StatusCode == http.StatusNotModified { 9041 if res.Body != nil { 9042 res.Body.Close() 9043 } 9044 return nil, gensupport.WrapError(&googleapi.Error{ 9045 Code: res.StatusCode, 9046 Header: res.Header, 9047 }) 9048 } 9049 if err != nil { 9050 return nil, err 9051 } 9052 defer googleapi.CloseBody(res) 9053 if err := googleapi.CheckResponse(res); err != nil { 9054 return nil, gensupport.WrapError(err) 9055 } 9056 ret := &Empty{ 9057 ServerResponse: googleapi.ServerResponse{ 9058 Header: res.Header, 9059 HTTPStatusCode: res.StatusCode, 9060 }, 9061 } 9062 target := &ret 9063 if err := gensupport.DecodeResponse(target, res); err != nil { 9064 return nil, err 9065 } 9066 return ret, nil 9067 } 9068 9069 type ProjectsOccurrencesGetCall struct { 9070 s *Service 9071 name string 9072 urlParams_ gensupport.URLParams 9073 ifNoneMatch_ string 9074 ctx_ context.Context 9075 header_ http.Header 9076 } 9077 9078 // Get: Gets the specified occurrence. 9079 // 9080 // - name: The name of the occurrence in the form of 9081 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 9082 func (r *ProjectsOccurrencesService) Get(name string) *ProjectsOccurrencesGetCall { 9083 c := &ProjectsOccurrencesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9084 c.name = name 9085 return c 9086 } 9087 9088 // Fields allows partial responses to be retrieved. See 9089 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9090 // details. 9091 func (c *ProjectsOccurrencesGetCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetCall { 9092 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9093 return c 9094 } 9095 9096 // IfNoneMatch sets an optional parameter which makes the operation fail if the 9097 // object's ETag matches the given value. This is useful for getting updates 9098 // only after the object has changed since the last request. 9099 func (c *ProjectsOccurrencesGetCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetCall { 9100 c.ifNoneMatch_ = entityTag 9101 return c 9102 } 9103 9104 // Context sets the context to be used in this call's Do method. 9105 func (c *ProjectsOccurrencesGetCall) Context(ctx context.Context) *ProjectsOccurrencesGetCall { 9106 c.ctx_ = ctx 9107 return c 9108 } 9109 9110 // Header returns a http.Header that can be modified by the caller to add 9111 // headers to the request. 9112 func (c *ProjectsOccurrencesGetCall) Header() http.Header { 9113 if c.header_ == nil { 9114 c.header_ = make(http.Header) 9115 } 9116 return c.header_ 9117 } 9118 9119 func (c *ProjectsOccurrencesGetCall) doRequest(alt string) (*http.Response, error) { 9120 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 9121 if c.ifNoneMatch_ != "" { 9122 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9123 } 9124 var body io.Reader = nil 9125 c.urlParams_.Set("alt", alt) 9126 c.urlParams_.Set("prettyPrint", "false") 9127 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 9128 urls += "?" + c.urlParams_.Encode() 9129 req, err := http.NewRequest("GET", urls, body) 9130 if err != nil { 9131 return nil, err 9132 } 9133 req.Header = reqHeaders 9134 googleapi.Expand(req.URL, map[string]string{ 9135 "name": c.name, 9136 }) 9137 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9138 } 9139 9140 // Do executes the "containeranalysis.projects.occurrences.get" call. 9141 // Any non-2xx status code is an error. Response headers are in either 9142 // *Occurrence.ServerResponse.Header or (if a response was returned at all) in 9143 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9144 // whether the returned error was because http.StatusNotModified was returned. 9145 func (c *ProjectsOccurrencesGetCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 9146 gensupport.SetOptions(c.urlParams_, opts...) 9147 res, err := c.doRequest("json") 9148 if res != nil && res.StatusCode == http.StatusNotModified { 9149 if res.Body != nil { 9150 res.Body.Close() 9151 } 9152 return nil, gensupport.WrapError(&googleapi.Error{ 9153 Code: res.StatusCode, 9154 Header: res.Header, 9155 }) 9156 } 9157 if err != nil { 9158 return nil, err 9159 } 9160 defer googleapi.CloseBody(res) 9161 if err := googleapi.CheckResponse(res); err != nil { 9162 return nil, gensupport.WrapError(err) 9163 } 9164 ret := &Occurrence{ 9165 ServerResponse: googleapi.ServerResponse{ 9166 Header: res.Header, 9167 HTTPStatusCode: res.StatusCode, 9168 }, 9169 } 9170 target := &ret 9171 if err := gensupport.DecodeResponse(target, res); err != nil { 9172 return nil, err 9173 } 9174 return ret, nil 9175 } 9176 9177 type ProjectsOccurrencesGetIamPolicyCall struct { 9178 s *Service 9179 resource string 9180 getiampolicyrequest *GetIamPolicyRequest 9181 urlParams_ gensupport.URLParams 9182 ctx_ context.Context 9183 header_ http.Header 9184 } 9185 9186 // GetIamPolicy: Gets the access control policy for a note or an occurrence 9187 // resource. Requires `containeranalysis.notes.setIamPolicy` or 9188 // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a 9189 // note or occurrence, respectively. The resource takes the format 9190 // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and 9191 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. 9192 // 9193 // - resource: REQUIRED: The resource for which the policy is being requested. 9194 // See Resource names (https://cloud.google.com/apis/design/resource_names) 9195 // for the appropriate value for this field. 9196 func (r *ProjectsOccurrencesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsOccurrencesGetIamPolicyCall { 9197 c := &ProjectsOccurrencesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9198 c.resource = resource 9199 c.getiampolicyrequest = getiampolicyrequest 9200 return c 9201 } 9202 9203 // Fields allows partial responses to be retrieved. See 9204 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9205 // details. 9206 func (c *ProjectsOccurrencesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetIamPolicyCall { 9207 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9208 return c 9209 } 9210 9211 // Context sets the context to be used in this call's Do method. 9212 func (c *ProjectsOccurrencesGetIamPolicyCall) Context(ctx context.Context) *ProjectsOccurrencesGetIamPolicyCall { 9213 c.ctx_ = ctx 9214 return c 9215 } 9216 9217 // Header returns a http.Header that can be modified by the caller to add 9218 // headers to the request. 9219 func (c *ProjectsOccurrencesGetIamPolicyCall) Header() http.Header { 9220 if c.header_ == nil { 9221 c.header_ = make(http.Header) 9222 } 9223 return c.header_ 9224 } 9225 9226 func (c *ProjectsOccurrencesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 9227 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 9228 var body io.Reader = nil 9229 body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) 9230 if err != nil { 9231 return nil, err 9232 } 9233 c.urlParams_.Set("alt", alt) 9234 c.urlParams_.Set("prettyPrint", "false") 9235 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy") 9236 urls += "?" + c.urlParams_.Encode() 9237 req, err := http.NewRequest("POST", urls, body) 9238 if err != nil { 9239 return nil, err 9240 } 9241 req.Header = reqHeaders 9242 googleapi.Expand(req.URL, map[string]string{ 9243 "resource": c.resource, 9244 }) 9245 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9246 } 9247 9248 // Do executes the "containeranalysis.projects.occurrences.getIamPolicy" call. 9249 // Any non-2xx status code is an error. Response headers are in either 9250 // *Policy.ServerResponse.Header or (if a response was returned at all) in 9251 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9252 // whether the returned error was because http.StatusNotModified was returned. 9253 func (c *ProjectsOccurrencesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 9254 gensupport.SetOptions(c.urlParams_, opts...) 9255 res, err := c.doRequest("json") 9256 if res != nil && res.StatusCode == http.StatusNotModified { 9257 if res.Body != nil { 9258 res.Body.Close() 9259 } 9260 return nil, gensupport.WrapError(&googleapi.Error{ 9261 Code: res.StatusCode, 9262 Header: res.Header, 9263 }) 9264 } 9265 if err != nil { 9266 return nil, err 9267 } 9268 defer googleapi.CloseBody(res) 9269 if err := googleapi.CheckResponse(res); err != nil { 9270 return nil, gensupport.WrapError(err) 9271 } 9272 ret := &Policy{ 9273 ServerResponse: googleapi.ServerResponse{ 9274 Header: res.Header, 9275 HTTPStatusCode: res.StatusCode, 9276 }, 9277 } 9278 target := &ret 9279 if err := gensupport.DecodeResponse(target, res); err != nil { 9280 return nil, err 9281 } 9282 return ret, nil 9283 } 9284 9285 type ProjectsOccurrencesGetNotesCall struct { 9286 s *Service 9287 name string 9288 urlParams_ gensupport.URLParams 9289 ifNoneMatch_ string 9290 ctx_ context.Context 9291 header_ http.Header 9292 } 9293 9294 // GetNotes: Gets the note attached to the specified occurrence. Consumer 9295 // projects can use this method to get a note that belongs to a provider 9296 // project. 9297 // 9298 // - name: The name of the occurrence in the form of 9299 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 9300 func (r *ProjectsOccurrencesService) GetNotes(name string) *ProjectsOccurrencesGetNotesCall { 9301 c := &ProjectsOccurrencesGetNotesCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9302 c.name = name 9303 return c 9304 } 9305 9306 // Fields allows partial responses to be retrieved. See 9307 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9308 // details. 9309 func (c *ProjectsOccurrencesGetNotesCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetNotesCall { 9310 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9311 return c 9312 } 9313 9314 // IfNoneMatch sets an optional parameter which makes the operation fail if the 9315 // object's ETag matches the given value. This is useful for getting updates 9316 // only after the object has changed since the last request. 9317 func (c *ProjectsOccurrencesGetNotesCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetNotesCall { 9318 c.ifNoneMatch_ = entityTag 9319 return c 9320 } 9321 9322 // Context sets the context to be used in this call's Do method. 9323 func (c *ProjectsOccurrencesGetNotesCall) Context(ctx context.Context) *ProjectsOccurrencesGetNotesCall { 9324 c.ctx_ = ctx 9325 return c 9326 } 9327 9328 // Header returns a http.Header that can be modified by the caller to add 9329 // headers to the request. 9330 func (c *ProjectsOccurrencesGetNotesCall) Header() http.Header { 9331 if c.header_ == nil { 9332 c.header_ = make(http.Header) 9333 } 9334 return c.header_ 9335 } 9336 9337 func (c *ProjectsOccurrencesGetNotesCall) doRequest(alt string) (*http.Response, error) { 9338 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 9339 if c.ifNoneMatch_ != "" { 9340 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9341 } 9342 var body io.Reader = nil 9343 c.urlParams_.Set("alt", alt) 9344 c.urlParams_.Set("prettyPrint", "false") 9345 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/notes") 9346 urls += "?" + c.urlParams_.Encode() 9347 req, err := http.NewRequest("GET", urls, body) 9348 if err != nil { 9349 return nil, err 9350 } 9351 req.Header = reqHeaders 9352 googleapi.Expand(req.URL, map[string]string{ 9353 "name": c.name, 9354 }) 9355 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9356 } 9357 9358 // Do executes the "containeranalysis.projects.occurrences.getNotes" call. 9359 // Any non-2xx status code is an error. Response headers are in either 9360 // *Note.ServerResponse.Header or (if a response was returned at all) in 9361 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9362 // whether the returned error was because http.StatusNotModified was returned. 9363 func (c *ProjectsOccurrencesGetNotesCall) Do(opts ...googleapi.CallOption) (*Note, error) { 9364 gensupport.SetOptions(c.urlParams_, opts...) 9365 res, err := c.doRequest("json") 9366 if res != nil && res.StatusCode == http.StatusNotModified { 9367 if res.Body != nil { 9368 res.Body.Close() 9369 } 9370 return nil, gensupport.WrapError(&googleapi.Error{ 9371 Code: res.StatusCode, 9372 Header: res.Header, 9373 }) 9374 } 9375 if err != nil { 9376 return nil, err 9377 } 9378 defer googleapi.CloseBody(res) 9379 if err := googleapi.CheckResponse(res); err != nil { 9380 return nil, gensupport.WrapError(err) 9381 } 9382 ret := &Note{ 9383 ServerResponse: googleapi.ServerResponse{ 9384 Header: res.Header, 9385 HTTPStatusCode: res.StatusCode, 9386 }, 9387 } 9388 target := &ret 9389 if err := gensupport.DecodeResponse(target, res); err != nil { 9390 return nil, err 9391 } 9392 return ret, nil 9393 } 9394 9395 type ProjectsOccurrencesGetVulnerabilitySummaryCall struct { 9396 s *Service 9397 parent string 9398 urlParams_ gensupport.URLParams 9399 ifNoneMatch_ string 9400 ctx_ context.Context 9401 header_ http.Header 9402 } 9403 9404 // GetVulnerabilitySummary: Gets a summary of the number and severity of 9405 // occurrences. 9406 // 9407 // - parent: The name of the project to get a vulnerability summary for in the 9408 // form of `projects/[PROJECT_ID]`. 9409 func (r *ProjectsOccurrencesService) GetVulnerabilitySummary(parent string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 9410 c := &ProjectsOccurrencesGetVulnerabilitySummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9411 c.parent = parent 9412 return c 9413 } 9414 9415 // Filter sets the optional parameter "filter": The filter expression. 9416 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Filter(filter string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 9417 c.urlParams_.Set("filter", filter) 9418 return c 9419 } 9420 9421 // Fields allows partial responses to be retrieved. See 9422 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9423 // details. 9424 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 9425 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9426 return c 9427 } 9428 9429 // IfNoneMatch sets an optional parameter which makes the operation fail if the 9430 // object's ETag matches the given value. This is useful for getting updates 9431 // only after the object has changed since the last request. 9432 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 9433 c.ifNoneMatch_ = entityTag 9434 return c 9435 } 9436 9437 // Context sets the context to be used in this call's Do method. 9438 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Context(ctx context.Context) *ProjectsOccurrencesGetVulnerabilitySummaryCall { 9439 c.ctx_ = ctx 9440 return c 9441 } 9442 9443 // Header returns a http.Header that can be modified by the caller to add 9444 // headers to the request. 9445 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Header() http.Header { 9446 if c.header_ == nil { 9447 c.header_ = make(http.Header) 9448 } 9449 return c.header_ 9450 } 9451 9452 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) doRequest(alt string) (*http.Response, error) { 9453 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 9454 if c.ifNoneMatch_ != "" { 9455 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9456 } 9457 var body io.Reader = nil 9458 c.urlParams_.Set("alt", alt) 9459 c.urlParams_.Set("prettyPrint", "false") 9460 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:vulnerabilitySummary") 9461 urls += "?" + c.urlParams_.Encode() 9462 req, err := http.NewRequest("GET", urls, body) 9463 if err != nil { 9464 return nil, err 9465 } 9466 req.Header = reqHeaders 9467 googleapi.Expand(req.URL, map[string]string{ 9468 "parent": c.parent, 9469 }) 9470 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9471 } 9472 9473 // Do executes the "containeranalysis.projects.occurrences.getVulnerabilitySummary" call. 9474 // Any non-2xx status code is an error. Response headers are in either 9475 // *VulnerabilityOccurrencesSummary.ServerResponse.Header or (if a response was 9476 // returned at all) in error.(*googleapi.Error).Header. Use 9477 // googleapi.IsNotModified to check whether the returned error was because 9478 // http.StatusNotModified was returned. 9479 func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Do(opts ...googleapi.CallOption) (*VulnerabilityOccurrencesSummary, error) { 9480 gensupport.SetOptions(c.urlParams_, opts...) 9481 res, err := c.doRequest("json") 9482 if res != nil && res.StatusCode == http.StatusNotModified { 9483 if res.Body != nil { 9484 res.Body.Close() 9485 } 9486 return nil, gensupport.WrapError(&googleapi.Error{ 9487 Code: res.StatusCode, 9488 Header: res.Header, 9489 }) 9490 } 9491 if err != nil { 9492 return nil, err 9493 } 9494 defer googleapi.CloseBody(res) 9495 if err := googleapi.CheckResponse(res); err != nil { 9496 return nil, gensupport.WrapError(err) 9497 } 9498 ret := &VulnerabilityOccurrencesSummary{ 9499 ServerResponse: googleapi.ServerResponse{ 9500 Header: res.Header, 9501 HTTPStatusCode: res.StatusCode, 9502 }, 9503 } 9504 target := &ret 9505 if err := gensupport.DecodeResponse(target, res); err != nil { 9506 return nil, err 9507 } 9508 return ret, nil 9509 } 9510 9511 type ProjectsOccurrencesListCall struct { 9512 s *Service 9513 parent string 9514 urlParams_ gensupport.URLParams 9515 ifNoneMatch_ string 9516 ctx_ context.Context 9517 header_ http.Header 9518 } 9519 9520 // List: Lists occurrences for the specified project. 9521 // 9522 // - parent: The name of the project to list occurrences for in the form of 9523 // `projects/[PROJECT_ID]`. 9524 func (r *ProjectsOccurrencesService) List(parent string) *ProjectsOccurrencesListCall { 9525 c := &ProjectsOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9526 c.parent = parent 9527 return c 9528 } 9529 9530 // Filter sets the optional parameter "filter": The filter expression. 9531 func (c *ProjectsOccurrencesListCall) Filter(filter string) *ProjectsOccurrencesListCall { 9532 c.urlParams_.Set("filter", filter) 9533 return c 9534 } 9535 9536 // PageSize sets the optional parameter "pageSize": Number of occurrences to 9537 // return in the list. Must be positive. Max allowed page size is 1000. If not 9538 // specified, page size defaults to 20. 9539 func (c *ProjectsOccurrencesListCall) PageSize(pageSize int64) *ProjectsOccurrencesListCall { 9540 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 9541 return c 9542 } 9543 9544 // PageToken sets the optional parameter "pageToken": Token to provide to skip 9545 // to a particular spot in the list. 9546 func (c *ProjectsOccurrencesListCall) PageToken(pageToken string) *ProjectsOccurrencesListCall { 9547 c.urlParams_.Set("pageToken", pageToken) 9548 return c 9549 } 9550 9551 // Fields allows partial responses to be retrieved. See 9552 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9553 // details. 9554 func (c *ProjectsOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesListCall { 9555 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9556 return c 9557 } 9558 9559 // IfNoneMatch sets an optional parameter which makes the operation fail if the 9560 // object's ETag matches the given value. This is useful for getting updates 9561 // only after the object has changed since the last request. 9562 func (c *ProjectsOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesListCall { 9563 c.ifNoneMatch_ = entityTag 9564 return c 9565 } 9566 9567 // Context sets the context to be used in this call's Do method. 9568 func (c *ProjectsOccurrencesListCall) Context(ctx context.Context) *ProjectsOccurrencesListCall { 9569 c.ctx_ = ctx 9570 return c 9571 } 9572 9573 // Header returns a http.Header that can be modified by the caller to add 9574 // headers to the request. 9575 func (c *ProjectsOccurrencesListCall) Header() http.Header { 9576 if c.header_ == nil { 9577 c.header_ = make(http.Header) 9578 } 9579 return c.header_ 9580 } 9581 9582 func (c *ProjectsOccurrencesListCall) doRequest(alt string) (*http.Response, error) { 9583 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) 9584 if c.ifNoneMatch_ != "" { 9585 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 9586 } 9587 var body io.Reader = nil 9588 c.urlParams_.Set("alt", alt) 9589 c.urlParams_.Set("prettyPrint", "false") 9590 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") 9591 urls += "?" + c.urlParams_.Encode() 9592 req, err := http.NewRequest("GET", urls, body) 9593 if err != nil { 9594 return nil, err 9595 } 9596 req.Header = reqHeaders 9597 googleapi.Expand(req.URL, map[string]string{ 9598 "parent": c.parent, 9599 }) 9600 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9601 } 9602 9603 // Do executes the "containeranalysis.projects.occurrences.list" call. 9604 // Any non-2xx status code is an error. Response headers are in either 9605 // *ListOccurrencesResponse.ServerResponse.Header or (if a response was 9606 // returned at all) in error.(*googleapi.Error).Header. Use 9607 // googleapi.IsNotModified to check whether the returned error was because 9608 // http.StatusNotModified was returned. 9609 func (c *ProjectsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOccurrencesResponse, error) { 9610 gensupport.SetOptions(c.urlParams_, opts...) 9611 res, err := c.doRequest("json") 9612 if res != nil && res.StatusCode == http.StatusNotModified { 9613 if res.Body != nil { 9614 res.Body.Close() 9615 } 9616 return nil, gensupport.WrapError(&googleapi.Error{ 9617 Code: res.StatusCode, 9618 Header: res.Header, 9619 }) 9620 } 9621 if err != nil { 9622 return nil, err 9623 } 9624 defer googleapi.CloseBody(res) 9625 if err := googleapi.CheckResponse(res); err != nil { 9626 return nil, gensupport.WrapError(err) 9627 } 9628 ret := &ListOccurrencesResponse{ 9629 ServerResponse: googleapi.ServerResponse{ 9630 Header: res.Header, 9631 HTTPStatusCode: res.StatusCode, 9632 }, 9633 } 9634 target := &ret 9635 if err := gensupport.DecodeResponse(target, res); err != nil { 9636 return nil, err 9637 } 9638 return ret, nil 9639 } 9640 9641 // Pages invokes f for each page of results. 9642 // A non-nil error returned from f will halt the iteration. 9643 // The provided context supersedes any context provided to the Context method. 9644 func (c *ProjectsOccurrencesListCall) Pages(ctx context.Context, f func(*ListOccurrencesResponse) error) error { 9645 c.ctx_ = ctx 9646 defer c.PageToken(c.urlParams_.Get("pageToken")) 9647 for { 9648 x, err := c.Do() 9649 if err != nil { 9650 return err 9651 } 9652 if err := f(x); err != nil { 9653 return err 9654 } 9655 if x.NextPageToken == "" { 9656 return nil 9657 } 9658 c.PageToken(x.NextPageToken) 9659 } 9660 } 9661 9662 type ProjectsOccurrencesPatchCall struct { 9663 s *Service 9664 name string 9665 occurrence *Occurrence 9666 urlParams_ gensupport.URLParams 9667 ctx_ context.Context 9668 header_ http.Header 9669 } 9670 9671 // Patch: Updates the specified occurrence. 9672 // 9673 // - name: The name of the occurrence in the form of 9674 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 9675 func (r *ProjectsOccurrencesService) Patch(name string, occurrence *Occurrence) *ProjectsOccurrencesPatchCall { 9676 c := &ProjectsOccurrencesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9677 c.name = name 9678 c.occurrence = occurrence 9679 return c 9680 } 9681 9682 // UpdateMask sets the optional parameter "updateMask": The fields to update. 9683 func (c *ProjectsOccurrencesPatchCall) UpdateMask(updateMask string) *ProjectsOccurrencesPatchCall { 9684 c.urlParams_.Set("updateMask", updateMask) 9685 return c 9686 } 9687 9688 // Fields allows partial responses to be retrieved. See 9689 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9690 // details. 9691 func (c *ProjectsOccurrencesPatchCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesPatchCall { 9692 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9693 return c 9694 } 9695 9696 // Context sets the context to be used in this call's Do method. 9697 func (c *ProjectsOccurrencesPatchCall) Context(ctx context.Context) *ProjectsOccurrencesPatchCall { 9698 c.ctx_ = ctx 9699 return c 9700 } 9701 9702 // Header returns a http.Header that can be modified by the caller to add 9703 // headers to the request. 9704 func (c *ProjectsOccurrencesPatchCall) Header() http.Header { 9705 if c.header_ == nil { 9706 c.header_ = make(http.Header) 9707 } 9708 return c.header_ 9709 } 9710 9711 func (c *ProjectsOccurrencesPatchCall) doRequest(alt string) (*http.Response, error) { 9712 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 9713 var body io.Reader = nil 9714 body, err := googleapi.WithoutDataWrapper.JSONReader(c.occurrence) 9715 if err != nil { 9716 return nil, err 9717 } 9718 c.urlParams_.Set("alt", alt) 9719 c.urlParams_.Set("prettyPrint", "false") 9720 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 9721 urls += "?" + c.urlParams_.Encode() 9722 req, err := http.NewRequest("PATCH", urls, body) 9723 if err != nil { 9724 return nil, err 9725 } 9726 req.Header = reqHeaders 9727 googleapi.Expand(req.URL, map[string]string{ 9728 "name": c.name, 9729 }) 9730 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9731 } 9732 9733 // Do executes the "containeranalysis.projects.occurrences.patch" call. 9734 // Any non-2xx status code is an error. Response headers are in either 9735 // *Occurrence.ServerResponse.Header or (if a response was returned at all) in 9736 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9737 // whether the returned error was because http.StatusNotModified was returned. 9738 func (c *ProjectsOccurrencesPatchCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { 9739 gensupport.SetOptions(c.urlParams_, opts...) 9740 res, err := c.doRequest("json") 9741 if res != nil && res.StatusCode == http.StatusNotModified { 9742 if res.Body != nil { 9743 res.Body.Close() 9744 } 9745 return nil, gensupport.WrapError(&googleapi.Error{ 9746 Code: res.StatusCode, 9747 Header: res.Header, 9748 }) 9749 } 9750 if err != nil { 9751 return nil, err 9752 } 9753 defer googleapi.CloseBody(res) 9754 if err := googleapi.CheckResponse(res); err != nil { 9755 return nil, gensupport.WrapError(err) 9756 } 9757 ret := &Occurrence{ 9758 ServerResponse: googleapi.ServerResponse{ 9759 Header: res.Header, 9760 HTTPStatusCode: res.StatusCode, 9761 }, 9762 } 9763 target := &ret 9764 if err := gensupport.DecodeResponse(target, res); err != nil { 9765 return nil, err 9766 } 9767 return ret, nil 9768 } 9769 9770 type ProjectsOccurrencesSetIamPolicyCall struct { 9771 s *Service 9772 resource string 9773 setiampolicyrequest *SetIamPolicyRequest 9774 urlParams_ gensupport.URLParams 9775 ctx_ context.Context 9776 header_ http.Header 9777 } 9778 9779 // SetIamPolicy: Sets the access control policy on the specified note or 9780 // occurrence. Requires `containeranalysis.notes.setIamPolicy` or 9781 // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a 9782 // note or an occurrence, respectively. The resource takes the format 9783 // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and 9784 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. 9785 // 9786 // - resource: REQUIRED: The resource for which the policy is being specified. 9787 // See Resource names (https://cloud.google.com/apis/design/resource_names) 9788 // for the appropriate value for this field. 9789 func (r *ProjectsOccurrencesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsOccurrencesSetIamPolicyCall { 9790 c := &ProjectsOccurrencesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9791 c.resource = resource 9792 c.setiampolicyrequest = setiampolicyrequest 9793 return c 9794 } 9795 9796 // Fields allows partial responses to be retrieved. See 9797 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9798 // details. 9799 func (c *ProjectsOccurrencesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesSetIamPolicyCall { 9800 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9801 return c 9802 } 9803 9804 // Context sets the context to be used in this call's Do method. 9805 func (c *ProjectsOccurrencesSetIamPolicyCall) Context(ctx context.Context) *ProjectsOccurrencesSetIamPolicyCall { 9806 c.ctx_ = ctx 9807 return c 9808 } 9809 9810 // Header returns a http.Header that can be modified by the caller to add 9811 // headers to the request. 9812 func (c *ProjectsOccurrencesSetIamPolicyCall) Header() http.Header { 9813 if c.header_ == nil { 9814 c.header_ = make(http.Header) 9815 } 9816 return c.header_ 9817 } 9818 9819 func (c *ProjectsOccurrencesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { 9820 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 9821 var body io.Reader = nil 9822 body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) 9823 if err != nil { 9824 return nil, err 9825 } 9826 c.urlParams_.Set("alt", alt) 9827 c.urlParams_.Set("prettyPrint", "false") 9828 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy") 9829 urls += "?" + c.urlParams_.Encode() 9830 req, err := http.NewRequest("POST", urls, body) 9831 if err != nil { 9832 return nil, err 9833 } 9834 req.Header = reqHeaders 9835 googleapi.Expand(req.URL, map[string]string{ 9836 "resource": c.resource, 9837 }) 9838 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9839 } 9840 9841 // Do executes the "containeranalysis.projects.occurrences.setIamPolicy" call. 9842 // Any non-2xx status code is an error. Response headers are in either 9843 // *Policy.ServerResponse.Header or (if a response was returned at all) in 9844 // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check 9845 // whether the returned error was because http.StatusNotModified was returned. 9846 func (c *ProjectsOccurrencesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { 9847 gensupport.SetOptions(c.urlParams_, opts...) 9848 res, err := c.doRequest("json") 9849 if res != nil && res.StatusCode == http.StatusNotModified { 9850 if res.Body != nil { 9851 res.Body.Close() 9852 } 9853 return nil, gensupport.WrapError(&googleapi.Error{ 9854 Code: res.StatusCode, 9855 Header: res.Header, 9856 }) 9857 } 9858 if err != nil { 9859 return nil, err 9860 } 9861 defer googleapi.CloseBody(res) 9862 if err := googleapi.CheckResponse(res); err != nil { 9863 return nil, gensupport.WrapError(err) 9864 } 9865 ret := &Policy{ 9866 ServerResponse: googleapi.ServerResponse{ 9867 Header: res.Header, 9868 HTTPStatusCode: res.StatusCode, 9869 }, 9870 } 9871 target := &ret 9872 if err := gensupport.DecodeResponse(target, res); err != nil { 9873 return nil, err 9874 } 9875 return ret, nil 9876 } 9877 9878 type ProjectsOccurrencesTestIamPermissionsCall struct { 9879 s *Service 9880 resource string 9881 testiampermissionsrequest *TestIamPermissionsRequest 9882 urlParams_ gensupport.URLParams 9883 ctx_ context.Context 9884 header_ http.Header 9885 } 9886 9887 // TestIamPermissions: Returns the permissions that a caller has on the 9888 // specified note or occurrence. Requires list permission on the project (for 9889 // example, `containeranalysis.notes.list`). The resource takes the format 9890 // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and 9891 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. 9892 // 9893 // - resource: REQUIRED: The resource for which the policy detail is being 9894 // requested. See Resource names 9895 // (https://cloud.google.com/apis/design/resource_names) for the appropriate 9896 // value for this field. 9897 func (r *ProjectsOccurrencesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsOccurrencesTestIamPermissionsCall { 9898 c := &ProjectsOccurrencesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} 9899 c.resource = resource 9900 c.testiampermissionsrequest = testiampermissionsrequest 9901 return c 9902 } 9903 9904 // Fields allows partial responses to be retrieved. See 9905 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 9906 // details. 9907 func (c *ProjectsOccurrencesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesTestIamPermissionsCall { 9908 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 9909 return c 9910 } 9911 9912 // Context sets the context to be used in this call's Do method. 9913 func (c *ProjectsOccurrencesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsOccurrencesTestIamPermissionsCall { 9914 c.ctx_ = ctx 9915 return c 9916 } 9917 9918 // Header returns a http.Header that can be modified by the caller to add 9919 // headers to the request. 9920 func (c *ProjectsOccurrencesTestIamPermissionsCall) Header() http.Header { 9921 if c.header_ == nil { 9922 c.header_ = make(http.Header) 9923 } 9924 return c.header_ 9925 } 9926 9927 func (c *ProjectsOccurrencesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { 9928 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 9929 var body io.Reader = nil 9930 body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) 9931 if err != nil { 9932 return nil, err 9933 } 9934 c.urlParams_.Set("alt", alt) 9935 c.urlParams_.Set("prettyPrint", "false") 9936 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions") 9937 urls += "?" + c.urlParams_.Encode() 9938 req, err := http.NewRequest("POST", urls, body) 9939 if err != nil { 9940 return nil, err 9941 } 9942 req.Header = reqHeaders 9943 googleapi.Expand(req.URL, map[string]string{ 9944 "resource": c.resource, 9945 }) 9946 return gensupport.SendRequest(c.ctx_, c.s.client, req) 9947 } 9948 9949 // Do executes the "containeranalysis.projects.occurrences.testIamPermissions" call. 9950 // Any non-2xx status code is an error. Response headers are in either 9951 // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was 9952 // returned at all) in error.(*googleapi.Error).Header. Use 9953 // googleapi.IsNotModified to check whether the returned error was because 9954 // http.StatusNotModified was returned. 9955 func (c *ProjectsOccurrencesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { 9956 gensupport.SetOptions(c.urlParams_, opts...) 9957 res, err := c.doRequest("json") 9958 if res != nil && res.StatusCode == http.StatusNotModified { 9959 if res.Body != nil { 9960 res.Body.Close() 9961 } 9962 return nil, gensupport.WrapError(&googleapi.Error{ 9963 Code: res.StatusCode, 9964 Header: res.Header, 9965 }) 9966 } 9967 if err != nil { 9968 return nil, err 9969 } 9970 defer googleapi.CloseBody(res) 9971 if err := googleapi.CheckResponse(res); err != nil { 9972 return nil, gensupport.WrapError(err) 9973 } 9974 ret := &TestIamPermissionsResponse{ 9975 ServerResponse: googleapi.ServerResponse{ 9976 Header: res.Header, 9977 HTTPStatusCode: res.StatusCode, 9978 }, 9979 } 9980 target := &ret 9981 if err := gensupport.DecodeResponse(target, res); err != nil { 9982 return nil, err 9983 } 9984 return ret, nil 9985 } 9986 9987 type ProjectsResourcesExportSBOMCall struct { 9988 s *Service 9989 name string 9990 exportsbomrequest *ExportSBOMRequest 9991 urlParams_ gensupport.URLParams 9992 ctx_ context.Context 9993 header_ http.Header 9994 } 9995 9996 // ExportSBOM: Generates an SBOM and other dependency information for the given 9997 // resource. 9998 // 9999 // - name: The name of the resource in the form of 10000 // `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. 10001 func (r *ProjectsResourcesService) ExportSBOM(name string, exportsbomrequest *ExportSBOMRequest) *ProjectsResourcesExportSBOMCall { 10002 c := &ProjectsResourcesExportSBOMCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10003 c.name = name 10004 c.exportsbomrequest = exportsbomrequest 10005 return c 10006 } 10007 10008 // Fields allows partial responses to be retrieved. See 10009 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 10010 // details. 10011 func (c *ProjectsResourcesExportSBOMCall) Fields(s ...googleapi.Field) *ProjectsResourcesExportSBOMCall { 10012 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10013 return c 10014 } 10015 10016 // Context sets the context to be used in this call's Do method. 10017 func (c *ProjectsResourcesExportSBOMCall) Context(ctx context.Context) *ProjectsResourcesExportSBOMCall { 10018 c.ctx_ = ctx 10019 return c 10020 } 10021 10022 // Header returns a http.Header that can be modified by the caller to add 10023 // headers to the request. 10024 func (c *ProjectsResourcesExportSBOMCall) Header() http.Header { 10025 if c.header_ == nil { 10026 c.header_ = make(http.Header) 10027 } 10028 return c.header_ 10029 } 10030 10031 func (c *ProjectsResourcesExportSBOMCall) doRequest(alt string) (*http.Response, error) { 10032 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 10033 var body io.Reader = nil 10034 body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportsbomrequest) 10035 if err != nil { 10036 return nil, err 10037 } 10038 c.urlParams_.Set("alt", alt) 10039 c.urlParams_.Set("prettyPrint", "false") 10040 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:exportSBOM") 10041 urls += "?" + c.urlParams_.Encode() 10042 req, err := http.NewRequest("POST", urls, body) 10043 if err != nil { 10044 return nil, err 10045 } 10046 req.Header = reqHeaders 10047 googleapi.Expand(req.URL, map[string]string{ 10048 "name": c.name, 10049 }) 10050 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10051 } 10052 10053 // Do executes the "containeranalysis.projects.resources.exportSBOM" call. 10054 // Any non-2xx status code is an error. Response headers are in either 10055 // *ExportSBOMResponse.ServerResponse.Header or (if a response was returned at 10056 // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 10057 // check whether the returned error was because http.StatusNotModified was 10058 // returned. 10059 func (c *ProjectsResourcesExportSBOMCall) Do(opts ...googleapi.CallOption) (*ExportSBOMResponse, error) { 10060 gensupport.SetOptions(c.urlParams_, opts...) 10061 res, err := c.doRequest("json") 10062 if res != nil && res.StatusCode == http.StatusNotModified { 10063 if res.Body != nil { 10064 res.Body.Close() 10065 } 10066 return nil, gensupport.WrapError(&googleapi.Error{ 10067 Code: res.StatusCode, 10068 Header: res.Header, 10069 }) 10070 } 10071 if err != nil { 10072 return nil, err 10073 } 10074 defer googleapi.CloseBody(res) 10075 if err := googleapi.CheckResponse(res); err != nil { 10076 return nil, gensupport.WrapError(err) 10077 } 10078 ret := &ExportSBOMResponse{ 10079 ServerResponse: googleapi.ServerResponse{ 10080 Header: res.Header, 10081 HTTPStatusCode: res.StatusCode, 10082 }, 10083 } 10084 target := &ret 10085 if err := gensupport.DecodeResponse(target, res); err != nil { 10086 return nil, err 10087 } 10088 return ret, nil 10089 } 10090 10091 type ProjectsResourcesGeneratePackagesSummaryCall struct { 10092 s *Service 10093 name string 10094 generatepackagessummaryrequest *GeneratePackagesSummaryRequest 10095 urlParams_ gensupport.URLParams 10096 ctx_ context.Context 10097 header_ http.Header 10098 } 10099 10100 // GeneratePackagesSummary: Gets a summary of the packages within a given 10101 // resource. 10102 // 10103 // - name: The name of the resource to get a packages summary for in the form 10104 // of `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. 10105 func (r *ProjectsResourcesService) GeneratePackagesSummary(name string, generatepackagessummaryrequest *GeneratePackagesSummaryRequest) *ProjectsResourcesGeneratePackagesSummaryCall { 10106 c := &ProjectsResourcesGeneratePackagesSummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} 10107 c.name = name 10108 c.generatepackagessummaryrequest = generatepackagessummaryrequest 10109 return c 10110 } 10111 10112 // Fields allows partial responses to be retrieved. See 10113 // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more 10114 // details. 10115 func (c *ProjectsResourcesGeneratePackagesSummaryCall) Fields(s ...googleapi.Field) *ProjectsResourcesGeneratePackagesSummaryCall { 10116 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 10117 return c 10118 } 10119 10120 // Context sets the context to be used in this call's Do method. 10121 func (c *ProjectsResourcesGeneratePackagesSummaryCall) Context(ctx context.Context) *ProjectsResourcesGeneratePackagesSummaryCall { 10122 c.ctx_ = ctx 10123 return c 10124 } 10125 10126 // Header returns a http.Header that can be modified by the caller to add 10127 // headers to the request. 10128 func (c *ProjectsResourcesGeneratePackagesSummaryCall) Header() http.Header { 10129 if c.header_ == nil { 10130 c.header_ = make(http.Header) 10131 } 10132 return c.header_ 10133 } 10134 10135 func (c *ProjectsResourcesGeneratePackagesSummaryCall) doRequest(alt string) (*http.Response, error) { 10136 reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) 10137 var body io.Reader = nil 10138 body, err := googleapi.WithoutDataWrapper.JSONReader(c.generatepackagessummaryrequest) 10139 if err != nil { 10140 return nil, err 10141 } 10142 c.urlParams_.Set("alt", alt) 10143 c.urlParams_.Set("prettyPrint", "false") 10144 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:generatePackagesSummary") 10145 urls += "?" + c.urlParams_.Encode() 10146 req, err := http.NewRequest("POST", urls, body) 10147 if err != nil { 10148 return nil, err 10149 } 10150 req.Header = reqHeaders 10151 googleapi.Expand(req.URL, map[string]string{ 10152 "name": c.name, 10153 }) 10154 return gensupport.SendRequest(c.ctx_, c.s.client, req) 10155 } 10156 10157 // Do executes the "containeranalysis.projects.resources.generatePackagesSummary" call. 10158 // Any non-2xx status code is an error. Response headers are in either 10159 // *PackagesSummaryResponse.ServerResponse.Header or (if a response was 10160 // returned at all) in error.(*googleapi.Error).Header. Use 10161 // googleapi.IsNotModified to check whether the returned error was because 10162 // http.StatusNotModified was returned. 10163 func (c *ProjectsResourcesGeneratePackagesSummaryCall) Do(opts ...googleapi.CallOption) (*PackagesSummaryResponse, error) { 10164 gensupport.SetOptions(c.urlParams_, opts...) 10165 res, err := c.doRequest("json") 10166 if res != nil && res.StatusCode == http.StatusNotModified { 10167 if res.Body != nil { 10168 res.Body.Close() 10169 } 10170 return nil, gensupport.WrapError(&googleapi.Error{ 10171 Code: res.StatusCode, 10172 Header: res.Header, 10173 }) 10174 } 10175 if err != nil { 10176 return nil, err 10177 } 10178 defer googleapi.CloseBody(res) 10179 if err := googleapi.CheckResponse(res); err != nil { 10180 return nil, gensupport.WrapError(err) 10181 } 10182 ret := &PackagesSummaryResponse{ 10183 ServerResponse: googleapi.ServerResponse{ 10184 Header: res.Header, 10185 HTTPStatusCode: res.StatusCode, 10186 }, 10187 } 10188 target := &ret 10189 if err := gensupport.DecodeResponse(target, res); err != nil { 10190 return nil, err 10191 } 10192 return ret, nil 10193 } 10194