1// Copyright 2021 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 ondemandscanning provides access to the On-Demand Scanning API. 8// 9// For product documentation, see: https://cloud.google.com/container-analysis/docs/on-demand-scanning/ 10// 11// Creating a client 12// 13// Usage example: 14// 15// import "google.golang.org/api/ondemandscanning/v1beta1" 16// ... 17// ctx := context.Background() 18// ondemandscanningService, err := ondemandscanning.NewService(ctx) 19// 20// In this example, Google Application Default Credentials are used for authentication. 21// 22// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. 23// 24// Other authentication options 25// 26// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: 27// 28// ondemandscanningService, err := ondemandscanning.NewService(ctx, option.WithAPIKey("AIza...")) 29// 30// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: 31// 32// config := &oauth2.Config{...} 33// // ... 34// token, err := config.Exchange(ctx, ...) 35// ondemandscanningService, err := ondemandscanning.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) 36// 37// See https://godoc.org/google.golang.org/api/option/ for details on options. 38package ondemandscanning // import "google.golang.org/api/ondemandscanning/v1beta1" 39 40import ( 41 "bytes" 42 "context" 43 "encoding/json" 44 "errors" 45 "fmt" 46 "io" 47 "net/http" 48 "net/url" 49 "strconv" 50 "strings" 51 52 googleapi "google.golang.org/api/googleapi" 53 gensupport "google.golang.org/api/internal/gensupport" 54 option "google.golang.org/api/option" 55 internaloption "google.golang.org/api/option/internaloption" 56 htransport "google.golang.org/api/transport/http" 57) 58 59// Always reference these packages, just in case the auto-generated code 60// below doesn't. 61var _ = bytes.NewBuffer 62var _ = strconv.Itoa 63var _ = fmt.Sprintf 64var _ = json.NewDecoder 65var _ = io.Copy 66var _ = url.Parse 67var _ = gensupport.MarshalJSON 68var _ = googleapi.Version 69var _ = errors.New 70var _ = strings.Replace 71var _ = context.Canceled 72var _ = internaloption.WithDefaultEndpoint 73 74const apiId = "ondemandscanning:v1beta1" 75const apiName = "ondemandscanning" 76const apiVersion = "v1beta1" 77const basePath = "https://ondemandscanning.googleapis.com/" 78const mtlsBasePath = "https://ondemandscanning.mtls.googleapis.com/" 79 80// OAuth2 scopes used by this API. 81const ( 82 // See, edit, configure, and delete your Google Cloud data and see the 83 // email address for your Google Account. 84 CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" 85) 86 87// NewService creates a new Service. 88func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { 89 scopesOption := option.WithScopes( 90 "https://www.googleapis.com/auth/cloud-platform", 91 ) 92 // NOTE: prepend, so we don't override user-specified scopes. 93 opts = append([]option.ClientOption{scopesOption}, opts...) 94 opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) 95 opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) 96 client, endpoint, err := htransport.NewClient(ctx, opts...) 97 if err != nil { 98 return nil, err 99 } 100 s, err := New(client) 101 if err != nil { 102 return nil, err 103 } 104 if endpoint != "" { 105 s.BasePath = endpoint 106 } 107 return s, nil 108} 109 110// New creates a new Service. It uses the provided http.Client for requests. 111// 112// Deprecated: please use NewService instead. 113// To provide a custom HTTP client, use option.WithHTTPClient. 114// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. 115func New(client *http.Client) (*Service, error) { 116 if client == nil { 117 return nil, errors.New("client is nil") 118 } 119 s := &Service{client: client, BasePath: basePath} 120 s.Projects = NewProjectsService(s) 121 return s, nil 122} 123 124type Service struct { 125 client *http.Client 126 BasePath string // API endpoint base URL 127 UserAgent string // optional additional User-Agent fragment 128 129 Projects *ProjectsService 130} 131 132func (s *Service) userAgent() string { 133 if s.UserAgent == "" { 134 return googleapi.UserAgent 135 } 136 return googleapi.UserAgent + " " + s.UserAgent 137} 138 139func NewProjectsService(s *Service) *ProjectsService { 140 rs := &ProjectsService{s: s} 141 rs.Locations = NewProjectsLocationsService(s) 142 return rs 143} 144 145type ProjectsService struct { 146 s *Service 147 148 Locations *ProjectsLocationsService 149} 150 151func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { 152 rs := &ProjectsLocationsService{s: s} 153 rs.Operations = NewProjectsLocationsOperationsService(s) 154 rs.Scans = NewProjectsLocationsScansService(s) 155 return rs 156} 157 158type ProjectsLocationsService struct { 159 s *Service 160 161 Operations *ProjectsLocationsOperationsService 162 163 Scans *ProjectsLocationsScansService 164} 165 166func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { 167 rs := &ProjectsLocationsOperationsService{s: s} 168 return rs 169} 170 171type ProjectsLocationsOperationsService struct { 172 s *Service 173} 174 175func NewProjectsLocationsScansService(s *Service) *ProjectsLocationsScansService { 176 rs := &ProjectsLocationsScansService{s: s} 177 rs.Vulnerabilities = NewProjectsLocationsScansVulnerabilitiesService(s) 178 return rs 179} 180 181type ProjectsLocationsScansService struct { 182 s *Service 183 184 Vulnerabilities *ProjectsLocationsScansVulnerabilitiesService 185} 186 187func NewProjectsLocationsScansVulnerabilitiesService(s *Service) *ProjectsLocationsScansVulnerabilitiesService { 188 rs := &ProjectsLocationsScansVulnerabilitiesService{s: s} 189 return rs 190} 191 192type ProjectsLocationsScansVulnerabilitiesService struct { 193 s *Service 194} 195 196// AliasContext: An alias to a repo revision. 197type AliasContext struct { 198 // Kind: The alias kind. 199 // 200 // Possible values: 201 // "KIND_UNSPECIFIED" - Unknown. 202 // "FIXED" - Git tag. 203 // "MOVABLE" - Git branch. 204 // "OTHER" - Used to specify non-standard aliases. For example, if a 205 // Git repo has a ref named "refs/foo/bar". 206 Kind string `json:"kind,omitempty"` 207 208 // Name: The alias name. 209 Name string `json:"name,omitempty"` 210 211 // ForceSendFields is a list of field names (e.g. "Kind") to 212 // unconditionally include in API requests. By default, fields with 213 // empty or default values are omitted from API requests. However, any 214 // non-pointer, non-interface field appearing in ForceSendFields will be 215 // sent to the server regardless of whether the field is empty or not. 216 // This may be used to include empty fields in Patch requests. 217 ForceSendFields []string `json:"-"` 218 219 // NullFields is a list of field names (e.g. "Kind") to include in API 220 // requests with the JSON null value. By default, fields with empty 221 // values are omitted from API requests. However, any field with an 222 // empty value appearing in NullFields will be sent to the server as 223 // null. It is an error if a field in this list has a non-empty value. 224 // This may be used to include null fields in Patch requests. 225 NullFields []string `json:"-"` 226} 227 228func (s *AliasContext) MarshalJSON() ([]byte, error) { 229 type NoMethod AliasContext 230 raw := NoMethod(*s) 231 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 232} 233 234// AnalyzePackagesMetadata: AnalyzePackagesMetadata contains metadata 235// for an active scan of a container image. 236type AnalyzePackagesMetadata struct { 237 // CreateTime: When the scan was created. 238 CreateTime string `json:"createTime,omitempty"` 239 240 // ResourceUri: The resource URI of the container image being scanned. 241 ResourceUri string `json:"resourceUri,omitempty"` 242 243 // ForceSendFields is a list of field names (e.g. "CreateTime") to 244 // unconditionally include in API requests. By default, fields with 245 // empty or default values are omitted from API requests. However, any 246 // non-pointer, non-interface field appearing in ForceSendFields will be 247 // sent to the server regardless of whether the field is empty or not. 248 // This may be used to include empty fields in Patch requests. 249 ForceSendFields []string `json:"-"` 250 251 // NullFields is a list of field names (e.g. "CreateTime") to include in 252 // API requests with the JSON null value. By default, fields with empty 253 // values are omitted from API requests. However, any field with an 254 // empty value appearing in NullFields will be sent to the server as 255 // null. It is an error if a field in this list has a non-empty value. 256 // This may be used to include null fields in Patch requests. 257 NullFields []string `json:"-"` 258} 259 260func (s *AnalyzePackagesMetadata) MarshalJSON() ([]byte, error) { 261 type NoMethod AnalyzePackagesMetadata 262 raw := NoMethod(*s) 263 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 264} 265 266// AnalyzePackagesMetadataV1: AnalyzePackagesMetadata contains metadata 267// for an active scan of a container image. 268type AnalyzePackagesMetadataV1 struct { 269 // CreateTime: When the scan was created. 270 CreateTime string `json:"createTime,omitempty"` 271 272 // ResourceUri: The resource URI of the container image being scanned. 273 ResourceUri string `json:"resourceUri,omitempty"` 274 275 // ForceSendFields is a list of field names (e.g. "CreateTime") to 276 // unconditionally include in API requests. By default, fields with 277 // empty or default values are omitted from API requests. However, any 278 // non-pointer, non-interface field appearing in ForceSendFields will be 279 // sent to the server regardless of whether the field is empty or not. 280 // This may be used to include empty fields in Patch requests. 281 ForceSendFields []string `json:"-"` 282 283 // NullFields is a list of field names (e.g. "CreateTime") to include in 284 // API requests with the JSON null value. By default, fields with empty 285 // values are omitted from API requests. However, any field with an 286 // empty value appearing in NullFields will be sent to the server as 287 // null. It is an error if a field in this list has a non-empty value. 288 // This may be used to include null fields in Patch requests. 289 NullFields []string `json:"-"` 290} 291 292func (s *AnalyzePackagesMetadataV1) MarshalJSON() ([]byte, error) { 293 type NoMethod AnalyzePackagesMetadataV1 294 raw := NoMethod(*s) 295 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 296} 297 298// AnalyzePackagesRequest: AnalyzePackagesRequest is the request to 299// analyze a list of packages and create Vulnerability Occurrences for 300// it. 301type AnalyzePackagesRequest struct { 302 // Packages: The packages to analyze. 303 Packages []*PackageData `json:"packages,omitempty"` 304 305 // ResourceUri: Required. The resource URI of the container image being 306 // scanned. 307 ResourceUri string `json:"resourceUri,omitempty"` 308 309 // ForceSendFields is a list of field names (e.g. "Packages") to 310 // unconditionally include in API requests. By default, fields with 311 // empty or default values are omitted from API requests. However, any 312 // non-pointer, non-interface field appearing in ForceSendFields will be 313 // sent to the server regardless of whether the field is empty or not. 314 // This may be used to include empty fields in Patch requests. 315 ForceSendFields []string `json:"-"` 316 317 // NullFields is a list of field names (e.g. "Packages") to include in 318 // API requests with the JSON null value. By default, fields with empty 319 // values are omitted from API requests. However, any field with an 320 // empty value appearing in NullFields will be sent to the server as 321 // null. It is an error if a field in this list has a non-empty value. 322 // This may be used to include null fields in Patch requests. 323 NullFields []string `json:"-"` 324} 325 326func (s *AnalyzePackagesRequest) MarshalJSON() ([]byte, error) { 327 type NoMethod AnalyzePackagesRequest 328 raw := NoMethod(*s) 329 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 330} 331 332// AnalyzePackagesResponse: AnalyzePackagesResponse contains the 333// information necessary to find results for the given scan. 334type AnalyzePackagesResponse struct { 335 // Scan: The name of the scan resource created by this successful scan. 336 Scan string `json:"scan,omitempty"` 337 338 // ForceSendFields is a list of field names (e.g. "Scan") to 339 // unconditionally include in API requests. By default, fields with 340 // empty or default values are omitted from API requests. However, any 341 // non-pointer, non-interface field appearing in ForceSendFields will be 342 // sent to the server regardless of whether the field is empty or not. 343 // This may be used to include empty fields in Patch requests. 344 ForceSendFields []string `json:"-"` 345 346 // NullFields is a list of field names (e.g. "Scan") to include in API 347 // requests with the JSON null value. By default, fields with empty 348 // values are omitted from API requests. However, any field with an 349 // empty value appearing in NullFields will be sent to the server as 350 // null. It is an error if a field in this list has a non-empty value. 351 // This may be used to include null fields in Patch requests. 352 NullFields []string `json:"-"` 353} 354 355func (s *AnalyzePackagesResponse) MarshalJSON() ([]byte, error) { 356 type NoMethod AnalyzePackagesResponse 357 raw := NoMethod(*s) 358 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 359} 360 361// AnalyzePackagesResponseV1: AnalyzePackagesResponse contains the 362// information necessary to find results for the given scan. 363type AnalyzePackagesResponseV1 struct { 364 // Scan: The name of the scan resource created by this successful scan. 365 Scan string `json:"scan,omitempty"` 366 367 // ForceSendFields is a list of field names (e.g. "Scan") to 368 // unconditionally include in API requests. By default, fields with 369 // empty or default values are omitted from API requests. However, any 370 // non-pointer, non-interface field appearing in ForceSendFields will be 371 // sent to the server regardless of whether the field is empty or not. 372 // This may be used to include empty fields in Patch requests. 373 ForceSendFields []string `json:"-"` 374 375 // NullFields is a list of field names (e.g. "Scan") to include in API 376 // requests with the JSON null value. By default, fields with empty 377 // values are omitted from API requests. However, any field with an 378 // empty value appearing in NullFields will be sent to the server as 379 // null. It is an error if a field in this list has a non-empty value. 380 // This may be used to include null fields in Patch requests. 381 NullFields []string `json:"-"` 382} 383 384func (s *AnalyzePackagesResponseV1) MarshalJSON() ([]byte, error) { 385 type NoMethod AnalyzePackagesResponseV1 386 raw := NoMethod(*s) 387 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 388} 389 390// Artifact: Artifact describes a build product. 391type Artifact struct { 392 // Checksum: Hash or checksum value of a binary, or Docker Registry 2.0 393 // digest of a container. 394 Checksum string `json:"checksum,omitempty"` 395 396 // Id: Artifact ID, if any; for container images, this will be a URL by 397 // digest like `gcr.io/projectID/imagename@sha256:123456`. 398 Id string `json:"id,omitempty"` 399 400 // Names: Related artifact names. This may be the path to a binary or 401 // jar file, or in the case of a container build, the name used to push 402 // the container image to Google Container Registry, as presented to 403 // `docker push`. Note that a single Artifact ID can have multiple 404 // names, for example if two tags are applied to one image. 405 Names []string `json:"names,omitempty"` 406 407 // ForceSendFields is a list of field names (e.g. "Checksum") to 408 // unconditionally include in API requests. By default, fields with 409 // empty or default values are omitted from API requests. However, any 410 // non-pointer, non-interface field appearing in ForceSendFields will be 411 // sent to the server regardless of whether the field is empty or not. 412 // This may be used to include empty fields in Patch requests. 413 ForceSendFields []string `json:"-"` 414 415 // NullFields is a list of field names (e.g. "Checksum") to include in 416 // API requests with the JSON null value. By default, fields with empty 417 // values are omitted from API requests. However, any field with an 418 // empty value appearing in NullFields will be sent to the server as 419 // null. It is an error if a field in this list has a non-empty value. 420 // This may be used to include null fields in Patch requests. 421 NullFields []string `json:"-"` 422} 423 424func (s *Artifact) MarshalJSON() ([]byte, error) { 425 type NoMethod Artifact 426 raw := NoMethod(*s) 427 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 428} 429 430// AttestationOccurrence: Occurrence that represents a single 431// "attestation". The authenticity of an attestation can be verified 432// using the attached signature. If the verifier trusts the public key 433// of the signer, then verifying the signature is sufficient to 434// establish trust. In this circumstance, the authority to which this 435// attestation is attached is primarily useful for lookup (how to find 436// this attestation if you already know the authority and artifact to be 437// verified) and intent (for which authority this attestation was 438// intended to sign. 439type AttestationOccurrence struct { 440 // Jwts: One or more JWTs encoding a self-contained attestation. Each 441 // JWT encodes the payload that it verifies within the JWT itself. 442 // Verifier implementation SHOULD ignore the `serialized_payload` field 443 // when verifying these JWTs. If only JWTs are present on this 444 // AttestationOccurrence, then the `serialized_payload` SHOULD be left 445 // empty. Each JWT SHOULD encode a claim specific to the `resource_uri` 446 // of this Occurrence, but this is not validated by Grafeas metadata API 447 // implementations. The JWT itself is opaque to Grafeas. 448 Jwts []*Jwt `json:"jwts,omitempty"` 449 450 // SerializedPayload: Required. The serialized payload that is verified 451 // by one or more `signatures`. 452 SerializedPayload string `json:"serializedPayload,omitempty"` 453 454 // Signatures: One or more signatures over `serialized_payload`. 455 // Verifier implementations should consider this attestation message 456 // verified if at least one `signature` verifies `serialized_payload`. 457 // See `Signature` in common.proto for more details on signature 458 // structure and verification. 459 Signatures []*Signature `json:"signatures,omitempty"` 460 461 // ForceSendFields is a list of field names (e.g. "Jwts") to 462 // unconditionally include in API requests. By default, fields with 463 // empty or default values are omitted from API requests. However, any 464 // non-pointer, non-interface field appearing in ForceSendFields will be 465 // sent to the server regardless of whether the field is empty or not. 466 // This may be used to include empty fields in Patch requests. 467 ForceSendFields []string `json:"-"` 468 469 // NullFields is a list of field names (e.g. "Jwts") to include in API 470 // requests with the JSON null value. By default, fields with empty 471 // values are omitted from API requests. However, any field with an 472 // empty value appearing in NullFields will be sent to the server as 473 // null. It is an error if a field in this list has a non-empty value. 474 // This may be used to include null fields in Patch requests. 475 NullFields []string `json:"-"` 476} 477 478func (s *AttestationOccurrence) MarshalJSON() ([]byte, error) { 479 type NoMethod AttestationOccurrence 480 raw := NoMethod(*s) 481 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 482} 483 484// BuildOccurrence: Details of a build occurrence. 485type BuildOccurrence struct { 486 // IntotoProvenance: In-toto Provenance representation as defined in 487 // spec. 488 IntotoProvenance *InTotoProvenance `json:"intotoProvenance,omitempty"` 489 490 // Provenance: Required. The actual provenance for the build. 491 Provenance *BuildProvenance `json:"provenance,omitempty"` 492 493 // ProvenanceBytes: Serialized JSON representation of the provenance, 494 // used in generating the build signature in the corresponding build 495 // note. After verifying the signature, `provenance_bytes` can be 496 // unmarshalled and compared to the provenance to confirm that it is 497 // unchanged. A base64-encoded string representation of the provenance 498 // bytes is used for the signature in order to interoperate with openssl 499 // which expects this format for signature verification. The serialized 500 // form is captured both to avoid ambiguity in how the provenance is 501 // marshalled to json as well to prevent incompatibilities with future 502 // changes. 503 ProvenanceBytes string `json:"provenanceBytes,omitempty"` 504 505 // ForceSendFields is a list of field names (e.g. "IntotoProvenance") to 506 // unconditionally include in API requests. By default, fields with 507 // empty or default values are omitted from API requests. However, any 508 // non-pointer, non-interface field appearing in ForceSendFields will be 509 // sent to the server regardless of whether the field is empty or not. 510 // This may be used to include empty fields in Patch requests. 511 ForceSendFields []string `json:"-"` 512 513 // NullFields is a list of field names (e.g. "IntotoProvenance") to 514 // include in API requests with the JSON null value. By default, fields 515 // with empty values are omitted from API requests. However, any field 516 // with an empty value appearing in NullFields will be sent to the 517 // server as null. It is an error if a field in this list has a 518 // non-empty value. This may be used to include null fields in Patch 519 // requests. 520 NullFields []string `json:"-"` 521} 522 523func (s *BuildOccurrence) MarshalJSON() ([]byte, error) { 524 type NoMethod BuildOccurrence 525 raw := NoMethod(*s) 526 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 527} 528 529// BuildProvenance: Provenance of a build. Contains all information 530// needed to verify the full details about the build from source to 531// completion. 532type BuildProvenance struct { 533 // BuildOptions: Special options applied to this build. This is a 534 // catch-all field where build providers can enter any desired 535 // additional details. 536 BuildOptions map[string]string `json:"buildOptions,omitempty"` 537 538 // BuilderVersion: Version string of the builder at the time this build 539 // was executed. 540 BuilderVersion string `json:"builderVersion,omitempty"` 541 542 // BuiltArtifacts: Output of the build. 543 BuiltArtifacts []*Artifact `json:"builtArtifacts,omitempty"` 544 545 // Commands: Commands requested by the build. 546 Commands []*Command `json:"commands,omitempty"` 547 548 // CreateTime: Time at which the build was created. 549 CreateTime string `json:"createTime,omitempty"` 550 551 // Creator: E-mail address of the user who initiated this build. Note 552 // that this was the user's e-mail address at the time the build was 553 // initiated; this address may not represent the same end-user for all 554 // time. 555 Creator string `json:"creator,omitempty"` 556 557 // EndTime: Time at which execution of the build was finished. 558 EndTime string `json:"endTime,omitempty"` 559 560 // Id: Required. Unique identifier of the build. 561 Id string `json:"id,omitempty"` 562 563 // LogsUri: URI where any logs for this provenance were written. 564 LogsUri string `json:"logsUri,omitempty"` 565 566 // ProjectId: ID of the project. 567 ProjectId string `json:"projectId,omitempty"` 568 569 // SourceProvenance: Details of the Source input to the build. 570 SourceProvenance *Source `json:"sourceProvenance,omitempty"` 571 572 // StartTime: Time at which execution of the build was started. 573 StartTime string `json:"startTime,omitempty"` 574 575 // TriggerId: Trigger identifier if the build was triggered 576 // automatically; empty if not. 577 TriggerId string `json:"triggerId,omitempty"` 578 579 // ForceSendFields is a list of field names (e.g. "BuildOptions") to 580 // unconditionally include in API requests. By default, fields with 581 // empty or default values are omitted from API requests. However, any 582 // non-pointer, non-interface field appearing in ForceSendFields will be 583 // sent to the server regardless of whether the field is empty or not. 584 // This may be used to include empty fields in Patch requests. 585 ForceSendFields []string `json:"-"` 586 587 // NullFields is a list of field names (e.g. "BuildOptions") to include 588 // in API requests with the JSON null value. By default, fields with 589 // empty values are omitted from API requests. However, any field with 590 // an empty value appearing in NullFields will be sent to the server as 591 // null. It is an error if a field in this list has a non-empty value. 592 // This may be used to include null fields in Patch requests. 593 NullFields []string `json:"-"` 594} 595 596func (s *BuildProvenance) MarshalJSON() ([]byte, error) { 597 type NoMethod BuildProvenance 598 raw := NoMethod(*s) 599 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 600} 601 602type BuilderConfig struct { 603 Id string `json:"id,omitempty"` 604 605 // ForceSendFields is a list of field names (e.g. "Id") to 606 // unconditionally include in API requests. By default, fields with 607 // empty or default values are omitted from API requests. However, any 608 // non-pointer, non-interface field appearing in ForceSendFields will be 609 // sent to the server regardless of whether the field is empty or not. 610 // This may be used to include empty fields in Patch requests. 611 ForceSendFields []string `json:"-"` 612 613 // NullFields is a list of field names (e.g. "Id") to include in API 614 // requests with the JSON null value. By default, fields with empty 615 // values are omitted from API requests. However, any field with an 616 // empty value appearing in NullFields will be sent to the server as 617 // null. It is an error if a field in this list has a non-empty value. 618 // This may be used to include null fields in Patch requests. 619 NullFields []string `json:"-"` 620} 621 622func (s *BuilderConfig) MarshalJSON() ([]byte, error) { 623 type NoMethod BuilderConfig 624 raw := NoMethod(*s) 625 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 626} 627 628// Category: The category to which the update belongs. 629type Category struct { 630 // CategoryId: The identifier of the category. 631 CategoryId string `json:"categoryId,omitempty"` 632 633 // Name: The localized name of the category. 634 Name string `json:"name,omitempty"` 635 636 // ForceSendFields is a list of field names (e.g. "CategoryId") to 637 // unconditionally include in API requests. By default, fields with 638 // empty or default values are omitted from API requests. However, any 639 // non-pointer, non-interface field appearing in ForceSendFields will be 640 // sent to the server regardless of whether the field is empty or not. 641 // This may be used to include empty fields in Patch requests. 642 ForceSendFields []string `json:"-"` 643 644 // NullFields is a list of field names (e.g. "CategoryId") to include in 645 // API requests with the JSON null value. By default, fields with empty 646 // values are omitted from API requests. However, any field with an 647 // empty value appearing in NullFields will be sent to the server as 648 // null. It is an error if a field in this list has a non-empty value. 649 // This may be used to include null fields in Patch requests. 650 NullFields []string `json:"-"` 651} 652 653func (s *Category) MarshalJSON() ([]byte, error) { 654 type NoMethod Category 655 raw := NoMethod(*s) 656 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 657} 658 659// CloudRepoSourceContext: A CloudRepoSourceContext denotes a particular 660// revision in a Google Cloud Source Repo. 661type CloudRepoSourceContext struct { 662 // AliasContext: An alias, which may be a branch or tag. 663 AliasContext *AliasContext `json:"aliasContext,omitempty"` 664 665 // RepoId: The ID of the repo. 666 RepoId *RepoId `json:"repoId,omitempty"` 667 668 // RevisionId: A revision ID. 669 RevisionId string `json:"revisionId,omitempty"` 670 671 // ForceSendFields is a list of field names (e.g. "AliasContext") to 672 // unconditionally include in API requests. By default, fields with 673 // empty or default values are omitted from API requests. However, any 674 // non-pointer, non-interface field appearing in ForceSendFields will be 675 // sent to the server regardless of whether the field is empty or not. 676 // This may be used to include empty fields in Patch requests. 677 ForceSendFields []string `json:"-"` 678 679 // NullFields is a list of field names (e.g. "AliasContext") to include 680 // in API requests with the JSON null value. By default, fields with 681 // empty values are omitted from API requests. However, any field with 682 // an empty value appearing in NullFields will be sent to the server as 683 // null. It is an error if a field in this list has a non-empty value. 684 // This may be used to include null fields in Patch requests. 685 NullFields []string `json:"-"` 686} 687 688func (s *CloudRepoSourceContext) MarshalJSON() ([]byte, error) { 689 type NoMethod CloudRepoSourceContext 690 raw := NoMethod(*s) 691 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 692} 693 694// Command: Command describes a step performed as part of the build 695// pipeline. 696type Command struct { 697 // Args: Command-line arguments used when executing this command. 698 Args []string `json:"args,omitempty"` 699 700 // Dir: Working directory (relative to project source root) used when 701 // running this command. 702 Dir string `json:"dir,omitempty"` 703 704 // Env: Environment variables set before running this command. 705 Env []string `json:"env,omitempty"` 706 707 // Id: Optional unique identifier for this command, used in wait_for to 708 // reference this command as a dependency. 709 Id string `json:"id,omitempty"` 710 711 // Name: Required. Name of the command, as presented on the command 712 // line, or if the command is packaged as a Docker container, as 713 // presented to `docker pull`. 714 Name string `json:"name,omitempty"` 715 716 // WaitFor: The ID(s) of the command(s) that this command depends on. 717 WaitFor []string `json:"waitFor,omitempty"` 718 719 // ForceSendFields is a list of field names (e.g. "Args") to 720 // unconditionally include in API requests. By default, fields with 721 // empty or default values are omitted from API requests. However, any 722 // non-pointer, non-interface field appearing in ForceSendFields will be 723 // sent to the server regardless of whether the field is empty or not. 724 // This may be used to include empty fields in Patch requests. 725 ForceSendFields []string `json:"-"` 726 727 // NullFields is a list of field names (e.g. "Args") to include in API 728 // requests with the JSON null value. By default, fields with empty 729 // values are omitted from API requests. However, any field with an 730 // empty value appearing in NullFields will be sent to the server as 731 // null. It is an error if a field in this list has a non-empty value. 732 // This may be used to include null fields in Patch requests. 733 NullFields []string `json:"-"` 734} 735 736func (s *Command) MarshalJSON() ([]byte, error) { 737 type NoMethod Command 738 raw := NoMethod(*s) 739 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 740} 741 742// Completeness: Indicates that the builder claims certain fields in 743// this message to be complete. 744type Completeness struct { 745 // Arguments: If true, the builder claims that recipe.arguments is 746 // complete, meaning that all external inputs are properly captured in 747 // the recipe. 748 Arguments bool `json:"arguments,omitempty"` 749 750 // Environment: If true, the builder claims that recipe.environment is 751 // claimed to be complete. 752 Environment bool `json:"environment,omitempty"` 753 754 // Materials: If true, the builder claims that materials are complete, 755 // usually through some controls to prevent network access. Sometimes 756 // called "hermetic". 757 Materials bool `json:"materials,omitempty"` 758 759 // ForceSendFields is a list of field names (e.g. "Arguments") to 760 // unconditionally include in API requests. By default, fields with 761 // empty or default values are omitted from API requests. However, any 762 // non-pointer, non-interface field appearing in ForceSendFields will be 763 // sent to the server regardless of whether the field is empty or not. 764 // This may be used to include empty fields in Patch requests. 765 ForceSendFields []string `json:"-"` 766 767 // NullFields is a list of field names (e.g. "Arguments") to include in 768 // API requests with the JSON null value. By default, fields with empty 769 // values are omitted from API requests. However, any field with an 770 // empty value appearing in NullFields will be sent to the server as 771 // null. It is an error if a field in this list has a non-empty value. 772 // This may be used to include null fields in Patch requests. 773 NullFields []string `json:"-"` 774} 775 776func (s *Completeness) MarshalJSON() ([]byte, error) { 777 type NoMethod Completeness 778 raw := NoMethod(*s) 779 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 780} 781 782// ComplianceOccurrence: An indication that the compliance checks in the 783// associated ComplianceNote were not satisfied for particular resources 784// or a specified reason. 785type ComplianceOccurrence struct { 786 NonComplianceReason string `json:"nonComplianceReason,omitempty"` 787 788 NonCompliantFiles []*NonCompliantFile `json:"nonCompliantFiles,omitempty"` 789 790 // ForceSendFields is a list of field names (e.g. "NonComplianceReason") 791 // to unconditionally include in API requests. By default, fields with 792 // empty or default values are omitted from API requests. However, any 793 // non-pointer, non-interface field appearing in ForceSendFields will be 794 // sent to the server regardless of whether the field is empty or not. 795 // This may be used to include empty fields in Patch requests. 796 ForceSendFields []string `json:"-"` 797 798 // NullFields is a list of field names (e.g. "NonComplianceReason") to 799 // include in API requests with the JSON null value. By default, fields 800 // with empty values are omitted from API requests. However, any field 801 // with an empty value appearing in NullFields will be sent to the 802 // server as null. It is an error if a field in this list has a 803 // non-empty value. This may be used to include null fields in Patch 804 // requests. 805 NullFields []string `json:"-"` 806} 807 808func (s *ComplianceOccurrence) MarshalJSON() ([]byte, error) { 809 type NoMethod ComplianceOccurrence 810 raw := NoMethod(*s) 811 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 812} 813 814type DSSEAttestationOccurrence struct { 815 // Envelope: If doing something security critical, make sure to verify 816 // the signatures in this metadata. 817 Envelope *Envelope `json:"envelope,omitempty"` 818 819 Statement *InTotoStatement `json:"statement,omitempty"` 820 821 // ForceSendFields is a list of field names (e.g. "Envelope") to 822 // unconditionally include in API requests. By default, fields with 823 // empty or default values are omitted from API requests. However, any 824 // non-pointer, non-interface field appearing in ForceSendFields will be 825 // sent to the server regardless of whether the field is empty or not. 826 // This may be used to include empty fields in Patch requests. 827 ForceSendFields []string `json:"-"` 828 829 // NullFields is a list of field names (e.g. "Envelope") to include in 830 // API requests with the JSON null value. By default, fields with empty 831 // values are omitted from API requests. However, any field with an 832 // empty value appearing in NullFields will be sent to the server as 833 // null. It is an error if a field in this list has a non-empty value. 834 // This may be used to include null fields in Patch requests. 835 NullFields []string `json:"-"` 836} 837 838func (s *DSSEAttestationOccurrence) MarshalJSON() ([]byte, error) { 839 type NoMethod DSSEAttestationOccurrence 840 raw := NoMethod(*s) 841 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 842} 843 844// DeploymentOccurrence: The period during which some deployable was 845// active in a runtime. 846type DeploymentOccurrence struct { 847 // Address: Address of the runtime element hosting this deployment. 848 Address string `json:"address,omitempty"` 849 850 // Config: Configuration used to create this deployment. 851 Config string `json:"config,omitempty"` 852 853 // DeployTime: Required. Beginning of the lifetime of this deployment. 854 DeployTime string `json:"deployTime,omitempty"` 855 856 // Platform: Platform hosting this deployment. 857 // 858 // Possible values: 859 // "PLATFORM_UNSPECIFIED" - Unknown. 860 // "GKE" - Google Container Engine. 861 // "FLEX" - Google App Engine: Flexible Environment. 862 // "CUSTOM" - Custom user-defined platform. 863 Platform string `json:"platform,omitempty"` 864 865 // ResourceUri: Output only. Resource URI for the artifact being 866 // deployed taken from the deployable field with the same name. 867 ResourceUri []string `json:"resourceUri,omitempty"` 868 869 // UndeployTime: End of the lifetime of this deployment. 870 UndeployTime string `json:"undeployTime,omitempty"` 871 872 // UserEmail: Identity of the user that triggered this deployment. 873 UserEmail string `json:"userEmail,omitempty"` 874 875 // ForceSendFields is a list of field names (e.g. "Address") to 876 // unconditionally include in API requests. By default, fields with 877 // empty or default values are omitted from API requests. However, any 878 // non-pointer, non-interface field appearing in ForceSendFields will be 879 // sent to the server regardless of whether the field is empty or not. 880 // This may be used to include empty fields in Patch requests. 881 ForceSendFields []string `json:"-"` 882 883 // NullFields is a list of field names (e.g. "Address") to include in 884 // API requests with the JSON null value. By default, fields with empty 885 // values are omitted from API requests. However, any field with an 886 // empty value appearing in NullFields will be sent to the server as 887 // null. It is an error if a field in this list has a non-empty value. 888 // This may be used to include null fields in Patch requests. 889 NullFields []string `json:"-"` 890} 891 892func (s *DeploymentOccurrence) MarshalJSON() ([]byte, error) { 893 type NoMethod DeploymentOccurrence 894 raw := NoMethod(*s) 895 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 896} 897 898// DiscoveryOccurrence: Provides information about the analysis status 899// of a discovered resource. 900type DiscoveryOccurrence struct { 901 // AnalysisStatus: The status of discovery for the resource. 902 // 903 // Possible values: 904 // "ANALYSIS_STATUS_UNSPECIFIED" - Unknown. 905 // "PENDING" - Resource is known but no action has been taken yet. 906 // "SCANNING" - Resource is being analyzed. 907 // "FINISHED_SUCCESS" - Analysis has finished successfully. 908 // "FINISHED_FAILED" - Analysis has finished unsuccessfully, the 909 // analysis itself is in a bad state. 910 // "FINISHED_UNSUPPORTED" - The resource is known not to be supported 911 AnalysisStatus string `json:"analysisStatus,omitempty"` 912 913 // AnalysisStatusError: When an error is encountered this will contain a 914 // LocalizedMessage under details to show to the user. The 915 // LocalizedMessage is output only and populated by the API. 916 AnalysisStatusError *Status `json:"analysisStatusError,omitempty"` 917 918 // ContinuousAnalysis: Whether the resource is continuously analyzed. 919 // 920 // Possible values: 921 // "CONTINUOUS_ANALYSIS_UNSPECIFIED" - Unknown. 922 // "ACTIVE" - The resource is continuously analyzed. 923 // "INACTIVE" - The resource is ignored for continuous analysis. 924 ContinuousAnalysis string `json:"continuousAnalysis,omitempty"` 925 926 // Cpe: The CPE of the resource being scanned. 927 Cpe string `json:"cpe,omitempty"` 928 929 // LastScanTime: The last time this resource was scanned. 930 LastScanTime string `json:"lastScanTime,omitempty"` 931 932 // ForceSendFields is a list of field names (e.g. "AnalysisStatus") to 933 // unconditionally include in API requests. By default, fields with 934 // empty or default values are omitted from API requests. However, any 935 // non-pointer, non-interface field appearing in ForceSendFields will be 936 // sent to the server regardless of whether the field is empty or not. 937 // This may be used to include empty fields in Patch requests. 938 ForceSendFields []string `json:"-"` 939 940 // NullFields is a list of field names (e.g. "AnalysisStatus") to 941 // include in API requests with the JSON null value. By default, fields 942 // with empty values are omitted from API requests. However, any field 943 // with an empty value appearing in NullFields will be sent to the 944 // server as null. It is an error if a field in this list has a 945 // non-empty value. This may be used to include null fields in Patch 946 // requests. 947 NullFields []string `json:"-"` 948} 949 950func (s *DiscoveryOccurrence) MarshalJSON() ([]byte, error) { 951 type NoMethod DiscoveryOccurrence 952 raw := NoMethod(*s) 953 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 954} 955 956// Empty: A generic empty message that you can re-use to avoid defining 957// duplicated empty messages in your APIs. A typical example is to use 958// it as the request or the response type of an API method. For 959// instance: service Foo { rpc Bar(google.protobuf.Empty) returns 960// (google.protobuf.Empty); } The JSON representation for `Empty` is 961// empty JSON object `{}`. 962type Empty struct { 963 // ServerResponse contains the HTTP response code and headers from the 964 // server. 965 googleapi.ServerResponse `json:"-"` 966} 967 968// Envelope: MUST match 969// https://github.com/secure-systems-lab/dsse/blob/master/envelope.proto. 970// An authenticated message of arbitrary type. 971type Envelope struct { 972 Payload string `json:"payload,omitempty"` 973 974 PayloadType string `json:"payloadType,omitempty"` 975 976 Signatures []*EnvelopeSignature `json:"signatures,omitempty"` 977 978 // ForceSendFields is a list of field names (e.g. "Payload") to 979 // unconditionally include in API requests. By default, fields with 980 // empty or default values are omitted from API requests. However, any 981 // non-pointer, non-interface field appearing in ForceSendFields will be 982 // sent to the server regardless of whether the field is empty or not. 983 // This may be used to include empty fields in Patch requests. 984 ForceSendFields []string `json:"-"` 985 986 // NullFields is a list of field names (e.g. "Payload") to include in 987 // API requests with the JSON null value. By default, fields with empty 988 // values are omitted from API requests. However, any field with an 989 // empty value appearing in NullFields will be sent to the server as 990 // null. It is an error if a field in this list has a non-empty value. 991 // This may be used to include null fields in Patch requests. 992 NullFields []string `json:"-"` 993} 994 995func (s *Envelope) MarshalJSON() ([]byte, error) { 996 type NoMethod Envelope 997 raw := NoMethod(*s) 998 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 999} 1000 1001type EnvelopeSignature struct { 1002 Keyid string `json:"keyid,omitempty"` 1003 1004 Sig string `json:"sig,omitempty"` 1005 1006 // ForceSendFields is a list of field names (e.g. "Keyid") to 1007 // unconditionally include in API requests. By default, fields with 1008 // empty or default values are omitted from API requests. However, any 1009 // non-pointer, non-interface field appearing in ForceSendFields will be 1010 // sent to the server regardless of whether the field is empty or not. 1011 // This may be used to include empty fields in Patch requests. 1012 ForceSendFields []string `json:"-"` 1013 1014 // NullFields is a list of field names (e.g. "Keyid") to include in API 1015 // requests with the JSON null value. By default, fields with empty 1016 // values are omitted from API requests. However, any field with an 1017 // empty value appearing in NullFields will be sent to the server as 1018 // null. It is an error if a field in this list has a non-empty value. 1019 // This may be used to include null fields in Patch requests. 1020 NullFields []string `json:"-"` 1021} 1022 1023func (s *EnvelopeSignature) MarshalJSON() ([]byte, error) { 1024 type NoMethod EnvelopeSignature 1025 raw := NoMethod(*s) 1026 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1027} 1028 1029// FileHashes: Container message for hashes of byte content of files, 1030// used in source messages to verify integrity of source input to the 1031// build. 1032type FileHashes struct { 1033 // FileHash: Required. Collection of file hashes. 1034 FileHash []*Hash `json:"fileHash,omitempty"` 1035 1036 // ForceSendFields is a list of field names (e.g. "FileHash") to 1037 // unconditionally include in API requests. By default, fields with 1038 // empty or default values are omitted from API requests. However, any 1039 // non-pointer, non-interface field appearing in ForceSendFields will be 1040 // sent to the server regardless of whether the field is empty or not. 1041 // This may be used to include empty fields in Patch requests. 1042 ForceSendFields []string `json:"-"` 1043 1044 // NullFields is a list of field names (e.g. "FileHash") to include in 1045 // API requests with the JSON null value. By default, fields with empty 1046 // values are omitted from API requests. However, any field with an 1047 // empty value appearing in NullFields will be sent to the server as 1048 // null. It is an error if a field in this list has a non-empty value. 1049 // This may be used to include null fields in Patch requests. 1050 NullFields []string `json:"-"` 1051} 1052 1053func (s *FileHashes) MarshalJSON() ([]byte, error) { 1054 type NoMethod FileHashes 1055 raw := NoMethod(*s) 1056 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1057} 1058 1059// Fingerprint: A set of properties that uniquely identify a given 1060// Docker image. 1061type Fingerprint struct { 1062 // V1Name: Required. The layer ID of the final layer in the Docker 1063 // image's v1 representation. 1064 V1Name string `json:"v1Name,omitempty"` 1065 1066 // V2Blob: Required. The ordered list of v2 blobs that represent a given 1067 // image. 1068 V2Blob []string `json:"v2Blob,omitempty"` 1069 1070 // V2Name: Output only. The name of the image's v2 blobs computed via: 1071 // [bottom] := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) 1072 // Only the name of the final blob is kept. 1073 V2Name string `json:"v2Name,omitempty"` 1074 1075 // ForceSendFields is a list of field names (e.g. "V1Name") to 1076 // unconditionally include in API requests. By default, fields with 1077 // empty or default values are omitted from API requests. However, any 1078 // non-pointer, non-interface field appearing in ForceSendFields will be 1079 // sent to the server regardless of whether the field is empty or not. 1080 // This may be used to include empty fields in Patch requests. 1081 ForceSendFields []string `json:"-"` 1082 1083 // NullFields is a list of field names (e.g. "V1Name") to include in API 1084 // requests with the JSON null value. By default, fields with empty 1085 // values are omitted from API requests. However, any field with an 1086 // empty value appearing in NullFields will be sent to the server as 1087 // null. It is an error if a field in this list has a non-empty value. 1088 // This may be used to include null fields in Patch requests. 1089 NullFields []string `json:"-"` 1090} 1091 1092func (s *Fingerprint) MarshalJSON() ([]byte, error) { 1093 type NoMethod Fingerprint 1094 raw := NoMethod(*s) 1095 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1096} 1097 1098// GerritSourceContext: A SourceContext referring to a Gerrit project. 1099type GerritSourceContext struct { 1100 // AliasContext: An alias, which may be a branch or tag. 1101 AliasContext *AliasContext `json:"aliasContext,omitempty"` 1102 1103 // GerritProject: The full project name within the host. Projects may be 1104 // nested, so "project/subproject" is a valid project name. The "repo 1105 // name" is the hostURI/project. 1106 GerritProject string `json:"gerritProject,omitempty"` 1107 1108 // HostUri: The URI of a running Gerrit instance. 1109 HostUri string `json:"hostUri,omitempty"` 1110 1111 // RevisionId: A revision (commit) ID. 1112 RevisionId string `json:"revisionId,omitempty"` 1113 1114 // ForceSendFields is a list of field names (e.g. "AliasContext") to 1115 // unconditionally include in API requests. By default, fields with 1116 // empty or default values are omitted from API requests. However, any 1117 // non-pointer, non-interface field appearing in ForceSendFields will be 1118 // sent to the server regardless of whether the field is empty or not. 1119 // This may be used to include empty fields in Patch requests. 1120 ForceSendFields []string `json:"-"` 1121 1122 // NullFields is a list of field names (e.g. "AliasContext") to include 1123 // in API requests with the JSON null value. By default, fields with 1124 // empty values are omitted from API requests. However, any field with 1125 // an empty value appearing in NullFields will be sent to the server as 1126 // null. It is an error if a field in this list has a non-empty value. 1127 // This may be used to include null fields in Patch requests. 1128 NullFields []string `json:"-"` 1129} 1130 1131func (s *GerritSourceContext) MarshalJSON() ([]byte, error) { 1132 type NoMethod GerritSourceContext 1133 raw := NoMethod(*s) 1134 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1135} 1136 1137// GitSourceContext: A GitSourceContext denotes a particular revision in 1138// a third party Git repository (e.g., GitHub). 1139type GitSourceContext struct { 1140 // RevisionId: Git commit hash. 1141 RevisionId string `json:"revisionId,omitempty"` 1142 1143 // Url: Git repository URL. 1144 Url string `json:"url,omitempty"` 1145 1146 // ForceSendFields is a list of field names (e.g. "RevisionId") to 1147 // unconditionally include in API requests. By default, fields with 1148 // empty or default values are omitted from API requests. However, any 1149 // non-pointer, non-interface field appearing in ForceSendFields will be 1150 // sent to the server regardless of whether the field is empty or not. 1151 // This may be used to include empty fields in Patch requests. 1152 ForceSendFields []string `json:"-"` 1153 1154 // NullFields is a list of field names (e.g. "RevisionId") to include in 1155 // API requests with the JSON null value. By default, fields with empty 1156 // values are omitted from API requests. However, any field with an 1157 // empty value appearing in NullFields will be sent to the server as 1158 // null. It is an error if a field in this list has a non-empty value. 1159 // This may be used to include null fields in Patch requests. 1160 NullFields []string `json:"-"` 1161} 1162 1163func (s *GitSourceContext) MarshalJSON() ([]byte, error) { 1164 type NoMethod GitSourceContext 1165 raw := NoMethod(*s) 1166 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1167} 1168 1169// Hash: Container message for hash values. 1170type Hash struct { 1171 // Type: Required. The type of hash that was performed, e.g. "SHA-256". 1172 Type string `json:"type,omitempty"` 1173 1174 // Value: Required. The hash value. 1175 Value string `json:"value,omitempty"` 1176 1177 // ForceSendFields is a list of field names (e.g. "Type") to 1178 // unconditionally include in API requests. By default, fields with 1179 // empty or default values are omitted from API requests. However, any 1180 // non-pointer, non-interface field appearing in ForceSendFields will be 1181 // sent to the server regardless of whether the field is empty or not. 1182 // This may be used to include empty fields in Patch requests. 1183 ForceSendFields []string `json:"-"` 1184 1185 // NullFields is a list of field names (e.g. "Type") to include in API 1186 // requests with the JSON null value. By default, fields with empty 1187 // values are omitted from API requests. However, any field with an 1188 // empty value appearing in NullFields will be sent to the server as 1189 // null. It is an error if a field in this list has a non-empty value. 1190 // This may be used to include null fields in Patch requests. 1191 NullFields []string `json:"-"` 1192} 1193 1194func (s *Hash) MarshalJSON() ([]byte, error) { 1195 type NoMethod Hash 1196 raw := NoMethod(*s) 1197 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1198} 1199 1200// Identity: The unique identifier of the update. 1201type Identity struct { 1202 // Revision: The revision number of the update. 1203 Revision int64 `json:"revision,omitempty"` 1204 1205 // UpdateId: The revision independent identifier of the update. 1206 UpdateId string `json:"updateId,omitempty"` 1207 1208 // ForceSendFields is a list of field names (e.g. "Revision") to 1209 // unconditionally include in API requests. By default, fields with 1210 // empty or default values are omitted from API requests. However, any 1211 // non-pointer, non-interface field appearing in ForceSendFields will be 1212 // sent to the server regardless of whether the field is empty or not. 1213 // This may be used to include empty fields in Patch requests. 1214 ForceSendFields []string `json:"-"` 1215 1216 // NullFields is a list of field names (e.g. "Revision") to include in 1217 // API requests with the JSON null value. By default, fields with empty 1218 // values are omitted from API requests. However, any field with an 1219 // empty value appearing in NullFields will be sent to the server as 1220 // null. It is an error if a field in this list has a non-empty value. 1221 // This may be used to include null fields in Patch requests. 1222 NullFields []string `json:"-"` 1223} 1224 1225func (s *Identity) MarshalJSON() ([]byte, error) { 1226 type NoMethod Identity 1227 raw := NoMethod(*s) 1228 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1229} 1230 1231// ImageOccurrence: Details of the derived image portion of the 1232// DockerImage relationship. This image would be produced from a 1233// Dockerfile with FROM . 1234type ImageOccurrence struct { 1235 // BaseResourceUrl: Output only. This contains the base image URL for 1236 // the derived image occurrence. 1237 BaseResourceUrl string `json:"baseResourceUrl,omitempty"` 1238 1239 // Distance: Output only. The number of layers by which this image 1240 // differs from the associated image basis. 1241 Distance int64 `json:"distance,omitempty"` 1242 1243 // Fingerprint: Required. The fingerprint of the derived image. 1244 Fingerprint *Fingerprint `json:"fingerprint,omitempty"` 1245 1246 // LayerInfo: This contains layer-specific metadata, if populated it has 1247 // length "distance" and is ordered with [distance] being the layer 1248 // immediately following the base image and [1] being the final layer. 1249 LayerInfo []*Layer `json:"layerInfo,omitempty"` 1250 1251 // ForceSendFields is a list of field names (e.g. "BaseResourceUrl") to 1252 // unconditionally include in API requests. By default, fields with 1253 // empty or default values are omitted from API requests. However, any 1254 // non-pointer, non-interface field appearing in ForceSendFields will be 1255 // sent to the server regardless of whether the field is empty or not. 1256 // This may be used to include empty fields in Patch requests. 1257 ForceSendFields []string `json:"-"` 1258 1259 // NullFields is a list of field names (e.g. "BaseResourceUrl") to 1260 // include in API requests with the JSON null value. By default, fields 1261 // with empty values are omitted from API requests. However, any field 1262 // with an empty value appearing in NullFields will be sent to the 1263 // server as null. It is an error if a field in this list has a 1264 // non-empty value. This may be used to include null fields in Patch 1265 // requests. 1266 NullFields []string `json:"-"` 1267} 1268 1269func (s *ImageOccurrence) MarshalJSON() ([]byte, error) { 1270 type NoMethod ImageOccurrence 1271 raw := NoMethod(*s) 1272 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1273} 1274 1275type InTotoProvenance struct { 1276 // BuilderConfig: required 1277 BuilderConfig *BuilderConfig `json:"builderConfig,omitempty"` 1278 1279 // Materials: The collection of artifacts that influenced the build 1280 // including sources, dependencies, build tools, base images, and so on. 1281 // This is considered to be incomplete unless 1282 // metadata.completeness.materials is true. Unset or null is equivalent 1283 // to empty. 1284 Materials []string `json:"materials,omitempty"` 1285 1286 Metadata *Metadata `json:"metadata,omitempty"` 1287 1288 // Recipe: Identifies the configuration used for the build. When 1289 // combined with materials, this SHOULD fully describe the build, such 1290 // that re-running this recipe results in bit-for-bit identical output 1291 // (if the build is reproducible). required 1292 Recipe *Recipe `json:"recipe,omitempty"` 1293 1294 // ForceSendFields is a list of field names (e.g. "BuilderConfig") to 1295 // unconditionally include in API requests. By default, fields with 1296 // empty or default values are omitted from API requests. However, any 1297 // non-pointer, non-interface field appearing in ForceSendFields will be 1298 // sent to the server regardless of whether the field is empty or not. 1299 // This may be used to include empty fields in Patch requests. 1300 ForceSendFields []string `json:"-"` 1301 1302 // NullFields is a list of field names (e.g. "BuilderConfig") to include 1303 // in API requests with the JSON null value. By default, fields with 1304 // empty values are omitted from API requests. However, any field with 1305 // an empty value appearing in NullFields will be sent to the server as 1306 // null. It is an error if a field in this list has a non-empty value. 1307 // This may be used to include null fields in Patch requests. 1308 NullFields []string `json:"-"` 1309} 1310 1311func (s *InTotoProvenance) MarshalJSON() ([]byte, error) { 1312 type NoMethod InTotoProvenance 1313 raw := NoMethod(*s) 1314 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1315} 1316 1317// InTotoStatement: Spec defined at 1318// https://github.com/in-toto/attestation/tree/main/spec#statement The 1319// serialized InTotoStatement will be stored as Envelope.payload. 1320// Envelope.payloadType is always "application/vnd.in-toto+json". 1321type InTotoStatement struct { 1322 // PredicateType: "https://in-toto.io/Provenance/v0.1" for 1323 // InTotoProvenance. 1324 PredicateType string `json:"predicateType,omitempty"` 1325 1326 Provenance *InTotoProvenance `json:"provenance,omitempty"` 1327 1328 Subject []*Subject `json:"subject,omitempty"` 1329 1330 // Type: Always "https://in-toto.io/Statement/v0.1". 1331 Type string `json:"type,omitempty"` 1332 1333 // ForceSendFields is a list of field names (e.g. "PredicateType") to 1334 // unconditionally include in API requests. By default, fields with 1335 // empty or default values are omitted from API requests. However, any 1336 // non-pointer, non-interface field appearing in ForceSendFields will be 1337 // sent to the server regardless of whether the field is empty or not. 1338 // This may be used to include empty fields in Patch requests. 1339 ForceSendFields []string `json:"-"` 1340 1341 // NullFields is a list of field names (e.g. "PredicateType") to include 1342 // in API requests with the JSON null value. By default, fields with 1343 // empty values are omitted from API requests. However, any field with 1344 // an empty value appearing in NullFields will be sent to the server as 1345 // null. It is an error if a field in this list has a non-empty value. 1346 // This may be used to include null fields in Patch requests. 1347 NullFields []string `json:"-"` 1348} 1349 1350func (s *InTotoStatement) MarshalJSON() ([]byte, error) { 1351 type NoMethod InTotoStatement 1352 raw := NoMethod(*s) 1353 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1354} 1355 1356type Jwt struct { 1357 // CompactJwt: The compact encoding of a JWS, which is always three 1358 // base64 encoded strings joined by periods. For details, see: 1359 // https://tools.ietf.org/html/rfc7515.html#section-3.1 1360 CompactJwt string `json:"compactJwt,omitempty"` 1361 1362 // ForceSendFields is a list of field names (e.g. "CompactJwt") to 1363 // unconditionally include in API requests. By default, fields with 1364 // empty or default values are omitted from API requests. However, any 1365 // non-pointer, non-interface field appearing in ForceSendFields will be 1366 // sent to the server regardless of whether the field is empty or not. 1367 // This may be used to include empty fields in Patch requests. 1368 ForceSendFields []string `json:"-"` 1369 1370 // NullFields is a list of field names (e.g. "CompactJwt") to include in 1371 // API requests with the JSON null value. By default, fields with empty 1372 // values are omitted from API requests. However, any field with an 1373 // empty value appearing in NullFields will be sent to the server as 1374 // null. It is an error if a field in this list has a non-empty value. 1375 // This may be used to include null fields in Patch requests. 1376 NullFields []string `json:"-"` 1377} 1378 1379func (s *Jwt) MarshalJSON() ([]byte, error) { 1380 type NoMethod Jwt 1381 raw := NoMethod(*s) 1382 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1383} 1384 1385// Layer: Layer holds metadata specific to a layer of a Docker image. 1386type Layer struct { 1387 // Arguments: The recovered arguments to the Dockerfile directive. 1388 Arguments string `json:"arguments,omitempty"` 1389 1390 // Directive: Required. The recovered Dockerfile directive used to 1391 // construct this layer. See 1392 // https://docs.docker.com/engine/reference/builder/ for more 1393 // information. 1394 Directive string `json:"directive,omitempty"` 1395 1396 // ForceSendFields is a list of field names (e.g. "Arguments") to 1397 // unconditionally include in API requests. By default, fields with 1398 // empty or default values are omitted from API requests. However, any 1399 // non-pointer, non-interface field appearing in ForceSendFields will be 1400 // sent to the server regardless of whether the field is empty or not. 1401 // This may be used to include empty fields in Patch requests. 1402 ForceSendFields []string `json:"-"` 1403 1404 // NullFields is a list of field names (e.g. "Arguments") to include in 1405 // API requests with the JSON null value. By default, fields with empty 1406 // values are omitted from API requests. However, any field with an 1407 // empty value appearing in NullFields will be sent to the server as 1408 // null. It is an error if a field in this list has a non-empty value. 1409 // This may be used to include null fields in Patch requests. 1410 NullFields []string `json:"-"` 1411} 1412 1413func (s *Layer) MarshalJSON() ([]byte, error) { 1414 type NoMethod Layer 1415 raw := NoMethod(*s) 1416 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1417} 1418 1419// ListOperationsResponse: The response message for 1420// Operations.ListOperations. 1421type ListOperationsResponse struct { 1422 // NextPageToken: The standard List next-page token. 1423 NextPageToken string `json:"nextPageToken,omitempty"` 1424 1425 // Operations: A list of operations that matches the specified filter in 1426 // the request. 1427 Operations []*Operation `json:"operations,omitempty"` 1428 1429 // ServerResponse contains the HTTP response code and headers from the 1430 // server. 1431 googleapi.ServerResponse `json:"-"` 1432 1433 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 1434 // unconditionally include in API requests. By default, fields with 1435 // empty or default values are omitted from API requests. However, any 1436 // non-pointer, non-interface field appearing in ForceSendFields will be 1437 // sent to the server regardless of whether the field is empty or not. 1438 // This may be used to include empty fields in Patch requests. 1439 ForceSendFields []string `json:"-"` 1440 1441 // NullFields is a list of field names (e.g. "NextPageToken") to include 1442 // in API requests with the JSON null value. By default, fields with 1443 // empty values are omitted from API requests. However, any field with 1444 // an empty value appearing in NullFields will be sent to the server as 1445 // null. It is an error if a field in this list has a non-empty value. 1446 // This may be used to include null fields in Patch requests. 1447 NullFields []string `json:"-"` 1448} 1449 1450func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { 1451 type NoMethod ListOperationsResponse 1452 raw := NoMethod(*s) 1453 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1454} 1455 1456// ListVulnerabilitiesResponse: ListVulnerabilitiesResponse contains a 1457// single page of vulnerabilities resulting from a scan. 1458type ListVulnerabilitiesResponse struct { 1459 // NextPageToken: A page token that can be used in a subsequent call to 1460 // ListVulnerabilities to continue retrieving results. 1461 NextPageToken string `json:"nextPageToken,omitempty"` 1462 1463 // Occurrences: The list of Vulnerability Occurrences resulting from a 1464 // scan. 1465 Occurrences []*Occurrence `json:"occurrences,omitempty"` 1466 1467 // ServerResponse contains the HTTP response code and headers from the 1468 // server. 1469 googleapi.ServerResponse `json:"-"` 1470 1471 // ForceSendFields is a list of field names (e.g. "NextPageToken") to 1472 // unconditionally include in API requests. By default, fields with 1473 // empty or default values are omitted from API requests. However, any 1474 // non-pointer, non-interface field appearing in ForceSendFields will be 1475 // sent to the server regardless of whether the field is empty or not. 1476 // This may be used to include empty fields in Patch requests. 1477 ForceSendFields []string `json:"-"` 1478 1479 // NullFields is a list of field names (e.g. "NextPageToken") to include 1480 // in API requests with the JSON null value. By default, fields with 1481 // empty values are omitted from API requests. However, any field with 1482 // an empty value appearing in NullFields will be sent to the server as 1483 // null. It is an error if a field in this list has a non-empty value. 1484 // This may be used to include null fields in Patch requests. 1485 NullFields []string `json:"-"` 1486} 1487 1488func (s *ListVulnerabilitiesResponse) MarshalJSON() ([]byte, error) { 1489 type NoMethod ListVulnerabilitiesResponse 1490 raw := NoMethod(*s) 1491 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1492} 1493 1494// Location: An occurrence of a particular package installation found 1495// within a system's filesystem. E.g., glibc was found in 1496// `/var/lib/dpkg/status`. 1497type Location struct { 1498 // CpeUri: Required. The CPE URI in CPE format 1499 // (https://cpe.mitre.org/specification/) denoting the package manager 1500 // version distributing a package. 1501 CpeUri string `json:"cpeUri,omitempty"` 1502 1503 // Path: The path from which we gathered that this package/version is 1504 // installed. 1505 Path string `json:"path,omitempty"` 1506 1507 // Version: The version installed at this location. 1508 Version *Version `json:"version,omitempty"` 1509 1510 // ForceSendFields is a list of field names (e.g. "CpeUri") to 1511 // unconditionally include in API requests. By default, fields with 1512 // empty or default values are omitted from API requests. However, any 1513 // non-pointer, non-interface field appearing in ForceSendFields will be 1514 // sent to the server regardless of whether the field is empty or not. 1515 // This may be used to include empty fields in Patch requests. 1516 ForceSendFields []string `json:"-"` 1517 1518 // NullFields is a list of field names (e.g. "CpeUri") to include in API 1519 // requests with the JSON null value. By default, fields with empty 1520 // values are omitted from API requests. However, any field with an 1521 // empty value appearing in NullFields will be sent to the server as 1522 // null. It is an error if a field in this list has a non-empty value. 1523 // This may be used to include null fields in Patch requests. 1524 NullFields []string `json:"-"` 1525} 1526 1527func (s *Location) MarshalJSON() ([]byte, error) { 1528 type NoMethod Location 1529 raw := NoMethod(*s) 1530 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1531} 1532 1533// Metadata: Other properties of the build. 1534type Metadata struct { 1535 // BuildFinishedOn: The timestamp of when the build completed. 1536 BuildFinishedOn string `json:"buildFinishedOn,omitempty"` 1537 1538 // BuildInvocationId: Identifies the particular build invocation, which 1539 // can be useful for finding associated logs or other ad-hoc analysis. 1540 // The value SHOULD be globally unique, per in-toto Provenance spec. 1541 BuildInvocationId string `json:"buildInvocationId,omitempty"` 1542 1543 // BuildStartedOn: The timestamp of when the build started. 1544 BuildStartedOn string `json:"buildStartedOn,omitempty"` 1545 1546 // Completeness: Indicates that the builder claims certain fields in 1547 // this message to be complete. 1548 Completeness *Completeness `json:"completeness,omitempty"` 1549 1550 // Reproducible: If true, the builder claims that running the recipe on 1551 // materials will produce bit-for-bit identical output. 1552 Reproducible bool `json:"reproducible,omitempty"` 1553 1554 // ForceSendFields is a list of field names (e.g. "BuildFinishedOn") to 1555 // unconditionally include in API requests. By default, fields with 1556 // empty or default values are omitted from API requests. However, any 1557 // non-pointer, non-interface field appearing in ForceSendFields will be 1558 // sent to the server regardless of whether the field is empty or not. 1559 // This may be used to include empty fields in Patch requests. 1560 ForceSendFields []string `json:"-"` 1561 1562 // NullFields is a list of field names (e.g. "BuildFinishedOn") to 1563 // include in API requests with the JSON null value. By default, fields 1564 // with empty values are omitted from API requests. However, any field 1565 // with an empty value appearing in NullFields will be sent to the 1566 // server as null. It is an error if a field in this list has a 1567 // non-empty value. This may be used to include null fields in Patch 1568 // requests. 1569 NullFields []string `json:"-"` 1570} 1571 1572func (s *Metadata) MarshalJSON() ([]byte, error) { 1573 type NoMethod Metadata 1574 raw := NoMethod(*s) 1575 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1576} 1577 1578// NonCompliantFile: Details about files that caused a compliance check 1579// to fail. 1580type NonCompliantFile struct { 1581 // DisplayCommand: Command to display the non-compliant files. 1582 DisplayCommand string `json:"displayCommand,omitempty"` 1583 1584 // Path: display_command is a single command that can be used to display 1585 // a list of non compliant files. When there is no such command, we can 1586 // also iterate a list of non compliant file using 'path'. Empty if 1587 // `display_command` is set. 1588 Path string `json:"path,omitempty"` 1589 1590 // Reason: Explains why a file is non compliant for a CIS check. 1591 Reason string `json:"reason,omitempty"` 1592 1593 // ForceSendFields is a list of field names (e.g. "DisplayCommand") to 1594 // unconditionally include in API requests. By default, fields with 1595 // empty or default values are omitted from API requests. However, any 1596 // non-pointer, non-interface field appearing in ForceSendFields will be 1597 // sent to the server regardless of whether the field is empty or not. 1598 // This may be used to include empty fields in Patch requests. 1599 ForceSendFields []string `json:"-"` 1600 1601 // NullFields is a list of field names (e.g. "DisplayCommand") to 1602 // include in API requests with the JSON null value. By default, fields 1603 // with empty values are omitted from API requests. However, any field 1604 // with an empty value appearing in NullFields will be sent to the 1605 // server as null. It is an error if a field in this list has a 1606 // non-empty value. This may be used to include null fields in Patch 1607 // requests. 1608 NullFields []string `json:"-"` 1609} 1610 1611func (s *NonCompliantFile) MarshalJSON() ([]byte, error) { 1612 type NoMethod NonCompliantFile 1613 raw := NoMethod(*s) 1614 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1615} 1616 1617// Occurrence: An instance of an analysis type that has been found on a 1618// resource. 1619type Occurrence struct { 1620 // Attestation: Describes an attestation of an artifact. 1621 Attestation *AttestationOccurrence `json:"attestation,omitempty"` 1622 1623 // Build: Describes a verifiable build. 1624 Build *BuildOccurrence `json:"build,omitempty"` 1625 1626 // Compliance: Describes a compliance violation on a linked resource. 1627 Compliance *ComplianceOccurrence `json:"compliance,omitempty"` 1628 1629 // CreateTime: Output only. The time this occurrence was created. 1630 CreateTime string `json:"createTime,omitempty"` 1631 1632 // Deployment: Describes the deployment of an artifact on a runtime. 1633 Deployment *DeploymentOccurrence `json:"deployment,omitempty"` 1634 1635 // Discovery: Describes when a resource was discovered. 1636 Discovery *DiscoveryOccurrence `json:"discovery,omitempty"` 1637 1638 // DsseAttestation: Describes an attestation of an artifact using dsse. 1639 DsseAttestation *DSSEAttestationOccurrence `json:"dsseAttestation,omitempty"` 1640 1641 // Envelope: https://github.com/secure-systems-lab/dsse 1642 Envelope *Envelope `json:"envelope,omitempty"` 1643 1644 // Image: Describes how this resource derives from the basis in the 1645 // associated note. 1646 Image *ImageOccurrence `json:"image,omitempty"` 1647 1648 // Kind: Output only. This explicitly denotes which of the occurrence 1649 // details are specified. This field can be used as a filter in list 1650 // requests. 1651 // 1652 // Possible values: 1653 // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. 1654 // "VULNERABILITY" - The note and occurrence represent a package 1655 // vulnerability. 1656 // "BUILD" - The note and occurrence assert build provenance. 1657 // "IMAGE" - This represents an image basis relationship. 1658 // "PACKAGE" - This represents a package installed via a package 1659 // manager. 1660 // "DEPLOYMENT" - The note and occurrence track deployment events. 1661 // "DISCOVERY" - The note and occurrence track the initial discovery 1662 // status of a resource. 1663 // "ATTESTATION" - This represents a logical "role" that can attest to 1664 // artifacts. 1665 // "UPGRADE" - This represents an available package upgrade. 1666 // "COMPLIANCE" - This represents a Compliance Note 1667 // "DSSE_ATTESTATION" - This represents a DSSE attestation Note 1668 Kind string `json:"kind,omitempty"` 1669 1670 // Name: Output only. The name of the occurrence in the form of 1671 // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. 1672 Name string `json:"name,omitempty"` 1673 1674 // NoteName: Required. Immutable. The analysis note associated with this 1675 // occurrence, in the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. 1676 // This field can be used as a filter in list requests. 1677 NoteName string `json:"noteName,omitempty"` 1678 1679 // Package: Describes the installation of a package on the linked 1680 // resource. 1681 Package *PackageOccurrence `json:"package,omitempty"` 1682 1683 // Remediation: A description of actions that can be taken to remedy the 1684 // note. 1685 Remediation string `json:"remediation,omitempty"` 1686 1687 // ResourceUri: Required. Immutable. A URI that represents the resource 1688 // for which the occurrence applies. For example, 1689 // `https://gcr.io/project/image@sha256:123abc` for a Docker image. 1690 ResourceUri string `json:"resourceUri,omitempty"` 1691 1692 // UpdateTime: Output only. The time this occurrence was last updated. 1693 UpdateTime string `json:"updateTime,omitempty"` 1694 1695 // Upgrade: Describes an available package upgrade on the linked 1696 // resource. 1697 Upgrade *UpgradeOccurrence `json:"upgrade,omitempty"` 1698 1699 // Vulnerability: Describes a security vulnerability. 1700 Vulnerability *VulnerabilityOccurrence `json:"vulnerability,omitempty"` 1701 1702 // ForceSendFields is a list of field names (e.g. "Attestation") to 1703 // unconditionally include in API requests. By default, fields with 1704 // empty or default values are omitted from API requests. However, any 1705 // non-pointer, non-interface field appearing in ForceSendFields will be 1706 // sent to the server regardless of whether the field is empty or not. 1707 // This may be used to include empty fields in Patch requests. 1708 ForceSendFields []string `json:"-"` 1709 1710 // NullFields is a list of field names (e.g. "Attestation") to include 1711 // in API requests with the JSON null value. By default, fields with 1712 // empty values are omitted from API requests. However, any field with 1713 // an empty value appearing in NullFields will be sent to the server as 1714 // null. It is an error if a field in this list has a non-empty value. 1715 // This may be used to include null fields in Patch requests. 1716 NullFields []string `json:"-"` 1717} 1718 1719func (s *Occurrence) MarshalJSON() ([]byte, error) { 1720 type NoMethod Occurrence 1721 raw := NoMethod(*s) 1722 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1723} 1724 1725// Operation: This resource represents a long-running operation that is 1726// the result of a network API call. 1727type Operation struct { 1728 // Done: If the value is `false`, it means the operation is still in 1729 // progress. If `true`, the operation is completed, and either `error` 1730 // or `response` is available. 1731 Done bool `json:"done,omitempty"` 1732 1733 // Error: The error result of the operation in case of failure or 1734 // cancellation. 1735 Error *Status `json:"error,omitempty"` 1736 1737 // Metadata: Service-specific metadata associated with the operation. It 1738 // typically contains progress information and common metadata such as 1739 // create time. Some services might not provide such metadata. Any 1740 // method that returns a long-running operation should document the 1741 // metadata type, if any. 1742 Metadata googleapi.RawMessage `json:"metadata,omitempty"` 1743 1744 // Name: The server-assigned name, which is only unique within the same 1745 // service that originally returns it. If you use the default HTTP 1746 // mapping, the `name` should be a resource name ending with 1747 // `operations/{unique_id}`. 1748 Name string `json:"name,omitempty"` 1749 1750 // Response: The normal response of the operation in case of success. If 1751 // the original method returns no data on success, such as `Delete`, the 1752 // response is `google.protobuf.Empty`. If the original method is 1753 // standard `Get`/`Create`/`Update`, the response should be the 1754 // resource. For other methods, the response should have the type 1755 // `XxxResponse`, where `Xxx` is the original method name. For example, 1756 // if the original method name is `TakeSnapshot()`, the inferred 1757 // response type is `TakeSnapshotResponse`. 1758 Response googleapi.RawMessage `json:"response,omitempty"` 1759 1760 // ServerResponse contains the HTTP response code and headers from the 1761 // server. 1762 googleapi.ServerResponse `json:"-"` 1763 1764 // ForceSendFields is a list of field names (e.g. "Done") to 1765 // unconditionally include in API requests. By default, fields with 1766 // empty or default values are omitted from API requests. However, any 1767 // non-pointer, non-interface field appearing in ForceSendFields will be 1768 // sent to the server regardless of whether the field is empty or not. 1769 // This may be used to include empty fields in Patch requests. 1770 ForceSendFields []string `json:"-"` 1771 1772 // NullFields is a list of field names (e.g. "Done") to include in API 1773 // requests with the JSON null value. By default, fields with empty 1774 // values are omitted from API requests. However, any field with an 1775 // empty value appearing in NullFields will be sent to the server as 1776 // null. It is an error if a field in this list has a non-empty value. 1777 // This may be used to include null fields in Patch requests. 1778 NullFields []string `json:"-"` 1779} 1780 1781func (s *Operation) MarshalJSON() ([]byte, error) { 1782 type NoMethod Operation 1783 raw := NoMethod(*s) 1784 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1785} 1786 1787type PackageData struct { 1788 // CpeUri: The cpe_uri in [cpe format] 1789 // (https://cpe.mitre.org/specification/) in which the vulnerability may 1790 // manifest. Examples include distro or storage location for vulnerable 1791 // jar. 1792 CpeUri string `json:"cpeUri,omitempty"` 1793 1794 // Os: The OS affected by a vulnerability This field is deprecated and 1795 // the information is in cpe_uri 1796 Os string `json:"os,omitempty"` 1797 1798 // OsVersion: The version of the OS This field is deprecated and the 1799 // information is in cpe_uri 1800 OsVersion string `json:"osVersion,omitempty"` 1801 1802 // Package: The package being analysed for vulnerabilities 1803 Package string `json:"package,omitempty"` 1804 1805 // PackageType: The type of package: os, maven, go, etc. 1806 // 1807 // Possible values: 1808 // "PACKAGE_TYPE_UNSPECIFIED" 1809 // "OS" - Operating System 1810 // "MAVEN" - Java packages from Maven. 1811 // "GO" - Go third-party packages. 1812 // "GO_STDLIB" - Go toolchain + standard library packages. 1813 PackageType string `json:"packageType,omitempty"` 1814 1815 Unused string `json:"unused,omitempty"` 1816 1817 // Version: The version of the package being analysed 1818 Version string `json:"version,omitempty"` 1819 1820 // ForceSendFields is a list of field names (e.g. "CpeUri") to 1821 // unconditionally include in API requests. By default, fields with 1822 // empty or default values are omitted from API requests. However, any 1823 // non-pointer, non-interface field appearing in ForceSendFields will be 1824 // sent to the server regardless of whether the field is empty or not. 1825 // This may be used to include empty fields in Patch requests. 1826 ForceSendFields []string `json:"-"` 1827 1828 // NullFields is a list of field names (e.g. "CpeUri") to include in API 1829 // requests with the JSON null value. By default, fields with empty 1830 // values are omitted from API requests. However, any field with an 1831 // empty value appearing in NullFields will be sent to the server as 1832 // null. It is an error if a field in this list has a non-empty value. 1833 // This may be used to include null fields in Patch requests. 1834 NullFields []string `json:"-"` 1835} 1836 1837func (s *PackageData) MarshalJSON() ([]byte, error) { 1838 type NoMethod PackageData 1839 raw := NoMethod(*s) 1840 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1841} 1842 1843// PackageIssue: A detail for a distro and package this vulnerability 1844// occurrence was found in and its associated fix (if one is available). 1845type PackageIssue struct { 1846 // AffectedCpeUri: Required. The CPE URI 1847 // (https://cpe.mitre.org/specification/) this vulnerability was found 1848 // in. 1849 AffectedCpeUri string `json:"affectedCpeUri,omitempty"` 1850 1851 // AffectedPackage: Required. The package this vulnerability was found 1852 // in. 1853 AffectedPackage string `json:"affectedPackage,omitempty"` 1854 1855 // AffectedVersion: Required. The version of the package that is 1856 // installed on the resource affected by this vulnerability. 1857 AffectedVersion *Version `json:"affectedVersion,omitempty"` 1858 1859 // FixAvailable: Output only. Whether a fix is available for this 1860 // package. 1861 FixAvailable bool `json:"fixAvailable,omitempty"` 1862 1863 // FixedCpeUri: The CPE URI (https://cpe.mitre.org/specification/) this 1864 // vulnerability was fixed in. It is possible for this to be different 1865 // from the affected_cpe_uri. 1866 FixedCpeUri string `json:"fixedCpeUri,omitempty"` 1867 1868 // FixedPackage: The package this vulnerability was fixed in. It is 1869 // possible for this to be different from the affected_package. 1870 FixedPackage string `json:"fixedPackage,omitempty"` 1871 1872 // FixedVersion: Required. The version of the package this vulnerability 1873 // was fixed in. Setting this to VersionKind.MAXIMUM means no fix is yet 1874 // available. 1875 FixedVersion *Version `json:"fixedVersion,omitempty"` 1876 1877 // ForceSendFields is a list of field names (e.g. "AffectedCpeUri") to 1878 // unconditionally include in API requests. By default, fields with 1879 // empty or default values are omitted from API requests. However, any 1880 // non-pointer, non-interface field appearing in ForceSendFields will be 1881 // sent to the server regardless of whether the field is empty or not. 1882 // This may be used to include empty fields in Patch requests. 1883 ForceSendFields []string `json:"-"` 1884 1885 // NullFields is a list of field names (e.g. "AffectedCpeUri") to 1886 // include in API requests with the JSON null value. By default, fields 1887 // with empty values are omitted from API requests. However, any field 1888 // with an empty value appearing in NullFields will be sent to the 1889 // server as null. It is an error if a field in this list has a 1890 // non-empty value. This may be used to include null fields in Patch 1891 // requests. 1892 NullFields []string `json:"-"` 1893} 1894 1895func (s *PackageIssue) MarshalJSON() ([]byte, error) { 1896 type NoMethod PackageIssue 1897 raw := NoMethod(*s) 1898 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1899} 1900 1901// PackageOccurrence: Details on how a particular software package was 1902// installed on a system. 1903type PackageOccurrence struct { 1904 // Location: Required. All of the places within the filesystem versions 1905 // of this package have been found. 1906 Location []*Location `json:"location,omitempty"` 1907 1908 // Name: Output only. The name of the installed package. 1909 Name string `json:"name,omitempty"` 1910 1911 // ForceSendFields is a list of field names (e.g. "Location") to 1912 // unconditionally include in API requests. By default, fields with 1913 // empty or default values are omitted from API requests. However, any 1914 // non-pointer, non-interface field appearing in ForceSendFields will be 1915 // sent to the server regardless of whether the field is empty or not. 1916 // This may be used to include empty fields in Patch requests. 1917 ForceSendFields []string `json:"-"` 1918 1919 // NullFields is a list of field names (e.g. "Location") to include in 1920 // API requests with the JSON null value. By default, fields with empty 1921 // values are omitted from API requests. However, any field with an 1922 // empty value appearing in NullFields will be sent to the server as 1923 // null. It is an error if a field in this list has a non-empty value. 1924 // This may be used to include null fields in Patch requests. 1925 NullFields []string `json:"-"` 1926} 1927 1928func (s *PackageOccurrence) MarshalJSON() ([]byte, error) { 1929 type NoMethod PackageOccurrence 1930 raw := NoMethod(*s) 1931 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1932} 1933 1934// ProjectRepoId: Selects a repo using a Google Cloud Platform project 1935// ID (e.g., winged-cargo-31) and a repo name within that project. 1936type ProjectRepoId struct { 1937 // ProjectId: The ID of the project. 1938 ProjectId string `json:"projectId,omitempty"` 1939 1940 // RepoName: The name of the repo. Leave empty for the default repo. 1941 RepoName string `json:"repoName,omitempty"` 1942 1943 // ForceSendFields is a list of field names (e.g. "ProjectId") to 1944 // unconditionally include in API requests. By default, fields with 1945 // empty or default values are omitted from API requests. However, any 1946 // non-pointer, non-interface field appearing in ForceSendFields will be 1947 // sent to the server regardless of whether the field is empty or not. 1948 // This may be used to include empty fields in Patch requests. 1949 ForceSendFields []string `json:"-"` 1950 1951 // NullFields is a list of field names (e.g. "ProjectId") to include in 1952 // API requests with the JSON null value. By default, fields with empty 1953 // values are omitted from API requests. However, any field with an 1954 // empty value appearing in NullFields will be sent to the server as 1955 // null. It is an error if a field in this list has a non-empty value. 1956 // This may be used to include null fields in Patch requests. 1957 NullFields []string `json:"-"` 1958} 1959 1960func (s *ProjectRepoId) MarshalJSON() ([]byte, error) { 1961 type NoMethod ProjectRepoId 1962 raw := NoMethod(*s) 1963 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 1964} 1965 1966// Recipe: Steps taken to build the artifact. For a TaskRun, typically 1967// each container corresponds to one step in the recipe. 1968type Recipe struct { 1969 // Arguments: Collection of all external inputs that influenced the 1970 // build on top of recipe.definedInMaterial and recipe.entryPoint. For 1971 // example, if the recipe type were "make", then this might be the flags 1972 // passed to make aside from the target, which is captured in 1973 // recipe.entryPoint. 1974 Arguments []string `json:"arguments,omitempty"` 1975 1976 // DefinedInMaterial: Index in materials containing the recipe steps 1977 // that are not implied by recipe.type. For example, if the recipe type 1978 // were "make", then this would point to the source containing the 1979 // Makefile, not the make program itself. Set to -1 if the recipe 1980 // doesn't come from a material, as zero is default unset value for 1981 // int64. 1982 DefinedInMaterial int64 `json:"definedInMaterial,omitempty,string"` 1983 1984 // EntryPoint: String identifying the entry point into the build. This 1985 // is often a path to a configuration file and/or a target label within 1986 // that file. The syntax and meaning are defined by recipe.type. For 1987 // example, if the recipe type were "make", then this would reference 1988 // the directory in which to run make as well as which target to use. 1989 EntryPoint string `json:"entryPoint,omitempty"` 1990 1991 // Environment: Any other builder-controlled inputs necessary for 1992 // correctly evaluating the recipe. Usually only needed for reproducing 1993 // the build but not evaluated as part of policy. 1994 Environment map[string]string `json:"environment,omitempty"` 1995 1996 // Type: URI indicating what type of recipe was performed. It determines 1997 // the meaning of recipe.entryPoint, recipe.arguments, 1998 // recipe.environment, and materials. 1999 Type string `json:"type,omitempty"` 2000 2001 // ForceSendFields is a list of field names (e.g. "Arguments") to 2002 // unconditionally include in API requests. By default, fields with 2003 // empty or default values are omitted from API requests. However, any 2004 // non-pointer, non-interface field appearing in ForceSendFields will be 2005 // sent to the server regardless of whether the field is empty or not. 2006 // This may be used to include empty fields in Patch requests. 2007 ForceSendFields []string `json:"-"` 2008 2009 // NullFields is a list of field names (e.g. "Arguments") to include in 2010 // API requests with the JSON null value. By default, fields with empty 2011 // values are omitted from API requests. However, any field with an 2012 // empty value appearing in NullFields will be sent to the server as 2013 // null. It is an error if a field in this list has a non-empty value. 2014 // This may be used to include null fields in Patch requests. 2015 NullFields []string `json:"-"` 2016} 2017 2018func (s *Recipe) MarshalJSON() ([]byte, error) { 2019 type NoMethod Recipe 2020 raw := NoMethod(*s) 2021 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2022} 2023 2024// RelatedUrl: Metadata for any related URL information. 2025type RelatedUrl struct { 2026 // Label: Label to describe usage of the URL. 2027 Label string `json:"label,omitempty"` 2028 2029 // Url: Specific URL associated with the resource. 2030 Url string `json:"url,omitempty"` 2031 2032 // ForceSendFields is a list of field names (e.g. "Label") to 2033 // unconditionally include in API requests. By default, fields with 2034 // empty or default values are omitted from API requests. However, any 2035 // non-pointer, non-interface field appearing in ForceSendFields will be 2036 // sent to the server regardless of whether the field is empty or not. 2037 // This may be used to include empty fields in Patch requests. 2038 ForceSendFields []string `json:"-"` 2039 2040 // NullFields is a list of field names (e.g. "Label") to include in API 2041 // requests with the JSON null value. By default, fields with empty 2042 // values are omitted from API requests. However, any field with an 2043 // empty value appearing in NullFields will be sent to the server as 2044 // null. It is an error if a field in this list has a non-empty value. 2045 // This may be used to include null fields in Patch requests. 2046 NullFields []string `json:"-"` 2047} 2048 2049func (s *RelatedUrl) MarshalJSON() ([]byte, error) { 2050 type NoMethod RelatedUrl 2051 raw := NoMethod(*s) 2052 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2053} 2054 2055// RepoId: A unique identifier for a Cloud Repo. 2056type RepoId struct { 2057 // ProjectRepoId: A combination of a project ID and a repo name. 2058 ProjectRepoId *ProjectRepoId `json:"projectRepoId,omitempty"` 2059 2060 // Uid: A server-assigned, globally unique identifier. 2061 Uid string `json:"uid,omitempty"` 2062 2063 // ForceSendFields is a list of field names (e.g. "ProjectRepoId") to 2064 // unconditionally include in API requests. By default, fields with 2065 // empty or default values are omitted from API requests. However, any 2066 // non-pointer, non-interface field appearing in ForceSendFields will be 2067 // sent to the server regardless of whether the field is empty or not. 2068 // This may be used to include empty fields in Patch requests. 2069 ForceSendFields []string `json:"-"` 2070 2071 // NullFields is a list of field names (e.g. "ProjectRepoId") to include 2072 // in API requests with the JSON null value. By default, fields with 2073 // empty values are omitted from API requests. However, any field with 2074 // an empty value appearing in NullFields will be sent to the server as 2075 // null. It is an error if a field in this list has a non-empty value. 2076 // This may be used to include null fields in Patch requests. 2077 NullFields []string `json:"-"` 2078} 2079 2080func (s *RepoId) MarshalJSON() ([]byte, error) { 2081 type NoMethod RepoId 2082 raw := NoMethod(*s) 2083 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2084} 2085 2086// Signature: Verifiers (e.g. Kritis implementations) MUST verify 2087// signatures with respect to the trust anchors defined in policy (e.g. 2088// a Kritis policy). Typically this means that the verifier has been 2089// configured with a map from `public_key_id` to public key material 2090// (and any required parameters, e.g. signing algorithm). In particular, 2091// verification implementations MUST NOT treat the signature 2092// `public_key_id` as anything more than a key lookup hint. The 2093// `public_key_id` DOES NOT validate or authenticate a public key; it 2094// only provides a mechanism for quickly selecting a public key ALREADY 2095// CONFIGURED on the verifier through a trusted channel. Verification 2096// implementations MUST reject signatures in any of the following 2097// circumstances: * The `public_key_id` is not recognized by the 2098// verifier. * The public key that `public_key_id` refers to does not 2099// verify the signature with respect to the payload. The `signature` 2100// contents SHOULD NOT be "attached" (where the payload is included with 2101// the serialized `signature` bytes). Verifiers MUST ignore any 2102// "attached" payload and only verify signatures with respect to 2103// explicitly provided payload (e.g. a `payload` field on the proto 2104// message that holds this Signature, or the canonical serialization of 2105// the proto message that holds this signature). 2106type Signature struct { 2107 // PublicKeyId: The identifier for the public key that verifies this 2108 // signature. * The `public_key_id` is required. * The `public_key_id` 2109 // SHOULD be an RFC3986 conformant URI. * When possible, the 2110 // `public_key_id` SHOULD be an immutable reference, such as a 2111 // cryptographic digest. Examples of valid `public_key_id`s: OpenPGP V4 2112 // public key fingerprint: * 2113 // "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA" See 2114 // https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for 2115 // more details on this scheme. RFC6920 digest-named 2116 // SubjectPublicKeyInfo (digest of the DER serialization): * 2117 // "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU" * 2118 // "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95 2119 // a1271589a5" 2120 PublicKeyId string `json:"publicKeyId,omitempty"` 2121 2122 // Signature: The content of the signature, an opaque bytestring. The 2123 // payload that this signature verifies MUST be unambiguously provided 2124 // with the Signature during verification. A wrapper message might 2125 // provide the payload explicitly. Alternatively, a message might have a 2126 // canonical serialization that can always be unambiguously computed to 2127 // derive the payload. 2128 Signature string `json:"signature,omitempty"` 2129 2130 // ForceSendFields is a list of field names (e.g. "PublicKeyId") to 2131 // unconditionally include in API requests. By default, fields with 2132 // empty or default values are omitted from API requests. However, any 2133 // non-pointer, non-interface field appearing in ForceSendFields will be 2134 // sent to the server regardless of whether the field is empty or not. 2135 // This may be used to include empty fields in Patch requests. 2136 ForceSendFields []string `json:"-"` 2137 2138 // NullFields is a list of field names (e.g. "PublicKeyId") to include 2139 // in API requests with the JSON null value. By default, fields with 2140 // empty values are omitted from API requests. However, any field with 2141 // an empty value appearing in NullFields will be sent to the server as 2142 // null. It is an error if a field in this list has a non-empty value. 2143 // This may be used to include null fields in Patch requests. 2144 NullFields []string `json:"-"` 2145} 2146 2147func (s *Signature) MarshalJSON() ([]byte, error) { 2148 type NoMethod Signature 2149 raw := NoMethod(*s) 2150 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2151} 2152 2153// Source: Source describes the location of the source used for the 2154// build. 2155type Source struct { 2156 // AdditionalContexts: If provided, some of the source code used for the 2157 // build may be found in these locations, in the case where the source 2158 // repository had multiple remotes or submodules. This list will not 2159 // include the context specified in the context field. 2160 AdditionalContexts []*SourceContext `json:"additionalContexts,omitempty"` 2161 2162 // ArtifactStorageSourceUri: If provided, the input binary artifacts for 2163 // the build came from this location. 2164 ArtifactStorageSourceUri string `json:"artifactStorageSourceUri,omitempty"` 2165 2166 // Context: If provided, the source code used for the build came from 2167 // this location. 2168 Context *SourceContext `json:"context,omitempty"` 2169 2170 // FileHashes: Hash(es) of the build source, which can be used to verify 2171 // that the original source integrity was maintained in the build. The 2172 // keys to this map are file paths used as build source and the values 2173 // contain the hash values for those files. If the build source came in 2174 // a single package such as a gzipped tarfile (.tar.gz), the FileHash 2175 // will be for the single path to that file. 2176 FileHashes map[string]FileHashes `json:"fileHashes,omitempty"` 2177 2178 // ForceSendFields is a list of field names (e.g. "AdditionalContexts") 2179 // to unconditionally include in API requests. By default, fields with 2180 // empty or default values are omitted from API requests. However, any 2181 // non-pointer, non-interface field appearing in ForceSendFields will be 2182 // sent to the server regardless of whether the field is empty or not. 2183 // This may be used to include empty fields in Patch requests. 2184 ForceSendFields []string `json:"-"` 2185 2186 // NullFields is a list of field names (e.g. "AdditionalContexts") to 2187 // include in API requests with the JSON null value. By default, fields 2188 // with empty values are omitted from API requests. However, any field 2189 // with an empty value appearing in NullFields will be sent to the 2190 // server as null. It is an error if a field in this list has a 2191 // non-empty value. This may be used to include null fields in Patch 2192 // requests. 2193 NullFields []string `json:"-"` 2194} 2195 2196func (s *Source) MarshalJSON() ([]byte, error) { 2197 type NoMethod Source 2198 raw := NoMethod(*s) 2199 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2200} 2201 2202// SourceContext: A SourceContext is a reference to a tree of files. A 2203// SourceContext together with a path point to a unique revision of a 2204// single file or directory. 2205type SourceContext struct { 2206 // CloudRepo: A SourceContext referring to a revision in a Google Cloud 2207 // Source Repo. 2208 CloudRepo *CloudRepoSourceContext `json:"cloudRepo,omitempty"` 2209 2210 // Gerrit: A SourceContext referring to a Gerrit project. 2211 Gerrit *GerritSourceContext `json:"gerrit,omitempty"` 2212 2213 // Git: A SourceContext referring to any third party Git repo (e.g., 2214 // GitHub). 2215 Git *GitSourceContext `json:"git,omitempty"` 2216 2217 // Labels: Labels with user defined metadata. 2218 Labels map[string]string `json:"labels,omitempty"` 2219 2220 // ForceSendFields is a list of field names (e.g. "CloudRepo") to 2221 // unconditionally include in API requests. By default, fields with 2222 // empty or default values are omitted from API requests. However, any 2223 // non-pointer, non-interface field appearing in ForceSendFields will be 2224 // sent to the server regardless of whether the field is empty or not. 2225 // This may be used to include empty fields in Patch requests. 2226 ForceSendFields []string `json:"-"` 2227 2228 // NullFields is a list of field names (e.g. "CloudRepo") to include in 2229 // API requests with the JSON null value. By default, fields with empty 2230 // values are omitted from API requests. However, any field with an 2231 // empty value appearing in NullFields will be sent to the server as 2232 // null. It is an error if a field in this list has a non-empty value. 2233 // This may be used to include null fields in Patch requests. 2234 NullFields []string `json:"-"` 2235} 2236 2237func (s *SourceContext) MarshalJSON() ([]byte, error) { 2238 type NoMethod SourceContext 2239 raw := NoMethod(*s) 2240 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2241} 2242 2243// Status: The `Status` type defines a logical error model that is 2244// suitable for different programming environments, including REST APIs 2245// and RPC APIs. It is used by gRPC (https://github.com/grpc). Each 2246// `Status` message contains three pieces of data: error code, error 2247// message, and error details. You can find out more about this error 2248// model and how to work with it in the API Design Guide 2249// (https://cloud.google.com/apis/design/errors). 2250type Status struct { 2251 // Code: The status code, which should be an enum value of 2252 // google.rpc.Code. 2253 Code int64 `json:"code,omitempty"` 2254 2255 // Details: A list of messages that carry the error details. There is a 2256 // common set of message types for APIs to use. 2257 Details []googleapi.RawMessage `json:"details,omitempty"` 2258 2259 // Message: A developer-facing error message, which should be in 2260 // English. Any user-facing error message should be localized and sent 2261 // in the google.rpc.Status.details field, or localized by the client. 2262 Message string `json:"message,omitempty"` 2263 2264 // ForceSendFields is a list of field names (e.g. "Code") to 2265 // unconditionally include in API requests. By default, fields with 2266 // empty or default values are omitted from API requests. However, any 2267 // non-pointer, non-interface field appearing in ForceSendFields will be 2268 // sent to the server regardless of whether the field is empty or not. 2269 // This may be used to include empty fields in Patch requests. 2270 ForceSendFields []string `json:"-"` 2271 2272 // NullFields is a list of field names (e.g. "Code") to include in API 2273 // requests with the JSON null value. By default, fields with empty 2274 // values are omitted from API requests. However, any field with an 2275 // empty value appearing in NullFields will be sent to the server as 2276 // null. It is an error if a field in this list has a non-empty value. 2277 // This may be used to include null fields in Patch requests. 2278 NullFields []string `json:"-"` 2279} 2280 2281func (s *Status) MarshalJSON() ([]byte, error) { 2282 type NoMethod Status 2283 raw := NoMethod(*s) 2284 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2285} 2286 2287type Subject struct { 2288 // Digest: "": "" 2289 Digest map[string]string `json:"digest,omitempty"` 2290 2291 Name string `json:"name,omitempty"` 2292 2293 // ForceSendFields is a list of field names (e.g. "Digest") to 2294 // unconditionally include in API requests. By default, fields with 2295 // empty or default values are omitted from API requests. However, any 2296 // non-pointer, non-interface field appearing in ForceSendFields will be 2297 // sent to the server regardless of whether the field is empty or not. 2298 // This may be used to include empty fields in Patch requests. 2299 ForceSendFields []string `json:"-"` 2300 2301 // NullFields is a list of field names (e.g. "Digest") to include in API 2302 // requests with the JSON null value. By default, fields with empty 2303 // values are omitted from API requests. However, any field with an 2304 // empty value appearing in NullFields will be sent to the server as 2305 // null. It is an error if a field in this list has a non-empty value. 2306 // This may be used to include null fields in Patch requests. 2307 NullFields []string `json:"-"` 2308} 2309 2310func (s *Subject) MarshalJSON() ([]byte, error) { 2311 type NoMethod Subject 2312 raw := NoMethod(*s) 2313 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2314} 2315 2316// UpgradeDistribution: The Upgrade Distribution represents metadata 2317// about the Upgrade for each operating system (CPE). Some distributions 2318// have additional metadata around updates, classifying them into 2319// various categories and severities. 2320type UpgradeDistribution struct { 2321 // Classification: The operating system classification of this Upgrade, 2322 // as specified by the upstream operating system upgrade feed. For 2323 // Windows the classification is one of the category_ids listed at 2324 // https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ff357803(v=vs.85) 2325 Classification string `json:"classification,omitempty"` 2326 2327 // CpeUri: Required - The specific operating system this metadata 2328 // applies to. See https://cpe.mitre.org/specification/. 2329 CpeUri string `json:"cpeUri,omitempty"` 2330 2331 // Cve: The cve tied to this Upgrade. 2332 Cve []string `json:"cve,omitempty"` 2333 2334 // Severity: The severity as specified by the upstream operating system. 2335 Severity string `json:"severity,omitempty"` 2336 2337 // ForceSendFields is a list of field names (e.g. "Classification") to 2338 // unconditionally include in API requests. By default, fields with 2339 // empty or default values are omitted from API requests. However, any 2340 // non-pointer, non-interface field appearing in ForceSendFields will be 2341 // sent to the server regardless of whether the field is empty or not. 2342 // This may be used to include empty fields in Patch requests. 2343 ForceSendFields []string `json:"-"` 2344 2345 // NullFields is a list of field names (e.g. "Classification") to 2346 // include in API requests with the JSON null value. By default, fields 2347 // with empty values are omitted from API requests. However, any field 2348 // with an empty value appearing in NullFields will be sent to the 2349 // server as null. It is an error if a field in this list has a 2350 // non-empty value. This may be used to include null fields in Patch 2351 // requests. 2352 NullFields []string `json:"-"` 2353} 2354 2355func (s *UpgradeDistribution) MarshalJSON() ([]byte, error) { 2356 type NoMethod UpgradeDistribution 2357 raw := NoMethod(*s) 2358 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2359} 2360 2361// UpgradeOccurrence: An Upgrade Occurrence represents that a specific 2362// resource_url could install a specific upgrade. This presence is 2363// supplied via local sources (i.e. it is present in the mirror and the 2364// running system has noticed its availability). For Windows, both 2365// distribution and windows_update contain information for the Windows 2366// update. 2367type UpgradeOccurrence struct { 2368 // Distribution: Metadata about the upgrade for available for the 2369 // specific operating system for the resource_url. This allows efficient 2370 // filtering, as well as making it easier to use the occurrence. 2371 Distribution *UpgradeDistribution `json:"distribution,omitempty"` 2372 2373 // Package: Required for non-Windows OS. The package this Upgrade is 2374 // for. 2375 Package string `json:"package,omitempty"` 2376 2377 // ParsedVersion: Required for non-Windows OS. The version of the 2378 // package in a machine + human readable form. 2379 ParsedVersion *Version `json:"parsedVersion,omitempty"` 2380 2381 // WindowsUpdate: Required for Windows OS. Represents the metadata about 2382 // the Windows update. 2383 WindowsUpdate *WindowsUpdate `json:"windowsUpdate,omitempty"` 2384 2385 // ForceSendFields is a list of field names (e.g. "Distribution") to 2386 // unconditionally include in API requests. By default, fields with 2387 // empty or default values are omitted from API requests. However, any 2388 // non-pointer, non-interface field appearing in ForceSendFields will be 2389 // sent to the server regardless of whether the field is empty or not. 2390 // This may be used to include empty fields in Patch requests. 2391 ForceSendFields []string `json:"-"` 2392 2393 // NullFields is a list of field names (e.g. "Distribution") to include 2394 // in API requests with the JSON null value. By default, fields with 2395 // empty values are omitted from API requests. However, any field with 2396 // an empty value appearing in NullFields will be sent to the server as 2397 // null. It is an error if a field in this list has a non-empty value. 2398 // This may be used to include null fields in Patch requests. 2399 NullFields []string `json:"-"` 2400} 2401 2402func (s *UpgradeOccurrence) MarshalJSON() ([]byte, error) { 2403 type NoMethod UpgradeOccurrence 2404 raw := NoMethod(*s) 2405 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2406} 2407 2408// Version: Version contains structured information about the version of 2409// a package. 2410type Version struct { 2411 // Epoch: Used to correct mistakes in the version numbering scheme. 2412 Epoch int64 `json:"epoch,omitempty"` 2413 2414 // FullName: Human readable version string. This string is of the form 2415 // :- and is only set when kind is NORMAL. 2416 FullName string `json:"fullName,omitempty"` 2417 2418 // Inclusive: Whether this version is specifying part of an inclusive 2419 // range. Grafeas does not have the capability to specify version 2420 // ranges; instead we have fields that specify start version and end 2421 // versions. At times this is insufficient - we also need to specify 2422 // whether the version is included in the range or is excluded from the 2423 // range. This boolean is expected to be set to true when the version is 2424 // included in a range. 2425 Inclusive bool `json:"inclusive,omitempty"` 2426 2427 // Kind: Required. Distinguishes between sentinel MIN/MAX versions and 2428 // normal versions. 2429 // 2430 // Possible values: 2431 // "VERSION_KIND_UNSPECIFIED" - Unknown. 2432 // "NORMAL" - A standard package version. 2433 // "MINIMUM" - A special version representing negative infinity. 2434 // "MAXIMUM" - A special version representing positive infinity. 2435 Kind string `json:"kind,omitempty"` 2436 2437 // Name: Required only when version kind is NORMAL. The main part of the 2438 // version name. 2439 Name string `json:"name,omitempty"` 2440 2441 // Revision: The iteration of the package build from the above version. 2442 Revision string `json:"revision,omitempty"` 2443 2444 // ForceSendFields is a list of field names (e.g. "Epoch") to 2445 // unconditionally include in API requests. By default, fields with 2446 // empty or default values are omitted from API requests. However, any 2447 // non-pointer, non-interface field appearing in ForceSendFields will be 2448 // sent to the server regardless of whether the field is empty or not. 2449 // This may be used to include empty fields in Patch requests. 2450 ForceSendFields []string `json:"-"` 2451 2452 // NullFields is a list of field names (e.g. "Epoch") to include in API 2453 // requests with the JSON null value. By default, fields with empty 2454 // values are omitted from API requests. However, any field with an 2455 // empty value appearing in NullFields will be sent to the server as 2456 // null. It is an error if a field in this list has a non-empty value. 2457 // This may be used to include null fields in Patch requests. 2458 NullFields []string `json:"-"` 2459} 2460 2461func (s *Version) MarshalJSON() ([]byte, error) { 2462 type NoMethod Version 2463 raw := NoMethod(*s) 2464 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2465} 2466 2467// VulnerabilityOccurrence: An occurrence of a severity vulnerability on 2468// a resource. 2469type VulnerabilityOccurrence struct { 2470 // CvssScore: Output only. The CVSS score of this vulnerability. CVSS 2471 // score is on a scale of 0 - 10 where 0 indicates low severity and 10 2472 // indicates high severity. 2473 CvssScore float64 `json:"cvssScore,omitempty"` 2474 2475 // EffectiveSeverity: The distro assigned severity for this 2476 // vulnerability when it is available, otherwise this is the note 2477 // provider assigned severity. 2478 // 2479 // Possible values: 2480 // "SEVERITY_UNSPECIFIED" - Unknown. 2481 // "MINIMAL" - Minimal severity. 2482 // "LOW" - Low severity. 2483 // "MEDIUM" - Medium severity. 2484 // "HIGH" - High severity. 2485 // "CRITICAL" - Critical severity. 2486 EffectiveSeverity string `json:"effectiveSeverity,omitempty"` 2487 2488 // FixAvailable: Output only. Whether at least one of the affected 2489 // packages has a fix available. 2490 FixAvailable bool `json:"fixAvailable,omitempty"` 2491 2492 // LongDescription: Output only. A detailed description of this 2493 // vulnerability. 2494 LongDescription string `json:"longDescription,omitempty"` 2495 2496 // PackageIssue: Required. The set of affected locations and their fixes 2497 // (if available) within the associated resource. 2498 PackageIssue []*PackageIssue `json:"packageIssue,omitempty"` 2499 2500 // RelatedUrls: Output only. URLs related to this vulnerability. 2501 RelatedUrls []*RelatedUrl `json:"relatedUrls,omitempty"` 2502 2503 // Severity: Output only. The note provider assigned severity of this 2504 // vulnerability. 2505 // 2506 // Possible values: 2507 // "SEVERITY_UNSPECIFIED" - Unknown. 2508 // "MINIMAL" - Minimal severity. 2509 // "LOW" - Low severity. 2510 // "MEDIUM" - Medium severity. 2511 // "HIGH" - High severity. 2512 // "CRITICAL" - Critical severity. 2513 Severity string `json:"severity,omitempty"` 2514 2515 // ShortDescription: Output only. A one sentence description of this 2516 // vulnerability. 2517 ShortDescription string `json:"shortDescription,omitempty"` 2518 2519 // Type: The type of package; whether native or non native (e.g., ruby 2520 // gems, node.js packages, etc.). 2521 Type string `json:"type,omitempty"` 2522 2523 // ForceSendFields is a list of field names (e.g. "CvssScore") to 2524 // unconditionally include in API requests. By default, fields with 2525 // empty or default values are omitted from API requests. However, any 2526 // non-pointer, non-interface field appearing in ForceSendFields will be 2527 // sent to the server regardless of whether the field is empty or not. 2528 // This may be used to include empty fields in Patch requests. 2529 ForceSendFields []string `json:"-"` 2530 2531 // NullFields is a list of field names (e.g. "CvssScore") to include in 2532 // API requests with the JSON null value. By default, fields with empty 2533 // values are omitted from API requests. However, any field with an 2534 // empty value appearing in NullFields will be sent to the server as 2535 // null. It is an error if a field in this list has a non-empty value. 2536 // This may be used to include null fields in Patch requests. 2537 NullFields []string `json:"-"` 2538} 2539 2540func (s *VulnerabilityOccurrence) MarshalJSON() ([]byte, error) { 2541 type NoMethod VulnerabilityOccurrence 2542 raw := NoMethod(*s) 2543 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2544} 2545 2546func (s *VulnerabilityOccurrence) UnmarshalJSON(data []byte) error { 2547 type NoMethod VulnerabilityOccurrence 2548 var s1 struct { 2549 CvssScore gensupport.JSONFloat64 `json:"cvssScore"` 2550 *NoMethod 2551 } 2552 s1.NoMethod = (*NoMethod)(s) 2553 if err := json.Unmarshal(data, &s1); err != nil { 2554 return err 2555 } 2556 s.CvssScore = float64(s1.CvssScore) 2557 return nil 2558} 2559 2560// WindowsUpdate: Windows Update represents the metadata about the 2561// update for the Windows operating system. The fields in this message 2562// come from the Windows Update API documented at 2563// https://docs.microsoft.com/en-us/windows/win32/api/wuapi/nn-wuapi-iupdate. 2564type WindowsUpdate struct { 2565 // Categories: The list of categories to which the update belongs. 2566 Categories []*Category `json:"categories,omitempty"` 2567 2568 // Description: The localized description of the update. 2569 Description string `json:"description,omitempty"` 2570 2571 // Identity: Required - The unique identifier for the update. 2572 Identity *Identity `json:"identity,omitempty"` 2573 2574 // KbArticleIds: The Microsoft Knowledge Base article IDs that are 2575 // associated with the update. 2576 KbArticleIds []string `json:"kbArticleIds,omitempty"` 2577 2578 // LastPublishedTimestamp: The last published timestamp of the update. 2579 LastPublishedTimestamp string `json:"lastPublishedTimestamp,omitempty"` 2580 2581 // SupportUrl: The hyperlink to the support information for the update. 2582 SupportUrl string `json:"supportUrl,omitempty"` 2583 2584 // Title: The localized title of the update. 2585 Title string `json:"title,omitempty"` 2586 2587 // ForceSendFields is a list of field names (e.g. "Categories") to 2588 // unconditionally include in API requests. By default, fields with 2589 // empty or default values are omitted from API requests. However, any 2590 // non-pointer, non-interface field appearing in ForceSendFields will be 2591 // sent to the server regardless of whether the field is empty or not. 2592 // This may be used to include empty fields in Patch requests. 2593 ForceSendFields []string `json:"-"` 2594 2595 // NullFields is a list of field names (e.g. "Categories") to include in 2596 // API requests with the JSON null value. By default, fields with empty 2597 // values are omitted from API requests. However, any field with an 2598 // empty value appearing in NullFields will be sent to the server as 2599 // null. It is an error if a field in this list has a non-empty value. 2600 // This may be used to include null fields in Patch requests. 2601 NullFields []string `json:"-"` 2602} 2603 2604func (s *WindowsUpdate) MarshalJSON() ([]byte, error) { 2605 type NoMethod WindowsUpdate 2606 raw := NoMethod(*s) 2607 return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) 2608} 2609 2610// method id "ondemandscanning.projects.locations.operations.cancel": 2611 2612type ProjectsLocationsOperationsCancelCall struct { 2613 s *Service 2614 name string 2615 urlParams_ gensupport.URLParams 2616 ctx_ context.Context 2617 header_ http.Header 2618} 2619 2620// Cancel: Starts asynchronous cancellation on a long-running operation. 2621// The server makes a best effort to cancel the operation, but success 2622// is not guaranteed. If the server doesn't support this method, it 2623// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use 2624// Operations.GetOperation or other methods to check whether the 2625// cancellation succeeded or whether the operation completed despite 2626// cancellation. On successful cancellation, the operation is not 2627// deleted; instead, it becomes an operation with an Operation.error 2628// value with a google.rpc.Status.code of 1, corresponding to 2629// `Code.CANCELLED`. 2630// 2631// - name: The name of the operation resource to be cancelled. 2632func (r *ProjectsLocationsOperationsService) Cancel(name string) *ProjectsLocationsOperationsCancelCall { 2633 c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2634 c.name = name 2635 return c 2636} 2637 2638// Fields allows partial responses to be retrieved. See 2639// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2640// for more information. 2641func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall { 2642 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2643 return c 2644} 2645 2646// Context sets the context to be used in this call's Do method. Any 2647// pending HTTP request will be aborted if the provided context is 2648// canceled. 2649func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall { 2650 c.ctx_ = ctx 2651 return c 2652} 2653 2654// Header returns an http.Header that can be modified by the caller to 2655// add HTTP headers to the request. 2656func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header { 2657 if c.header_ == nil { 2658 c.header_ = make(http.Header) 2659 } 2660 return c.header_ 2661} 2662 2663func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) { 2664 reqHeaders := make(http.Header) 2665 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 2666 for k, v := range c.header_ { 2667 reqHeaders[k] = v 2668 } 2669 reqHeaders.Set("User-Agent", c.s.userAgent()) 2670 var body io.Reader = nil 2671 c.urlParams_.Set("alt", alt) 2672 c.urlParams_.Set("prettyPrint", "false") 2673 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:cancel") 2674 urls += "?" + c.urlParams_.Encode() 2675 req, err := http.NewRequest("POST", urls, body) 2676 if err != nil { 2677 return nil, err 2678 } 2679 req.Header = reqHeaders 2680 googleapi.Expand(req.URL, map[string]string{ 2681 "name": c.name, 2682 }) 2683 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2684} 2685 2686// Do executes the "ondemandscanning.projects.locations.operations.cancel" call. 2687// Exactly one of *Empty or error will be non-nil. Any non-2xx status 2688// code is an error. Response headers are in either 2689// *Empty.ServerResponse.Header or (if a response was returned at all) 2690// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 2691// check whether the returned error was because http.StatusNotModified 2692// was returned. 2693func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 2694 gensupport.SetOptions(c.urlParams_, opts...) 2695 res, err := c.doRequest("json") 2696 if res != nil && res.StatusCode == http.StatusNotModified { 2697 if res.Body != nil { 2698 res.Body.Close() 2699 } 2700 return nil, &googleapi.Error{ 2701 Code: res.StatusCode, 2702 Header: res.Header, 2703 } 2704 } 2705 if err != nil { 2706 return nil, err 2707 } 2708 defer googleapi.CloseBody(res) 2709 if err := googleapi.CheckResponse(res); err != nil { 2710 return nil, err 2711 } 2712 ret := &Empty{ 2713 ServerResponse: googleapi.ServerResponse{ 2714 Header: res.Header, 2715 HTTPStatusCode: res.StatusCode, 2716 }, 2717 } 2718 target := &ret 2719 if err := gensupport.DecodeResponse(target, res); err != nil { 2720 return nil, err 2721 } 2722 return ret, nil 2723 // { 2724 // "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.", 2725 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel", 2726 // "httpMethod": "POST", 2727 // "id": "ondemandscanning.projects.locations.operations.cancel", 2728 // "parameterOrder": [ 2729 // "name" 2730 // ], 2731 // "parameters": { 2732 // "name": { 2733 // "description": "The name of the operation resource to be cancelled.", 2734 // "location": "path", 2735 // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", 2736 // "required": true, 2737 // "type": "string" 2738 // } 2739 // }, 2740 // "path": "v1beta1/{+name}:cancel", 2741 // "response": { 2742 // "$ref": "Empty" 2743 // }, 2744 // "scopes": [ 2745 // "https://www.googleapis.com/auth/cloud-platform" 2746 // ] 2747 // } 2748 2749} 2750 2751// method id "ondemandscanning.projects.locations.operations.delete": 2752 2753type ProjectsLocationsOperationsDeleteCall struct { 2754 s *Service 2755 name string 2756 urlParams_ gensupport.URLParams 2757 ctx_ context.Context 2758 header_ http.Header 2759} 2760 2761// Delete: Deletes a long-running operation. This method indicates that 2762// the client is no longer interested in the operation result. It does 2763// not cancel the operation. If the server doesn't support this method, 2764// it returns `google.rpc.Code.UNIMPLEMENTED`. 2765// 2766// - name: The name of the operation resource to be deleted. 2767func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall { 2768 c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2769 c.name = name 2770 return c 2771} 2772 2773// Fields allows partial responses to be retrieved. See 2774// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2775// for more information. 2776func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall { 2777 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2778 return c 2779} 2780 2781// Context sets the context to be used in this call's Do method. Any 2782// pending HTTP request will be aborted if the provided context is 2783// canceled. 2784func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall { 2785 c.ctx_ = ctx 2786 return c 2787} 2788 2789// Header returns an http.Header that can be modified by the caller to 2790// add HTTP headers to the request. 2791func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header { 2792 if c.header_ == nil { 2793 c.header_ = make(http.Header) 2794 } 2795 return c.header_ 2796} 2797 2798func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) { 2799 reqHeaders := make(http.Header) 2800 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 2801 for k, v := range c.header_ { 2802 reqHeaders[k] = v 2803 } 2804 reqHeaders.Set("User-Agent", c.s.userAgent()) 2805 var body io.Reader = nil 2806 c.urlParams_.Set("alt", alt) 2807 c.urlParams_.Set("prettyPrint", "false") 2808 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 2809 urls += "?" + c.urlParams_.Encode() 2810 req, err := http.NewRequest("DELETE", urls, body) 2811 if err != nil { 2812 return nil, err 2813 } 2814 req.Header = reqHeaders 2815 googleapi.Expand(req.URL, map[string]string{ 2816 "name": c.name, 2817 }) 2818 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2819} 2820 2821// Do executes the "ondemandscanning.projects.locations.operations.delete" call. 2822// Exactly one of *Empty or error will be non-nil. Any non-2xx status 2823// code is an error. Response headers are in either 2824// *Empty.ServerResponse.Header or (if a response was returned at all) 2825// in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to 2826// check whether the returned error was because http.StatusNotModified 2827// was returned. 2828func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { 2829 gensupport.SetOptions(c.urlParams_, opts...) 2830 res, err := c.doRequest("json") 2831 if res != nil && res.StatusCode == http.StatusNotModified { 2832 if res.Body != nil { 2833 res.Body.Close() 2834 } 2835 return nil, &googleapi.Error{ 2836 Code: res.StatusCode, 2837 Header: res.Header, 2838 } 2839 } 2840 if err != nil { 2841 return nil, err 2842 } 2843 defer googleapi.CloseBody(res) 2844 if err := googleapi.CheckResponse(res); err != nil { 2845 return nil, err 2846 } 2847 ret := &Empty{ 2848 ServerResponse: googleapi.ServerResponse{ 2849 Header: res.Header, 2850 HTTPStatusCode: res.StatusCode, 2851 }, 2852 } 2853 target := &ret 2854 if err := gensupport.DecodeResponse(target, res); err != nil { 2855 return nil, err 2856 } 2857 return ret, nil 2858 // { 2859 // "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.", 2860 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", 2861 // "httpMethod": "DELETE", 2862 // "id": "ondemandscanning.projects.locations.operations.delete", 2863 // "parameterOrder": [ 2864 // "name" 2865 // ], 2866 // "parameters": { 2867 // "name": { 2868 // "description": "The name of the operation resource to be deleted.", 2869 // "location": "path", 2870 // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", 2871 // "required": true, 2872 // "type": "string" 2873 // } 2874 // }, 2875 // "path": "v1beta1/{+name}", 2876 // "response": { 2877 // "$ref": "Empty" 2878 // }, 2879 // "scopes": [ 2880 // "https://www.googleapis.com/auth/cloud-platform" 2881 // ] 2882 // } 2883 2884} 2885 2886// method id "ondemandscanning.projects.locations.operations.get": 2887 2888type ProjectsLocationsOperationsGetCall struct { 2889 s *Service 2890 name string 2891 urlParams_ gensupport.URLParams 2892 ifNoneMatch_ string 2893 ctx_ context.Context 2894 header_ http.Header 2895} 2896 2897// Get: Gets the latest state of a long-running operation. Clients can 2898// use this method to poll the operation result at intervals as 2899// recommended by the API service. 2900// 2901// - name: The name of the operation resource. 2902func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { 2903 c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} 2904 c.name = name 2905 return c 2906} 2907 2908// Fields allows partial responses to be retrieved. See 2909// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 2910// for more information. 2911func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { 2912 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 2913 return c 2914} 2915 2916// IfNoneMatch sets the optional parameter which makes the operation 2917// fail if the object's ETag matches the given value. This is useful for 2918// getting updates only after the object has changed since the last 2919// request. Use googleapi.IsNotModified to check whether the response 2920// error from Do is the result of In-None-Match. 2921func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { 2922 c.ifNoneMatch_ = entityTag 2923 return c 2924} 2925 2926// Context sets the context to be used in this call's Do method. Any 2927// pending HTTP request will be aborted if the provided context is 2928// canceled. 2929func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { 2930 c.ctx_ = ctx 2931 return c 2932} 2933 2934// Header returns an http.Header that can be modified by the caller to 2935// add HTTP headers to the request. 2936func (c *ProjectsLocationsOperationsGetCall) Header() http.Header { 2937 if c.header_ == nil { 2938 c.header_ = make(http.Header) 2939 } 2940 return c.header_ 2941} 2942 2943func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) { 2944 reqHeaders := make(http.Header) 2945 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 2946 for k, v := range c.header_ { 2947 reqHeaders[k] = v 2948 } 2949 reqHeaders.Set("User-Agent", c.s.userAgent()) 2950 if c.ifNoneMatch_ != "" { 2951 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 2952 } 2953 var body io.Reader = nil 2954 c.urlParams_.Set("alt", alt) 2955 c.urlParams_.Set("prettyPrint", "false") 2956 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") 2957 urls += "?" + c.urlParams_.Encode() 2958 req, err := http.NewRequest("GET", urls, body) 2959 if err != nil { 2960 return nil, err 2961 } 2962 req.Header = reqHeaders 2963 googleapi.Expand(req.URL, map[string]string{ 2964 "name": c.name, 2965 }) 2966 return gensupport.SendRequest(c.ctx_, c.s.client, req) 2967} 2968 2969// Do executes the "ondemandscanning.projects.locations.operations.get" call. 2970// Exactly one of *Operation or error will be non-nil. Any non-2xx 2971// status code is an error. Response headers are in either 2972// *Operation.ServerResponse.Header or (if a response was returned at 2973// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 2974// to check whether the returned error was because 2975// http.StatusNotModified was returned. 2976func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 2977 gensupport.SetOptions(c.urlParams_, opts...) 2978 res, err := c.doRequest("json") 2979 if res != nil && res.StatusCode == http.StatusNotModified { 2980 if res.Body != nil { 2981 res.Body.Close() 2982 } 2983 return nil, &googleapi.Error{ 2984 Code: res.StatusCode, 2985 Header: res.Header, 2986 } 2987 } 2988 if err != nil { 2989 return nil, err 2990 } 2991 defer googleapi.CloseBody(res) 2992 if err := googleapi.CheckResponse(res); err != nil { 2993 return nil, err 2994 } 2995 ret := &Operation{ 2996 ServerResponse: googleapi.ServerResponse{ 2997 Header: res.Header, 2998 HTTPStatusCode: res.StatusCode, 2999 }, 3000 } 3001 target := &ret 3002 if err := gensupport.DecodeResponse(target, res); err != nil { 3003 return nil, err 3004 } 3005 return ret, nil 3006 // { 3007 // "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", 3008 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}", 3009 // "httpMethod": "GET", 3010 // "id": "ondemandscanning.projects.locations.operations.get", 3011 // "parameterOrder": [ 3012 // "name" 3013 // ], 3014 // "parameters": { 3015 // "name": { 3016 // "description": "The name of the operation resource.", 3017 // "location": "path", 3018 // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", 3019 // "required": true, 3020 // "type": "string" 3021 // } 3022 // }, 3023 // "path": "v1beta1/{+name}", 3024 // "response": { 3025 // "$ref": "Operation" 3026 // }, 3027 // "scopes": [ 3028 // "https://www.googleapis.com/auth/cloud-platform" 3029 // ] 3030 // } 3031 3032} 3033 3034// method id "ondemandscanning.projects.locations.operations.list": 3035 3036type ProjectsLocationsOperationsListCall struct { 3037 s *Service 3038 name string 3039 urlParams_ gensupport.URLParams 3040 ifNoneMatch_ string 3041 ctx_ context.Context 3042 header_ http.Header 3043} 3044 3045// List: Lists operations that match the specified filter in the 3046// request. If the server doesn't support this method, it returns 3047// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to 3048// override the binding to use different resource name schemes, such as 3049// `users/*/operations`. To override the binding, API services can add a 3050// binding such as "/v1/{name=users/*}/operations" to their service 3051// configuration. For backwards compatibility, the default name includes 3052// the operations collection id, however overriding users must ensure 3053// the name binding is the parent resource, without the operations 3054// collection id. 3055// 3056// - name: The name of the operation's parent resource. 3057func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall { 3058 c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3059 c.name = name 3060 return c 3061} 3062 3063// Filter sets the optional parameter "filter": The standard list 3064// filter. 3065func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall { 3066 c.urlParams_.Set("filter", filter) 3067 return c 3068} 3069 3070// PageSize sets the optional parameter "pageSize": The standard list 3071// page size. 3072func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall { 3073 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 3074 return c 3075} 3076 3077// PageToken sets the optional parameter "pageToken": The standard list 3078// page token. 3079func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall { 3080 c.urlParams_.Set("pageToken", pageToken) 3081 return c 3082} 3083 3084// Fields allows partial responses to be retrieved. See 3085// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3086// for more information. 3087func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { 3088 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3089 return c 3090} 3091 3092// IfNoneMatch sets the optional parameter which makes the operation 3093// fail if the object's ETag matches the given value. This is useful for 3094// getting updates only after the object has changed since the last 3095// request. Use googleapi.IsNotModified to check whether the response 3096// error from Do is the result of In-None-Match. 3097func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { 3098 c.ifNoneMatch_ = entityTag 3099 return c 3100} 3101 3102// Context sets the context to be used in this call's Do method. Any 3103// pending HTTP request will be aborted if the provided context is 3104// canceled. 3105func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { 3106 c.ctx_ = ctx 3107 return c 3108} 3109 3110// Header returns an http.Header that can be modified by the caller to 3111// add HTTP headers to the request. 3112func (c *ProjectsLocationsOperationsListCall) Header() http.Header { 3113 if c.header_ == nil { 3114 c.header_ = make(http.Header) 3115 } 3116 return c.header_ 3117} 3118 3119func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) { 3120 reqHeaders := make(http.Header) 3121 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 3122 for k, v := range c.header_ { 3123 reqHeaders[k] = v 3124 } 3125 reqHeaders.Set("User-Agent", c.s.userAgent()) 3126 if c.ifNoneMatch_ != "" { 3127 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3128 } 3129 var body io.Reader = nil 3130 c.urlParams_.Set("alt", alt) 3131 c.urlParams_.Set("prettyPrint", "false") 3132 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/operations") 3133 urls += "?" + c.urlParams_.Encode() 3134 req, err := http.NewRequest("GET", urls, body) 3135 if err != nil { 3136 return nil, err 3137 } 3138 req.Header = reqHeaders 3139 googleapi.Expand(req.URL, map[string]string{ 3140 "name": c.name, 3141 }) 3142 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3143} 3144 3145// Do executes the "ondemandscanning.projects.locations.operations.list" call. 3146// Exactly one of *ListOperationsResponse or error will be non-nil. Any 3147// non-2xx status code is an error. Response headers are in either 3148// *ListOperationsResponse.ServerResponse.Header or (if a response was 3149// returned at all) in error.(*googleapi.Error).Header. Use 3150// googleapi.IsNotModified to check whether the returned error was 3151// because http.StatusNotModified was returned. 3152func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { 3153 gensupport.SetOptions(c.urlParams_, opts...) 3154 res, err := c.doRequest("json") 3155 if res != nil && res.StatusCode == http.StatusNotModified { 3156 if res.Body != nil { 3157 res.Body.Close() 3158 } 3159 return nil, &googleapi.Error{ 3160 Code: res.StatusCode, 3161 Header: res.Header, 3162 } 3163 } 3164 if err != nil { 3165 return nil, err 3166 } 3167 defer googleapi.CloseBody(res) 3168 if err := googleapi.CheckResponse(res); err != nil { 3169 return nil, err 3170 } 3171 ret := &ListOperationsResponse{ 3172 ServerResponse: googleapi.ServerResponse{ 3173 Header: res.Header, 3174 HTTPStatusCode: res.StatusCode, 3175 }, 3176 } 3177 target := &ret 3178 if err := gensupport.DecodeResponse(target, res); err != nil { 3179 return nil, err 3180 } 3181 return ret, nil 3182 // { 3183 // "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.", 3184 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations", 3185 // "httpMethod": "GET", 3186 // "id": "ondemandscanning.projects.locations.operations.list", 3187 // "parameterOrder": [ 3188 // "name" 3189 // ], 3190 // "parameters": { 3191 // "filter": { 3192 // "description": "The standard list filter.", 3193 // "location": "query", 3194 // "type": "string" 3195 // }, 3196 // "name": { 3197 // "description": "The name of the operation's parent resource.", 3198 // "location": "path", 3199 // "pattern": "^projects/[^/]+/locations/[^/]+$", 3200 // "required": true, 3201 // "type": "string" 3202 // }, 3203 // "pageSize": { 3204 // "description": "The standard list page size.", 3205 // "format": "int32", 3206 // "location": "query", 3207 // "type": "integer" 3208 // }, 3209 // "pageToken": { 3210 // "description": "The standard list page token.", 3211 // "location": "query", 3212 // "type": "string" 3213 // } 3214 // }, 3215 // "path": "v1beta1/{+name}/operations", 3216 // "response": { 3217 // "$ref": "ListOperationsResponse" 3218 // }, 3219 // "scopes": [ 3220 // "https://www.googleapis.com/auth/cloud-platform" 3221 // ] 3222 // } 3223 3224} 3225 3226// Pages invokes f for each page of results. 3227// A non-nil error returned from f will halt the iteration. 3228// The provided context supersedes any context provided to the Context method. 3229func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { 3230 c.ctx_ = ctx 3231 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 3232 for { 3233 x, err := c.Do() 3234 if err != nil { 3235 return err 3236 } 3237 if err := f(x); err != nil { 3238 return err 3239 } 3240 if x.NextPageToken == "" { 3241 return nil 3242 } 3243 c.PageToken(x.NextPageToken) 3244 } 3245} 3246 3247// method id "ondemandscanning.projects.locations.operations.wait": 3248 3249type ProjectsLocationsOperationsWaitCall struct { 3250 s *Service 3251 name string 3252 urlParams_ gensupport.URLParams 3253 ctx_ context.Context 3254 header_ http.Header 3255} 3256 3257// Wait: Waits until the specified long-running operation is done or 3258// reaches at most a specified timeout, returning the latest state. If 3259// the operation is already done, the latest state is immediately 3260// returned. If the timeout specified is greater than the default 3261// HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does 3262// not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. 3263// Note that this method is on a best-effort basis. It may return the 3264// latest state before the specified timeout (including immediately), 3265// meaning even an immediate response is no guarantee that the operation 3266// is done. 3267// 3268// - name: The name of the operation resource to wait on. 3269func (r *ProjectsLocationsOperationsService) Wait(name string) *ProjectsLocationsOperationsWaitCall { 3270 c := &ProjectsLocationsOperationsWaitCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3271 c.name = name 3272 return c 3273} 3274 3275// Timeout sets the optional parameter "timeout": The maximum duration 3276// to wait before timing out. If left blank, the wait will be at most 3277// the time permitted by the underlying HTTP/RPC protocol. If RPC 3278// context deadline is also specified, the shorter one will be used. 3279func (c *ProjectsLocationsOperationsWaitCall) Timeout(timeout string) *ProjectsLocationsOperationsWaitCall { 3280 c.urlParams_.Set("timeout", timeout) 3281 return c 3282} 3283 3284// Fields allows partial responses to be retrieved. See 3285// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3286// for more information. 3287func (c *ProjectsLocationsOperationsWaitCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsWaitCall { 3288 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3289 return c 3290} 3291 3292// Context sets the context to be used in this call's Do method. Any 3293// pending HTTP request will be aborted if the provided context is 3294// canceled. 3295func (c *ProjectsLocationsOperationsWaitCall) Context(ctx context.Context) *ProjectsLocationsOperationsWaitCall { 3296 c.ctx_ = ctx 3297 return c 3298} 3299 3300// Header returns an http.Header that can be modified by the caller to 3301// add HTTP headers to the request. 3302func (c *ProjectsLocationsOperationsWaitCall) Header() http.Header { 3303 if c.header_ == nil { 3304 c.header_ = make(http.Header) 3305 } 3306 return c.header_ 3307} 3308 3309func (c *ProjectsLocationsOperationsWaitCall) doRequest(alt string) (*http.Response, error) { 3310 reqHeaders := make(http.Header) 3311 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 3312 for k, v := range c.header_ { 3313 reqHeaders[k] = v 3314 } 3315 reqHeaders.Set("User-Agent", c.s.userAgent()) 3316 var body io.Reader = nil 3317 c.urlParams_.Set("alt", alt) 3318 c.urlParams_.Set("prettyPrint", "false") 3319 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:wait") 3320 urls += "?" + c.urlParams_.Encode() 3321 req, err := http.NewRequest("POST", urls, body) 3322 if err != nil { 3323 return nil, err 3324 } 3325 req.Header = reqHeaders 3326 googleapi.Expand(req.URL, map[string]string{ 3327 "name": c.name, 3328 }) 3329 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3330} 3331 3332// Do executes the "ondemandscanning.projects.locations.operations.wait" call. 3333// Exactly one of *Operation or error will be non-nil. Any non-2xx 3334// status code is an error. Response headers are in either 3335// *Operation.ServerResponse.Header or (if a response was returned at 3336// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 3337// to check whether the returned error was because 3338// http.StatusNotModified was returned. 3339func (c *ProjectsLocationsOperationsWaitCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 3340 gensupport.SetOptions(c.urlParams_, opts...) 3341 res, err := c.doRequest("json") 3342 if res != nil && res.StatusCode == http.StatusNotModified { 3343 if res.Body != nil { 3344 res.Body.Close() 3345 } 3346 return nil, &googleapi.Error{ 3347 Code: res.StatusCode, 3348 Header: res.Header, 3349 } 3350 } 3351 if err != nil { 3352 return nil, err 3353 } 3354 defer googleapi.CloseBody(res) 3355 if err := googleapi.CheckResponse(res); err != nil { 3356 return nil, err 3357 } 3358 ret := &Operation{ 3359 ServerResponse: googleapi.ServerResponse{ 3360 Header: res.Header, 3361 HTTPStatusCode: res.StatusCode, 3362 }, 3363 } 3364 target := &ret 3365 if err := gensupport.DecodeResponse(target, res); err != nil { 3366 return nil, err 3367 } 3368 return ret, nil 3369 // { 3370 // "description": "Waits until the specified long-running operation is done or reaches at most a specified timeout, returning the latest state. If the operation is already done, the latest state is immediately returned. If the timeout specified is greater than the default HTTP/RPC timeout, the HTTP/RPC timeout is used. If the server does not support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Note that this method is on a best-effort basis. It may return the latest state before the specified timeout (including immediately), meaning even an immediate response is no guarantee that the operation is done.", 3371 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:wait", 3372 // "httpMethod": "POST", 3373 // "id": "ondemandscanning.projects.locations.operations.wait", 3374 // "parameterOrder": [ 3375 // "name" 3376 // ], 3377 // "parameters": { 3378 // "name": { 3379 // "description": "The name of the operation resource to wait on.", 3380 // "location": "path", 3381 // "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$", 3382 // "required": true, 3383 // "type": "string" 3384 // }, 3385 // "timeout": { 3386 // "description": "The maximum duration to wait before timing out. If left blank, the wait will be at most the time permitted by the underlying HTTP/RPC protocol. If RPC context deadline is also specified, the shorter one will be used.", 3387 // "format": "google-duration", 3388 // "location": "query", 3389 // "type": "string" 3390 // } 3391 // }, 3392 // "path": "v1beta1/{+name}:wait", 3393 // "response": { 3394 // "$ref": "Operation" 3395 // }, 3396 // "scopes": [ 3397 // "https://www.googleapis.com/auth/cloud-platform" 3398 // ] 3399 // } 3400 3401} 3402 3403// method id "ondemandscanning.projects.locations.scans.analyzePackages": 3404 3405type ProjectsLocationsScansAnalyzePackagesCall struct { 3406 s *Service 3407 parent string 3408 analyzepackagesrequest *AnalyzePackagesRequest 3409 urlParams_ gensupport.URLParams 3410 ctx_ context.Context 3411 header_ http.Header 3412} 3413 3414// AnalyzePackages: Initiates an analysis of the provided packages. 3415// 3416// - parent: The parent of the resource for which analysis is requested. 3417// Format: projects/[project_name]/locations/[location]. 3418func (r *ProjectsLocationsScansService) AnalyzePackages(parent string, analyzepackagesrequest *AnalyzePackagesRequest) *ProjectsLocationsScansAnalyzePackagesCall { 3419 c := &ProjectsLocationsScansAnalyzePackagesCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3420 c.parent = parent 3421 c.analyzepackagesrequest = analyzepackagesrequest 3422 return c 3423} 3424 3425// Fields allows partial responses to be retrieved. See 3426// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3427// for more information. 3428func (c *ProjectsLocationsScansAnalyzePackagesCall) Fields(s ...googleapi.Field) *ProjectsLocationsScansAnalyzePackagesCall { 3429 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3430 return c 3431} 3432 3433// Context sets the context to be used in this call's Do method. Any 3434// pending HTTP request will be aborted if the provided context is 3435// canceled. 3436func (c *ProjectsLocationsScansAnalyzePackagesCall) Context(ctx context.Context) *ProjectsLocationsScansAnalyzePackagesCall { 3437 c.ctx_ = ctx 3438 return c 3439} 3440 3441// Header returns an http.Header that can be modified by the caller to 3442// add HTTP headers to the request. 3443func (c *ProjectsLocationsScansAnalyzePackagesCall) Header() http.Header { 3444 if c.header_ == nil { 3445 c.header_ = make(http.Header) 3446 } 3447 return c.header_ 3448} 3449 3450func (c *ProjectsLocationsScansAnalyzePackagesCall) doRequest(alt string) (*http.Response, error) { 3451 reqHeaders := make(http.Header) 3452 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 3453 for k, v := range c.header_ { 3454 reqHeaders[k] = v 3455 } 3456 reqHeaders.Set("User-Agent", c.s.userAgent()) 3457 var body io.Reader = nil 3458 body, err := googleapi.WithoutDataWrapper.JSONReader(c.analyzepackagesrequest) 3459 if err != nil { 3460 return nil, err 3461 } 3462 reqHeaders.Set("Content-Type", "application/json") 3463 c.urlParams_.Set("alt", alt) 3464 c.urlParams_.Set("prettyPrint", "false") 3465 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/scans:analyzePackages") 3466 urls += "?" + c.urlParams_.Encode() 3467 req, err := http.NewRequest("POST", urls, body) 3468 if err != nil { 3469 return nil, err 3470 } 3471 req.Header = reqHeaders 3472 googleapi.Expand(req.URL, map[string]string{ 3473 "parent": c.parent, 3474 }) 3475 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3476} 3477 3478// Do executes the "ondemandscanning.projects.locations.scans.analyzePackages" call. 3479// Exactly one of *Operation or error will be non-nil. Any non-2xx 3480// status code is an error. Response headers are in either 3481// *Operation.ServerResponse.Header or (if a response was returned at 3482// all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified 3483// to check whether the returned error was because 3484// http.StatusNotModified was returned. 3485func (c *ProjectsLocationsScansAnalyzePackagesCall) Do(opts ...googleapi.CallOption) (*Operation, error) { 3486 gensupport.SetOptions(c.urlParams_, opts...) 3487 res, err := c.doRequest("json") 3488 if res != nil && res.StatusCode == http.StatusNotModified { 3489 if res.Body != nil { 3490 res.Body.Close() 3491 } 3492 return nil, &googleapi.Error{ 3493 Code: res.StatusCode, 3494 Header: res.Header, 3495 } 3496 } 3497 if err != nil { 3498 return nil, err 3499 } 3500 defer googleapi.CloseBody(res) 3501 if err := googleapi.CheckResponse(res); err != nil { 3502 return nil, err 3503 } 3504 ret := &Operation{ 3505 ServerResponse: googleapi.ServerResponse{ 3506 Header: res.Header, 3507 HTTPStatusCode: res.StatusCode, 3508 }, 3509 } 3510 target := &ret 3511 if err := gensupport.DecodeResponse(target, res); err != nil { 3512 return nil, err 3513 } 3514 return ret, nil 3515 // { 3516 // "description": "Initiates an analysis of the provided packages.", 3517 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/scans:analyzePackages", 3518 // "httpMethod": "POST", 3519 // "id": "ondemandscanning.projects.locations.scans.analyzePackages", 3520 // "parameterOrder": [ 3521 // "parent" 3522 // ], 3523 // "parameters": { 3524 // "parent": { 3525 // "description": "Required. The parent of the resource for which analysis is requested. Format: projects/[project_name]/locations/[location]", 3526 // "location": "path", 3527 // "pattern": "^projects/[^/]+/locations/[^/]+$", 3528 // "required": true, 3529 // "type": "string" 3530 // } 3531 // }, 3532 // "path": "v1beta1/{+parent}/scans:analyzePackages", 3533 // "request": { 3534 // "$ref": "AnalyzePackagesRequest" 3535 // }, 3536 // "response": { 3537 // "$ref": "Operation" 3538 // }, 3539 // "scopes": [ 3540 // "https://www.googleapis.com/auth/cloud-platform" 3541 // ] 3542 // } 3543 3544} 3545 3546// method id "ondemandscanning.projects.locations.scans.vulnerabilities.list": 3547 3548type ProjectsLocationsScansVulnerabilitiesListCall struct { 3549 s *Service 3550 parent string 3551 urlParams_ gensupport.URLParams 3552 ifNoneMatch_ string 3553 ctx_ context.Context 3554 header_ http.Header 3555} 3556 3557// List: Lists vulnerabilities resulting from a successfully completed 3558// scan. 3559// 3560// - parent: The parent of the collection of Vulnerabilities being 3561// requested. Format: 3562// projects/[project_name]/locations/[location]/scans/[scan_id]. 3563func (r *ProjectsLocationsScansVulnerabilitiesService) List(parent string) *ProjectsLocationsScansVulnerabilitiesListCall { 3564 c := &ProjectsLocationsScansVulnerabilitiesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} 3565 c.parent = parent 3566 return c 3567} 3568 3569// PageSize sets the optional parameter "pageSize": The number of 3570// vulnerabilities to retrieve. 3571func (c *ProjectsLocationsScansVulnerabilitiesListCall) PageSize(pageSize int64) *ProjectsLocationsScansVulnerabilitiesListCall { 3572 c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) 3573 return c 3574} 3575 3576// PageToken sets the optional parameter "pageToken": The page token, 3577// resulting from a previous call to ListVulnerabilities. 3578func (c *ProjectsLocationsScansVulnerabilitiesListCall) PageToken(pageToken string) *ProjectsLocationsScansVulnerabilitiesListCall { 3579 c.urlParams_.Set("pageToken", pageToken) 3580 return c 3581} 3582 3583// Fields allows partial responses to be retrieved. See 3584// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse 3585// for more information. 3586func (c *ProjectsLocationsScansVulnerabilitiesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsScansVulnerabilitiesListCall { 3587 c.urlParams_.Set("fields", googleapi.CombineFields(s)) 3588 return c 3589} 3590 3591// IfNoneMatch sets the optional parameter which makes the operation 3592// fail if the object's ETag matches the given value. This is useful for 3593// getting updates only after the object has changed since the last 3594// request. Use googleapi.IsNotModified to check whether the response 3595// error from Do is the result of In-None-Match. 3596func (c *ProjectsLocationsScansVulnerabilitiesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsScansVulnerabilitiesListCall { 3597 c.ifNoneMatch_ = entityTag 3598 return c 3599} 3600 3601// Context sets the context to be used in this call's Do method. Any 3602// pending HTTP request will be aborted if the provided context is 3603// canceled. 3604func (c *ProjectsLocationsScansVulnerabilitiesListCall) Context(ctx context.Context) *ProjectsLocationsScansVulnerabilitiesListCall { 3605 c.ctx_ = ctx 3606 return c 3607} 3608 3609// Header returns an http.Header that can be modified by the caller to 3610// add HTTP headers to the request. 3611func (c *ProjectsLocationsScansVulnerabilitiesListCall) Header() http.Header { 3612 if c.header_ == nil { 3613 c.header_ = make(http.Header) 3614 } 3615 return c.header_ 3616} 3617 3618func (c *ProjectsLocationsScansVulnerabilitiesListCall) doRequest(alt string) (*http.Response, error) { 3619 reqHeaders := make(http.Header) 3620 reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210812") 3621 for k, v := range c.header_ { 3622 reqHeaders[k] = v 3623 } 3624 reqHeaders.Set("User-Agent", c.s.userAgent()) 3625 if c.ifNoneMatch_ != "" { 3626 reqHeaders.Set("If-None-Match", c.ifNoneMatch_) 3627 } 3628 var body io.Reader = nil 3629 c.urlParams_.Set("alt", alt) 3630 c.urlParams_.Set("prettyPrint", "false") 3631 urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/vulnerabilities") 3632 urls += "?" + c.urlParams_.Encode() 3633 req, err := http.NewRequest("GET", urls, body) 3634 if err != nil { 3635 return nil, err 3636 } 3637 req.Header = reqHeaders 3638 googleapi.Expand(req.URL, map[string]string{ 3639 "parent": c.parent, 3640 }) 3641 return gensupport.SendRequest(c.ctx_, c.s.client, req) 3642} 3643 3644// Do executes the "ondemandscanning.projects.locations.scans.vulnerabilities.list" call. 3645// Exactly one of *ListVulnerabilitiesResponse or error will be non-nil. 3646// Any non-2xx status code is an error. Response headers are in either 3647// *ListVulnerabilitiesResponse.ServerResponse.Header or (if a response 3648// was returned at all) in error.(*googleapi.Error).Header. Use 3649// googleapi.IsNotModified to check whether the returned error was 3650// because http.StatusNotModified was returned. 3651func (c *ProjectsLocationsScansVulnerabilitiesListCall) Do(opts ...googleapi.CallOption) (*ListVulnerabilitiesResponse, error) { 3652 gensupport.SetOptions(c.urlParams_, opts...) 3653 res, err := c.doRequest("json") 3654 if res != nil && res.StatusCode == http.StatusNotModified { 3655 if res.Body != nil { 3656 res.Body.Close() 3657 } 3658 return nil, &googleapi.Error{ 3659 Code: res.StatusCode, 3660 Header: res.Header, 3661 } 3662 } 3663 if err != nil { 3664 return nil, err 3665 } 3666 defer googleapi.CloseBody(res) 3667 if err := googleapi.CheckResponse(res); err != nil { 3668 return nil, err 3669 } 3670 ret := &ListVulnerabilitiesResponse{ 3671 ServerResponse: googleapi.ServerResponse{ 3672 Header: res.Header, 3673 HTTPStatusCode: res.StatusCode, 3674 }, 3675 } 3676 target := &ret 3677 if err := gensupport.DecodeResponse(target, res); err != nil { 3678 return nil, err 3679 } 3680 return ret, nil 3681 // { 3682 // "description": "Lists vulnerabilities resulting from a successfully completed scan.", 3683 // "flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/scans/{scansId}/vulnerabilities", 3684 // "httpMethod": "GET", 3685 // "id": "ondemandscanning.projects.locations.scans.vulnerabilities.list", 3686 // "parameterOrder": [ 3687 // "parent" 3688 // ], 3689 // "parameters": { 3690 // "pageSize": { 3691 // "description": "The number of vulnerabilities to retrieve.", 3692 // "format": "int32", 3693 // "location": "query", 3694 // "type": "integer" 3695 // }, 3696 // "pageToken": { 3697 // "description": "The page token, resulting from a previous call to ListVulnerabilities.", 3698 // "location": "query", 3699 // "type": "string" 3700 // }, 3701 // "parent": { 3702 // "description": "Required. The parent of the collection of Vulnerabilities being requested. Format: projects/[project_name]/locations/[location]/scans/[scan_id]", 3703 // "location": "path", 3704 // "pattern": "^projects/[^/]+/locations/[^/]+/scans/[^/]+$", 3705 // "required": true, 3706 // "type": "string" 3707 // } 3708 // }, 3709 // "path": "v1beta1/{+parent}/vulnerabilities", 3710 // "response": { 3711 // "$ref": "ListVulnerabilitiesResponse" 3712 // }, 3713 // "scopes": [ 3714 // "https://www.googleapis.com/auth/cloud-platform" 3715 // ] 3716 // } 3717 3718} 3719 3720// Pages invokes f for each page of results. 3721// A non-nil error returned from f will halt the iteration. 3722// The provided context supersedes any context provided to the Context method. 3723func (c *ProjectsLocationsScansVulnerabilitiesListCall) Pages(ctx context.Context, f func(*ListVulnerabilitiesResponse) error) error { 3724 c.ctx_ = ctx 3725 defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point 3726 for { 3727 x, err := c.Do() 3728 if err != nil { 3729 return err 3730 } 3731 if err := f(x); err != nil { 3732 return err 3733 } 3734 if x.NextPageToken == "" { 3735 return nil 3736 } 3737 c.PageToken(x.NextPageToken) 3738 } 3739} 3740