// Copyright 2024 Google LLC. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Code generated file. DO NOT EDIT. // Package containeranalysis provides access to the Container Analysis API. // // For product documentation, see: https://cloud.google.com/container-analysis/api/reference/rest/ // // # Library status // // These client libraries are officially supported by Google. However, this // library is considered complete and is in maintenance mode. This means // that we will address critical bugs and security issues but will not add // any new features. // // When possible, we recommend using our newer // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) // that are still actively being worked and iterated on. // // # Creating a client // // Usage example: // // import "google.golang.org/api/containeranalysis/v1beta1" // ... // ctx := context.Background() // containeranalysisService, err := containeranalysis.NewService(ctx) // // In this example, Google Application Default Credentials are used for // authentication. For information on how to create and obtain Application // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. // // # Other authentication options // // To use an API key for authentication (note: some APIs do not support API // keys), use [google.golang.org/api/option.WithAPIKey]: // // containeranalysisService, err := containeranalysis.NewService(ctx, option.WithAPIKey("AIza...")) // // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth // flow, use [google.golang.org/api/option.WithTokenSource]: // // config := &oauth2.Config{...} // // ... // token, err := config.Exchange(ctx, ...) // containeranalysisService, err := containeranalysis.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) // // See [google.golang.org/api/option.ClientOption] for details on options. package containeranalysis // import "google.golang.org/api/containeranalysis/v1beta1" import ( "bytes" "context" "encoding/json" "errors" "fmt" "io" "net/http" "net/url" "strconv" "strings" googleapi "google.golang.org/api/googleapi" internal "google.golang.org/api/internal" gensupport "google.golang.org/api/internal/gensupport" option "google.golang.org/api/option" internaloption "google.golang.org/api/option/internaloption" htransport "google.golang.org/api/transport/http" ) // Always reference these packages, just in case the auto-generated code // below doesn't. var _ = bytes.NewBuffer var _ = strconv.Itoa var _ = fmt.Sprintf var _ = json.NewDecoder var _ = io.Copy var _ = url.Parse var _ = gensupport.MarshalJSON var _ = googleapi.Version var _ = errors.New var _ = strings.Replace var _ = context.Canceled var _ = internaloption.WithDefaultEndpoint var _ = internal.Version const apiId = "containeranalysis:v1beta1" const apiName = "containeranalysis" const apiVersion = "v1beta1" const basePath = "https://containeranalysis.googleapis.com/" const basePathTemplate = "https://containeranalysis.UNIVERSE_DOMAIN/" const mtlsBasePath = "https://containeranalysis.mtls.googleapis.com/" // OAuth2 scopes used by this API. const ( // See, edit, configure, and delete your Google Cloud data and see the email // address for your Google Account. CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" ) // NewService creates a new Service. func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { scopesOption := internaloption.WithDefaultScopes( "https://www.googleapis.com/auth/cloud-platform", ) // NOTE: prepend, so we don't override user-specified scopes. opts = append([]option.ClientOption{scopesOption}, opts...) opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) opts = append(opts, internaloption.EnableNewAuthLibrary()) client, endpoint, err := htransport.NewClient(ctx, opts...) if err != nil { return nil, err } s, err := New(client) if err != nil { return nil, err } if endpoint != "" { s.BasePath = endpoint } return s, nil } // New creates a new Service. It uses the provided http.Client for requests. // // Deprecated: please use NewService instead. // To provide a custom HTTP client, use option.WithHTTPClient. // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. func New(client *http.Client) (*Service, error) { if client == nil { return nil, errors.New("client is nil") } s := &Service{client: client, BasePath: basePath} s.Projects = NewProjectsService(s) return s, nil } type Service struct { client *http.Client BasePath string // API endpoint base URL UserAgent string // optional additional User-Agent fragment Projects *ProjectsService } func (s *Service) userAgent() string { if s.UserAgent == "" { return googleapi.UserAgent } return googleapi.UserAgent + " " + s.UserAgent } func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} rs.Locations = NewProjectsLocationsService(s) rs.Notes = NewProjectsNotesService(s) rs.Occurrences = NewProjectsOccurrencesService(s) rs.Resources = NewProjectsResourcesService(s) return rs } type ProjectsService struct { s *Service Locations *ProjectsLocationsService Notes *ProjectsNotesService Occurrences *ProjectsOccurrencesService Resources *ProjectsResourcesService } func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} rs.Notes = NewProjectsLocationsNotesService(s) rs.Occurrences = NewProjectsLocationsOccurrencesService(s) rs.Resources = NewProjectsLocationsResourcesService(s) return rs } type ProjectsLocationsService struct { s *Service Notes *ProjectsLocationsNotesService Occurrences *ProjectsLocationsOccurrencesService Resources *ProjectsLocationsResourcesService } func NewProjectsLocationsNotesService(s *Service) *ProjectsLocationsNotesService { rs := &ProjectsLocationsNotesService{s: s} rs.Occurrences = NewProjectsLocationsNotesOccurrencesService(s) return rs } type ProjectsLocationsNotesService struct { s *Service Occurrences *ProjectsLocationsNotesOccurrencesService } func NewProjectsLocationsNotesOccurrencesService(s *Service) *ProjectsLocationsNotesOccurrencesService { rs := &ProjectsLocationsNotesOccurrencesService{s: s} return rs } type ProjectsLocationsNotesOccurrencesService struct { s *Service } func NewProjectsLocationsOccurrencesService(s *Service) *ProjectsLocationsOccurrencesService { rs := &ProjectsLocationsOccurrencesService{s: s} return rs } type ProjectsLocationsOccurrencesService struct { s *Service } func NewProjectsLocationsResourcesService(s *Service) *ProjectsLocationsResourcesService { rs := &ProjectsLocationsResourcesService{s: s} return rs } type ProjectsLocationsResourcesService struct { s *Service } func NewProjectsNotesService(s *Service) *ProjectsNotesService { rs := &ProjectsNotesService{s: s} rs.Occurrences = NewProjectsNotesOccurrencesService(s) return rs } type ProjectsNotesService struct { s *Service Occurrences *ProjectsNotesOccurrencesService } func NewProjectsNotesOccurrencesService(s *Service) *ProjectsNotesOccurrencesService { rs := &ProjectsNotesOccurrencesService{s: s} return rs } type ProjectsNotesOccurrencesService struct { s *Service } func NewProjectsOccurrencesService(s *Service) *ProjectsOccurrencesService { rs := &ProjectsOccurrencesService{s: s} return rs } type ProjectsOccurrencesService struct { s *Service } func NewProjectsResourcesService(s *Service) *ProjectsResourcesService { rs := &ProjectsResourcesService{s: s} return rs } type ProjectsResourcesService struct { s *Service } // AliasContext: An alias to a repo revision. type AliasContext struct { // Kind: The alias kind. // // Possible values: // "KIND_UNSPECIFIED" - Unknown. // "FIXED" - Git tag. // "MOVABLE" - Git branch. // "OTHER" - Used to specify non-standard aliases. For example, if a Git repo // has a ref named "refs/foo/bar". Kind string `json:"kind,omitempty"` // Name: The alias name. Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "Kind") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Kind") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *AliasContext) MarshalJSON() ([]byte, error) { type NoMethod AliasContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // AnalysisCompleted: Indicates which analysis completed successfully. Multiple // types of analysis can be performed on a single resource. type AnalysisCompleted struct { AnalysisType []string `json:"analysisType,omitempty"` // ForceSendFields is a list of field names (e.g. "AnalysisType") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AnalysisType") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *AnalysisCompleted) MarshalJSON() ([]byte, error) { type NoMethod AnalysisCompleted return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Artifact: Artifact describes a build product. type Artifact struct { // Checksum: Hash or checksum value of a binary, or Docker Registry 2.0 digest // of a container. Checksum string `json:"checksum,omitempty"` // Id: Artifact ID, if any; for container images, this will be a URL by digest // like `gcr.io/projectID/imagename@sha256:123456`. Id string `json:"id,omitempty"` // Names: Related artifact names. This may be the path to a binary or jar file, // or in the case of a container build, the name used to push the container // image to Google Container Registry, as presented to `docker push`. Note that // a single Artifact ID can have multiple names, for example if two tags are // applied to one image. Names []string `json:"names,omitempty"` // ForceSendFields is a list of field names (e.g. "Checksum") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Checksum") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Artifact) MarshalJSON() ([]byte, error) { type NoMethod Artifact return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ArtifactHashes: Defines a hash object for use in Materials and Products. type ArtifactHashes struct { Sha256 string `json:"sha256,omitempty"` // ForceSendFields is a list of field names (e.g. "Sha256") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Sha256") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ArtifactHashes) MarshalJSON() ([]byte, error) { type NoMethod ArtifactHashes return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ArtifactRule: Defines an object to declare an in-toto artifact rule type ArtifactRule struct { ArtifactRule []string `json:"artifactRule,omitempty"` // ForceSendFields is a list of field names (e.g. "ArtifactRule") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ArtifactRule") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ArtifactRule) MarshalJSON() ([]byte, error) { type NoMethod ArtifactRule return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Assessment: Assessment provides all information that is related to a single // vulnerability for this product. type Assessment struct { // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) // tracking number for the vulnerability. Deprecated: Use vulnerability_id // instead to denote CVEs. Cve string `json:"cve,omitempty"` // Impacts: Contains information about the impact of this vulnerability, this // will change with time. Impacts []string `json:"impacts,omitempty"` // Justification: Justification provides the justification when the state of // the assessment if NOT_AFFECTED. Justification *Justification `json:"justification,omitempty"` // LongDescription: A detailed description of this Vex. LongDescription string `json:"longDescription,omitempty"` // RelatedUris: Holds a list of references associated with this vulnerability // item and assessment. These uris have additional information about the // vulnerability and the assessment itself. E.g. Link to a document which // details how this assessment concluded the state of this vulnerability. RelatedUris []*RelatedUrl `json:"relatedUris,omitempty"` // Remediations: Specifies details on how to handle (and presumably, fix) a // vulnerability. Remediations []*Remediation `json:"remediations,omitempty"` // ShortDescription: A one sentence description of this Vex. ShortDescription string `json:"shortDescription,omitempty"` // State: Provides the state of this Vulnerability assessment. // // Possible values: // "STATE_UNSPECIFIED" - No state is specified. // "AFFECTED" - This product is known to be affected by this vulnerability. // "NOT_AFFECTED" - This product is known to be not affected by this // vulnerability. // "FIXED" - This product contains a fix for this vulnerability. // "UNDER_INVESTIGATION" - It is not known yet whether these versions are or // are not affected by the vulnerability. However, it is still under // investigation. State string `json:"state,omitempty"` // VulnerabilityId: The vulnerability identifier for this Assessment. Will hold // one of common identifiers e.g. CVE, GHSA etc. VulnerabilityId string `json:"vulnerabilityId,omitempty"` // ForceSendFields is a list of field names (e.g. "Cve") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Cve") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Assessment) MarshalJSON() ([]byte, error) { type NoMethod Assessment return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Attestation: Occurrence that represents a single "attestation". The // authenticity of an attestation can be verified using the attached signature. // If the verifier trusts the public key of the signer, then verifying the // signature is sufficient to establish trust. In this circumstance, the // authority to which this attestation is attached is primarily useful for // look-up (how to find this attestation if you already know the authority and // artifact to be verified) and intent (which authority was this attestation // intended to sign for). type Attestation struct { GenericSignedAttestation *GenericSignedAttestation `json:"genericSignedAttestation,omitempty"` // PgpSignedAttestation: A PGP signed attestation. PgpSignedAttestation *PgpSignedAttestation `json:"pgpSignedAttestation,omitempty"` // ForceSendFields is a list of field names (e.g. "GenericSignedAttestation") // to unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GenericSignedAttestation") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Attestation) MarshalJSON() ([]byte, error) { type NoMethod Attestation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Authority: Note kind that represents a logical attestation "role" or // "authority". For example, an organization might have one `Authority` for // "QA" and one for "build". This note is intended to act strictly as a // grouping mechanism for the attached occurrences (Attestations). This // grouping mechanism also provides a security boundary, since IAM ACLs gate // the ability for a principle to attach an occurrence to a given note. It also // provides a single point of lookup to find all attached attestation // occurrences, even if they don't all live in the same project. type Authority struct { // Hint: Hint hints at the purpose of the attestation authority. Hint *Hint `json:"hint,omitempty"` // ForceSendFields is a list of field names (e.g. "Hint") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Hint") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Authority) MarshalJSON() ([]byte, error) { type NoMethod Authority return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Basis: Basis describes the base image portion (Note) of the DockerImage // relationship. Linked occurrences are derived from this or an equivalent // image via: FROM Or an equivalent reference, e.g. a tag of the resource_url. type Basis struct { // Fingerprint: Required. Immutable. The fingerprint of the base image. Fingerprint *Fingerprint `json:"fingerprint,omitempty"` // ResourceUrl: Required. Immutable. The resource_url for the resource // representing the basis of associated occurrence images. ResourceUrl string `json:"resourceUrl,omitempty"` // ForceSendFields is a list of field names (e.g. "Fingerprint") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Fingerprint") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Basis) MarshalJSON() ([]byte, error) { type NoMethod Basis return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BatchCreateNotesRequest: Request to create notes in batch. type BatchCreateNotesRequest struct { // Notes: Required. The notes to create, the key is expected to be the note ID. // Max allowed length is 1000. Notes map[string]Note `json:"notes,omitempty"` // ForceSendFields is a list of field names (e.g. "Notes") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Notes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BatchCreateNotesRequest) MarshalJSON() ([]byte, error) { type NoMethod BatchCreateNotesRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BatchCreateNotesResponse: Response for creating notes in batch. type BatchCreateNotesResponse struct { // Notes: The notes that were created. Notes []*Note `json:"notes,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Notes") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Notes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BatchCreateNotesResponse) MarshalJSON() ([]byte, error) { type NoMethod BatchCreateNotesResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BatchCreateOccurrencesRequest: Request to create occurrences in batch. type BatchCreateOccurrencesRequest struct { // Occurrences: Required. The occurrences to create. Max allowed length is // 1000. Occurrences []*Occurrence `json:"occurrences,omitempty"` // ForceSendFields is a list of field names (e.g. "Occurrences") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Occurrences") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BatchCreateOccurrencesRequest) MarshalJSON() ([]byte, error) { type NoMethod BatchCreateOccurrencesRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BatchCreateOccurrencesResponse: Response for creating occurrences in batch. type BatchCreateOccurrencesResponse struct { // Occurrences: The occurrences that were created. Occurrences []*Occurrence `json:"occurrences,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Occurrences") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Occurrences") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BatchCreateOccurrencesResponse) MarshalJSON() ([]byte, error) { type NoMethod BatchCreateOccurrencesResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Binding: Associates `members`, or principals, with a `role`. type Binding struct { // Condition: The condition that is associated with this binding. If the // condition evaluates to `true`, then this binding applies to the current // request. If the condition evaluates to `false`, then this binding does not // apply to the current request. However, a different role binding might grant // the same role to one or more of the principals in this binding. To learn // which resources support conditions in their IAM policies, see the IAM // documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). Condition *Expr `json:"condition,omitempty"` // Members: Specifies the principals requesting access for a Google Cloud // resource. `members` can have the following values: * `allUsers`: A special // identifier that represents anyone who is on the internet; with or without a // Google account. * `allAuthenticatedUsers`: A special identifier that // represents anyone who is authenticated with a Google account or a service // account. Does not include identities that come from external identity // providers (IdPs) through identity federation. * `user:{emailid}`: An email // address that represents a specific Google account. For example, // `alice@example.com` . * `serviceAccount:{emailid}`: An email address that // represents a Google service account. For example, // `my-other-app@appspot.gserviceaccount.com`. * // `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An // identifier for a Kubernetes service account // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * // `group:{emailid}`: An email address that represents a Google group. For // example, `admins@example.com`. * `domain:{domain}`: The G Suite domain // (primary) that represents all the users of that domain. For example, // `google.com` or `example.com`. * // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub // ject/{subject_attribute_value}`: A single identity in a workforce identity // pool. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // group/{group_id}`: All workforce identities in a group. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // attribute.{attribute_name}/{attribute_value}`: All workforce identities with // a specific attribute value. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // *`: All identities in a workforce identity pool. * // `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo // rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single // identity in a workload identity pool. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool // group. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value} // `: All identities in a workload identity pool with a certain attribute. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity // pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a user that has been recently deleted. For // example, `alice@example.com?uid=123456789012345678901`. If the user is // recovered, this value reverts to `user:{emailid}` and the recovered user // retains the role in the binding. * // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus // unique identifier) representing a service account that has been recently // deleted. For example, // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the // service account is undeleted, this value reverts to // `serviceAccount:{emailid}` and the undeleted service account retains the // role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email // address (plus unique identifier) representing a Google group that has been // recently deleted. For example, // `admins@example.com?uid=123456789012345678901`. If the group is recovered, // this value reverts to `group:{emailid}` and the recovered group retains the // role in the binding. * // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool // _id}/subject/{subject_attribute_value}`: Deleted single identity in a // workforce identity pool. For example, // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po // ol-id/subject/my-subject-attribute-value`. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. For // example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview // of the IAM roles and permissions, see the IAM documentation // (https://cloud.google.com/iam/docs/roles-overview). For a list of the // available pre-defined roles, see here // (https://cloud.google.com/iam/docs/understanding-roles). Role string `json:"role,omitempty"` // ForceSendFields is a list of field names (e.g. "Condition") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Condition") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Binding) MarshalJSON() ([]byte, error) { type NoMethod Binding return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Build: Note holding the version of the provider's builder and the signature // of the provenance message in the build details occurrence. type Build struct { // BuilderVersion: Required. Immutable. Version of the builder which produced // this build. BuilderVersion string `json:"builderVersion,omitempty"` // Signature: Signature of the build in occurrences pointing to this build note // containing build details. Signature *BuildSignature `json:"signature,omitempty"` // ForceSendFields is a list of field names (e.g. "BuilderVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuilderVersion") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Build) MarshalJSON() ([]byte, error) { type NoMethod Build return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type BuildDefinition struct { BuildType string `json:"buildType,omitempty"` ExternalParameters googleapi.RawMessage `json:"externalParameters,omitempty"` InternalParameters googleapi.RawMessage `json:"internalParameters,omitempty"` ResolvedDependencies []*ResourceDescriptor `json:"resolvedDependencies,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildType") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuildType") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BuildDefinition) MarshalJSON() ([]byte, error) { type NoMethod BuildDefinition return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type BuildMetadata struct { FinishedOn string `json:"finishedOn,omitempty"` InvocationId string `json:"invocationId,omitempty"` StartedOn string `json:"startedOn,omitempty"` // ForceSendFields is a list of field names (e.g. "FinishedOn") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FinishedOn") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BuildMetadata) MarshalJSON() ([]byte, error) { type NoMethod BuildMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BuildProvenance: Provenance of a build. Contains all information needed to // verify the full details about the build from source to completion. type BuildProvenance struct { // BuildOptions: Special options applied to this build. This is a catch-all // field where build providers can enter any desired additional details. BuildOptions map[string]string `json:"buildOptions,omitempty"` // BuilderVersion: Version string of the builder at the time this build was // executed. BuilderVersion string `json:"builderVersion,omitempty"` // BuiltArtifacts: Output of the build. BuiltArtifacts []*Artifact `json:"builtArtifacts,omitempty"` // Commands: Commands requested by the build. Commands []*Command `json:"commands,omitempty"` // CreateTime: Time at which the build was created. CreateTime string `json:"createTime,omitempty"` // Creator: E-mail address of the user who initiated this build. Note that this // was the user's e-mail address at the time the build was initiated; this // address may not represent the same end-user for all time. Creator string `json:"creator,omitempty"` // EndTime: Time at which execution of the build was finished. EndTime string `json:"endTime,omitempty"` // Id: Required. Unique identifier of the build. Id string `json:"id,omitempty"` // LogsUri: URI where any logs for this provenance were written. LogsUri string `json:"logsUri,omitempty"` // ProjectId: ID of the project. ProjectId string `json:"projectId,omitempty"` // SourceProvenance: Details of the Source input to the build. SourceProvenance *Source `json:"sourceProvenance,omitempty"` // StartTime: Time at which execution of the build was started. StartTime string `json:"startTime,omitempty"` // TriggerId: Trigger identifier if the build was triggered automatically; // empty if not. TriggerId string `json:"triggerId,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildOptions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuildOptions") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BuildProvenance) MarshalJSON() ([]byte, error) { type NoMethod BuildProvenance return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BuildSignature: Message encapsulating the signature of the verified build. type BuildSignature struct { // KeyId: An ID for the key used to sign. This could be either an ID for the // key stored in `public_key` (such as the ID or fingerprint for a PGP key, or // the CN for a cert), or a reference to an external key (such as a reference // to a key in Cloud Key Management Service). KeyId string `json:"keyId,omitempty"` // KeyType: The type of the key, either stored in `public_key` or referenced in // `key_id`. // // Possible values: // "KEY_TYPE_UNSPECIFIED" - `KeyType` is not set. // "PGP_ASCII_ARMORED" - `PGP ASCII Armored` public key. // "PKIX_PEM" - `PKIX PEM` public key. KeyType string `json:"keyType,omitempty"` // PublicKey: Public key of the builder which can be used to verify that the // related findings are valid and unchanged. If `key_type` is empty, this // defaults to PEM encoded public keys. This field may be empty if `key_id` // references an external key. For Cloud Build based signatures, this is a PEM // encoded public key. To verify the Cloud Build signature, place the contents // of this field into a file (public.pem). The signature field is // base64-decoded into its binary representation in signature.bin, and the // provenance bytes from `BuildDetails` are base64-decoded into a binary // representation in signed.bin. OpenSSL can then verify the signature: // `openssl sha256 -verify public.pem -signature signature.bin signed.bin` PublicKey string `json:"publicKey,omitempty"` // Signature: Required. Signature of the related `BuildProvenance`. In JSON, // this is base-64 encoded. Signature string `json:"signature,omitempty"` // ForceSendFields is a list of field names (e.g. "KeyId") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "KeyId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BuildSignature) MarshalJSON() ([]byte, error) { type NoMethod BuildSignature return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BuildStep: A step in the build pipeline. Next ID: 21 type BuildStep struct { // AllowExitCodes: Allow this build step to fail without failing the entire // build if and only if the exit code is one of the specified codes. If // allow_failure is also specified, this field will take precedence. AllowExitCodes []int64 `json:"allowExitCodes,omitempty"` // AllowFailure: Allow this build step to fail without failing the entire // build. If false, the entire build will fail if this step fails. Otherwise, // the build will succeed, but this step will still have a failure status. // Error information will be reported in the failure_detail field. AllowFailure bool `json:"allowFailure,omitempty"` // Args: A list of arguments that will be presented to the step when it is // started. If the image used to run the step's container has an entrypoint, // the `args` are used as arguments to that entrypoint. If the image does not // define an entrypoint, the first element in args is used as the entrypoint, // and the remainder will be used as arguments. Args []string `json:"args,omitempty"` // AutomapSubstitutions: Option to include built-in and custom substitutions as // env variables for this build step. This option will override the global // option in BuildOption. AutomapSubstitutions bool `json:"automapSubstitutions,omitempty"` // Dir: Working directory to use when running this step's container. If this // value is a relative path, it is relative to the build's working directory. // If this value is absolute, it may be outside the build's working directory, // in which case the contents of the path may not be persisted across build // step executions, unless a `volume` for that path is specified. If the build // specifies a `RepoSource` with `dir` and a step with a `dir`, which specifies // an absolute path, the `RepoSource` `dir` is ignored for the step's // execution. Dir string `json:"dir,omitempty"` // Entrypoint: Entrypoint to be used instead of the build step image's default // entrypoint. If unset, the image's default entrypoint is used. Entrypoint string `json:"entrypoint,omitempty"` // Env: A list of environment variable definitions to be used when running a // step. The elements are of the form "KEY=VALUE" for the environment variable // "KEY" being given the value "VALUE". Env []string `json:"env,omitempty"` // ExitCode: Output only. Return code from running the step. ExitCode int64 `json:"exitCode,omitempty"` // Id: Unique identifier for this build step, used in `wait_for` to reference // this build step as a dependency. Id string `json:"id,omitempty"` // Name: Required. The name of the container image that will run this // particular build step. If the image is available in the host's Docker // daemon's cache, it will be run directly. If not, the host will attempt to // pull the image first, using the builder service account's credentials if // necessary. The Docker daemon's cache will already have the latest versions // of all of the officially supported build steps // (https://github.com/GoogleCloudPlatform/cloud-builders // (https://github.com/GoogleCloudPlatform/cloud-builders)). The Docker daemon // will also have cached many of the layers for some popular images, like // "ubuntu", "debian", but they will be refreshed at the time you attempt to // use them. If you built an image in a previous build step, it will be stored // in the host's Docker daemon's cache and is available to use as the name for // a later build step. Name string `json:"name,omitempty"` // PullTiming: Output only. Stores timing information for pulling this build // step's builder image only. PullTiming *TimeSpan `json:"pullTiming,omitempty"` // Script: A shell script to be executed in the step. When script is provided, // the user cannot specify the entrypoint or args. Script string `json:"script,omitempty"` // SecretEnv: A list of environment variables which are encrypted using a Cloud // Key Management Service crypto key. These values must be specified in the // build's `Secret`. SecretEnv []string `json:"secretEnv,omitempty"` // Status: Output only. Status of the build step. At this time, build step // status is only updated on build completion; step status is not updated in // real-time as the build progresses. // // Possible values: // "STATUS_UNKNOWN" - Status of the build is unknown. // "PENDING" - Build has been created and is pending execution and queuing. // It has not been queued. // "QUEUING" - Build has been received and is being queued. // "QUEUED" - Build or step is queued; work has not yet begun. // "WORKING" - Build or step is being executed. // "SUCCESS" - Build or step finished successfully. // "FAILURE" - Build or step failed to complete successfully. // "INTERNAL_ERROR" - Build or step failed due to an internal cause. // "TIMEOUT" - Build or step took longer than was allowed. // "CANCELLED" - Build or step was canceled by a user. // "EXPIRED" - Build was enqueued for longer than the value of `queue_ttl`. Status string `json:"status,omitempty"` // Timeout: Time limit for executing this build step. If not defined, the step // has no time limit and will be allowed to continue to run until either it // completes or the build itself times out. Timeout string `json:"timeout,omitempty"` // Timing: Output only. Stores timing information for executing this build // step. Timing *TimeSpan `json:"timing,omitempty"` // Volumes: List of volumes to mount into the build step. Each volume is // created as an empty volume prior to execution of the build step. Upon // completion of the build, volumes and their contents are discarded. Using a // named volume in only one step is not valid as it is indicative of a build // request with an incorrect configuration. Volumes []*Volume `json:"volumes,omitempty"` // WaitFor: The ID(s) of the step(s) that this build step depends on. This // build step will not start until all the build steps in `wait_for` have // completed successfully. If `wait_for` is empty, this build step will start // when all previous build steps in the `Build.Steps` list have completed // successfully. WaitFor []string `json:"waitFor,omitempty"` // ForceSendFields is a list of field names (e.g. "AllowExitCodes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AllowExitCodes") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BuildStep) MarshalJSON() ([]byte, error) { type NoMethod BuildStep return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ByProducts: Defines an object for the byproducts field in in-toto links. The // suggested fields are "stderr", "stdout", and "return-value". type ByProducts struct { CustomValues map[string]string `json:"customValues,omitempty"` // ForceSendFields is a list of field names (e.g. "CustomValues") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CustomValues") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ByProducts) MarshalJSON() ([]byte, error) { type NoMethod ByProducts return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // CVSS: Common Vulnerability Scoring System. This message is compatible with // CVSS v2 and v3. For CVSS v2 details, see https://www.first.org/cvss/v2/guide // CVSS v2 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v2-calculator For // CVSS v3 details, see https://www.first.org/cvss/specification-document CVSS // v3 calculator: https://nvd.nist.gov/vuln-metrics/cvss/v3-calculator type CVSS struct { // AttackComplexity: Defined in CVSS v3, CVSS v2 // // Possible values: // "ATTACK_COMPLEXITY_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 // "ATTACK_COMPLEXITY_LOW" - Defined in CVSS v3, CVSS v2 // "ATTACK_COMPLEXITY_HIGH" - Defined in CVSS v3, CVSS v2 // "ATTACK_COMPLEXITY_MEDIUM" - Defined in CVSS v2 AttackComplexity string `json:"attackComplexity,omitempty"` // AttackVector: Base Metrics Represents the intrinsic characteristics of a // vulnerability that are constant over time and across user environments. // Defined in CVSS v3, CVSS v2 // // Possible values: // "ATTACK_VECTOR_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 // "ATTACK_VECTOR_NETWORK" - Defined in CVSS v3, CVSS v2 // "ATTACK_VECTOR_ADJACENT" - Defined in CVSS v3, CVSS v2 // "ATTACK_VECTOR_LOCAL" - Defined in CVSS v3, CVSS v2 // "ATTACK_VECTOR_PHYSICAL" - Defined in CVSS v3 AttackVector string `json:"attackVector,omitempty"` // Authentication: Defined in CVSS v2 // // Possible values: // "AUTHENTICATION_UNSPECIFIED" - Defined in CVSS v2 // "AUTHENTICATION_MULTIPLE" - Defined in CVSS v2 // "AUTHENTICATION_SINGLE" - Defined in CVSS v2 // "AUTHENTICATION_NONE" - Defined in CVSS v2 Authentication string `json:"authentication,omitempty"` // AvailabilityImpact: Defined in CVSS v3, CVSS v2 // // Possible values: // "IMPACT_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 // "IMPACT_HIGH" - Defined in CVSS v3 // "IMPACT_LOW" - Defined in CVSS v3 // "IMPACT_NONE" - Defined in CVSS v3, CVSS v2 // "IMPACT_PARTIAL" - Defined in CVSS v2 // "IMPACT_COMPLETE" - Defined in CVSS v2 AvailabilityImpact string `json:"availabilityImpact,omitempty"` // BaseScore: The base score is a function of the base metric scores. BaseScore float64 `json:"baseScore,omitempty"` // ConfidentialityImpact: Defined in CVSS v3, CVSS v2 // // Possible values: // "IMPACT_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 // "IMPACT_HIGH" - Defined in CVSS v3 // "IMPACT_LOW" - Defined in CVSS v3 // "IMPACT_NONE" - Defined in CVSS v3, CVSS v2 // "IMPACT_PARTIAL" - Defined in CVSS v2 // "IMPACT_COMPLETE" - Defined in CVSS v2 ConfidentialityImpact string `json:"confidentialityImpact,omitempty"` ExploitabilityScore float64 `json:"exploitabilityScore,omitempty"` ImpactScore float64 `json:"impactScore,omitempty"` // IntegrityImpact: Defined in CVSS v3, CVSS v2 // // Possible values: // "IMPACT_UNSPECIFIED" - Defined in CVSS v3, CVSS v2 // "IMPACT_HIGH" - Defined in CVSS v3 // "IMPACT_LOW" - Defined in CVSS v3 // "IMPACT_NONE" - Defined in CVSS v3, CVSS v2 // "IMPACT_PARTIAL" - Defined in CVSS v2 // "IMPACT_COMPLETE" - Defined in CVSS v2 IntegrityImpact string `json:"integrityImpact,omitempty"` // PrivilegesRequired: Defined in CVSS v3 // // Possible values: // "PRIVILEGES_REQUIRED_UNSPECIFIED" - Defined in CVSS v3 // "PRIVILEGES_REQUIRED_NONE" - Defined in CVSS v3 // "PRIVILEGES_REQUIRED_LOW" - Defined in CVSS v3 // "PRIVILEGES_REQUIRED_HIGH" - Defined in CVSS v3 PrivilegesRequired string `json:"privilegesRequired,omitempty"` // Scope: Defined in CVSS v3 // // Possible values: // "SCOPE_UNSPECIFIED" - Defined in CVSS v3 // "SCOPE_UNCHANGED" - Defined in CVSS v3 // "SCOPE_CHANGED" - Defined in CVSS v3 Scope string `json:"scope,omitempty"` // UserInteraction: Defined in CVSS v3 // // Possible values: // "USER_INTERACTION_UNSPECIFIED" - Defined in CVSS v3 // "USER_INTERACTION_NONE" - Defined in CVSS v3 // "USER_INTERACTION_REQUIRED" - Defined in CVSS v3 UserInteraction string `json:"userInteraction,omitempty"` // ForceSendFields is a list of field names (e.g. "AttackComplexity") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AttackComplexity") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *CVSS) MarshalJSON() ([]byte, error) { type NoMethod CVSS return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *CVSS) UnmarshalJSON(data []byte) error { type NoMethod CVSS var s1 struct { BaseScore gensupport.JSONFloat64 `json:"baseScore"` ExploitabilityScore gensupport.JSONFloat64 `json:"exploitabilityScore"` ImpactScore gensupport.JSONFloat64 `json:"impactScore"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.BaseScore = float64(s1.BaseScore) s.ExploitabilityScore = float64(s1.ExploitabilityScore) s.ImpactScore = float64(s1.ImpactScore) return nil } // CVSSv3: Deprecated. Common Vulnerability Scoring System version 3. For // details, see https://www.first.org/cvss/specification-document type CVSSv3 struct { // Possible values: // "ATTACK_COMPLEXITY_UNSPECIFIED" // "ATTACK_COMPLEXITY_LOW" // "ATTACK_COMPLEXITY_HIGH" AttackComplexity string `json:"attackComplexity,omitempty"` // AttackVector: Base Metrics Represents the intrinsic characteristics of a // vulnerability that are constant over time and across user environments. // // Possible values: // "ATTACK_VECTOR_UNSPECIFIED" // "ATTACK_VECTOR_NETWORK" // "ATTACK_VECTOR_ADJACENT" // "ATTACK_VECTOR_LOCAL" // "ATTACK_VECTOR_PHYSICAL" AttackVector string `json:"attackVector,omitempty"` // Possible values: // "IMPACT_UNSPECIFIED" // "IMPACT_HIGH" // "IMPACT_LOW" // "IMPACT_NONE" AvailabilityImpact string `json:"availabilityImpact,omitempty"` // BaseScore: The base score is a function of the base metric scores. BaseScore float64 `json:"baseScore,omitempty"` // Possible values: // "IMPACT_UNSPECIFIED" // "IMPACT_HIGH" // "IMPACT_LOW" // "IMPACT_NONE" ConfidentialityImpact string `json:"confidentialityImpact,omitempty"` ExploitabilityScore float64 `json:"exploitabilityScore,omitempty"` ImpactScore float64 `json:"impactScore,omitempty"` // Possible values: // "IMPACT_UNSPECIFIED" // "IMPACT_HIGH" // "IMPACT_LOW" // "IMPACT_NONE" IntegrityImpact string `json:"integrityImpact,omitempty"` // Possible values: // "PRIVILEGES_REQUIRED_UNSPECIFIED" // "PRIVILEGES_REQUIRED_NONE" // "PRIVILEGES_REQUIRED_LOW" // "PRIVILEGES_REQUIRED_HIGH" PrivilegesRequired string `json:"privilegesRequired,omitempty"` // Possible values: // "SCOPE_UNSPECIFIED" // "SCOPE_UNCHANGED" // "SCOPE_CHANGED" Scope string `json:"scope,omitempty"` // Possible values: // "USER_INTERACTION_UNSPECIFIED" // "USER_INTERACTION_NONE" // "USER_INTERACTION_REQUIRED" UserInteraction string `json:"userInteraction,omitempty"` // ForceSendFields is a list of field names (e.g. "AttackComplexity") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AttackComplexity") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *CVSSv3) MarshalJSON() ([]byte, error) { type NoMethod CVSSv3 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *CVSSv3) UnmarshalJSON(data []byte) error { type NoMethod CVSSv3 var s1 struct { BaseScore gensupport.JSONFloat64 `json:"baseScore"` ExploitabilityScore gensupport.JSONFloat64 `json:"exploitabilityScore"` ImpactScore gensupport.JSONFloat64 `json:"impactScore"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.BaseScore = float64(s1.BaseScore) s.ExploitabilityScore = float64(s1.ExploitabilityScore) s.ImpactScore = float64(s1.ImpactScore) return nil } // CloudRepoSourceContext: A CloudRepoSourceContext denotes a particular // revision in a Google Cloud Source Repo. type CloudRepoSourceContext struct { // AliasContext: An alias, which may be a branch or tag. AliasContext *AliasContext `json:"aliasContext,omitempty"` // RepoId: The ID of the repo. RepoId *RepoId `json:"repoId,omitempty"` // RevisionId: A revision ID. RevisionId string `json:"revisionId,omitempty"` // ForceSendFields is a list of field names (e.g. "AliasContext") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AliasContext") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *CloudRepoSourceContext) MarshalJSON() ([]byte, error) { type NoMethod CloudRepoSourceContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Command: Command describes a step performed as part of the build pipeline. type Command struct { // Args: Command-line arguments used when executing this command. Args []string `json:"args,omitempty"` // Dir: Working directory (relative to project source root) used when running // this command. Dir string `json:"dir,omitempty"` // Env: Environment variables set before running this command. Env []string `json:"env,omitempty"` // Id: Optional unique identifier for this command, used in wait_for to // reference this command as a dependency. Id string `json:"id,omitempty"` // Name: Required. Name of the command, as presented on the command line, or if // the command is packaged as a Docker container, as presented to `docker // pull`. Name string `json:"name,omitempty"` // WaitFor: The ID(s) of the command(s) that this command depends on. WaitFor []string `json:"waitFor,omitempty"` // ForceSendFields is a list of field names (e.g. "Args") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Args") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Command) MarshalJSON() ([]byte, error) { type NoMethod Command return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig: ApprovalConfig // describes configuration for manual approval of a build. type ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig struct { // ApprovalRequired: Whether or not approval is needed. If this is set on a // build, it will become pending when created, and will need to be explicitly // approved to start. ApprovalRequired bool `json:"approvalRequired,omitempty"` // ForceSendFields is a list of field names (e.g. "ApprovalRequired") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ApprovalRequired") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult: ApprovalResult // describes the decision and associated metadata of a manual approval of a // build. type ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult struct { // ApprovalTime: Output only. The time when the approval decision was made. ApprovalTime string `json:"approvalTime,omitempty"` // ApproverAccount: Output only. Email of the user that called the ApproveBuild // API to approve or reject a build at the time that the API was called. ApproverAccount string `json:"approverAccount,omitempty"` // Comment: Optional. An optional comment for this manual approval result. Comment string `json:"comment,omitempty"` // Decision: Required. The decision of this manual approval. // // Possible values: // "DECISION_UNSPECIFIED" - Default enum type. This should not be used. // "APPROVED" - Build is approved. // "REJECTED" - Build is rejected. Decision string `json:"decision,omitempty"` // Url: Optional. An optional URL tied to this manual approval result. This // field is essentially the same as comment, except that it will be rendered by // the UI differently. An example use case is a link to an external job that // approved this Build. Url string `json:"url,omitempty"` // ForceSendFields is a list of field names (e.g. "ApprovalTime") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ApprovalTime") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts: Artifacts produced by // a build that should be uploaded upon successful completion of all build // steps. type ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts struct { // Images: A list of images to be pushed upon the successful completion of all // build steps. The images will be pushed using the builder service account's // credentials. The digests of the pushed images will be stored in the Build // resource's results field. If any of the images fail to be pushed, the build // is marked FAILURE. Images []string `json:"images,omitempty"` // MavenArtifacts: A list of Maven artifacts to be uploaded to Artifact // Registry upon successful completion of all build steps. Artifacts in the // workspace matching specified paths globs will be uploaded to the specified // Artifact Registry repository using the builder service account's // credentials. If any artifacts fail to be pushed, the build is marked // FAILURE. MavenArtifacts []*ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact `json:"mavenArtifacts,omitempty"` // NpmPackages: A list of npm packages to be uploaded to Artifact Registry upon // successful completion of all build steps. Npm packages in the specified // paths will be uploaded to the specified Artifact Registry repository using // the builder service account's credentials. If any packages fail to be // pushed, the build is marked FAILURE. NpmPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage `json:"npmPackages,omitempty"` // Objects: A list of objects to be uploaded to Cloud Storage upon successful // completion of all build steps. Files in the workspace matching specified // paths globs will be uploaded to the specified Cloud Storage location using // the builder service account's credentials. The location and generation of // the uploaded objects will be stored in the Build resource's results field. // If any objects fail to be pushed, the build is marked FAILURE. Objects *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects `json:"objects,omitempty"` // PythonPackages: A list of Python packages to be uploaded to Artifact // Registry upon successful completion of all build steps. The build service // account credentials will be used to perform the upload. If any objects fail // to be pushed, the build is marked FAILURE. PythonPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage `json:"pythonPackages,omitempty"` // ForceSendFields is a list of field names (e.g. "Images") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Images") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects: Files // in the workspace to upload to Cloud Storage upon successful completion of // all build steps. type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects struct { // Location: Cloud Storage bucket and optional object path, in the form // "gs://bucket/path/to/somewhere/". (see Bucket Name Requirements // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Files // in the workspace matching any path pattern will be uploaded to Cloud Storage // with this location as a prefix. Location string `json:"location,omitempty"` // Paths: Path globs used to match files in the build's workspace. Paths []string `json:"paths,omitempty"` // Timing: Output only. Stores timing information for pushing all artifact // objects. Timing *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"timing,omitempty"` // ForceSendFields is a list of field names (e.g. "Location") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Location") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsArtifactObjects return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact: A Maven // artifact to upload to Artifact Registry upon successful completion of all // build steps. type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact struct { // ArtifactId: Maven `artifactId` value used when uploading the artifact to // Artifact Registry. ArtifactId string `json:"artifactId,omitempty"` // GroupId: Maven `groupId` value used when uploading the artifact to Artifact // Registry. GroupId string `json:"groupId,omitempty"` // Path: Path to an artifact in the build's workspace to be uploaded to // Artifact Registry. This can be either an absolute path, e.g. // /workspace/my-app/target/my-app-1.0.SNAPSHOT.jar or a relative path from // /workspace, e.g. my-app/target/my-app-1.0.SNAPSHOT.jar. Path string `json:"path,omitempty"` // Repository: Artifact Registry repository, in the form // "https://$REGION-maven.pkg.dev/$PROJECT/$REPOSITORY" Artifact in the // workspace specified by path will be uploaded to Artifact Registry with this // location as a prefix. Repository string `json:"repository,omitempty"` // Version: Maven `version` value used when uploading the artifact to Artifact // Registry. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "ArtifactId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ArtifactId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsMavenArtifact return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage: Npm package // to upload to Artifact Registry upon successful completion of all build // steps. type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage struct { // PackagePath: Path to the package.json. e.g. workspace/path/to/package PackagePath string `json:"packagePath,omitempty"` // Repository: Artifact Registry repository, in the form // "https://$REGION-npm.pkg.dev/$PROJECT/$REPOSITORY" Npm package in the // workspace specified by path will be zipped and uploaded to Artifact Registry // with this location as a prefix. Repository string `json:"repository,omitempty"` // ForceSendFields is a list of field names (e.g. "PackagePath") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "PackagePath") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsNpmPackage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage: Python // package to upload to Artifact Registry upon successful completion of all // build steps. A package can encapsulate multiple objects to be uploaded to a // single repository. type ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage struct { // Paths: Path globs used to match files in the build's workspace. For Python/ // Twine, this is usually `dist/*`, and sometimes additionally an `.asc` file. Paths []string `json:"paths,omitempty"` // Repository: Artifact Registry repository, in the form // "https://$REGION-python.pkg.dev/$PROJECT/$REPOSITORY" Files in the workspace // matching any path pattern will be uploaded to Artifact Registry with this // location as a prefix. Repository string `json:"repository,omitempty"` // ForceSendFields is a list of field names (e.g. "Paths") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Paths") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ArtifactsPythonPackage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Build: A build resource in the // Cloud Build API. At a high level, a `Build` describes where to find source // code, how to build it (for example, the builder image to run on the source), // and where to store the built artifacts. Fields can include the following // variables, which will be expanded when the build is created: - $PROJECT_ID: // the project ID of the build. - $PROJECT_NUMBER: the project number of the // build. - $LOCATION: the location/region of the build. - $BUILD_ID: the // autogenerated ID of the build. - $REPO_NAME: the source repository name // specified by RepoSource. - $BRANCH_NAME: the branch name specified by // RepoSource. - $TAG_NAME: the tag name specified by RepoSource. - // $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or // resolved from the specified branch or tag. - $SHORT_SHA: first 7 characters // of $REVISION_ID or $COMMIT_SHA. type ContaineranalysisGoogleDevtoolsCloudbuildV1Build struct { // Approval: Output only. Describes this build's approval configuration, // status, and result. Approval *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval `json:"approval,omitempty"` // Artifacts: Artifacts produced by the build that should be uploaded upon // successful completion of all build steps. Artifacts *ContaineranalysisGoogleDevtoolsCloudbuildV1Artifacts `json:"artifacts,omitempty"` // AvailableSecrets: Secrets and secret environment variables. AvailableSecrets *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets `json:"availableSecrets,omitempty"` // BuildTriggerId: Output only. The ID of the `BuildTrigger` that triggered // this build, if it was triggered automatically. BuildTriggerId string `json:"buildTriggerId,omitempty"` // CreateTime: Output only. Time at which the request to create the build was // received. CreateTime string `json:"createTime,omitempty"` // FailureInfo: Output only. Contains information about the build when // status=FAILURE. FailureInfo *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo `json:"failureInfo,omitempty"` // FinishTime: Output only. Time at which execution of the build was finished. // The difference between finish_time and start_time is the duration of the // build's execution. FinishTime string `json:"finishTime,omitempty"` // GitConfig: Optional. Configuration for git operations. GitConfig *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig `json:"gitConfig,omitempty"` // Id: Output only. Unique identifier of the build. Id string `json:"id,omitempty"` // Images: A list of images to be pushed upon the successful completion of all // build steps. The images are pushed using the builder service account's // credentials. The digests of the pushed images will be stored in the `Build` // resource's results field. If any of the images fail to be pushed, the build // status is marked `FAILURE`. Images []string `json:"images,omitempty"` // LogUrl: Output only. URL to logs for this build in Google Cloud Console. LogUrl string `json:"logUrl,omitempty"` // LogsBucket: Cloud Storage bucket where logs should be written (see Bucket // Name Requirements // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Logs // file names will be of the format `${logs_bucket}/log-${build_id}.txt`. LogsBucket string `json:"logsBucket,omitempty"` // Name: Output only. The 'Build' name with format: // `projects/{project}/locations/{location}/builds/{build}`, where {build} is a // unique identifier generated by the service. Name string `json:"name,omitempty"` // Options: Special options for this build. Options *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions `json:"options,omitempty"` // ProjectId: Output only. ID of the project. ProjectId string `json:"projectId,omitempty"` // QueueTtl: TTL in queue for this build. If provided and the build is enqueued // longer than this value, the build will expire and the build status will be // `EXPIRED`. The TTL starts ticking from create_time. QueueTtl string `json:"queueTtl,omitempty"` // Results: Output only. Results of the build. Results *ContaineranalysisGoogleDevtoolsCloudbuildV1Results `json:"results,omitempty"` // Secrets: Secrets to decrypt using Cloud Key Management Service. Note: Secret // Manager is the recommended technique for managing sensitive data with Cloud // Build. Use `available_secrets` to configure builds to access secrets from // Secret Manager. For instructions, see: // https://cloud.google.com/cloud-build/docs/securing-builds/use-secrets Secrets []*ContaineranalysisGoogleDevtoolsCloudbuildV1Secret `json:"secrets,omitempty"` // ServiceAccount: IAM service account whose credentials will be used at build // runtime. Must be of the format // `projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}`. ACCOUNT can be email // address or uniqueId of the service account. ServiceAccount string `json:"serviceAccount,omitempty"` // Source: The location of the source files to build. Source *ContaineranalysisGoogleDevtoolsCloudbuildV1Source `json:"source,omitempty"` // SourceProvenance: Output only. A permanent fixed identifier for source. SourceProvenance *ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance `json:"sourceProvenance,omitempty"` // StartTime: Output only. Time at which execution of the build was started. StartTime string `json:"startTime,omitempty"` // Status: Output only. Status of the build. // // Possible values: // "STATUS_UNKNOWN" - Status of the build is unknown. // "PENDING" - Build has been created and is pending execution and queuing. // It has not been queued. // "QUEUED" - Build or step is queued; work has not yet begun. // "WORKING" - Build or step is being executed. // "SUCCESS" - Build or step finished successfully. // "FAILURE" - Build or step failed to complete successfully. // "INTERNAL_ERROR" - Build or step failed due to an internal cause. // "TIMEOUT" - Build or step took longer than was allowed. // "CANCELLED" - Build or step was canceled by a user. // "EXPIRED" - Build was enqueued for longer than the value of `queue_ttl`. Status string `json:"status,omitempty"` // StatusDetail: Output only. Customer-readable message about the current // status. StatusDetail string `json:"statusDetail,omitempty"` // Steps: Required. The operations to be performed on the workspace. Steps []*ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep `json:"steps,omitempty"` // Substitutions: Substitutions data for `Build` resource. Substitutions map[string]string `json:"substitutions,omitempty"` // Tags: Tags for annotation of a `Build`. These are not docker tags. Tags []string `json:"tags,omitempty"` // Timeout: Amount of time that this build should be allowed to run, to second // granularity. If this amount of time elapses, work on the build will cease // and the build status will be `TIMEOUT`. `timeout` starts ticking from // `startTime`. Default time is 60 minutes. Timeout string `json:"timeout,omitempty"` // Timing: Output only. Stores timing information for phases of the build. // Valid keys are: * BUILD: time to execute all build steps. * PUSH: time to // push all artifacts including docker images and non docker artifacts. * // FETCHSOURCE: time to fetch source. * SETUPBUILD: time to set up build. If // the build does not specify source or images, these keys will not be // included. Timing map[string]ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"timing,omitempty"` // Warnings: Output only. Non-fatal problems encountered during the execution // of the build. Warnings []*ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning `json:"warnings,omitempty"` // ForceSendFields is a list of field names (e.g. "Approval") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Approval") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Build) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Build return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval: BuildApproval // describes a build's approval configuration, state, and result. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval struct { // Config: Output only. Configuration for manual approval of this build. Config *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalConfig `json:"config,omitempty"` // Result: Output only. Result of manual approval for this Build. Result *ContaineranalysisGoogleDevtoolsCloudbuildV1ApprovalResult `json:"result,omitempty"` // State: Output only. The state of this build's approval. // // Possible values: // "STATE_UNSPECIFIED" - Default enum type. This should not be used. // "PENDING" - Build approval is pending. // "APPROVED" - Build approval has been approved. // "REJECTED" - Build approval has been rejected. // "CANCELLED" - Build was cancelled while it was still pending approval. State string `json:"state,omitempty"` // ForceSendFields is a list of field names (e.g. "Config") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Config") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildApproval return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo: A fatal problem // encountered during the execution of the build. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo struct { // Detail: Explains the failure issue in more detail using hard-coded text. Detail string `json:"detail,omitempty"` // Type: The name of the failure. // // Possible values: // "FAILURE_TYPE_UNSPECIFIED" - Type unspecified // "PUSH_FAILED" - Unable to push the image to the repository. // "PUSH_IMAGE_NOT_FOUND" - Final image not found. // "PUSH_NOT_AUTHORIZED" - Unauthorized push of the final image. // "LOGGING_FAILURE" - Backend logging failures. Should retry. // "USER_BUILD_STEP" - A build step has failed. // "FETCH_SOURCE_FAILED" - The source fetching has failed. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Detail") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Detail") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildFailureInfo return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions: Optional arguments // to enable specific features of builds. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions struct { // AutomapSubstitutions: Option to include built-in and custom substitutions as // env variables for all build steps. AutomapSubstitutions bool `json:"automapSubstitutions,omitempty"` // DefaultLogsBucketBehavior: Optional. Option to specify how default logs // buckets are setup. // // Possible values: // "DEFAULT_LOGS_BUCKET_BEHAVIOR_UNSPECIFIED" - Unspecified. // "REGIONAL_USER_OWNED_BUCKET" - Bucket is located in user-owned project in // the same region as the build. The builder service account must have access // to create and write to Cloud Storage buckets in the build project. DefaultLogsBucketBehavior string `json:"defaultLogsBucketBehavior,omitempty"` // DiskSizeGb: Requested disk size for the VM that runs the build. Note that // this is *NOT* "disk free"; some of the space will be used by the operating // system and build utilities. Also note that this is the minimum disk size // that will be allocated for the build -- the build may run with a larger disk // than requested. At present, the maximum disk size is 2000GB; builds that // request more than the maximum are rejected with an error. DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"` // DynamicSubstitutions: Option to specify whether or not to apply bash style // string operations to the substitutions. NOTE: this is always enabled for // triggered builds and cannot be overridden in the build configuration file. DynamicSubstitutions bool `json:"dynamicSubstitutions,omitempty"` // Env: A list of global environment variable definitions that will exist for // all build steps in this build. If a variable is defined in both globally and // in a build step, the variable will use the build step value. The elements // are of the form "KEY=VALUE" for the environment variable "KEY" being given // the value "VALUE". Env []string `json:"env,omitempty"` // LogStreamingOption: Option to define build log streaming behavior to Cloud // Storage. // // Possible values: // "STREAM_DEFAULT" - Service may automatically determine build log streaming // behavior. // "STREAM_ON" - Build logs should be streamed to Cloud Storage. // "STREAM_OFF" - Build logs should not be streamed to Cloud Storage; they // will be written when the build is completed. LogStreamingOption string `json:"logStreamingOption,omitempty"` // Logging: Option to specify the logging mode, which determines if and where // build logs are stored. // // Possible values: // "LOGGING_UNSPECIFIED" - The service determines the logging mode. The // default is `LEGACY`. Do not rely on the default logging behavior as it may // change in the future. // "LEGACY" - Build logs are stored in Cloud Logging and Cloud Storage. // "GCS_ONLY" - Build logs are stored in Cloud Storage. // "STACKDRIVER_ONLY" - This option is the same as CLOUD_LOGGING_ONLY. // "CLOUD_LOGGING_ONLY" - Build logs are stored in Cloud Logging. Selecting // this option will not allow [logs // streaming](https://cloud.google.com/sdk/gcloud/reference/builds/log). // "NONE" - Turn off all logging. No build logs will be captured. Logging string `json:"logging,omitempty"` // MachineType: Compute Engine machine type on which to run the build. // // Possible values: // "UNSPECIFIED" - Standard machine type. // "N1_HIGHCPU_8" - Highcpu machine with 8 CPUs. // "N1_HIGHCPU_32" - Highcpu machine with 32 CPUs. // "E2_HIGHCPU_8" - Highcpu e2 machine with 8 CPUs. // "E2_HIGHCPU_32" - Highcpu e2 machine with 32 CPUs. // "E2_MEDIUM" - E2 machine with 1 CPU. MachineType string `json:"machineType,omitempty"` // Pool: Optional. Specification for execution on a `WorkerPool`. See running // builds in a private pool // (https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) // for more information. Pool *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption `json:"pool,omitempty"` // RequestedVerifyOption: Requested verifiability options. // // Possible values: // "NOT_VERIFIED" - Not a verifiable build (the default). // "VERIFIED" - Build must be verified. RequestedVerifyOption string `json:"requestedVerifyOption,omitempty"` // SecretEnv: A list of global environment variables, which are encrypted using // a Cloud Key Management Service crypto key. These values must be specified in // the build's `Secret`. These variables will be available to all build steps // in this build. SecretEnv []string `json:"secretEnv,omitempty"` // SourceProvenanceHash: Requested hash for SourceProvenance. // // Possible values: // "NONE" - No hash requested. // "SHA256" - Use a sha256 hash. // "MD5" - Use a md5 hash. // "SHA512" - Use a sha512 hash. SourceProvenanceHash []string `json:"sourceProvenanceHash,omitempty"` // SubstitutionOption: Option to specify behavior when there is an error in the // substitution checks. NOTE: this is always set to ALLOW_LOOSE for triggered // builds and cannot be overridden in the build configuration file. // // Possible values: // "MUST_MATCH" - Fails the build if error in substitutions checks, like // missing a substitution in the template or in the map. // "ALLOW_LOOSE" - Do not fail the build if error in substitutions checks. SubstitutionOption string `json:"substitutionOption,omitempty"` // Volumes: Global list of volumes to mount for ALL build steps Each volume is // created as an empty volume prior to starting the build process. Upon // completion of the build, volumes and their contents are discarded. Global // volume names and paths cannot conflict with the volumes defined a build // step. Using a global volume in a build with only one step is not valid as it // is indicative of a build request with an incorrect configuration. Volumes []*ContaineranalysisGoogleDevtoolsCloudbuildV1Volume `json:"volumes,omitempty"` // WorkerPool: This field deprecated; please use `pool.name` instead. WorkerPool string `json:"workerPool,omitempty"` // ForceSendFields is a list of field names (e.g. "AutomapSubstitutions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AutomapSubstitutions") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptions return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption: Details // about how a build should be executed on a `WorkerPool`. See running builds // in a private pool // (https://cloud.google.com/build/docs/private-pools/run-builds-in-private-pool) // for more information. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption struct { // Name: The `WorkerPool` resource to execute the build on. You must have // `cloudbuild.workerpools.use` on the project hosting the WorkerPool. Format // projects/{project}/locations/{location}/workerPools/{workerPoolId} Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "Name") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Name") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildOptionsPoolOption return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep: A step in the build // pipeline. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep struct { // AllowExitCodes: Allow this build step to fail without failing the entire // build if and only if the exit code is one of the specified codes. If // allow_failure is also specified, this field will take precedence. AllowExitCodes []int64 `json:"allowExitCodes,omitempty"` // AllowFailure: Allow this build step to fail without failing the entire // build. If false, the entire build will fail if this step fails. Otherwise, // the build will succeed, but this step will still have a failure status. // Error information will be reported in the failure_detail field. AllowFailure bool `json:"allowFailure,omitempty"` // Args: A list of arguments that will be presented to the step when it is // started. If the image used to run the step's container has an entrypoint, // the `args` are used as arguments to that entrypoint. If the image does not // define an entrypoint, the first element in args is used as the entrypoint, // and the remainder will be used as arguments. Args []string `json:"args,omitempty"` // AutomapSubstitutions: Option to include built-in and custom substitutions as // env variables for this build step. This option will override the global // option in BuildOption. AutomapSubstitutions bool `json:"automapSubstitutions,omitempty"` // Dir: Working directory to use when running this step's container. If this // value is a relative path, it is relative to the build's working directory. // If this value is absolute, it may be outside the build's working directory, // in which case the contents of the path may not be persisted across build // step executions, unless a `volume` for that path is specified. If the build // specifies a `RepoSource` with `dir` and a step with a `dir`, which specifies // an absolute path, the `RepoSource` `dir` is ignored for the step's // execution. Dir string `json:"dir,omitempty"` // Entrypoint: Entrypoint to be used instead of the build step image's default // entrypoint. If unset, the image's default entrypoint is used. Entrypoint string `json:"entrypoint,omitempty"` // Env: A list of environment variable definitions to be used when running a // step. The elements are of the form "KEY=VALUE" for the environment variable // "KEY" being given the value "VALUE". Env []string `json:"env,omitempty"` // ExitCode: Output only. Return code from running the step. ExitCode int64 `json:"exitCode,omitempty"` // Id: Unique identifier for this build step, used in `wait_for` to reference // this build step as a dependency. Id string `json:"id,omitempty"` // Name: Required. The name of the container image that will run this // particular build step. If the image is available in the host's Docker // daemon's cache, it will be run directly. If not, the host will attempt to // pull the image first, using the builder service account's credentials if // necessary. The Docker daemon's cache will already have the latest versions // of all of the officially supported build steps // (https://github.com/GoogleCloudPlatform/cloud-builders // (https://github.com/GoogleCloudPlatform/cloud-builders)). The Docker daemon // will also have cached many of the layers for some popular images, like // "ubuntu", "debian", but they will be refreshed at the time you attempt to // use them. If you built an image in a previous build step, it will be stored // in the host's Docker daemon's cache and is available to use as the name for // a later build step. Name string `json:"name,omitempty"` // PullTiming: Output only. Stores timing information for pulling this build // step's builder image only. PullTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pullTiming,omitempty"` // Script: A shell script to be executed in the step. When script is provided, // the user cannot specify the entrypoint or args. Script string `json:"script,omitempty"` // SecretEnv: A list of environment variables which are encrypted using a Cloud // Key Management Service crypto key. These values must be specified in the // build's `Secret`. SecretEnv []string `json:"secretEnv,omitempty"` // Status: Output only. Status of the build step. At this time, build step // status is only updated on build completion; step status is not updated in // real-time as the build progresses. // // Possible values: // "STATUS_UNKNOWN" - Status of the build is unknown. // "PENDING" - Build has been created and is pending execution and queuing. // It has not been queued. // "QUEUED" - Build or step is queued; work has not yet begun. // "WORKING" - Build or step is being executed. // "SUCCESS" - Build or step finished successfully. // "FAILURE" - Build or step failed to complete successfully. // "INTERNAL_ERROR" - Build or step failed due to an internal cause. // "TIMEOUT" - Build or step took longer than was allowed. // "CANCELLED" - Build or step was canceled by a user. // "EXPIRED" - Build was enqueued for longer than the value of `queue_ttl`. Status string `json:"status,omitempty"` // Timeout: Time limit for executing this build step. If not defined, the step // has no time limit and will be allowed to continue to run until either it // completes or the build itself times out. Timeout string `json:"timeout,omitempty"` // Timing: Output only. Stores timing information for executing this build // step. Timing *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"timing,omitempty"` // Volumes: List of volumes to mount into the build step. Each volume is // created as an empty volume prior to execution of the build step. Upon // completion of the build, volumes and their contents are discarded. Using a // named volume in only one step is not valid as it is indicative of a build // request with an incorrect configuration. Volumes []*ContaineranalysisGoogleDevtoolsCloudbuildV1Volume `json:"volumes,omitempty"` // WaitFor: The ID(s) of the step(s) that this build step depends on. This // build step will not start until all the build steps in `wait_for` have // completed successfully. If `wait_for` is empty, this build step will start // when all previous build steps in the `Build.Steps` list have completed // successfully. WaitFor []string `json:"waitFor,omitempty"` // ForceSendFields is a list of field names (e.g. "AllowExitCodes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AllowExitCodes") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildStep return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning: A non-fatal problem // encountered during the execution of the build. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning struct { // Priority: The priority for this warning. // // Possible values: // "PRIORITY_UNSPECIFIED" - Should not be used. // "INFO" - e.g. deprecation warnings and alternative feature highlights. // "WARNING" - e.g. automated detection of possible issues with the build. // "ALERT" - e.g. alerts that a feature used in the build is pending removal Priority string `json:"priority,omitempty"` // Text: Explanation of the warning generated. Text string `json:"text,omitempty"` // ForceSendFields is a list of field names (e.g. "Priority") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Priority") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuildWarning return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage: An image built by the // pipeline. type ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage struct { // Digest: Docker Registry 2.0 digest. Digest string `json:"digest,omitempty"` // Name: Name used to push the container image to Google Container Registry, as // presented to `docker push`. Name string `json:"name,omitempty"` // PushTiming: Output only. Stores timing information for pushing the specified // image. PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Digest") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository: Location of // the source in a 2nd-gen Google Cloud Build repository resource. type ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository struct { // Dir: Directory, relative to the source root, in which to run the build. Dir string `json:"dir,omitempty"` // Repository: Required. Name of the Google Cloud Build repository, formatted // as `projects/*/locations/*/connections/*/repositories/*`. Repository string `json:"repository,omitempty"` // Revision: The revision to fetch from the Git repository such as a branch, a // tag, a commit SHA, or any Git ref. Revision string `json:"revision,omitempty"` // ForceSendFields is a list of field names (e.g. "Dir") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Dir") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig: This // config defines the location of a source through Developer Connect. type ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig struct { // Dir: Required. Directory, relative to the source root, in which to run the // build. Dir string `json:"dir,omitempty"` // GitRepositoryLink: Required. The Developer Connect Git repository link, // formatted as `projects/*/locations/*/connections/*/gitRepositoryLink/*`. GitRepositoryLink string `json:"gitRepositoryLink,omitempty"` // Revision: Required. The revision to fetch from the Git repository such as a // branch, a tag, a commit SHA, or any Git ref. Revision string `json:"revision,omitempty"` // ForceSendFields is a list of field names (e.g. "Dir") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Dir") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes: Container message for // hashes of byte content of files, used in SourceProvenance messages to verify // integrity of source input to the build. type ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes struct { // FileHash: Collection of file hashes. FileHash []*ContaineranalysisGoogleDevtoolsCloudbuildV1Hash `json:"fileHash,omitempty"` // ForceSendFields is a list of field names (e.g. "FileHash") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FileHash") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig: GitConfig is a // configuration for git operations. type ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig struct { // Http: Configuration for HTTP related git operations. Http *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig `json:"http,omitempty"` // ForceSendFields is a list of field names (e.g. "Http") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Http") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig: HttpConfig // is a configuration for HTTP related git operations. type ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig struct { // ProxySecretVersionName: SecretVersion resource of the HTTP proxy URL. The // proxy URL should be in format protocol://@]proxyhost[:port]. ProxySecretVersionName string `json:"proxySecretVersionName,omitempty"` // ForceSendFields is a list of field names (e.g. "ProxySecretVersionName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ProxySecretVersionName") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1GitConfigHttpConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource: Location of the source // in any accessible Git repository. type ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource struct { // Dir: Directory, relative to the source root, in which to run the build. This // must be a relative path. If a step's `dir` is specified and is an absolute // path, this value is ignored for that step's execution. Dir string `json:"dir,omitempty"` // Revision: The revision to fetch from the Git repository such as a branch, a // tag, a commit SHA, or any Git ref. Cloud Build uses `git fetch` to fetch the // revision from the Git repository; therefore make sure that the string you // provide for `revision` is parsable by the command. For information on string // values accepted by `git fetch`, see // https://git-scm.com/docs/gitrevisions#_specifying_revisions. For information // on `git fetch`, see https://git-scm.com/docs/git-fetch. Revision string `json:"revision,omitempty"` // Url: Location of the Git repo to build. This will be used as a `git remote`, // see https://git-scm.com/docs/git-remote. Url string `json:"url,omitempty"` // ForceSendFields is a list of field names (e.g. "Dir") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Dir") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Hash: Container message for hash // values. type ContaineranalysisGoogleDevtoolsCloudbuildV1Hash struct { // Type: The type of hash that was performed. // // Possible values: // "NONE" - No hash requested. // "SHA256" - Use a sha256 hash. // "MD5" - Use a md5 hash. // "SHA512" - Use a sha512 hash. Type string `json:"type,omitempty"` // Value: The hash value. Value string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Type") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Type") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Hash) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Hash return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret: Pairs a set of // secret environment variables mapped to encrypted values with the Cloud KMS // key to use to decrypt the value. type ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret struct { // EnvMap: Map of environment variable name to its encrypted value. Secret // environment variables must be unique across all of a build's secrets, and // must be used by at least one build step. Values can be at most 64 KB in // size. There can be at most 100 secret values across all of a build's // secrets. EnvMap map[string]string `json:"envMap,omitempty"` // KmsKeyName: Resource name of Cloud KMS crypto key to decrypt the encrypted // value. In format: projects/*/locations/*/keyRings/*/cryptoKeys/* KmsKeyName string `json:"kmsKeyName,omitempty"` // ForceSendFields is a list of field names (e.g. "EnvMap") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "EnvMap") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource: Location of the // source in a Google Cloud Source Repository. type ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource struct { // BranchName: Regex matching branches to build. The syntax of the regular // expressions accepted is the syntax accepted by RE2 and described at // https://github.com/google/re2/wiki/Syntax BranchName string `json:"branchName,omitempty"` // CommitSha: Explicit commit SHA to build. CommitSha string `json:"commitSha,omitempty"` // Dir: Directory, relative to the source root, in which to run the build. This // must be a relative path. If a step's `dir` is specified and is an absolute // path, this value is ignored for that step's execution. Dir string `json:"dir,omitempty"` // InvertRegex: Only trigger a build if the revision regex does NOT match the // revision regex. InvertRegex bool `json:"invertRegex,omitempty"` // ProjectId: ID of the project that owns the Cloud Source Repository. If // omitted, the project ID requesting the build is assumed. ProjectId string `json:"projectId,omitempty"` // RepoName: Name of the Cloud Source Repository. RepoName string `json:"repoName,omitempty"` // Substitutions: Substitutions to use in a triggered build. Should only be // used with RunBuildTrigger Substitutions map[string]string `json:"substitutions,omitempty"` // TagName: Regex matching tags to build. The syntax of the regular expressions // accepted is the syntax accepted by RE2 and described at // https://github.com/google/re2/wiki/Syntax TagName string `json:"tagName,omitempty"` // ForceSendFields is a list of field names (e.g. "BranchName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BranchName") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Results: Artifacts created by the // build pipeline. type ContaineranalysisGoogleDevtoolsCloudbuildV1Results struct { // ArtifactManifest: Path to the artifact manifest for non-container artifacts // uploaded to Cloud Storage. Only populated when artifacts are uploaded to // Cloud Storage. ArtifactManifest string `json:"artifactManifest,omitempty"` // ArtifactTiming: Time to push all non-container artifacts to Cloud Storage. ArtifactTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"artifactTiming,omitempty"` // BuildStepImages: List of build step digests, in the order corresponding to // build step indices. BuildStepImages []string `json:"buildStepImages,omitempty"` // BuildStepOutputs: List of build step outputs, produced by builder images, in // the order corresponding to build step indices. Cloud Builders // (https://cloud.google.com/cloud-build/docs/cloud-builders) can produce this // output by writing to `$BUILDER_OUTPUT/output`. Only the first 50KB of data // is stored. Note that the `$BUILDER_OUTPUT` variable is read-only and can't // be substituted. BuildStepOutputs []string `json:"buildStepOutputs,omitempty"` // Images: Container images that were built as a part of the build. Images []*ContaineranalysisGoogleDevtoolsCloudbuildV1BuiltImage `json:"images,omitempty"` // MavenArtifacts: Maven artifacts uploaded to Artifact Registry at the end of // the build. MavenArtifacts []*ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact `json:"mavenArtifacts,omitempty"` // NpmPackages: Npm packages uploaded to Artifact Registry at the end of the // build. NpmPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage `json:"npmPackages,omitempty"` // NumArtifacts: Number of non-container artifacts uploaded to Cloud Storage. // Only populated when artifacts are uploaded to Cloud Storage. NumArtifacts int64 `json:"numArtifacts,omitempty,string"` // PythonPackages: Python artifacts uploaded to Artifact Registry at the end of // the build. PythonPackages []*ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage `json:"pythonPackages,omitempty"` // ForceSendFields is a list of field names (e.g. "ArtifactManifest") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ArtifactManifest") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Results) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Results return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Secret: Pairs a set of secret // environment variables containing encrypted values with the Cloud KMS key to // use to decrypt the value. Note: Use `kmsKeyName` with `available_secrets` // instead of using `kmsKeyName` with `secret`. For instructions see: // https://cloud.google.com/cloud-build/docs/securing-builds/use-encrypted-credentials. type ContaineranalysisGoogleDevtoolsCloudbuildV1Secret struct { // KmsKeyName: Cloud KMS key name to use to decrypt these envs. KmsKeyName string `json:"kmsKeyName,omitempty"` // SecretEnv: Map of environment variable name to its encrypted value. Secret // environment variables must be unique across all of a build's secrets, and // must be used by at least one build step. Values can be at most 64 KB in // size. There can be at most 100 secret values across all of a build's // secrets. SecretEnv map[string]string `json:"secretEnv,omitempty"` // ForceSendFields is a list of field names (e.g. "KmsKeyName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "KmsKeyName") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secret) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Secret return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret: Pairs a // secret environment variable with a SecretVersion in Secret Manager. type ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret struct { // Env: Environment variable name to associate with the secret. Secret // environment variables must be unique across all of a build's secrets, and // must be used by at least one build step. Env string `json:"env,omitempty"` // VersionName: Resource name of the SecretVersion. In format: // projects/*/secrets/*/versions/* VersionName string `json:"versionName,omitempty"` // ForceSendFields is a list of field names (e.g. "Env") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Env") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets: Secrets and secret // environment variables. type ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets struct { // Inline: Secrets encrypted with KMS key and the associated secret environment // variable. Inline []*ContaineranalysisGoogleDevtoolsCloudbuildV1InlineSecret `json:"inline,omitempty"` // SecretManager: Secrets in Secret Manager and associated secret environment // variable. SecretManager []*ContaineranalysisGoogleDevtoolsCloudbuildV1SecretManagerSecret `json:"secretManager,omitempty"` // ForceSendFields is a list of field names (e.g. "Inline") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Inline") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Secrets return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Source: Location of the source in // a supported storage service. type ContaineranalysisGoogleDevtoolsCloudbuildV1Source struct { // ConnectedRepository: Optional. If provided, get the source from this 2nd-gen // Google Cloud Build repository resource. ConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"connectedRepository,omitempty"` // DeveloperConnectConfig: If provided, get the source from this Developer // Connect config. DeveloperConnectConfig *ContaineranalysisGoogleDevtoolsCloudbuildV1DeveloperConnectConfig `json:"developerConnectConfig,omitempty"` // GitSource: If provided, get the source from this Git repository. GitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"gitSource,omitempty"` // RepoSource: If provided, get the source from this location in a Cloud Source // Repository. RepoSource *ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource `json:"repoSource,omitempty"` // StorageSource: If provided, get the source from this location in Cloud // Storage. StorageSource *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource `json:"storageSource,omitempty"` // StorageSourceManifest: If provided, get the source from this manifest in // Cloud Storage. This feature is in Preview; see description here // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). StorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"storageSourceManifest,omitempty"` // ForceSendFields is a list of field names (e.g. "ConnectedRepository") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ConnectedRepository") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Source) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Source return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance: Provenance of // the source. Ways to find the original source, or verify that some source was // used for this build. type ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance struct { // FileHashes: Output only. Hash(es) of the build source, which can be used to // verify that the original source integrity was maintained in the build. Note // that `FileHashes` will only be populated if `BuildOptions` has requested a // `SourceProvenanceHash`. The keys to this map are file paths used as build // source and the values contain the hash values for those files. If the build // source came in a single package such as a gzipped tarfile (`.tar.gz`), the // `FileHash` will be for the single path to that file. FileHashes map[string]ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` // ResolvedConnectedRepository: Output only. A copy of the build's // `source.connected_repository`, if exists, with any revisions resolved. ResolvedConnectedRepository *ContaineranalysisGoogleDevtoolsCloudbuildV1ConnectedRepository `json:"resolvedConnectedRepository,omitempty"` // ResolvedGitSource: Output only. A copy of the build's `source.git_source`, // if exists, with any revisions resolved. ResolvedGitSource *ContaineranalysisGoogleDevtoolsCloudbuildV1GitSource `json:"resolvedGitSource,omitempty"` // ResolvedRepoSource: A copy of the build's `source.repo_source`, if exists, // with any revisions resolved. ResolvedRepoSource *ContaineranalysisGoogleDevtoolsCloudbuildV1RepoSource `json:"resolvedRepoSource,omitempty"` // ResolvedStorageSource: A copy of the build's `source.storage_source`, if // exists, with any generations resolved. ResolvedStorageSource *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource `json:"resolvedStorageSource,omitempty"` // ResolvedStorageSourceManifest: A copy of the build's // `source.storage_source_manifest`, if exists, with any revisions resolved. // This feature is in Preview. ResolvedStorageSourceManifest *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest `json:"resolvedStorageSourceManifest,omitempty"` // ForceSendFields is a list of field names (e.g. "FileHashes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FileHashes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1SourceProvenance return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource: Location of the // source in an archive file in Cloud Storage. type ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource struct { // Bucket: Cloud Storage bucket containing the source (see Bucket Name // Requirements // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Bucket string `json:"bucket,omitempty"` // Generation: Cloud Storage generation for the object. If the generation is // omitted, the latest generation will be used. Generation int64 `json:"generation,omitempty,string"` // Object: Cloud Storage object containing the source. This object must be a // zipped (`.zip`) or gzipped archive file (`.tar.gz`) containing source to // build. Object string `json:"object,omitempty"` // SourceFetcher: Optional. Option to specify the tool to fetch the source file // for the build. // // Possible values: // "SOURCE_FETCHER_UNSPECIFIED" - Unspecified defaults to GSUTIL. // "GSUTIL" - Use the "gsutil" tool to download the source file. // "GCS_FETCHER" - Use the Cloud Storage Fetcher tool to download the source // file. SourceFetcher string `json:"sourceFetcher,omitempty"` // ForceSendFields is a list of field names (e.g. "Bucket") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Bucket") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSource return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest: Location // of the source manifest in Cloud Storage. This feature is in Preview; see // description here // (https://github.com/GoogleCloudPlatform/cloud-builders/tree/master/gcs-fetcher). type ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest struct { // Bucket: Cloud Storage bucket containing the source manifest (see Bucket Name // Requirements // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Bucket string `json:"bucket,omitempty"` // Generation: Cloud Storage generation for the object. If the generation is // omitted, the latest generation will be used. Generation int64 `json:"generation,omitempty,string"` // Object: Cloud Storage object containing the source manifest. This object // must be a JSON file. Object string `json:"object,omitempty"` // ForceSendFields is a list of field names (e.g. "Bucket") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Bucket") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1StorageSourceManifest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan: Start and end times for // a build execution phase. type ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan struct { // EndTime: End of time span. EndTime string `json:"endTime,omitempty"` // StartTime: Start of time span. StartTime string `json:"startTime,omitempty"` // ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "EndTime") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact: A Maven // artifact uploaded using the MavenArtifact directive. type ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact struct { // FileHashes: Hash types and values of the Maven Artifact. FileHashes *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` // PushTiming: Output only. Stores timing information for pushing the specified // artifact. PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` // Uri: URI of the uploaded artifact. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "FileHashes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FileHashes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedMavenArtifact return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage: An npm // package uploaded to Artifact Registry using the NpmPackage directive. type ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage struct { // FileHashes: Hash types and values of the npm package. FileHashes *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` // PushTiming: Output only. Stores timing information for pushing the specified // artifact. PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` // Uri: URI of the uploaded npm package. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "FileHashes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FileHashes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedNpmPackage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage: Artifact // uploaded using the PythonPackage directive. type ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage struct { // FileHashes: Hash types and values of the Python Artifact. FileHashes *ContaineranalysisGoogleDevtoolsCloudbuildV1FileHashes `json:"fileHashes,omitempty"` // PushTiming: Output only. Stores timing information for pushing the specified // artifact. PushTiming *ContaineranalysisGoogleDevtoolsCloudbuildV1TimeSpan `json:"pushTiming,omitempty"` // Uri: URI of the uploaded artifact. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "FileHashes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FileHashes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1UploadedPythonPackage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ContaineranalysisGoogleDevtoolsCloudbuildV1Volume: Volume describes a Docker // container volume which is mounted into build steps in order to persist files // across build step execution. type ContaineranalysisGoogleDevtoolsCloudbuildV1Volume struct { // Name: Name of the volume to mount. Volume names must be unique per build // step and must be valid names for Docker volumes. Each named volume must be // used by at least two build steps. Name string `json:"name,omitempty"` // Path: Path at which to mount the volume. Paths must be absolute and cannot // conflict with other volume paths on the same build step or with certain // reserved volume paths. Path string `json:"path,omitempty"` // ForceSendFields is a list of field names (e.g. "Name") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Name") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ContaineranalysisGoogleDevtoolsCloudbuildV1Volume) MarshalJSON() ([]byte, error) { type NoMethod ContaineranalysisGoogleDevtoolsCloudbuildV1Volume return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Deployable: An artifact that can be deployed in some runtime. type Deployable struct { // ResourceUri: Required. Resource URI for the artifact being deployed. ResourceUri []string `json:"resourceUri,omitempty"` // ForceSendFields is a list of field names (e.g. "ResourceUri") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ResourceUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Deployable) MarshalJSON() ([]byte, error) { type NoMethod Deployable return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Deployment: The period during which some deployable was active in a runtime. type Deployment struct { // Address: Address of the runtime element hosting this deployment. Address string `json:"address,omitempty"` // Config: Configuration used to create this deployment. Config string `json:"config,omitempty"` // DeployTime: Required. Beginning of the lifetime of this deployment. DeployTime string `json:"deployTime,omitempty"` // Platform: Platform hosting this deployment. // // Possible values: // "PLATFORM_UNSPECIFIED" - Unknown. // "GKE" - Google Container Engine. // "FLEX" - Google App Engine: Flexible Environment. // "CUSTOM" - Custom user-defined platform. Platform string `json:"platform,omitempty"` // ResourceUri: Output only. Resource URI for the artifact being deployed taken // from the deployable field with the same name. ResourceUri []string `json:"resourceUri,omitempty"` // UndeployTime: End of the lifetime of this deployment. UndeployTime string `json:"undeployTime,omitempty"` // UserEmail: Identity of the user that triggered this deployment. UserEmail string `json:"userEmail,omitempty"` // ForceSendFields is a list of field names (e.g. "Address") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Address") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Deployment) MarshalJSON() ([]byte, error) { type NoMethod Deployment return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Derived: Derived describes the derived image portion (Occurrence) of the // DockerImage relationship. This image would be produced from a Dockerfile // with FROM . type Derived struct { // BaseResourceUrl: Output only. This contains the base image URL for the // derived image occurrence. BaseResourceUrl string `json:"baseResourceUrl,omitempty"` // Distance: Output only. The number of layers by which this image differs from // the associated image basis. Distance int64 `json:"distance,omitempty"` // Fingerprint: Required. The fingerprint of the derived image. Fingerprint *Fingerprint `json:"fingerprint,omitempty"` // LayerInfo: This contains layer-specific metadata, if populated it has length // "distance" and is ordered with [distance] being the layer immediately // following the base image and [1] being the final layer. LayerInfo []*Layer `json:"layerInfo,omitempty"` // ForceSendFields is a list of field names (e.g. "BaseResourceUrl") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BaseResourceUrl") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Derived) MarshalJSON() ([]byte, error) { type NoMethod Derived return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Detail: Identifies all appearances of this vulnerability in the package for // a specific distro/location. For example: glibc in // cpe:/o:debian:debian_linux:8 for versions 2.1 - 2.2 type Detail struct { // CpeUri: Required. The CPE URI in cpe format // (https://cpe.mitre.org/specification/) in which the vulnerability manifests. // Examples include distro or storage location for vulnerable jar. CpeUri string `json:"cpeUri,omitempty"` // Description: A vendor-specific description of this note. Description string `json:"description,omitempty"` // FixedLocation: The fix for this specific package version. FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"` // IsObsolete: Whether this detail is obsolete. Occurrences are expected not to // point to obsolete details. IsObsolete bool `json:"isObsolete,omitempty"` // MaxAffectedVersion: The max version of the package in which the // vulnerability exists. MaxAffectedVersion *Version `json:"maxAffectedVersion,omitempty"` // MinAffectedVersion: The min version of the package in which the // vulnerability exists. MinAffectedVersion *Version `json:"minAffectedVersion,omitempty"` // Package: Required. The name of the package where the vulnerability was // found. Package string `json:"package,omitempty"` // PackageType: The type of package; whether native or non native(ruby gems, // node.js packages etc). PackageType string `json:"packageType,omitempty"` // SeverityName: The severity (eg: distro assigned severity) for this // vulnerability. SeverityName string `json:"severityName,omitempty"` // Source: The source from which the information in this Detail was obtained. Source string `json:"source,omitempty"` // SourceUpdateTime: The time this information was last changed at the source. // This is an upstream timestamp from the underlying information source - e.g. // Ubuntu security tracker. SourceUpdateTime string `json:"sourceUpdateTime,omitempty"` // Vendor: The name of the vendor of the product. Vendor string `json:"vendor,omitempty"` // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CpeUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Detail) MarshalJSON() ([]byte, error) { type NoMethod Detail return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Details: Details of an attestation occurrence. type Details struct { // Attestation: Required. Attestation for the resource. Attestation *Attestation `json:"attestation,omitempty"` // ForceSendFields is a list of field names (e.g. "Attestation") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Attestation") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Details) MarshalJSON() ([]byte, error) { type NoMethod Details return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Digest: Digest information. type Digest struct { // Algo: `SHA1`, `SHA512` etc. Algo string `json:"algo,omitempty"` // DigestBytes: Value of the digest. DigestBytes string `json:"digestBytes,omitempty"` // ForceSendFields is a list of field names (e.g. "Algo") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Algo") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Digest) MarshalJSON() ([]byte, error) { type NoMethod Digest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Discovered: Provides information about the analysis status of a discovered // resource. type Discovered struct { AnalysisCompleted *AnalysisCompleted `json:"analysisCompleted,omitempty"` // AnalysisError: Indicates any errors encountered during analysis of a // resource. There could be 0 or more of these errors. AnalysisError []*Status `json:"analysisError,omitempty"` // AnalysisStatus: The status of discovery for the resource. // // Possible values: // "ANALYSIS_STATUS_UNSPECIFIED" - Unknown. // "PENDING" - Resource is known but no action has been taken yet. // "SCANNING" - Resource is being analyzed. // "FINISHED_SUCCESS" - Analysis has finished successfully. // "COMPLETE" - Analysis has completed. // "FINISHED_FAILED" - Analysis has finished unsuccessfully, the analysis // itself is in a bad state. // "FINISHED_UNSUPPORTED" - The resource is known not to be supported AnalysisStatus string `json:"analysisStatus,omitempty"` // AnalysisStatusError: When an error is encountered this will contain a // LocalizedMessage under details to show to the user. The LocalizedMessage is // output only and populated by the API. AnalysisStatusError *Status `json:"analysisStatusError,omitempty"` // ContinuousAnalysis: Whether the resource is continuously analyzed. // // Possible values: // "CONTINUOUS_ANALYSIS_UNSPECIFIED" - Unknown. // "ACTIVE" - The resource is continuously analyzed. // "INACTIVE" - The resource is ignored for continuous analysis. ContinuousAnalysis string `json:"continuousAnalysis,omitempty"` // LastAnalysisTime: The last time continuous analysis was done for this // resource. Deprecated, do not use. LastAnalysisTime string `json:"lastAnalysisTime,omitempty"` // LastScanTime: The last time this resource was scanned. LastScanTime string `json:"lastScanTime,omitempty"` // SbomStatus: The status of an SBOM generation. SbomStatus *SBOMStatus `json:"sbomStatus,omitempty"` // ForceSendFields is a list of field names (e.g. "AnalysisCompleted") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AnalysisCompleted") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Discovered) MarshalJSON() ([]byte, error) { type NoMethod Discovered return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Discovery: A note that indicates a type of analysis a provider would // perform. This note exists in a provider's project. A `Discovery` occurrence // is created in a consumer's project at the start of analysis. type Discovery struct { // AnalysisKind: Required. Immutable. The kind of analysis that is handled by // this discovery. // // Possible values: // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. // "VULNERABILITY" - The note and occurrence represent a package // vulnerability. // "BUILD" - The note and occurrence assert build provenance. // "IMAGE" - This represents an image basis relationship. // "PACKAGE" - This represents a package installed via a package manager. // "DEPLOYMENT" - The note and occurrence track deployment events. // "DISCOVERY" - The note and occurrence track the initial discovery status // of a resource. // "ATTESTATION" - This represents a logical "role" that can attest to // artifacts. // "INTOTO" - This represents an in-toto link. // "SBOM" - This represents a software bill of materials. // "SPDX_PACKAGE" - This represents an SPDX Package. // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability Assessment. // "SBOM_REFERENCE" - This represents an SBOM Reference. AnalysisKind string `json:"analysisKind,omitempty"` // ForceSendFields is a list of field names (e.g. "AnalysisKind") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AnalysisKind") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Discovery) MarshalJSON() ([]byte, error) { type NoMethod Discovery return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Distribution: This represents a particular channel of distribution for a // given package. E.g., Debian's jessie-backports dpkg mirror. type Distribution struct { // Architecture: The CPU architecture for which packages in this distribution // channel were built. // // Possible values: // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. // "X86" - X86 architecture. // "X64" - X64 architecture. Architecture string `json:"architecture,omitempty"` // CpeUri: Required. The cpe_uri in CPE format // (https://cpe.mitre.org/specification/) denoting the package manager version // distributing a package. CpeUri string `json:"cpeUri,omitempty"` // Description: The distribution channel-specific description of this package. Description string `json:"description,omitempty"` // LatestVersion: The latest available version of this package in this // distribution channel. LatestVersion *Version `json:"latestVersion,omitempty"` // Maintainer: A freeform string denoting the maintainer of this package. Maintainer string `json:"maintainer,omitempty"` // Url: The distribution channel-specific homepage for this package. Url string `json:"url,omitempty"` // ForceSendFields is a list of field names (e.g. "Architecture") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Architecture") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Distribution) MarshalJSON() ([]byte, error) { type NoMethod Distribution return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DocumentNote: DocumentNote represents an SPDX Document Creation Information // section: https://spdx.github.io/spdx-spec/2-document-creation-information/ type DocumentNote struct { // DataLicence: Compliance with the SPDX specification includes populating the // SPDX fields therein with data related to such fields ("SPDX-Metadata") DataLicence string `json:"dataLicence,omitempty"` // SpdxVersion: Provide a reference number that can be used to understand how // to parse and interpret the rest of the file SpdxVersion string `json:"spdxVersion,omitempty"` // ForceSendFields is a list of field names (e.g. "DataLicence") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DataLicence") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *DocumentNote) MarshalJSON() ([]byte, error) { type NoMethod DocumentNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DocumentOccurrence: DocumentOccurrence represents an SPDX Document Creation // Information section: // https://spdx.github.io/spdx-spec/2-document-creation-information/ type DocumentOccurrence struct { // CreateTime: Identify when the SPDX file was originally created. The date is // to be specified according to combined date and time in UTC format as // specified in ISO 8601 standard CreateTime string `json:"createTime,omitempty"` // CreatorComment: A field for creators of the SPDX file to provide general // comments about the creation of the SPDX file or any other relevant comment // not included in the other fields CreatorComment string `json:"creatorComment,omitempty"` // Creators: Identify who (or what, in the case of a tool) created the SPDX // file. If the SPDX file was created by an individual, indicate the person's // name Creators []string `json:"creators,omitempty"` // DocumentComment: A field for creators of the SPDX file content to provide // comments to the consumers of the SPDX document DocumentComment string `json:"documentComment,omitempty"` // ExternalDocumentRefs: Identify any external SPDX documents referenced within // this SPDX document ExternalDocumentRefs []string `json:"externalDocumentRefs,omitempty"` // Id: Identify the current SPDX document which may be referenced in // relationships by other files, packages internally and documents externally Id string `json:"id,omitempty"` // LicenseListVersion: A field for creators of the SPDX file to provide the // version of the SPDX License List used when the SPDX file was created LicenseListVersion string `json:"licenseListVersion,omitempty"` // Namespace: Provide an SPDX document specific namespace as a unique absolute // Uniform Resource Identifier (URI) as specified in RFC-3986, with the // exception of the ‘#’ delimiter Namespace string `json:"namespace,omitempty"` // Title: Identify name of this document as designated by creator Title string `json:"title,omitempty"` // ForceSendFields is a list of field names (e.g. "CreateTime") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CreateTime") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *DocumentOccurrence) MarshalJSON() ([]byte, error) { type NoMethod DocumentOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Empty: A generic empty message that you can re-use to avoid defining // duplicated empty messages in your APIs. A typical example is to use it as // the request or the response type of an API method. For instance: service Foo // { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } type Empty struct { // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` } // Envelope: MUST match // https://github.com/secure-systems-lab/dsse/blob/master/envelope.proto. An // authenticated message of arbitrary type. type Envelope struct { Payload string `json:"payload,omitempty"` PayloadType string `json:"payloadType,omitempty"` Signatures []*EnvelopeSignature `json:"signatures,omitempty"` // ForceSendFields is a list of field names (e.g. "Payload") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Payload") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Envelope) MarshalJSON() ([]byte, error) { type NoMethod Envelope return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type EnvelopeSignature struct { Keyid string `json:"keyid,omitempty"` Sig string `json:"sig,omitempty"` // ForceSendFields is a list of field names (e.g. "Keyid") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Keyid") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *EnvelopeSignature) MarshalJSON() ([]byte, error) { type NoMethod EnvelopeSignature return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Environment: Defines an object for the environment field in in-toto links. // The suggested fields are "variables", "filesystem", and "workdir". type Environment struct { CustomValues map[string]string `json:"customValues,omitempty"` // ForceSendFields is a list of field names (e.g. "CustomValues") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CustomValues") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Environment) MarshalJSON() ([]byte, error) { type NoMethod Environment return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ExportSBOMRequest: The request to a call of ExportSBOM type ExportSBOMRequest struct { } // ExportSBOMResponse: The response from a call to ExportSBOM type ExportSBOMResponse struct { // DiscoveryOccurrenceId: The name of the discovery occurrence in the form // "projects/{project_id}/occurrences/{OCCURRENCE_ID} It can be used to track // the progression of the SBOM export. DiscoveryOccurrenceId string `json:"discoveryOccurrenceId,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "DiscoveryOccurrenceId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DiscoveryOccurrenceId") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ExportSBOMResponse) MarshalJSON() ([]byte, error) { type NoMethod ExportSBOMResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Expr: Represents a textual expression in the Common Expression Language // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics // of CEL are documented at https://github.com/google/cel-spec. Example // (Comparison): title: "Summary size limit" description: "Determines if a // summary is less than 100 chars" expression: "document.summary.size() < 100" // Example (Equality): title: "Requestor is owner" description: "Determines if // requestor is the document owner" expression: "document.owner == // request.auth.claims.email" Example (Logic): title: "Public documents" // description: "Determine whether the document should be publicly visible" // expression: "document.type != 'private' && document.type != 'internal'" // Example (Data Manipulation): title: "Notification string" description: // "Create a notification string with a timestamp." expression: "'New message // received at ' + string(document.create_time)" The exact variables and // functions that may be referenced within an expression are determined by the // service that evaluates it. See the service documentation for additional // information. type Expr struct { // Description: Optional. Description of the expression. This is a longer text // which describes the expression, e.g. when hovered over it in a UI. Description string `json:"description,omitempty"` // Expression: Textual representation of an expression in Common Expression // Language syntax. Expression string `json:"expression,omitempty"` // Location: Optional. String indicating the location of the expression for // error reporting, e.g. a file name and a position in the file. Location string `json:"location,omitempty"` // Title: Optional. Title for the expression, i.e. a short string describing // its purpose. This can be used e.g. in UIs which allow to enter the // expression. Title string `json:"title,omitempty"` // ForceSendFields is a list of field names (e.g. "Description") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Description") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Expr) MarshalJSON() ([]byte, error) { type NoMethod Expr return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ExternalRef: An External Reference allows a Package to reference an external // source of additional information, metadata, enumerations, asset identifiers, // or downloadable content believed to be relevant to the Package type ExternalRef struct { // Category: An External Reference allows a Package to reference an external // source of additional information, metadata, enumerations, asset identifiers, // or downloadable content believed to be relevant to the Package // // Possible values: // "CATEGORY_UNSPECIFIED" - Unspecified // "SECURITY" - Security (e.g. cpe22Type, cpe23Type) // "PACKAGE_MANAGER" - Package Manager (e.g. maven-central, npm, nuget, // bower, purl) // "PERSISTENT_ID" - Persistent-Id (e.g. swh) // "OTHER" - Other Category string `json:"category,omitempty"` // Comment: Human-readable information about the purpose and target of the // reference Comment string `json:"comment,omitempty"` // Locator: The unique string with no spaces necessary to access the // package-specific information, metadata, or content within the target // location Locator string `json:"locator,omitempty"` // Type: Type of category (e.g. 'npm' for the PACKAGE_MANAGER category) Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Category") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Category") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ExternalRef) MarshalJSON() ([]byte, error) { type NoMethod ExternalRef return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // FileHashes: Container message for hashes of byte content of files, used in // source messages to verify integrity of source input to the build. type FileHashes struct { // FileHash: Required. Collection of file hashes. FileHash []*Hash `json:"fileHash,omitempty"` // ForceSendFields is a list of field names (e.g. "FileHash") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FileHash") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *FileHashes) MarshalJSON() ([]byte, error) { type NoMethod FileHashes return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // FileNote: FileNote represents an SPDX File Information section: // https://spdx.github.io/spdx-spec/4-file-information/ type FileNote struct { // Checksum: Provide a unique identifier to match analysis information on each // specific file in a package Checksum []string `json:"checksum,omitempty"` // FileType: This field provides information about the type of file identified // // Possible values: // "FILE_TYPE_UNSPECIFIED" - Unspecified // "SOURCE" - The file is human readable source code (.c, .html, etc.) // "BINARY" - The file is a compiled object, target image or binary // executable (.o, .a, etc.) // "ARCHIVE" - The file represents an archive (.tar, .jar, etc.) // "APPLICATION" - The file is associated with a specific application type // (MIME type of application/*) // "AUDIO" - The file is associated with an audio file (MIME type of audio/* // , e.g. .mp3) // "IMAGE" - The file is associated with an picture image file (MIME type of // image/*, e.g., .jpg, .gif) // "TEXT" - The file is human readable text file (MIME type of text/*) // "VIDEO" - The file is associated with a video file type (MIME type of // video/*) // "DOCUMENTATION" - The file serves as documentation // "SPDX" - The file is an SPDX document // "OTHER" - The file doesn't fit into the above categories (generated // artifacts, data files, etc.) FileType string `json:"fileType,omitempty"` // Title: Identify the full path and filename that corresponds to the file // information in this section Title string `json:"title,omitempty"` // ForceSendFields is a list of field names (e.g. "Checksum") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Checksum") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *FileNote) MarshalJSON() ([]byte, error) { type NoMethod FileNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // FileOccurrence: FileOccurrence represents an SPDX File Information section: // https://spdx.github.io/spdx-spec/4-file-information/ type FileOccurrence struct { // Attributions: This field provides a place for the SPDX data creator to // record, at the file level, acknowledgements that may be needed to be // communicated in some contexts Attributions []string `json:"attributions,omitempty"` // Comment: This field provides a place for the SPDX file creator to record any // general comments about the file Comment string `json:"comment,omitempty"` // Contributors: This field provides a place for the SPDX file creator to // record file contributors Contributors []string `json:"contributors,omitempty"` // Copyright: Identify the copyright holder of the file, as well as any dates // present Copyright string `json:"copyright,omitempty"` // FilesLicenseInfo: This field contains the license information actually found // in the file, if any FilesLicenseInfo []string `json:"filesLicenseInfo,omitempty"` // Id: Uniquely identify any element in an SPDX document which may be // referenced by other elements Id string `json:"id,omitempty"` // LicenseConcluded: This field contains the license the SPDX file creator has // concluded as governing the file or alternative values if the governing // license cannot be determined LicenseConcluded *License `json:"licenseConcluded,omitempty"` // Notice: This field provides a place for the SPDX file creator to record // license notices or other such related notices found in the file Notice string `json:"notice,omitempty"` // ForceSendFields is a list of field names (e.g. "Attributions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Attributions") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *FileOccurrence) MarshalJSON() ([]byte, error) { type NoMethod FileOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Fingerprint: A set of properties that uniquely identify a given Docker // image. type Fingerprint struct { // V1Name: Required. The layer ID of the final layer in the Docker image's v1 // representation. V1Name string `json:"v1Name,omitempty"` // V2Blob: Required. The ordered list of v2 blobs that represent a given image. V2Blob []string `json:"v2Blob,omitempty"` // V2Name: Output only. The name of the image's v2 blobs computed via: [bottom] // := v2_blobbottom := sha256(v2_blob[N] + " " + v2_name[N+1]) Only the name of // the final blob is kept. V2Name string `json:"v2Name,omitempty"` // ForceSendFields is a list of field names (e.g. "V1Name") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "V1Name") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Fingerprint) MarshalJSON() ([]byte, error) { type NoMethod Fingerprint return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // FixableTotalByDigest: Per resource and severity counts of fixable and total // vulnerabilities. type FixableTotalByDigest struct { // FixableCount: The number of fixable vulnerabilities associated with this // resource. FixableCount int64 `json:"fixableCount,omitempty,string"` // Resource: The affected resource. Resource *Resource `json:"resource,omitempty"` // Severity: The severity for this count. SEVERITY_UNSPECIFIED indicates total // across all severities. // // Possible values: // "SEVERITY_UNSPECIFIED" - Unknown. // "MINIMAL" - Minimal severity. // "LOW" - Low severity. // "MEDIUM" - Medium severity. // "HIGH" - High severity. // "CRITICAL" - Critical severity. Severity string `json:"severity,omitempty"` // TotalCount: The total number of vulnerabilities associated with this // resource. TotalCount int64 `json:"totalCount,omitempty,string"` // ForceSendFields is a list of field names (e.g. "FixableCount") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "FixableCount") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *FixableTotalByDigest) MarshalJSON() ([]byte, error) { type NoMethod FixableTotalByDigest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GeneratePackagesSummaryRequest: GeneratePackagesSummaryRequest is the // request body for the GeneratePackagesSummary API method. It just takes a // single name argument, referring to the resource. type GeneratePackagesSummaryRequest struct { } // GenericSignedAttestation: An attestation wrapper that uses the Grafeas // `Signature` message. This attestation must define the `serialized_payload` // that the `signatures` verify and any metadata necessary to interpret that // plaintext. The signatures should always be over the `serialized_payload` // bytestring. type GenericSignedAttestation struct { // ContentType: Type (for example schema) of the attestation payload that was // signed. The verifier must ensure that the provided type is one that the // verifier supports, and that the attestation payload is a valid instantiation // of that type (for example by validating a JSON schema). // // Possible values: // "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set. // "SIMPLE_SIGNING_JSON" - Atomic format attestation signature. See // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276c3e0f64e77723e7/docs/atomic-signature.md // The payload extracted in `plaintext` is a JSON blob conforming to the linked // schema. ContentType string `json:"contentType,omitempty"` // SerializedPayload: The serialized payload that is verified by one or more // `signatures`. The encoding and semantic meaning of this payload must match // what is set in `content_type`. SerializedPayload string `json:"serializedPayload,omitempty"` // Signatures: One or more signatures over `serialized_payload`. Verifier // implementations should consider this attestation message verified if at // least one `signature` verifies `serialized_payload`. See `Signature` in // common.proto for more details on signature structure and verification. Signatures []*Signature `json:"signatures,omitempty"` // ForceSendFields is a list of field names (e.g. "ContentType") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ContentType") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GenericSignedAttestation) MarshalJSON() ([]byte, error) { type NoMethod GenericSignedAttestation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GerritSourceContext: A SourceContext referring to a Gerrit project. type GerritSourceContext struct { // AliasContext: An alias, which may be a branch or tag. AliasContext *AliasContext `json:"aliasContext,omitempty"` // GerritProject: The full project name within the host. Projects may be // nested, so "project/subproject" is a valid project name. The "repo name" is // the hostURI/project. GerritProject string `json:"gerritProject,omitempty"` // HostUri: The URI of a running Gerrit instance. HostUri string `json:"hostUri,omitempty"` // RevisionId: A revision (commit) ID. RevisionId string `json:"revisionId,omitempty"` // ForceSendFields is a list of field names (e.g. "AliasContext") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AliasContext") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GerritSourceContext) MarshalJSON() ([]byte, error) { type NoMethod GerritSourceContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GetIamPolicyRequest: Request message for `GetIamPolicy` method. type GetIamPolicyRequest struct { // Options: OPTIONAL: A `GetPolicyOptions` object for specifying options to // `GetIamPolicy`. Options *GetPolicyOptions `json:"options,omitempty"` // ForceSendFields is a list of field names (e.g. "Options") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Options") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GetIamPolicyRequest) MarshalJSON() ([]byte, error) { type NoMethod GetIamPolicyRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GetPolicyOptions: Encapsulates settings provided to GetIamPolicy. type GetPolicyOptions struct { // RequestedPolicyVersion: Optional. The maximum policy version that will be // used to format the policy. Valid values are 0, 1, and 3. Requests specifying // an invalid value will be rejected. Requests for policies with any // conditional role bindings must specify version 3. Policies with no // conditional role bindings may specify any valid value or leave the field // unset. The policy in the response might use the policy version that you // specified, or it might use a lower policy version. For example, if you // specify version 3, but the policy has no conditional role bindings, the // response uses version 1. To learn which resources support conditions in // their IAM policies, see the IAM documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). RequestedPolicyVersion int64 `json:"requestedPolicyVersion,omitempty"` // ForceSendFields is a list of field names (e.g. "RequestedPolicyVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "RequestedPolicyVersion") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GetPolicyOptions) MarshalJSON() ([]byte, error) { type NoMethod GetPolicyOptions return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GitSourceContext: A GitSourceContext denotes a particular revision in a // third party Git repository (e.g., GitHub). type GitSourceContext struct { // RevisionId: Git commit hash. RevisionId string `json:"revisionId,omitempty"` // Url: Git repository URL. Url string `json:"url,omitempty"` // ForceSendFields is a list of field names (e.g. "RevisionId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "RevisionId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GitSourceContext) MarshalJSON() ([]byte, error) { type NoMethod GitSourceContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata: Metadata for all // operations used and required for all operations that created by Container // Analysis Providers type GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata struct { // CreateTime: Output only. The time this operation was created. CreateTime string `json:"createTime,omitempty"` // EndTime: Output only. The time that this operation was marked completed or // failed. EndTime string `json:"endTime,omitempty"` // ForceSendFields is a list of field names (e.g. "CreateTime") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CreateTime") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1BuildDetails: Details of a build occurrence. type GrafeasV1beta1BuildDetails struct { InTotoSlsaProvenanceV1 *InTotoSlsaProvenanceV1 `json:"inTotoSlsaProvenanceV1,omitempty"` // Provenance: Required. The actual provenance for the build. Provenance *BuildProvenance `json:"provenance,omitempty"` // ProvenanceBytes: Serialized JSON representation of the provenance, used in // generating the build signature in the corresponding build note. After // verifying the signature, `provenance_bytes` can be unmarshalled and compared // to the provenance to confirm that it is unchanged. A base64-encoded string // representation of the provenance bytes is used for the signature in order to // interoperate with openssl which expects this format for signature // verification. The serialized form is captured both to avoid ambiguity in how // the provenance is marshalled to json as well to prevent incompatibilities // with future changes. ProvenanceBytes string `json:"provenanceBytes,omitempty"` // ForceSendFields is a list of field names (e.g. "InTotoSlsaProvenanceV1") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "InTotoSlsaProvenanceV1") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1BuildDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1BuildDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1DeploymentDetails: Details of a deployment occurrence. type GrafeasV1beta1DeploymentDetails struct { // Deployment: Required. Deployment history for the resource. Deployment *Deployment `json:"deployment,omitempty"` // ForceSendFields is a list of field names (e.g. "Deployment") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Deployment") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1DeploymentDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1DeploymentDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1DiscoveryDetails: Details of a discovery occurrence. type GrafeasV1beta1DiscoveryDetails struct { // Discovered: Required. Analysis status for the discovered resource. Discovered *Discovered `json:"discovered,omitempty"` // ForceSendFields is a list of field names (e.g. "Discovered") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Discovered") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1DiscoveryDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1DiscoveryDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1ImageDetails: Details of an image occurrence. type GrafeasV1beta1ImageDetails struct { // DerivedImage: Required. Immutable. The child image derived from the base // image. DerivedImage *Derived `json:"derivedImage,omitempty"` // ForceSendFields is a list of field names (e.g. "DerivedImage") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DerivedImage") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1ImageDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1ImageDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type GrafeasV1beta1IntotoArtifact struct { Hashes *ArtifactHashes `json:"hashes,omitempty"` ResourceUri string `json:"resourceUri,omitempty"` // ForceSendFields is a list of field names (e.g. "Hashes") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Hashes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1IntotoArtifact) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1IntotoArtifact return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1IntotoDetails: This corresponds to a signed in-toto link - it // is made up of one or more signatures and the in-toto link itself. This is // used for occurrences of a Grafeas in-toto note. type GrafeasV1beta1IntotoDetails struct { Signatures []*GrafeasV1beta1IntotoSignature `json:"signatures,omitempty"` Signed *Link `json:"signed,omitempty"` // ForceSendFields is a list of field names (e.g. "Signatures") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Signatures") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1IntotoDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1IntotoDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1IntotoSignature: A signature object consists of the KeyID used // and the signature itself. type GrafeasV1beta1IntotoSignature struct { Keyid string `json:"keyid,omitempty"` Sig string `json:"sig,omitempty"` // ForceSendFields is a list of field names (e.g. "Keyid") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Keyid") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1IntotoSignature) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1IntotoSignature return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1PackageDetails: Details of a package occurrence. type GrafeasV1beta1PackageDetails struct { // Installation: Required. Where the package was installed. Installation *Installation `json:"installation,omitempty"` // ForceSendFields is a list of field names (e.g. "Installation") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Installation") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1PackageDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1PackageDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1beta1VulnerabilityDetails: Details of a vulnerability Occurrence. type GrafeasV1beta1VulnerabilityDetails struct { // CvssScore: Output only. The CVSS score of this vulnerability. CVSS score is // on a scale of 0-10 where 0 indicates low severity and 10 indicates high // severity. CvssScore float64 `json:"cvssScore,omitempty"` // CvssV2: The cvss v2 score for the vulnerability. CvssV2 *CVSS `json:"cvssV2,omitempty"` // CvssV3: The cvss v3 score for the vulnerability. CvssV3 *CVSS `json:"cvssV3,omitempty"` // CvssVersion: Output only. CVSS version used to populate cvss_score and // severity. // // Possible values: // "CVSS_VERSION_UNSPECIFIED" // "CVSS_VERSION_2" // "CVSS_VERSION_3" CvssVersion string `json:"cvssVersion,omitempty"` // EffectiveSeverity: The distro assigned severity for this vulnerability when // it is available, and note provider assigned severity when distro has not yet // assigned a severity for this vulnerability. When there are multiple // PackageIssues for this vulnerability, they can have different effective // severities because some might be provided by the distro while others are // provided by the language ecosystem for a language pack. For this reason, it // is advised to use the effective severity on the PackageIssue level. In the // case where multiple PackageIssues have differing effective severities, this // field should be the highest severity for any of the PackageIssues. // // Possible values: // "SEVERITY_UNSPECIFIED" - Unknown. // "MINIMAL" - Minimal severity. // "LOW" - Low severity. // "MEDIUM" - Medium severity. // "HIGH" - High severity. // "CRITICAL" - Critical severity. EffectiveSeverity string `json:"effectiveSeverity,omitempty"` // ExtraDetails: Occurrence-specific extra details about the vulnerability. ExtraDetails string `json:"extraDetails,omitempty"` // LongDescription: Output only. A detailed description of this vulnerability. LongDescription string `json:"longDescription,omitempty"` // PackageIssue: Required. The set of affected locations and their fixes (if // available) within the associated resource. PackageIssue []*PackageIssue `json:"packageIssue,omitempty"` // RelatedUrls: Output only. URLs related to this vulnerability. RelatedUrls []*RelatedUrl `json:"relatedUrls,omitempty"` // Severity: Output only. The note provider assigned Severity of the // vulnerability. // // Possible values: // "SEVERITY_UNSPECIFIED" - Unknown. // "MINIMAL" - Minimal severity. // "LOW" - Low severity. // "MEDIUM" - Medium severity. // "HIGH" - High severity. // "CRITICAL" - Critical severity. Severity string `json:"severity,omitempty"` // ShortDescription: Output only. A one sentence description of this // vulnerability. ShortDescription string `json:"shortDescription,omitempty"` // Type: The type of package; whether native or non native(ruby gems, node.js // packages etc) Type string `json:"type,omitempty"` VexAssessment *VexAssessment `json:"vexAssessment,omitempty"` // ForceSendFields is a list of field names (e.g. "CvssScore") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CvssScore") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GrafeasV1beta1VulnerabilityDetails) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1beta1VulnerabilityDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *GrafeasV1beta1VulnerabilityDetails) UnmarshalJSON(data []byte) error { type NoMethod GrafeasV1beta1VulnerabilityDetails var s1 struct { CvssScore gensupport.JSONFloat64 `json:"cvssScore"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.CvssScore = float64(s1.CvssScore) return nil } // Hash: Container message for hash values. type Hash struct { // Type: Required. The type of hash that was performed. // // Possible values: // "HASH_TYPE_UNSPECIFIED" - Unknown. // "SHA256" - A SHA-256 hash. // "GO_MODULE_H1" - Dirhash of a Go module's source code which is then // hex-encoded. See b/244466565 and // https://github.com/in-toto/attestation/pull/108. // "SHA512" - A SHA-512 hash. Type string `json:"type,omitempty"` // Value: Required. The hash value. Value string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Type") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Type") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Hash) MarshalJSON() ([]byte, error) { type NoMethod Hash return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Hint: This submessage provides human-readable hints about the purpose of the // authority. Because the name of a note acts as its resource reference, it is // important to disambiguate the canonical name of the Note (which might be a // UUID for security purposes) from "readable" names more suitable for debug // output. Note that these hints should not be used to look up authorities in // security sensitive contexts, such as when looking up attestations to verify. type Hint struct { // HumanReadableName: Required. The human readable name of this attestation // authority, for example "qa". HumanReadableName string `json:"humanReadableName,omitempty"` // ForceSendFields is a list of field names (e.g. "HumanReadableName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "HumanReadableName") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Hint) MarshalJSON() ([]byte, error) { type NoMethod Hint return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // InToto: This contains the fields corresponding to the definition of a // software supply chain step in an in-toto layout. This information goes into // a Grafeas note. type InToto struct { // ExpectedCommand: This field contains the expected command used to perform // the step. ExpectedCommand []string `json:"expectedCommand,omitempty"` // ExpectedMaterials: The following fields contain in-toto artifact rules // identifying the artifacts that enter this supply chain step, and exit the // supply chain step, i.e. materials and products of the step. ExpectedMaterials []*ArtifactRule `json:"expectedMaterials,omitempty"` ExpectedProducts []*ArtifactRule `json:"expectedProducts,omitempty"` // SigningKeys: This field contains the public keys that can be used to verify // the signatures on the step metadata. SigningKeys []*SigningKey `json:"signingKeys,omitempty"` // StepName: This field identifies the name of the step in the supply chain. StepName string `json:"stepName,omitempty"` // Threshold: This field contains a value that indicates the minimum number of // keys that need to be used to sign the step's in-toto link. Threshold int64 `json:"threshold,omitempty,string"` // ForceSendFields is a list of field names (e.g. "ExpectedCommand") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ExpectedCommand") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *InToto) MarshalJSON() ([]byte, error) { type NoMethod InToto return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type InTotoSlsaProvenanceV1 struct { // Type: InToto spec defined at // https://github.com/in-toto/attestation/tree/main/spec#statement Type string `json:"_type,omitempty"` Predicate *SlsaProvenanceV1 `json:"predicate,omitempty"` PredicateType string `json:"predicateType,omitempty"` Subject []*Subject `json:"subject,omitempty"` // ForceSendFields is a list of field names (e.g. "Type") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Type") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *InTotoSlsaProvenanceV1) MarshalJSON() ([]byte, error) { type NoMethod InTotoSlsaProvenanceV1 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Installation: This represents how a particular software package may be // installed on a system. type Installation struct { // Architecture: Output only. The CPU architecture for which packages in this // distribution channel were built. Architecture will be blank for language // packages. // // Possible values: // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. // "X86" - X86 architecture. // "X64" - X64 architecture. Architecture string `json:"architecture,omitempty"` // CpeUri: Output only. The cpe_uri in CPE format // (https://cpe.mitre.org/specification/) denoting the package manager version // distributing a package. The cpe_uri will be blank for language packages. CpeUri string `json:"cpeUri,omitempty"` // License: Licenses that have been declared by the authors of the package. License *License `json:"license,omitempty"` // Location: All of the places within the filesystem versions of this package // have been found. Location []*Location `json:"location,omitempty"` // Name: Required. Output only. The name of the installed package. Name string `json:"name,omitempty"` // PackageType: Output only. The type of package; whether native or non native // (e.g., ruby gems, node.js packages, etc.). PackageType string `json:"packageType,omitempty"` // Version: Output only. The version of the package. Version *Version `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Architecture") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Architecture") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Installation) MarshalJSON() ([]byte, error) { type NoMethod Installation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Justification: Justification provides the justification when the state of // the assessment if NOT_AFFECTED. type Justification struct { // Details: Additional details on why this justification was chosen. Details string `json:"details,omitempty"` // JustificationType: The justification type for this vulnerability. // // Possible values: // "JUSTIFICATION_TYPE_UNSPECIFIED" - JUSTIFICATION_TYPE_UNSPECIFIED. // "COMPONENT_NOT_PRESENT" - The vulnerable component is not present in the // product. // "VULNERABLE_CODE_NOT_PRESENT" - The vulnerable code is not present. // Typically this case occurs when source code is configured or built in a way // that excludes the vulnerable code. // "VULNERABLE_CODE_NOT_IN_EXECUTE_PATH" - The vulnerable code can not be // executed. Typically this case occurs when the product includes the // vulnerable code but does not call or use the vulnerable code. // "VULNERABLE_CODE_CANNOT_BE_CONTROLLED_BY_ADVERSARY" - The vulnerable code // cannot be controlled by an attacker to exploit the vulnerability. // "INLINE_MITIGATIONS_ALREADY_EXIST" - The product includes built-in // protections or features that prevent exploitation of the vulnerability. // These built-in protections cannot be subverted by the attacker and cannot be // configured or disabled by the user. These mitigations completely prevent // exploitation based on known attack vectors. JustificationType string `json:"justificationType,omitempty"` // ForceSendFields is a list of field names (e.g. "Details") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Details") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Justification) MarshalJSON() ([]byte, error) { type NoMethod Justification return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type KnowledgeBase struct { // Name: The KB name (generally of the form KB[0-9]+ i.e. KB123456). Name string `json:"name,omitempty"` // Url: A link to the KB in the Windows update catalog - // https://www.catalog.update.microsoft.com/ Url string `json:"url,omitempty"` // ForceSendFields is a list of field names (e.g. "Name") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Name") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *KnowledgeBase) MarshalJSON() ([]byte, error) { type NoMethod KnowledgeBase return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Layer: Layer holds metadata specific to a layer of a Docker image. type Layer struct { // Arguments: The recovered arguments to the Dockerfile directive. Arguments string `json:"arguments,omitempty"` // Directive: Required. The recovered Dockerfile directive used to construct // this layer. // // Possible values: // "DIRECTIVE_UNSPECIFIED" - Default value for unsupported/missing directive. // "MAINTAINER" - https://docs.docker.com/engine/reference/builder/ // "RUN" - https://docs.docker.com/engine/reference/builder/ // "CMD" - https://docs.docker.com/engine/reference/builder/ // "LABEL" - https://docs.docker.com/engine/reference/builder/ // "EXPOSE" - https://docs.docker.com/engine/reference/builder/ // "ENV" - https://docs.docker.com/engine/reference/builder/ // "ADD" - https://docs.docker.com/engine/reference/builder/ // "COPY" - https://docs.docker.com/engine/reference/builder/ // "ENTRYPOINT" - https://docs.docker.com/engine/reference/builder/ // "VOLUME" - https://docs.docker.com/engine/reference/builder/ // "USER" - https://docs.docker.com/engine/reference/builder/ // "WORKDIR" - https://docs.docker.com/engine/reference/builder/ // "ARG" - https://docs.docker.com/engine/reference/builder/ // "ONBUILD" - https://docs.docker.com/engine/reference/builder/ // "STOPSIGNAL" - https://docs.docker.com/engine/reference/builder/ // "HEALTHCHECK" - https://docs.docker.com/engine/reference/builder/ // "SHELL" - https://docs.docker.com/engine/reference/builder/ Directive string `json:"directive,omitempty"` // ForceSendFields is a list of field names (e.g. "Arguments") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Arguments") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Layer) MarshalJSON() ([]byte, error) { type NoMethod Layer return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // License: License information. type License struct { // Comments: Comments Comments string `json:"comments,omitempty"` // Expression: Often a single license can be used to represent the licensing // terms. Sometimes it is necessary to include a choice of one or more licenses // or some combination of license identifiers. Examples: "LGPL-2.1-only OR // MIT", "LGPL-2.1-only AND MIT", "GPL-2.0-or-later WITH Bison-exception-2.2". Expression string `json:"expression,omitempty"` // ForceSendFields is a list of field names (e.g. "Comments") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Comments") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *License) MarshalJSON() ([]byte, error) { type NoMethod License return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // LicensesSummary: Per license count type LicensesSummary struct { // Count: The number of fixable vulnerabilities associated with this resource. Count int64 `json:"count,omitempty,string"` // License: The license of the package. Note that the format of this value is // not guaranteed. It may be nil, an empty string, a boolean value (A | B), a // differently formed boolean value (A OR B), etc... License string `json:"license,omitempty"` // ForceSendFields is a list of field names (e.g. "Count") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Count") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *LicensesSummary) MarshalJSON() ([]byte, error) { type NoMethod LicensesSummary return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Link: This corresponds to an in-toto link. type Link struct { // Byproducts: ByProducts are data generated as part of a software supply chain // step, but are not the actual result of the step. Byproducts *ByProducts `json:"byproducts,omitempty"` // Command: This field contains the full command executed for the step. This // can also be empty if links are generated for operations that aren't directly // mapped to a specific command. Each term in the command is an independent // string in the list. An example of a command in the in-toto metadata field // is: "command": ["git", "clone", // "https://github.com/in-toto/demo-project.git"] Command []string `json:"command,omitempty"` // Environment: This is a field that can be used to capture information about // the environment. It is suggested for this field to contain information that // details environment variables, filesystem information, and the present // working directory. The recommended structure of this field is: // "environment": { "custom_values": { "variables": "", "filesystem": "", // "workdir": "", "": "..." } } Environment *Environment `json:"environment,omitempty"` // Materials: Materials are the supply chain artifacts that go into the step // and are used for the operation performed. The key of the map is the path of // the artifact and the structure contains the recorded hash information. An // example is: "materials": [ { "resource_uri": "foo/bar", "hashes": { // "sha256": "ebebf...", : } } ] Materials []*GrafeasV1beta1IntotoArtifact `json:"materials,omitempty"` // Products: Products are the supply chain artifacts generated as a result of // the step. The structure is identical to that of materials. Products []*GrafeasV1beta1IntotoArtifact `json:"products,omitempty"` // ForceSendFields is a list of field names (e.g. "Byproducts") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Byproducts") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Link) MarshalJSON() ([]byte, error) { type NoMethod Link return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ListNoteOccurrencesResponse: Response for listing occurrences for a note. type ListNoteOccurrencesResponse struct { // NextPageToken: Token to provide to skip to a particular spot in the list. NextPageToken string `json:"nextPageToken,omitempty"` // Occurrences: The occurrences attached to the specified note. Occurrences []*Occurrence `json:"occurrences,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "NextPageToken") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "NextPageToken") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListNoteOccurrencesResponse) MarshalJSON() ([]byte, error) { type NoMethod ListNoteOccurrencesResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ListNotesResponse: Response for listing notes. type ListNotesResponse struct { // NextPageToken: The next pagination token in the list response. It should be // used as `page_token` for the following request. An empty value means no more // results. NextPageToken string `json:"nextPageToken,omitempty"` // Notes: The notes requested. Notes []*Note `json:"notes,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "NextPageToken") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "NextPageToken") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListNotesResponse) MarshalJSON() ([]byte, error) { type NoMethod ListNotesResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ListOccurrencesResponse: Response for listing occurrences. type ListOccurrencesResponse struct { // NextPageToken: The next pagination token in the list response. It should be // used as `page_token` for the following request. An empty value means no more // results. NextPageToken string `json:"nextPageToken,omitempty"` // Occurrences: The occurrences requested. Occurrences []*Occurrence `json:"occurrences,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "NextPageToken") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "NextPageToken") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListOccurrencesResponse) MarshalJSON() ([]byte, error) { type NoMethod ListOccurrencesResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Location: An occurrence of a particular package installation found within a // system's filesystem. E.g., glibc was found in `/var/lib/dpkg/status`. type Location struct { // CpeUri: Deprecated. The CPE URI in CPE format // (https://cpe.mitre.org/specification/) denoting the package manager version // distributing a package. CpeUri string `json:"cpeUri,omitempty"` // Path: The path from which we gathered that this package/version is // installed. Path string `json:"path,omitempty"` // Version: Deprecated. The version installed at this location. Version *Version `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CpeUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Location) MarshalJSON() ([]byte, error) { type NoMethod Location return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Note: A type of analysis that can be done for a resource. type Note struct { // AttestationAuthority: A note describing an attestation role. AttestationAuthority *Authority `json:"attestationAuthority,omitempty"` // BaseImage: A note describing a base image. BaseImage *Basis `json:"baseImage,omitempty"` // Build: A note describing build provenance for a verifiable build. Build *Build `json:"build,omitempty"` // CreateTime: Output only. The time this note was created. This field can be // used as a filter in list requests. CreateTime string `json:"createTime,omitempty"` // Deployable: A note describing something that can be deployed. Deployable *Deployable `json:"deployable,omitempty"` // Discovery: A note describing the initial analysis of a resource. Discovery *Discovery `json:"discovery,omitempty"` // ExpirationTime: Time of expiration for this note. Empty if note does not // expire. ExpirationTime string `json:"expirationTime,omitempty"` // Intoto: A note describing an in-toto link. Intoto *InToto `json:"intoto,omitempty"` // Kind: Output only. The type of analysis. This field can be used as a filter // in list requests. // // Possible values: // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. // "VULNERABILITY" - The note and occurrence represent a package // vulnerability. // "BUILD" - The note and occurrence assert build provenance. // "IMAGE" - This represents an image basis relationship. // "PACKAGE" - This represents a package installed via a package manager. // "DEPLOYMENT" - The note and occurrence track deployment events. // "DISCOVERY" - The note and occurrence track the initial discovery status // of a resource. // "ATTESTATION" - This represents a logical "role" that can attest to // artifacts. // "INTOTO" - This represents an in-toto link. // "SBOM" - This represents a software bill of materials. // "SPDX_PACKAGE" - This represents an SPDX Package. // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability Assessment. // "SBOM_REFERENCE" - This represents an SBOM Reference. Kind string `json:"kind,omitempty"` // LongDescription: A detailed description of this note. LongDescription string `json:"longDescription,omitempty"` // Name: Output only. The name of the note in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. Name string `json:"name,omitempty"` // Package: A note describing a package hosted by various package managers. Package *Package `json:"package,omitempty"` // RelatedNoteNames: Other notes related to this note. RelatedNoteNames []string `json:"relatedNoteNames,omitempty"` // RelatedUrl: URLs associated with this note. RelatedUrl []*RelatedUrl `json:"relatedUrl,omitempty"` // Sbom: A note describing a software bill of materials. Sbom *DocumentNote `json:"sbom,omitempty"` // SbomReference: A note describing an SBOM reference. SbomReference *SBOMReferenceNote `json:"sbomReference,omitempty"` // ShortDescription: A one sentence description of this note. ShortDescription string `json:"shortDescription,omitempty"` // SpdxFile: A note describing an SPDX File. SpdxFile *FileNote `json:"spdxFile,omitempty"` // SpdxPackage: A note describing an SPDX Package. SpdxPackage *PackageInfoNote `json:"spdxPackage,omitempty"` // SpdxRelationship: A note describing an SPDX File. SpdxRelationship *RelationshipNote `json:"spdxRelationship,omitempty"` // UpdateTime: Output only. The time this note was last updated. This field can // be used as a filter in list requests. UpdateTime string `json:"updateTime,omitempty"` // Vulnerability: A note describing a package vulnerability. Vulnerability *Vulnerability `json:"vulnerability,omitempty"` // VulnerabilityAssessment: A note describing a vulnerability assessment. VulnerabilityAssessment *VulnerabilityAssessmentNote `json:"vulnerabilityAssessment,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "AttestationAuthority") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AttestationAuthority") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Note) MarshalJSON() ([]byte, error) { type NoMethod Note return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Occurrence: An instance of an analysis type that has been found on a // resource. type Occurrence struct { // Attestation: Describes an attestation of an artifact. Attestation *Details `json:"attestation,omitempty"` // Build: Describes a verifiable build. Build *GrafeasV1beta1BuildDetails `json:"build,omitempty"` // CreateTime: Output only. The time this occurrence was created. CreateTime string `json:"createTime,omitempty"` // Deployment: Describes the deployment of an artifact on a runtime. Deployment *GrafeasV1beta1DeploymentDetails `json:"deployment,omitempty"` // DerivedImage: Describes how this resource derives from the basis in the // associated note. DerivedImage *GrafeasV1beta1ImageDetails `json:"derivedImage,omitempty"` // Discovered: Describes when a resource was discovered. Discovered *GrafeasV1beta1DiscoveryDetails `json:"discovered,omitempty"` // Envelope: https://github.com/secure-systems-lab/dsse Envelope *Envelope `json:"envelope,omitempty"` // Installation: Describes the installation of a package on the linked // resource. Installation *GrafeasV1beta1PackageDetails `json:"installation,omitempty"` // Intoto: Describes a specific in-toto link. Intoto *GrafeasV1beta1IntotoDetails `json:"intoto,omitempty"` // Kind: Output only. This explicitly denotes which of the occurrence details // are specified. This field can be used as a filter in list requests. // // Possible values: // "NOTE_KIND_UNSPECIFIED" - Default value. This value is unused. // "VULNERABILITY" - The note and occurrence represent a package // vulnerability. // "BUILD" - The note and occurrence assert build provenance. // "IMAGE" - This represents an image basis relationship. // "PACKAGE" - This represents a package installed via a package manager. // "DEPLOYMENT" - The note and occurrence track deployment events. // "DISCOVERY" - The note and occurrence track the initial discovery status // of a resource. // "ATTESTATION" - This represents a logical "role" that can attest to // artifacts. // "INTOTO" - This represents an in-toto link. // "SBOM" - This represents a software bill of materials. // "SPDX_PACKAGE" - This represents an SPDX Package. // "SPDX_FILE" - This represents an SPDX File. // "SPDX_RELATIONSHIP" - This represents an SPDX Relationship. // "VULNERABILITY_ASSESSMENT" - This represents a Vulnerability Assessment. // "SBOM_REFERENCE" - This represents an SBOM Reference. Kind string `json:"kind,omitempty"` // Name: Output only. The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. Name string `json:"name,omitempty"` // NoteName: Required. Immutable. The analysis note associated with this // occurrence, in the form of `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. This // field can be used as a filter in list requests. NoteName string `json:"noteName,omitempty"` // Remediation: A description of actions that can be taken to remedy the note. Remediation string `json:"remediation,omitempty"` // Resource: Required. Immutable. The resource for which the occurrence // applies. Resource *Resource `json:"resource,omitempty"` // Sbom: Describes a specific software bill of materials document. Sbom *DocumentOccurrence `json:"sbom,omitempty"` // SbomReference: Describes a specific SBOM reference occurrences. SbomReference *SBOMReferenceOccurrence `json:"sbomReference,omitempty"` // SpdxFile: Describes a specific SPDX File. SpdxFile *FileOccurrence `json:"spdxFile,omitempty"` // SpdxPackage: Describes a specific SPDX Package. SpdxPackage *PackageInfoOccurrence `json:"spdxPackage,omitempty"` // SpdxRelationship: Describes a specific SPDX Relationship. SpdxRelationship *RelationshipOccurrence `json:"spdxRelationship,omitempty"` // UpdateTime: Output only. The time this occurrence was last updated. UpdateTime string `json:"updateTime,omitempty"` // Vulnerability: Describes a security vulnerability. Vulnerability *GrafeasV1beta1VulnerabilityDetails `json:"vulnerability,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Attestation") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Attestation") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Occurrence) MarshalJSON() ([]byte, error) { type NoMethod Occurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Package: Package represents a particular package version. type Package struct { // Architecture: The CPU architecture for which packages in this distribution // channel were built. Architecture will be blank for language packages. // // Possible values: // "ARCHITECTURE_UNSPECIFIED" - Unknown architecture. // "X86" - X86 architecture. // "X64" - X64 architecture. Architecture string `json:"architecture,omitempty"` // CpeUri: The cpe_uri in CPE format (https://cpe.mitre.org/specification/) // denoting the package manager version distributing a package. The cpe_uri // will be blank for language packages. CpeUri string `json:"cpeUri,omitempty"` // Description: The description of this package. Description string `json:"description,omitempty"` // Digest: Hash value, typically a file digest, that allows unique // identification a specific package. Digest []*Digest `json:"digest,omitempty"` // Distribution: The various channels by which a package is distributed. Distribution []*Distribution `json:"distribution,omitempty"` // License: Licenses that have been declared by the authors of the package. License *License `json:"license,omitempty"` // Maintainer: A freeform text denoting the maintainer of this package. Maintainer string `json:"maintainer,omitempty"` // Name: Required. Immutable. The name of the package. Name string `json:"name,omitempty"` // PackageType: The type of package; whether native or non native (e.g., ruby // gems, node.js packages, etc.). PackageType string `json:"packageType,omitempty"` // Url: The homepage for this package. Url string `json:"url,omitempty"` // Version: The version of the package. Version *Version `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Architecture") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Architecture") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Package) MarshalJSON() ([]byte, error) { type NoMethod Package return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // PackageInfoNote: PackageInfoNote represents an SPDX Package Information // section: https://spdx.github.io/spdx-spec/3-package-information/ type PackageInfoNote struct { // Analyzed: Indicates whether the file content of this package has been // available for or subjected to analysis when creating the SPDX document Analyzed bool `json:"analyzed,omitempty"` // Attribution: A place for the SPDX data creator to record, at the package // level, acknowledgements that may be needed to be communicated in some // contexts Attribution string `json:"attribution,omitempty"` // Checksum: Provide an independently reproducible mechanism that permits // unique identification of a specific package that correlates to the data in // this SPDX file Checksum string `json:"checksum,omitempty"` // Copyright: Identify the copyright holders of the package, as well as any // dates present Copyright string `json:"copyright,omitempty"` // DetailedDescription: A more detailed description of the package DetailedDescription string `json:"detailedDescription,omitempty"` // DownloadLocation: This section identifies the download Universal Resource // Locator (URL), or a specific location within a version control system (VCS) // for the package at the time that the SPDX file was created DownloadLocation string `json:"downloadLocation,omitempty"` // ExternalRefs: ExternalRef ExternalRefs []*ExternalRef `json:"externalRefs,omitempty"` // FilesLicenseInfo: Contain the license the SPDX file creator has concluded as // governing the This field is to contain a list of all licenses found in the // package. The relationship between licenses (i.e., conjunctive, disjunctive) // is not specified in this field – it is simply a listing of all licenses // found FilesLicenseInfo []string `json:"filesLicenseInfo,omitempty"` // HomePage: Provide a place for the SPDX file creator to record a web site // that serves as the package's home page HomePage string `json:"homePage,omitempty"` // LicenseDeclared: List the licenses that have been declared by the authors of // the package LicenseDeclared *License `json:"licenseDeclared,omitempty"` // Originator: If the package identified in the SPDX file originated from a // different person or organization than identified as Package Supplier, this // field identifies from where or whom the package originally came Originator string `json:"originator,omitempty"` // PackageType: The type of package: OS, MAVEN, GO, GO_STDLIB, etc. PackageType string `json:"packageType,omitempty"` // SummaryDescription: A short description of the package SummaryDescription string `json:"summaryDescription,omitempty"` // Supplier: Identify the actual distribution source for the package/directory // identified in the SPDX file Supplier string `json:"supplier,omitempty"` // Title: Identify the full name of the package as given by the Package // Originator Title string `json:"title,omitempty"` // VerificationCode: This field provides an independently reproducible // mechanism identifying specific contents of a package based on the actual // files (except the SPDX file itself, if it is included in the package) that // make up each package and that correlates to the data in this SPDX file VerificationCode string `json:"verificationCode,omitempty"` // Version: Identify the version of the package Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Analyzed") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Analyzed") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PackageInfoNote) MarshalJSON() ([]byte, error) { type NoMethod PackageInfoNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // PackageInfoOccurrence: PackageInfoOccurrence represents an SPDX Package // Information section: https://spdx.github.io/spdx-spec/3-package-information/ type PackageInfoOccurrence struct { // Comment: A place for the SPDX file creator to record any general comments // about the package being described Comment string `json:"comment,omitempty"` // Filename: Provide the actual file name of the package, or path of the // directory being treated as a package Filename string `json:"filename,omitempty"` // HomePage: Output only. Provide a place for the SPDX file creator to record a // web site that serves as the package's home page HomePage string `json:"homePage,omitempty"` // Id: Uniquely identify any element in an SPDX document which may be // referenced by other elements Id string `json:"id,omitempty"` // LicenseConcluded: package or alternative values, if the governing license // cannot be determined LicenseConcluded *License `json:"licenseConcluded,omitempty"` // PackageType: Output only. The type of package: OS, MAVEN, GO, GO_STDLIB, // etc. PackageType string `json:"packageType,omitempty"` // SourceInfo: Provide a place for the SPDX file creator to record any relevant // background information or additional comments about the origin of the // package SourceInfo string `json:"sourceInfo,omitempty"` // SummaryDescription: Output only. A short description of the package SummaryDescription string `json:"summaryDescription,omitempty"` // Title: Output only. Identify the full name of the package as given by the // Package Originator Title string `json:"title,omitempty"` // Version: Output only. Identify the version of the package Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Comment") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Comment") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PackageInfoOccurrence) MarshalJSON() ([]byte, error) { type NoMethod PackageInfoOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // PackageIssue: This message wraps a location affected by a vulnerability and // its associated fix (if one is available). type PackageIssue struct { // AffectedLocation: Required. The location of the vulnerability. AffectedLocation *VulnerabilityLocation `json:"affectedLocation,omitempty"` // EffectiveSeverity: Output only. The distro or language system assigned // severity for this vulnerability when that is available and note provider // assigned severity when it is not available. // // Possible values: // "SEVERITY_UNSPECIFIED" - Unknown. // "MINIMAL" - Minimal severity. // "LOW" - Low severity. // "MEDIUM" - Medium severity. // "HIGH" - High severity. // "CRITICAL" - Critical severity. EffectiveSeverity string `json:"effectiveSeverity,omitempty"` // FixedLocation: The location of the available fix for vulnerability. FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"` // PackageType: The type of package (e.g. OS, MAVEN, GO). PackageType string `json:"packageType,omitempty"` // SeverityName: Deprecated, use Details.effective_severity instead The // severity (e.g., distro assigned severity) for this vulnerability. SeverityName string `json:"severityName,omitempty"` // ForceSendFields is a list of field names (e.g. "AffectedLocation") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AffectedLocation") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PackageIssue) MarshalJSON() ([]byte, error) { type NoMethod PackageIssue return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // PackagesSummaryResponse: A summary of the packages found within the given // resource. type PackagesSummaryResponse struct { // LicensesSummary: A listing by license name of each of the licenses and their // counts. LicensesSummary []*LicensesSummary `json:"licensesSummary,omitempty"` // ResourceUrl: The unique URL of the image or the container for which this // summary applies. ResourceUrl string `json:"resourceUrl,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "LicensesSummary") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "LicensesSummary") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PackagesSummaryResponse) MarshalJSON() ([]byte, error) { type NoMethod PackagesSummaryResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // PgpSignedAttestation: An attestation wrapper with a PGP-compatible // signature. This message only supports `ATTACHED` signatures, where the // payload that is signed is included alongside the signature itself in the // same file. type PgpSignedAttestation struct { // ContentType: Type (for example schema) of the attestation payload that was // signed. The verifier must ensure that the provided type is one that the // verifier supports, and that the attestation payload is a valid instantiation // of that type (for example by validating a JSON schema). // // Possible values: // "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set. // "SIMPLE_SIGNING_JSON" - Atomic format attestation signature. See // https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276c3e0f64e77723e7/docs/atomic-signature.md // The payload extracted from `signature` is a JSON blob conforming to the // linked schema. ContentType string `json:"contentType,omitempty"` // PgpKeyId: The cryptographic fingerprint of the key used to generate the // signature, as output by, e.g. `gpg --list-keys`. This should be the version // 4, full 160-bit fingerprint, expressed as a 40 character hexadecimal string. // See https://tools.ietf.org/html/rfc4880#section-12.2 for details. // Implementations may choose to acknowledge "LONG", "SHORT", or other // abbreviated key IDs, but only the full fingerprint is guaranteed to work. In // gpg, the full fingerprint can be retrieved from the `fpr` field returned // when calling --list-keys with --with-colons. For example: ``` gpg // --with-colons --with-fingerprint --force-v4-certs \ --list-keys // attester@example.com tru::1:1513631572:0:3:1:5 pub:...... // fpr:::::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB: ``` Above, the // fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`. PgpKeyId string `json:"pgpKeyId,omitempty"` // Signature: Required. The raw content of the signature, as output by GNU // Privacy Guard (GPG) or equivalent. Since this message only supports attached // signatures, the payload that was signed must be attached. While the // signature format supported is dependent on the verification implementation, // currently only ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` // rather than `--clearsign` to gpg) are supported. Concretely, `gpg --sign // --armor --output=signature.gpg payload.json` will create the signature // content expected in this field in `signature.gpg` for the `payload.json` // attestation payload. Signature string `json:"signature,omitempty"` // ForceSendFields is a list of field names (e.g. "ContentType") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ContentType") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *PgpSignedAttestation) MarshalJSON() ([]byte, error) { type NoMethod PgpSignedAttestation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Policy: An Identity and Access Management (IAM) policy, which specifies // access controls for Google Cloud resources. A `Policy` is a collection of // `bindings`. A `binding` binds one or more `members`, or principals, to a // single `role`. Principals can be user accounts, service accounts, Google // groups, and domains (such as G Suite). A `role` is a named list of // permissions; each `role` can be an IAM predefined role or a user-created // custom role. For some types of Google Cloud resources, a `binding` can also // specify a `condition`, which is a logical expression that allows access to a // resource only if the expression evaluates to `true`. A condition can add // constraints based on attributes of the request, the resource, or both. To // learn which resources support conditions in their IAM policies, see the IAM // documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON // example:** ``` { "bindings": [ { "role": // "roles/resourcemanager.organizationAdmin", "members": [ // "user:mike@example.com", "group:admins@example.com", "domain:google.com", // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": // "roles/resourcemanager.organizationViewer", "members": [ // "user:eve@example.com" ], "condition": { "title": "expirable access", // "description": "Does not grant access after Sep 2020", "expression": // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - // members: - user:mike@example.com - group:admins@example.com - // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com // role: roles/resourcemanager.organizationAdmin - members: - // user:eve@example.com role: roles/resourcemanager.organizationViewer // condition: title: expirable access description: Does not grant access after // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, // see the IAM documentation (https://cloud.google.com/iam/docs/). type Policy struct { // Bindings: Associates a list of `members`, or principals, with a `role`. // Optionally, may specify a `condition` that determines how and when the // `bindings` are applied. Each of the `bindings` must contain at least one // principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; // up to 250 of these principals can be Google groups. Each occurrence of a // principal counts towards these limits. For example, if the `bindings` grant // 50 different roles to `user:alice@example.com`, and not to any other // principal, then you can add another 1,450 principals to the `bindings` in // the `Policy`. Bindings []*Binding `json:"bindings,omitempty"` // Etag: `etag` is used for optimistic concurrency control as a way to help // prevent simultaneous updates of a policy from overwriting each other. It is // strongly suggested that systems make use of the `etag` in the // read-modify-write cycle to perform policy updates in order to avoid race // conditions: An `etag` is returned in the response to `getIamPolicy`, and // systems are expected to put that etag in the request to `setIamPolicy` to // ensure that their change will be applied to the same version of the policy. // **Important:** If you use IAM Conditions, you must include the `etag` field // whenever you call `setIamPolicy`. If you omit this field, then IAM allows // you to overwrite a version `3` policy with a version `1` policy, and all of // the conditions in the version `3` policy are lost. Etag string `json:"etag,omitempty"` // Version: Specifies the format of the policy. Valid values are `0`, `1`, and // `3`. Requests that specify an invalid value are rejected. Any operation that // affects conditional role bindings must specify version `3`. This requirement // applies to the following operations: * Getting a policy that includes a // conditional role binding * Adding a conditional role binding to a policy * // Changing a conditional role binding in a policy * Removing any role binding, // with or without a condition, from a policy that includes conditions // **Important:** If you use IAM Conditions, you must include the `etag` field // whenever you call `setIamPolicy`. If you omit this field, then IAM allows // you to overwrite a version `3` policy with a version `1` policy, and all of // the conditions in the version `3` policy are lost. If a policy does not // include any conditions, operations on that policy may specify any valid // version or leave the field unset. To learn which resources support // conditions in their IAM policies, see the IAM documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). Version int64 `json:"version,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Bindings") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Bindings") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Policy) MarshalJSON() ([]byte, error) { type NoMethod Policy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Product: Product contains information about a product and how to uniquely // identify it. type Product struct { // GenericUri: Contains a URI which is vendor-specific. Example: The artifact // repository URL of an image. GenericUri string `json:"genericUri,omitempty"` // Id: Token that identifies a product so that it can be referred to from other // parts in the document. There is no predefined format as long as it uniquely // identifies a group in the context of the current document. Id string `json:"id,omitempty"` // Name: Name of the product. Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "GenericUri") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GenericUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Product) MarshalJSON() ([]byte, error) { type NoMethod Product return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ProjectRepoId: Selects a repo using a Google Cloud Platform project ID // (e.g., winged-cargo-31) and a repo name within that project. type ProjectRepoId struct { // ProjectId: The ID of the project. ProjectId string `json:"projectId,omitempty"` // RepoName: The name of the repo. Leave empty for the default repo. RepoName string `json:"repoName,omitempty"` // ForceSendFields is a list of field names (e.g. "ProjectId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ProjectId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ProjectRepoId) MarshalJSON() ([]byte, error) { type NoMethod ProjectRepoId return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ProvenanceBuilder struct { BuilderDependencies []*ResourceDescriptor `json:"builderDependencies,omitempty"` Id string `json:"id,omitempty"` Version map[string]string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "BuilderDependencies") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuilderDependencies") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ProvenanceBuilder) MarshalJSON() ([]byte, error) { type NoMethod ProvenanceBuilder return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Publisher: Publisher contains information about the publisher of this Note. type Publisher struct { // IssuingAuthority: Provides information about the authority of the issuing // party to release the document, in particular, the party's constituency and // responsibilities or other obligations. IssuingAuthority string `json:"issuingAuthority,omitempty"` // Name: Name of the publisher. Examples: 'Google', 'Google Cloud Platform'. Name string `json:"name,omitempty"` // PublisherNamespace: The context or namespace. Contains a URL which is under // control of the issuing party and can be used as a globally unique identifier // for that issuing party. Example: https://csaf.io PublisherNamespace string `json:"publisherNamespace,omitempty"` // ForceSendFields is a list of field names (e.g. "IssuingAuthority") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "IssuingAuthority") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Publisher) MarshalJSON() ([]byte, error) { type NoMethod Publisher return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RelatedUrl: Metadata for any related URL information. type RelatedUrl struct { // Label: Label to describe usage of the URL. Label string `json:"label,omitempty"` // Url: Specific URL associated with the resource. Url string `json:"url,omitempty"` // ForceSendFields is a list of field names (e.g. "Label") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Label") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RelatedUrl) MarshalJSON() ([]byte, error) { type NoMethod RelatedUrl return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RelationshipNote: RelationshipNote represents an SPDX Relationship section: // https://spdx.github.io/spdx-spec/7-relationships-between-SPDX-elements/ type RelationshipNote struct { // Type: The type of relationship between the source and target SPDX elements // // Possible values: // "RELATIONSHIP_TYPE_UNSPECIFIED" - Unspecified // "DESCRIBES" - Is to be used when SPDXRef-DOCUMENT describes SPDXRef-A // "DESCRIBED_BY" - Is to be used when SPDXRef-A is described by // SPDXREF-Document // "CONTAINS" - Is to be used when SPDXRef-A contains SPDXRef-B // "CONTAINED_BY" - Is to be used when SPDXRef-A is contained by SPDXRef-B // "DEPENDS_ON" - Is to be used when SPDXRef-A depends on SPDXRef-B // "DEPENDENCY_OF" - Is to be used when SPDXRef-A is dependency of SPDXRef-B // "DEPENDENCY_MANIFEST_OF" - Is to be used when SPDXRef-A is a manifest file // that lists a set of dependencies for SPDXRef-B // "BUILD_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a build dependency // of SPDXRef-B // "DEV_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a development // dependency of SPDXRef-B // "OPTIONAL_DEPENDENCY_OF" - Is to be used when SPDXRef-A is an optional // dependency of SPDXRef-B // "PROVIDED_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a to be // provided dependency of SPDXRef-B // "TEST_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a test dependency // of SPDXRef-B // "RUNTIME_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a dependency // required for the execution of SPDXRef-B // "EXAMPLE_OF" - Is to be used when SPDXRef-A is an example of SPDXRef-B // "GENERATES" - Is to be used when SPDXRef-A generates SPDXRef-B // "GENERATED_FROM" - Is to be used when SPDXRef-A was generated from // SPDXRef-B // "ANCESTOR_OF" - Is to be used when SPDXRef-A is an ancestor (same lineage // but pre-dates) SPDXRef-B // "DESCENDANT_OF" - Is to be used when SPDXRef-A is a descendant of (same // lineage but postdates) SPDXRef-B // "VARIANT_OF" - Is to be used when SPDXRef-A is a variant of (same lineage // but not clear which came first) SPDXRef-B // "DISTRIBUTION_ARTIFACT" - Is to be used when distributing SPDXRef-A // requires that SPDXRef-B also be distributed // "PATCH_FOR" - Is to be used when SPDXRef-A is a patch file for (to be // applied to) SPDXRef-B // "PATCH_APPLIED" - Is to be used when SPDXRef-A is a patch file that has // been applied to SPDXRef-B // "COPY_OF" - Is to be used when SPDXRef-A is an exact copy of SPDXRef-B // "FILE_ADDED" - Is to be used when SPDXRef-A is a file that was added to // SPDXRef-B // "FILE_DELETED" - Is to be used when SPDXRef-A is a file that was deleted // from SPDXRef-B // "FILE_MODIFIED" - Is to be used when SPDXRef-A is a file that was modified // from SPDXRef-B // "EXPANDED_FROM_ARCHIVE" - Is to be used when SPDXRef-A is expanded from // the archive SPDXRef-B // "DYNAMIC_LINK" - Is to be used when SPDXRef-A dynamically links to // SPDXRef-B // "STATIC_LINK" - Is to be used when SPDXRef-A statically links to SPDXRef-B // "DATA_FILE_OF" - Is to be used when SPDXRef-A is a data file used in // SPDXRef-B // "TEST_CASE_OF" - Is to be used when SPDXRef-A is a test case used in // testing SPDXRef-B // "BUILD_TOOL_OF" - Is to be used when SPDXRef-A is used to build SPDXRef-B // "DEV_TOOL_OF" - Is to be used when SPDXRef-A is used as a development tool // for SPDXRef-B // "TEST_OF" - Is to be used when SPDXRef-A is used for testing SPDXRef-B // "TEST_TOOL_OF" - Is to be used when SPDXRef-A is used as a test tool for // SPDXRef-B // "DOCUMENTATION_OF" - Is to be used when SPDXRef-A provides documentation // of SPDXRef-B // "OPTIONAL_COMPONENT_OF" - Is to be used when SPDXRef-A is an optional // component of SPDXRef-B // "METAFILE_OF" - Is to be used when SPDXRef-A is a metafile of SPDXRef-B // "PACKAGE_OF" - Is to be used when SPDXRef-A is used as a package as part // of SPDXRef-B // "AMENDS" - Is to be used when (current) SPDXRef-DOCUMENT amends the SPDX // information in SPDXRef-B // "PREREQUISITE_FOR" - Is to be used when SPDXRef-A is a prerequisite for // SPDXRef-B // "HAS_PREREQUISITE" - Is to be used when SPDXRef-A has as a prerequisite // SPDXRef-B // "OTHER" - Is to be used for a relationship which has not been defined in // the formal SPDX specification. A description of the relationship should be // included in the Relationship comments field Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Type") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Type") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RelationshipNote) MarshalJSON() ([]byte, error) { type NoMethod RelationshipNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RelationshipOccurrence: RelationshipOccurrence represents an SPDX // Relationship section: // https://spdx.github.io/spdx-spec/7-relationships-between-SPDX-elements/ type RelationshipOccurrence struct { // Comment: A place for the SPDX file creator to record any general comments // about the relationship Comment string `json:"comment,omitempty"` // Source: Also referred to as SPDXRef-A The source SPDX element (file, // package, etc) Source string `json:"source,omitempty"` // Target: Also referred to as SPDXRef-B The target SPDC element (file, // package, etc) In cases where there are "known unknowns", the use of the // keyword NOASSERTION can be used The keywords NONE can be used to indicate // that an SPDX element (package/file/snippet) has no other elements connected // by some relationship to it Target string `json:"target,omitempty"` // Type: Output only. The type of relationship between the source and target // SPDX elements // // Possible values: // "RELATIONSHIP_TYPE_UNSPECIFIED" - Unspecified // "DESCRIBES" - Is to be used when SPDXRef-DOCUMENT describes SPDXRef-A // "DESCRIBED_BY" - Is to be used when SPDXRef-A is described by // SPDXREF-Document // "CONTAINS" - Is to be used when SPDXRef-A contains SPDXRef-B // "CONTAINED_BY" - Is to be used when SPDXRef-A is contained by SPDXRef-B // "DEPENDS_ON" - Is to be used when SPDXRef-A depends on SPDXRef-B // "DEPENDENCY_OF" - Is to be used when SPDXRef-A is dependency of SPDXRef-B // "DEPENDENCY_MANIFEST_OF" - Is to be used when SPDXRef-A is a manifest file // that lists a set of dependencies for SPDXRef-B // "BUILD_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a build dependency // of SPDXRef-B // "DEV_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a development // dependency of SPDXRef-B // "OPTIONAL_DEPENDENCY_OF" - Is to be used when SPDXRef-A is an optional // dependency of SPDXRef-B // "PROVIDED_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a to be // provided dependency of SPDXRef-B // "TEST_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a test dependency // of SPDXRef-B // "RUNTIME_DEPENDENCY_OF" - Is to be used when SPDXRef-A is a dependency // required for the execution of SPDXRef-B // "EXAMPLE_OF" - Is to be used when SPDXRef-A is an example of SPDXRef-B // "GENERATES" - Is to be used when SPDXRef-A generates SPDXRef-B // "GENERATED_FROM" - Is to be used when SPDXRef-A was generated from // SPDXRef-B // "ANCESTOR_OF" - Is to be used when SPDXRef-A is an ancestor (same lineage // but pre-dates) SPDXRef-B // "DESCENDANT_OF" - Is to be used when SPDXRef-A is a descendant of (same // lineage but postdates) SPDXRef-B // "VARIANT_OF" - Is to be used when SPDXRef-A is a variant of (same lineage // but not clear which came first) SPDXRef-B // "DISTRIBUTION_ARTIFACT" - Is to be used when distributing SPDXRef-A // requires that SPDXRef-B also be distributed // "PATCH_FOR" - Is to be used when SPDXRef-A is a patch file for (to be // applied to) SPDXRef-B // "PATCH_APPLIED" - Is to be used when SPDXRef-A is a patch file that has // been applied to SPDXRef-B // "COPY_OF" - Is to be used when SPDXRef-A is an exact copy of SPDXRef-B // "FILE_ADDED" - Is to be used when SPDXRef-A is a file that was added to // SPDXRef-B // "FILE_DELETED" - Is to be used when SPDXRef-A is a file that was deleted // from SPDXRef-B // "FILE_MODIFIED" - Is to be used when SPDXRef-A is a file that was modified // from SPDXRef-B // "EXPANDED_FROM_ARCHIVE" - Is to be used when SPDXRef-A is expanded from // the archive SPDXRef-B // "DYNAMIC_LINK" - Is to be used when SPDXRef-A dynamically links to // SPDXRef-B // "STATIC_LINK" - Is to be used when SPDXRef-A statically links to SPDXRef-B // "DATA_FILE_OF" - Is to be used when SPDXRef-A is a data file used in // SPDXRef-B // "TEST_CASE_OF" - Is to be used when SPDXRef-A is a test case used in // testing SPDXRef-B // "BUILD_TOOL_OF" - Is to be used when SPDXRef-A is used to build SPDXRef-B // "DEV_TOOL_OF" - Is to be used when SPDXRef-A is used as a development tool // for SPDXRef-B // "TEST_OF" - Is to be used when SPDXRef-A is used for testing SPDXRef-B // "TEST_TOOL_OF" - Is to be used when SPDXRef-A is used as a test tool for // SPDXRef-B // "DOCUMENTATION_OF" - Is to be used when SPDXRef-A provides documentation // of SPDXRef-B // "OPTIONAL_COMPONENT_OF" - Is to be used when SPDXRef-A is an optional // component of SPDXRef-B // "METAFILE_OF" - Is to be used when SPDXRef-A is a metafile of SPDXRef-B // "PACKAGE_OF" - Is to be used when SPDXRef-A is used as a package as part // of SPDXRef-B // "AMENDS" - Is to be used when (current) SPDXRef-DOCUMENT amends the SPDX // information in SPDXRef-B // "PREREQUISITE_FOR" - Is to be used when SPDXRef-A is a prerequisite for // SPDXRef-B // "HAS_PREREQUISITE" - Is to be used when SPDXRef-A has as a prerequisite // SPDXRef-B // "OTHER" - Is to be used for a relationship which has not been defined in // the formal SPDX specification. A description of the relationship should be // included in the Relationship comments field Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Comment") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Comment") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RelationshipOccurrence) MarshalJSON() ([]byte, error) { type NoMethod RelationshipOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Remediation: Specifies details on how to handle (and presumably, fix) a // vulnerability. type Remediation struct { // Details: Contains a comprehensive human-readable discussion of the // remediation. Details string `json:"details,omitempty"` // RemediationType: The type of remediation that can be applied. // // Possible values: // "REMEDIATION_TYPE_UNSPECIFIED" - No remediation type specified. // "MITIGATION" - A MITIGATION is available. // "NO_FIX_PLANNED" - No fix is planned. // "NONE_AVAILABLE" - Not available. // "VENDOR_FIX" - A vendor fix is available. // "WORKAROUND" - A workaround is available. RemediationType string `json:"remediationType,omitempty"` // RemediationUri: Contains the URL where to obtain the remediation. RemediationUri *RelatedUrl `json:"remediationUri,omitempty"` // ForceSendFields is a list of field names (e.g. "Details") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Details") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Remediation) MarshalJSON() ([]byte, error) { type NoMethod Remediation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RepoId: A unique identifier for a Cloud Repo. type RepoId struct { // ProjectRepoId: A combination of a project ID and a repo name. ProjectRepoId *ProjectRepoId `json:"projectRepoId,omitempty"` // Uid: A server-assigned, globally unique identifier. Uid string `json:"uid,omitempty"` // ForceSendFields is a list of field names (e.g. "ProjectRepoId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ProjectRepoId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RepoId) MarshalJSON() ([]byte, error) { type NoMethod RepoId return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Resource: An entity that can have metadata. For example, a Docker image. type Resource struct { // ContentHash: Deprecated, do not use. Use uri instead. The hash of the // resource content. For example, the Docker digest. ContentHash *Hash `json:"contentHash,omitempty"` // Name: Deprecated, do not use. Use uri instead. The name of the resource. For // example, the name of a Docker image - "Debian". Name string `json:"name,omitempty"` // Uri: Required. The unique URI of the resource. For example, // `https://gcr.io/project/image@sha256:foo` for a Docker image. Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "ContentHash") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "ContentHash") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Resource) MarshalJSON() ([]byte, error) { type NoMethod Resource return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ResourceDescriptor struct { Annotations googleapi.RawMessage `json:"annotations,omitempty"` Content string `json:"content,omitempty"` Digest map[string]string `json:"digest,omitempty"` DownloadLocation string `json:"downloadLocation,omitempty"` MediaType string `json:"mediaType,omitempty"` Name string `json:"name,omitempty"` Uri string `json:"uri,omitempty"` // ForceSendFields is a list of field names (e.g. "Annotations") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Annotations") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ResourceDescriptor) MarshalJSON() ([]byte, error) { type NoMethod ResourceDescriptor return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type RunDetails struct { Builder *ProvenanceBuilder `json:"builder,omitempty"` Byproducts []*ResourceDescriptor `json:"byproducts,omitempty"` Metadata *BuildMetadata `json:"metadata,omitempty"` // ForceSendFields is a list of field names (e.g. "Builder") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Builder") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RunDetails) MarshalJSON() ([]byte, error) { type NoMethod RunDetails return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SBOMReferenceNote: The note representing an SBOM reference. type SBOMReferenceNote struct { // Format: The format that SBOM takes. E.g. may be spdx, cyclonedx, etc... Format string `json:"format,omitempty"` // Version: The version of the format that the SBOM takes. E.g. if the format // is spdx, the version may be 2.3. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Format") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Format") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SBOMReferenceNote) MarshalJSON() ([]byte, error) { type NoMethod SBOMReferenceNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SBOMReferenceOccurrence: The occurrence representing an SBOM reference as // applied to a specific resource. The occurrence follows the DSSE // specification. See // https://github.com/secure-systems-lab/dsse/blob/master/envelope.md for more // details. type SBOMReferenceOccurrence struct { // Payload: The actual payload that contains the SBOM reference data. Payload *SbomReferenceIntotoPayload `json:"payload,omitempty"` // PayloadType: The kind of payload that SbomReferenceIntotoPayload takes. // Since it's in the intoto format, this value is expected to be // 'application/vnd.in-toto+json'. PayloadType string `json:"payloadType,omitempty"` // Signatures: The signatures over the payload. Signatures []*EnvelopeSignature `json:"signatures,omitempty"` // ForceSendFields is a list of field names (e.g. "Payload") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Payload") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SBOMReferenceOccurrence) MarshalJSON() ([]byte, error) { type NoMethod SBOMReferenceOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SBOMStatus: The status of an SBOM generation. type SBOMStatus struct { // Error: If there was an error generating an SBOM, this will indicate what // that error was. Error string `json:"error,omitempty"` // SbomState: The progress of the SBOM generation. // // Possible values: // "SBOM_STATE_UNSPECIFIED" - Default unknown state. // "PENDING" - SBOM scanning is pending. // "COMPLETE" - SBOM scanning has completed. SbomState string `json:"sbomState,omitempty"` // ForceSendFields is a list of field names (e.g. "Error") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Error") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SBOMStatus) MarshalJSON() ([]byte, error) { type NoMethod SBOMStatus return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SbomReferenceIntotoPayload: The actual payload that contains the SBOM // Reference data. The payload follows the intoto statement specification. See // https://github.com/in-toto/attestation/blob/main/spec/v1.0/statement.md for // more details. type SbomReferenceIntotoPayload struct { // Type: Identifier for the schema of the Statement. Type string `json:"_type,omitempty"` // Predicate: Additional parameters of the Predicate. Includes the actual data // about the SBOM. Predicate *SbomReferenceIntotoPredicate `json:"predicate,omitempty"` // PredicateType: URI identifying the type of the Predicate. PredicateType string `json:"predicateType,omitempty"` // Subject: Set of software artifacts that the attestation applies to. Each // element represents a single software artifact. Subject []*Subject `json:"subject,omitempty"` // ForceSendFields is a list of field names (e.g. "Type") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Type") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SbomReferenceIntotoPayload) MarshalJSON() ([]byte, error) { type NoMethod SbomReferenceIntotoPayload return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SbomReferenceIntotoPredicate: A predicate which describes the SBOM being // referenced. type SbomReferenceIntotoPredicate struct { // Digest: A map of algorithm to digest of the contents of the SBOM. Digest map[string]string `json:"digest,omitempty"` // Location: The location of the SBOM. Location string `json:"location,omitempty"` // MimeType: The mime type of the SBOM. MimeType string `json:"mimeType,omitempty"` // ReferrerId: The person or system referring this predicate to the consumer. ReferrerId string `json:"referrerId,omitempty"` // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Digest") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SbomReferenceIntotoPredicate) MarshalJSON() ([]byte, error) { type NoMethod SbomReferenceIntotoPredicate return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SetIamPolicyRequest: Request message for `SetIamPolicy` method. type SetIamPolicyRequest struct { // Policy: REQUIRED: The complete policy to be applied to the `resource`. The // size of the policy is limited to a few 10s of KB. An empty policy is a valid // policy but certain Google Cloud services (such as Projects) might reject // them. Policy *Policy `json:"policy,omitempty"` // ForceSendFields is a list of field names (e.g. "Policy") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Policy") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { type NoMethod SetIamPolicyRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Signature: Verifiers (e.g. Kritis implementations) MUST verify signatures // with respect to the trust anchors defined in policy (e.g. a Kritis policy). // Typically this means that the verifier has been configured with a map from // `public_key_id` to public key material (and any required parameters, e.g. // signing algorithm). In particular, verification implementations MUST NOT // treat the signature `public_key_id` as anything more than a key lookup hint. // The `public_key_id` DOES NOT validate or authenticate a public key; it only // provides a mechanism for quickly selecting a public key ALREADY CONFIGURED // on the verifier through a trusted channel. Verification implementations MUST // reject signatures in any of the following circumstances: * The // `public_key_id` is not recognized by the verifier. * The public key that // `public_key_id` refers to does not verify the signature with respect to the // payload. The `signature` contents SHOULD NOT be "attached" (where the // payload is included with the serialized `signature` bytes). Verifiers MUST // ignore any "attached" payload and only verify signatures with respect to // explicitly provided payload (e.g. a `payload` field on the proto message // that holds this Signature, or the canonical serialization of the proto // message that holds this signature). type Signature struct { // PublicKeyId: The identifier for the public key that verifies this signature. // * The `public_key_id` is required. * The `public_key_id` SHOULD be an // RFC3986 conformant URI. * When possible, the `public_key_id` SHOULD be an // immutable reference, such as a cryptographic digest. Examples of valid // `public_key_id`s: OpenPGP V4 public key fingerprint: * // "openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA" See // https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more // details on this scheme. RFC6920 digest-named SubjectPublicKeyInfo (digest of // the DER serialization): * // "ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU" * // "nih:///sha-256;703f68f42aba2c6de30f488a5ea122fef76324679c9bf89791ba95a127158 // 9a5" PublicKeyId string `json:"publicKeyId,omitempty"` // Signature: The content of the signature, an opaque bytestring. The payload // that this signature verifies MUST be unambiguously provided with the // Signature during verification. A wrapper message might provide the payload // explicitly. Alternatively, a message might have a canonical serialization // that can always be unambiguously computed to derive the payload. Signature string `json:"signature,omitempty"` // ForceSendFields is a list of field names (e.g. "PublicKeyId") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "PublicKeyId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Signature) MarshalJSON() ([]byte, error) { type NoMethod Signature return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SigningKey: This defines the format used to record keys used in the software // supply chain. An in-toto link is attested using one or more keys defined in // the in-toto layout. An example of this is: { "key_id": // "776a00e29f3559e0141b3b096f696abc6cfb0c657ab40f441132b345b0...", "key_type": // "rsa", "public_key_value": "-----BEGIN PUBLIC // KEY-----\nMIIBojANBgkqhkiG9w0B...", "key_scheme": "rsassa-pss-sha256" } The // format for in-toto's key definition can be found in section 4.2 of the // in-toto specification. type SigningKey struct { // KeyId: key_id is an identifier for the signing key. KeyId string `json:"keyId,omitempty"` // KeyScheme: This field contains the corresponding signature scheme. Eg: // "rsassa-pss-sha256". KeyScheme string `json:"keyScheme,omitempty"` // KeyType: This field identifies the specific signing method. Eg: "rsa", // "ed25519", and "ecdsa". KeyType string `json:"keyType,omitempty"` // PublicKeyValue: This field contains the actual public key. PublicKeyValue string `json:"publicKeyValue,omitempty"` // ForceSendFields is a list of field names (e.g. "KeyId") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "KeyId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SigningKey) MarshalJSON() ([]byte, error) { type NoMethod SigningKey return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SlsaProvenanceV1: Keep in sync with schema at // https://github.com/slsa-framework/slsa/blob/main/docs/provenance/schema/v1/provenance.proto // Builder renamed to ProvenanceBuilder because of Java conflicts. type SlsaProvenanceV1 struct { BuildDefinition *BuildDefinition `json:"buildDefinition,omitempty"` RunDetails *RunDetails `json:"runDetails,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildDefinition") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuildDefinition") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SlsaProvenanceV1) MarshalJSON() ([]byte, error) { type NoMethod SlsaProvenanceV1 return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Source: Source describes the location of the source used for the build. type Source struct { // AdditionalContexts: If provided, some of the source code used for the build // may be found in these locations, in the case where the source repository had // multiple remotes or submodules. This list will not include the context // specified in the context field. AdditionalContexts []*SourceContext `json:"additionalContexts,omitempty"` // ArtifactStorageSourceUri: If provided, the input binary artifacts for the // build came from this location. ArtifactStorageSourceUri string `json:"artifactStorageSourceUri,omitempty"` // Context: If provided, the source code used for the build came from this // location. Context *SourceContext `json:"context,omitempty"` // FileHashes: Hash(es) of the build source, which can be used to verify that // the original source integrity was maintained in the build. The keys to this // map are file paths used as build source and the values contain the hash // values for those files. If the build source came in a single package such as // a gzipped tarfile (.tar.gz), the FileHash will be for the single path to // that file. FileHashes map[string]FileHashes `json:"fileHashes,omitempty"` // ForceSendFields is a list of field names (e.g. "AdditionalContexts") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AdditionalContexts") to include // in API requests with the JSON null value. By default, fields with empty // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Source) MarshalJSON() ([]byte, error) { type NoMethod Source return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SourceContext: A SourceContext is a reference to a tree of files. A // SourceContext together with a path point to a unique revision of a single // file or directory. type SourceContext struct { // CloudRepo: A SourceContext referring to a revision in a Google Cloud Source // Repo. CloudRepo *CloudRepoSourceContext `json:"cloudRepo,omitempty"` // Gerrit: A SourceContext referring to a Gerrit project. Gerrit *GerritSourceContext `json:"gerrit,omitempty"` // Git: A SourceContext referring to any third party Git repo (e.g., GitHub). Git *GitSourceContext `json:"git,omitempty"` // Labels: Labels with user defined metadata. Labels map[string]string `json:"labels,omitempty"` // ForceSendFields is a list of field names (e.g. "CloudRepo") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CloudRepo") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SourceContext) MarshalJSON() ([]byte, error) { type NoMethod SourceContext return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Status: The `Status` type defines a logical error model that is suitable for // different programming environments, including REST APIs and RPC APIs. It is // used by gRPC (https://github.com/grpc). Each `Status` message contains three // pieces of data: error code, error message, and error details. You can find // out more about this error model and how to work with it in the API Design // Guide (https://cloud.google.com/apis/design/errors). type Status struct { // Code: The status code, which should be an enum value of google.rpc.Code. Code int64 `json:"code,omitempty"` // Details: A list of messages that carry the error details. There is a common // set of message types for APIs to use. Details []googleapi.RawMessage `json:"details,omitempty"` // Message: A developer-facing error message, which should be in English. Any // user-facing error message should be localized and sent in the // google.rpc.Status.details field, or localized by the client. Message string `json:"message,omitempty"` // ForceSendFields is a list of field names (e.g. "Code") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Code") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Status) MarshalJSON() ([]byte, error) { type NoMethod Status return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Subject: Set of software artifacts that the attestation applies to. Each // element represents a single software artifact. type Subject struct { // Digest: "": "" Algorithms can be e.g. sha256, sha512 See // https://github.com/in-toto/attestation/blob/main/spec/field_types.md#DigestSet Digest map[string]string `json:"digest,omitempty"` // Name: Identifier to distinguish this artifact from others within the // subject. Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "Digest") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Digest") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Subject) MarshalJSON() ([]byte, error) { type NoMethod Subject return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // TestIamPermissionsRequest: Request message for `TestIamPermissions` method. type TestIamPermissionsRequest struct { // Permissions: The set of permissions to check for the `resource`. Permissions // with wildcards (such as `*` or `storage.*`) are not allowed. For more // information see IAM Overview // (https://cloud.google.com/iam/docs/overview#permissions). Permissions []string `json:"permissions,omitempty"` // ForceSendFields is a list of field names (e.g. "Permissions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Permissions") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { type NoMethod TestIamPermissionsRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // TestIamPermissionsResponse: Response message for `TestIamPermissions` // method. type TestIamPermissionsResponse struct { // Permissions: A subset of `TestPermissionsRequest.permissions` that the // caller is allowed. Permissions []string `json:"permissions,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Permissions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Permissions") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { type NoMethod TestIamPermissionsResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // TimeSpan: Start and end times for a build execution phase. Next ID: 3 type TimeSpan struct { // EndTime: End of time span. EndTime string `json:"endTime,omitempty"` // StartTime: Start of time span. StartTime string `json:"startTime,omitempty"` // ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "EndTime") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *TimeSpan) MarshalJSON() ([]byte, error) { type NoMethod TimeSpan return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Version: Version contains structured information about the version of a // package. type Version struct { // Epoch: Used to correct mistakes in the version numbering scheme. Epoch int64 `json:"epoch,omitempty"` // Inclusive: Whether this version is specifying part of an inclusive range. // Grafeas does not have the capability to specify version ranges; instead we // have fields that specify start version and end versions. At times this is // insufficient - we also need to specify whether the version is included in // the range or is excluded from the range. This boolean is expected to be set // to true when the version is included in a range. Inclusive bool `json:"inclusive,omitempty"` // Kind: Required. Distinguishes between sentinel MIN/MAX versions and normal // versions. // // Possible values: // "VERSION_KIND_UNSPECIFIED" - Unknown. // "NORMAL" - A standard package version. // "MINIMUM" - A special version representing negative infinity. // "MAXIMUM" - A special version representing positive infinity. Kind string `json:"kind,omitempty"` // Name: Required only when version kind is NORMAL. The main part of the // version name. Name string `json:"name,omitempty"` // Revision: The iteration of the package build from the above version. Revision string `json:"revision,omitempty"` // ForceSendFields is a list of field names (e.g. "Epoch") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Epoch") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Version) MarshalJSON() ([]byte, error) { type NoMethod Version return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // VexAssessment: VexAssessment provides all publisher provided Vex information // that is related to this vulnerability. type VexAssessment struct { // Cve: Holds the MITRE standard Common Vulnerabilities and Exposures (CVE) // tracking number for the vulnerability. Deprecated: Use vulnerability_id // instead to denote CVEs. Cve string `json:"cve,omitempty"` // Impacts: Contains information about the impact of this vulnerability, this // will change with time. Impacts []string `json:"impacts,omitempty"` // Justification: Justification provides the justification when the state of // the assessment if NOT_AFFECTED. Justification *Justification `json:"justification,omitempty"` // NoteName: The VulnerabilityAssessment note from which this VexAssessment was // generated. This will be of the form: // `projects/[PROJECT_ID]/notes/[NOTE_ID]`. NoteName string `json:"noteName,omitempty"` // RelatedUris: Holds a list of references associated with this vulnerability // item and assessment. RelatedUris []*RelatedUrl `json:"relatedUris,omitempty"` // Remediations: Specifies details on how to handle (and presumably, fix) a // vulnerability. Remediations []*Remediation `json:"remediations,omitempty"` // State: Provides the state of this Vulnerability assessment. // // Possible values: // "STATE_UNSPECIFIED" - No state is specified. // "AFFECTED" - This product is known to be affected by this vulnerability. // "NOT_AFFECTED" - This product is known to be not affected by this // vulnerability. // "FIXED" - This product contains a fix for this vulnerability. // "UNDER_INVESTIGATION" - It is not known yet whether these versions are or // are not affected by the vulnerability. However, it is still under // investigation. State string `json:"state,omitempty"` // VulnerabilityId: The vulnerability identifier for this Assessment. Will hold // one of common identifiers e.g. CVE, GHSA etc. VulnerabilityId string `json:"vulnerabilityId,omitempty"` // ForceSendFields is a list of field names (e.g. "Cve") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Cve") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *VexAssessment) MarshalJSON() ([]byte, error) { type NoMethod VexAssessment return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Volume: Volume describes a Docker container volume which is mounted into // build steps in order to persist files across build step execution. Next ID: // 3 type Volume struct { // Name: Name of the volume to mount. Volume names must be unique per build // step and must be valid names for Docker volumes. Each named volume must be // used by at least two build steps. Name string `json:"name,omitempty"` // Path: Path at which to mount the volume. Paths must be absolute and cannot // conflict with other volume paths on the same build step or with certain // reserved volume paths. Path string `json:"path,omitempty"` // ForceSendFields is a list of field names (e.g. "Name") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Name") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Volume) MarshalJSON() ([]byte, error) { type NoMethod Volume return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Vulnerability: Vulnerability provides metadata about a security // vulnerability in a Note. type Vulnerability struct { // CvssScore: The CVSS score for this vulnerability. CvssScore float64 `json:"cvssScore,omitempty"` // CvssV2: The full description of the CVSS for version 2. CvssV2 *CVSS `json:"cvssV2,omitempty"` // CvssV3: The full description of the CVSS for version 3. CvssV3 *CVSSv3 `json:"cvssV3,omitempty"` // CvssVersion: CVSS version used to populate cvss_score and severity. // // Possible values: // "CVSS_VERSION_UNSPECIFIED" // "CVSS_VERSION_2" // "CVSS_VERSION_3" CvssVersion string `json:"cvssVersion,omitempty"` // Cwe: A list of CWE for this vulnerability. For details, see: // https://cwe.mitre.org/index.html Cwe []string `json:"cwe,omitempty"` // Details: All information about the package to specifically identify this // vulnerability. One entry per (version range and cpe_uri) the package // vulnerability has manifested in. Details []*Detail `json:"details,omitempty"` // Severity: Note provider assigned impact of the vulnerability. // // Possible values: // "SEVERITY_UNSPECIFIED" - Unknown. // "MINIMAL" - Minimal severity. // "LOW" - Low severity. // "MEDIUM" - Medium severity. // "HIGH" - High severity. // "CRITICAL" - Critical severity. Severity string `json:"severity,omitempty"` // SourceUpdateTime: The time this information was last changed at the source. // This is an upstream timestamp from the underlying information source - e.g. // Ubuntu security tracker. SourceUpdateTime string `json:"sourceUpdateTime,omitempty"` // WindowsDetails: Windows details get their own format because the information // format and model don't match a normal detail. Specifically Windows updates // are done as patches, thus Windows vulnerabilities really are a missing // package, rather than a package being at an incorrect version. WindowsDetails []*WindowsDetail `json:"windowsDetails,omitempty"` // ForceSendFields is a list of field names (e.g. "CvssScore") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CvssScore") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Vulnerability) MarshalJSON() ([]byte, error) { type NoMethod Vulnerability return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *Vulnerability) UnmarshalJSON(data []byte) error { type NoMethod Vulnerability var s1 struct { CvssScore gensupport.JSONFloat64 `json:"cvssScore"` *NoMethod } s1.NoMethod = (*NoMethod)(s) if err := json.Unmarshal(data, &s1); err != nil { return err } s.CvssScore = float64(s1.CvssScore) return nil } // VulnerabilityAssessmentNote: A single VulnerabilityAssessmentNote represents // one particular product's vulnerability assessment for one CVE. type VulnerabilityAssessmentNote struct { // Assessment: Represents a vulnerability assessment for the product. Assessment *Assessment `json:"assessment,omitempty"` // LanguageCode: Identifies the language used by this document, corresponding // to IETF BCP 47 / RFC 5646. LanguageCode string `json:"languageCode,omitempty"` // LongDescription: A detailed description of this Vex. LongDescription string `json:"longDescription,omitempty"` // Product: The product affected by this vex. Product *Product `json:"product,omitempty"` // Publisher: Publisher details of this Note. Publisher *Publisher `json:"publisher,omitempty"` // ShortDescription: A one sentence description of this Vex. ShortDescription string `json:"shortDescription,omitempty"` // Title: The title of the note. E.g. `Vex-Debian-11.4` Title string `json:"title,omitempty"` // ForceSendFields is a list of field names (e.g. "Assessment") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Assessment") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *VulnerabilityAssessmentNote) MarshalJSON() ([]byte, error) { type NoMethod VulnerabilityAssessmentNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // VulnerabilityLocation: The location of the vulnerability. type VulnerabilityLocation struct { // CpeUri: Required. The CPE URI in cpe format // (https://cpe.mitre.org/specification/) format. Examples include distro or // storage location for vulnerable jar. CpeUri string `json:"cpeUri,omitempty"` // Package: Required. The package being described. Package string `json:"package,omitempty"` // Version: Required. The version of the package being described. Version *Version `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CpeUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *VulnerabilityLocation) MarshalJSON() ([]byte, error) { type NoMethod VulnerabilityLocation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // VulnerabilityOccurrencesSummary: A summary of how many vulnerability // occurrences there are per resource and severity type. type VulnerabilityOccurrencesSummary struct { // Counts: A listing by resource of the number of fixable and total // vulnerabilities. Counts []*FixableTotalByDigest `json:"counts,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Counts") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Counts") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *VulnerabilityOccurrencesSummary) MarshalJSON() ([]byte, error) { type NoMethod VulnerabilityOccurrencesSummary return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type WindowsDetail struct { // CpeUri: Required. The CPE URI in cpe format // (https://cpe.mitre.org/specification/) in which the vulnerability manifests. // Examples include distro or storage location for vulnerable jar. CpeUri string `json:"cpeUri,omitempty"` // Description: The description of the vulnerability. Description string `json:"description,omitempty"` // FixingKbs: Required. The names of the KBs which have hotfixes to mitigate // this vulnerability. Note that there may be multiple hotfixes (and thus // multiple KBs) that mitigate a given vulnerability. Currently any listed kb's // presence is considered a fix. FixingKbs []*KnowledgeBase `json:"fixingKbs,omitempty"` // Name: Required. The name of the vulnerability. Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "CpeUri") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "CpeUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *WindowsDetail) MarshalJSON() ([]byte, error) { type NoMethod WindowsDetail return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ProjectsLocationsNotesGetCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Gets the specified note. // // - name: The name of the note in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. func (r *ProjectsLocationsNotesService) Get(name string) *ProjectsLocationsNotesGetCall { c := &ProjectsLocationsNotesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsNotesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsNotesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsNotesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsNotesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsNotesGetCall) Context(ctx context.Context) *ProjectsLocationsNotesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsNotesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsNotesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.notes.get" call. // Any non-2xx status code is an error. Response headers are in either // *Note.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsNotesGetCall) Do(opts ...googleapi.CallOption) (*Note, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Note{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsNotesListCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists notes for the specified project. // // - parent: The name of the project to list notes for in the form of // `projects/[PROJECT_ID]`. func (r *ProjectsLocationsNotesService) List(parent string) *ProjectsLocationsNotesListCall { c := &ProjectsLocationsNotesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsLocationsNotesListCall) Filter(filter string) *ProjectsLocationsNotesListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": Number of notes to return // in the list. Must be positive. Max allowed page size is 1000. If not // specified, page size defaults to 20. func (c *ProjectsLocationsNotesListCall) PageSize(pageSize int64) *ProjectsLocationsNotesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Token to provide to skip // to a particular spot in the list. func (c *ProjectsLocationsNotesListCall) PageToken(pageToken string) *ProjectsLocationsNotesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsNotesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNotesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsNotesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNotesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsNotesListCall) Context(ctx context.Context) *ProjectsLocationsNotesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsNotesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsNotesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.notes.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListNotesResponse.ServerResponse.Header or (if a response was returned at // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsLocationsNotesListCall) Do(opts ...googleapi.CallOption) (*ListNotesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListNotesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsLocationsNotesListCall) Pages(ctx context.Context, f func(*ListNotesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsLocationsNotesOccurrencesListCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists occurrences referencing the specified note. Provider projects // can use this method to get all occurrences across consumer projects // referencing the specified note. // // - name: The name of the note to list occurrences for in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. func (r *ProjectsLocationsNotesOccurrencesService) List(name string) *ProjectsLocationsNotesOccurrencesListCall { c := &ProjectsLocationsNotesOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsLocationsNotesOccurrencesListCall) Filter(filter string) *ProjectsLocationsNotesOccurrencesListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": Number of occurrences to // return in the list. func (c *ProjectsLocationsNotesOccurrencesListCall) PageSize(pageSize int64) *ProjectsLocationsNotesOccurrencesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Token to provide to skip // to a particular spot in the list. func (c *ProjectsLocationsNotesOccurrencesListCall) PageToken(pageToken string) *ProjectsLocationsNotesOccurrencesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsNotesOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsNotesOccurrencesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsNotesOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsNotesOccurrencesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsNotesOccurrencesListCall) Context(ctx context.Context) *ProjectsLocationsNotesOccurrencesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsNotesOccurrencesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsNotesOccurrencesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/occurrences") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.notes.occurrences.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListNoteOccurrencesResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsNotesOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListNoteOccurrencesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListNoteOccurrencesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsLocationsNotesOccurrencesListCall) Pages(ctx context.Context, f func(*ListNoteOccurrencesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsLocationsOccurrencesGetCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Gets the specified occurrence. // // - name: The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. func (r *ProjectsLocationsOccurrencesService) Get(name string) *ProjectsLocationsOccurrencesGetCall { c := &ProjectsLocationsOccurrencesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsOccurrencesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsOccurrencesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsOccurrencesGetCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsOccurrencesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsOccurrencesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.occurrences.get" call. // Any non-2xx status code is an error. Response headers are in either // *Occurrence.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsOccurrencesGetCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Occurrence{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsOccurrencesGetNotesCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // GetNotes: Gets the note attached to the specified occurrence. Consumer // projects can use this method to get a note that belongs to a provider // project. // // - name: The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. func (r *ProjectsLocationsOccurrencesService) GetNotes(name string) *ProjectsLocationsOccurrencesGetNotesCall { c := &ProjectsLocationsOccurrencesGetNotesCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsOccurrencesGetNotesCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesGetNotesCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsOccurrencesGetNotesCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesGetNotesCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsOccurrencesGetNotesCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesGetNotesCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsOccurrencesGetNotesCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsOccurrencesGetNotesCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/notes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.occurrences.getNotes" call. // Any non-2xx status code is an error. Response headers are in either // *Note.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsOccurrencesGetNotesCall) Do(opts ...googleapi.CallOption) (*Note, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Note{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // GetVulnerabilitySummary: Gets a summary of the number and severity of // occurrences. // // - parent: The name of the project to get a vulnerability summary for in the // form of `projects/[PROJECT_ID]`. func (r *ProjectsLocationsOccurrencesService) GetVulnerabilitySummary(parent string) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { c := &ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Filter(filter string) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { c.urlParams_.Set("filter", filter) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:vulnerabilitySummary") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.occurrences.getVulnerabilitySummary" call. // Any non-2xx status code is an error. Response headers are in either // *VulnerabilityOccurrencesSummary.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsOccurrencesGetVulnerabilitySummaryCall) Do(opts ...googleapi.CallOption) (*VulnerabilityOccurrencesSummary, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &VulnerabilityOccurrencesSummary{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsOccurrencesListCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists occurrences for the specified project. // // - parent: The name of the project to list occurrences for in the form of // `projects/[PROJECT_ID]`. func (r *ProjectsLocationsOccurrencesService) List(parent string) *ProjectsLocationsOccurrencesListCall { c := &ProjectsLocationsOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsLocationsOccurrencesListCall) Filter(filter string) *ProjectsLocationsOccurrencesListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": Number of occurrences to // return in the list. Must be positive. Max allowed page size is 1000. If not // specified, page size defaults to 20. func (c *ProjectsLocationsOccurrencesListCall) PageSize(pageSize int64) *ProjectsLocationsOccurrencesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Token to provide to skip // to a particular spot in the list. func (c *ProjectsLocationsOccurrencesListCall) PageToken(pageToken string) *ProjectsLocationsOccurrencesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOccurrencesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOccurrencesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsOccurrencesListCall) Context(ctx context.Context) *ProjectsLocationsOccurrencesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsOccurrencesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsOccurrencesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.occurrences.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListOccurrencesResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOccurrencesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListOccurrencesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsLocationsOccurrencesListCall) Pages(ctx context.Context, f func(*ListOccurrencesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsLocationsResourcesExportSBOMCall struct { s *Service name string exportsbomrequest *ExportSBOMRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // ExportSBOM: Generates an SBOM and other dependency information for the given // resource. // // - name: The name of the resource in the form of // `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. func (r *ProjectsLocationsResourcesService) ExportSBOM(name string, exportsbomrequest *ExportSBOMRequest) *ProjectsLocationsResourcesExportSBOMCall { c := &ProjectsLocationsResourcesExportSBOMCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.exportsbomrequest = exportsbomrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsResourcesExportSBOMCall) Fields(s ...googleapi.Field) *ProjectsLocationsResourcesExportSBOMCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsResourcesExportSBOMCall) Context(ctx context.Context) *ProjectsLocationsResourcesExportSBOMCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsResourcesExportSBOMCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsResourcesExportSBOMCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportsbomrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:exportSBOM") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.resources.exportSBOM" call. // Any non-2xx status code is an error. Response headers are in either // *ExportSBOMResponse.ServerResponse.Header or (if a response was returned at // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsLocationsResourcesExportSBOMCall) Do(opts ...googleapi.CallOption) (*ExportSBOMResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ExportSBOMResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsResourcesGeneratePackagesSummaryCall struct { s *Service name string generatepackagessummaryrequest *GeneratePackagesSummaryRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // GeneratePackagesSummary: Gets a summary of the packages within a given // resource. // // - name: The name of the resource to get a packages summary for in the form // of `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. func (r *ProjectsLocationsResourcesService) GeneratePackagesSummary(name string, generatepackagessummaryrequest *GeneratePackagesSummaryRequest) *ProjectsLocationsResourcesGeneratePackagesSummaryCall { c := &ProjectsLocationsResourcesGeneratePackagesSummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.generatepackagessummaryrequest = generatepackagessummaryrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Fields(s ...googleapi.Field) *ProjectsLocationsResourcesGeneratePackagesSummaryCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Context(ctx context.Context) *ProjectsLocationsResourcesGeneratePackagesSummaryCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.generatepackagessummaryrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:generatePackagesSummary") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.locations.resources.generatePackagesSummary" call. // Any non-2xx status code is an error. Response headers are in either // *PackagesSummaryResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsResourcesGeneratePackagesSummaryCall) Do(opts ...googleapi.CallOption) (*PackagesSummaryResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &PackagesSummaryResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesBatchCreateCall struct { s *Service parent string batchcreatenotesrequest *BatchCreateNotesRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // BatchCreate: Creates new notes in batch. // // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, // under which the notes are to be created. func (r *ProjectsNotesService) BatchCreate(parent string, batchcreatenotesrequest *BatchCreateNotesRequest) *ProjectsNotesBatchCreateCall { c := &ProjectsNotesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent c.batchcreatenotesrequest = batchcreatenotesrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsNotesBatchCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesBatchCreateCall) Context(ctx context.Context) *ProjectsNotesBatchCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesBatchCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesBatchCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreatenotesrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes:batchCreate") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.batchCreate" call. // Any non-2xx status code is an error. Response headers are in either // *BatchCreateNotesResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsNotesBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateNotesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &BatchCreateNotesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesCreateCall struct { s *Service parent string note *Note urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new note. // // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, // under which the note is to be created. func (r *ProjectsNotesService) Create(parent string, note *Note) *ProjectsNotesCreateCall { c := &ProjectsNotesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent c.note = note return c } // NoteId sets the optional parameter "noteId": Required. The ID to use for // this note. func (c *ProjectsNotesCreateCall) NoteId(noteId string) *ProjectsNotesCreateCall { c.urlParams_.Set("noteId", noteId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesCreateCall) Fields(s ...googleapi.Field) *ProjectsNotesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesCreateCall) Context(ctx context.Context) *ProjectsNotesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.note) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.create" call. // Any non-2xx status code is an error. Response headers are in either // *Note.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsNotesCreateCall) Do(opts ...googleapi.CallOption) (*Note, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Note{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesDeleteCall struct { s *Service name string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes the specified note. // // - name: The name of the note in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. func (r *ProjectsNotesService) Delete(name string) *ProjectsNotesDeleteCall { c := &ProjectsNotesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesDeleteCall) Fields(s ...googleapi.Field) *ProjectsNotesDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesDeleteCall) Context(ctx context.Context) *ProjectsNotesDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.delete" call. // Any non-2xx status code is an error. Response headers are in either // *Empty.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsNotesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Empty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesGetCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Gets the specified note. // // - name: The name of the note in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. func (r *ProjectsNotesService) Get(name string) *ProjectsNotesGetCall { c := &ProjectsNotesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesGetCall) Fields(s ...googleapi.Field) *ProjectsNotesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsNotesGetCall) IfNoneMatch(entityTag string) *ProjectsNotesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesGetCall) Context(ctx context.Context) *ProjectsNotesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.get" call. // Any non-2xx status code is an error. Response headers are in either // *Note.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsNotesGetCall) Do(opts ...googleapi.CallOption) (*Note, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Note{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesGetIamPolicyCall struct { s *Service resource string getiampolicyrequest *GetIamPolicyRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // GetIamPolicy: Gets the access control policy for a note or an occurrence // resource. Requires `containeranalysis.notes.setIamPolicy` or // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a // note or occurrence, respectively. The resource takes the format // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. // // - resource: REQUIRED: The resource for which the policy is being requested. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ProjectsNotesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsNotesGetIamPolicyCall { c := &ProjectsNotesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.getiampolicyrequest = getiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsNotesGetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesGetIamPolicyCall) Context(ctx context.Context) *ProjectsNotesGetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.getIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *Policy.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsNotesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesListCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists notes for the specified project. // // - parent: The name of the project to list notes for in the form of // `projects/[PROJECT_ID]`. func (r *ProjectsNotesService) List(parent string) *ProjectsNotesListCall { c := &ProjectsNotesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsNotesListCall) Filter(filter string) *ProjectsNotesListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": Number of notes to return // in the list. Must be positive. Max allowed page size is 1000. If not // specified, page size defaults to 20. func (c *ProjectsNotesListCall) PageSize(pageSize int64) *ProjectsNotesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Token to provide to skip // to a particular spot in the list. func (c *ProjectsNotesListCall) PageToken(pageToken string) *ProjectsNotesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesListCall) Fields(s ...googleapi.Field) *ProjectsNotesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsNotesListCall) IfNoneMatch(entityTag string) *ProjectsNotesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesListCall) Context(ctx context.Context) *ProjectsNotesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/notes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListNotesResponse.ServerResponse.Header or (if a response was returned at // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsNotesListCall) Do(opts ...googleapi.CallOption) (*ListNotesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListNotesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsNotesListCall) Pages(ctx context.Context, f func(*ListNotesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsNotesPatchCall struct { s *Service name string note *Note urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Updates the specified note. // // - name: The name of the note in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. func (r *ProjectsNotesService) Patch(name string, note *Note) *ProjectsNotesPatchCall { c := &ProjectsNotesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.note = note return c } // UpdateMask sets the optional parameter "updateMask": The fields to update. func (c *ProjectsNotesPatchCall) UpdateMask(updateMask string) *ProjectsNotesPatchCall { c.urlParams_.Set("updateMask", updateMask) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesPatchCall) Fields(s ...googleapi.Field) *ProjectsNotesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesPatchCall) Context(ctx context.Context) *ProjectsNotesPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.note) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.patch" call. // Any non-2xx status code is an error. Response headers are in either // *Note.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsNotesPatchCall) Do(opts ...googleapi.CallOption) (*Note, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Note{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesSetIamPolicyCall struct { s *Service resource string setiampolicyrequest *SetIamPolicyRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // SetIamPolicy: Sets the access control policy on the specified note or // occurrence. Requires `containeranalysis.notes.setIamPolicy` or // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a // note or an occurrence, respectively. The resource takes the format // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. // // - resource: REQUIRED: The resource for which the policy is being specified. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ProjectsNotesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsNotesSetIamPolicyCall { c := &ProjectsNotesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.setiampolicyrequest = setiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsNotesSetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesSetIamPolicyCall) Context(ctx context.Context) *ProjectsNotesSetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesSetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.setIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *Policy.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsNotesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesTestIamPermissionsCall struct { s *Service resource string testiampermissionsrequest *TestIamPermissionsRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // TestIamPermissions: Returns the permissions that a caller has on the // specified note or occurrence. Requires list permission on the project (for // example, `containeranalysis.notes.list`). The resource takes the format // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. // // - resource: REQUIRED: The resource for which the policy detail is being // requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the appropriate // value for this field. func (r *ProjectsNotesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsNotesTestIamPermissionsCall { c := &ProjectsNotesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.testiampermissionsrequest = testiampermissionsrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsNotesTestIamPermissionsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsNotesTestIamPermissionsCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesTestIamPermissionsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.testIamPermissions" call. // Any non-2xx status code is an error. Response headers are in either // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsNotesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &TestIamPermissionsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsNotesOccurrencesListCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists occurrences referencing the specified note. Provider projects // can use this method to get all occurrences across consumer projects // referencing the specified note. // // - name: The name of the note to list occurrences for in the form of // `projects/[PROVIDER_ID]/notes/[NOTE_ID]`. func (r *ProjectsNotesOccurrencesService) List(name string) *ProjectsNotesOccurrencesListCall { c := &ProjectsNotesOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsNotesOccurrencesListCall) Filter(filter string) *ProjectsNotesOccurrencesListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": Number of occurrences to // return in the list. func (c *ProjectsNotesOccurrencesListCall) PageSize(pageSize int64) *ProjectsNotesOccurrencesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Token to provide to skip // to a particular spot in the list. func (c *ProjectsNotesOccurrencesListCall) PageToken(pageToken string) *ProjectsNotesOccurrencesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsNotesOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsNotesOccurrencesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsNotesOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsNotesOccurrencesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsNotesOccurrencesListCall) Context(ctx context.Context) *ProjectsNotesOccurrencesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsNotesOccurrencesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsNotesOccurrencesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/occurrences") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.notes.occurrences.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListNoteOccurrencesResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsNotesOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListNoteOccurrencesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListNoteOccurrencesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsNotesOccurrencesListCall) Pages(ctx context.Context, f func(*ListNoteOccurrencesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsOccurrencesBatchCreateCall struct { s *Service parent string batchcreateoccurrencesrequest *BatchCreateOccurrencesRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // BatchCreate: Creates new occurrences in batch. // // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, // under which the occurrences are to be created. func (r *ProjectsOccurrencesService) BatchCreate(parent string, batchcreateoccurrencesrequest *BatchCreateOccurrencesRequest) *ProjectsOccurrencesBatchCreateCall { c := &ProjectsOccurrencesBatchCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent c.batchcreateoccurrencesrequest = batchcreateoccurrencesrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesBatchCreateCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesBatchCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesBatchCreateCall) Context(ctx context.Context) *ProjectsOccurrencesBatchCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesBatchCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesBatchCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.batchcreateoccurrencesrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:batchCreate") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.batchCreate" call. // Any non-2xx status code is an error. Response headers are in either // *BatchCreateOccurrencesResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsOccurrencesBatchCreateCall) Do(opts ...googleapi.CallOption) (*BatchCreateOccurrencesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &BatchCreateOccurrencesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesCreateCall struct { s *Service parent string occurrence *Occurrence urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new occurrence. // // - parent: The name of the project in the form of `projects/[PROJECT_ID]`, // under which the occurrence is to be created. func (r *ProjectsOccurrencesService) Create(parent string, occurrence *Occurrence) *ProjectsOccurrencesCreateCall { c := &ProjectsOccurrencesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent c.occurrence = occurrence return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesCreateCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesCreateCall) Context(ctx context.Context) *ProjectsOccurrencesCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.occurrence) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.create" call. // Any non-2xx status code is an error. Response headers are in either // *Occurrence.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesCreateCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Occurrence{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesDeleteCall struct { s *Service name string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes the specified occurrence. For example, use this method to // delete an occurrence when the occurrence is no longer applicable for the // given resource. // // - name: The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. func (r *ProjectsOccurrencesService) Delete(name string) *ProjectsOccurrencesDeleteCall { c := &ProjectsOccurrencesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesDeleteCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesDeleteCall) Context(ctx context.Context) *ProjectsOccurrencesDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.delete" call. // Any non-2xx status code is an error. Response headers are in either // *Empty.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Empty{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesGetCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Gets the specified occurrence. // // - name: The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. func (r *ProjectsOccurrencesService) Get(name string) *ProjectsOccurrencesGetCall { c := &ProjectsOccurrencesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesGetCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsOccurrencesGetCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesGetCall) Context(ctx context.Context) *ProjectsOccurrencesGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.get" call. // Any non-2xx status code is an error. Response headers are in either // *Occurrence.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesGetCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Occurrence{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesGetIamPolicyCall struct { s *Service resource string getiampolicyrequest *GetIamPolicyRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // GetIamPolicy: Gets the access control policy for a note or an occurrence // resource. Requires `containeranalysis.notes.setIamPolicy` or // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a // note or occurrence, respectively. The resource takes the format // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. // // - resource: REQUIRED: The resource for which the policy is being requested. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ProjectsOccurrencesService) GetIamPolicy(resource string, getiampolicyrequest *GetIamPolicyRequest) *ProjectsOccurrencesGetIamPolicyCall { c := &ProjectsOccurrencesGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.getiampolicyrequest = getiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesGetIamPolicyCall) Context(ctx context.Context) *ProjectsOccurrencesGetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.getiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:getIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.getIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *Policy.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesGetNotesCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // GetNotes: Gets the note attached to the specified occurrence. Consumer // projects can use this method to get a note that belongs to a provider // project. // // - name: The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. func (r *ProjectsOccurrencesService) GetNotes(name string) *ProjectsOccurrencesGetNotesCall { c := &ProjectsOccurrencesGetNotesCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesGetNotesCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetNotesCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsOccurrencesGetNotesCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetNotesCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesGetNotesCall) Context(ctx context.Context) *ProjectsOccurrencesGetNotesCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesGetNotesCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesGetNotesCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}/notes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.getNotes" call. // Any non-2xx status code is an error. Response headers are in either // *Note.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesGetNotesCall) Do(opts ...googleapi.CallOption) (*Note, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Note{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesGetVulnerabilitySummaryCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // GetVulnerabilitySummary: Gets a summary of the number and severity of // occurrences. // // - parent: The name of the project to get a vulnerability summary for in the // form of `projects/[PROJECT_ID]`. func (r *ProjectsOccurrencesService) GetVulnerabilitySummary(parent string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { c := &ProjectsOccurrencesGetVulnerabilitySummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Filter(filter string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { c.urlParams_.Set("filter", filter) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesGetVulnerabilitySummaryCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesGetVulnerabilitySummaryCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Context(ctx context.Context) *ProjectsOccurrencesGetVulnerabilitySummaryCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences:vulnerabilitySummary") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.getVulnerabilitySummary" call. // Any non-2xx status code is an error. Response headers are in either // *VulnerabilityOccurrencesSummary.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsOccurrencesGetVulnerabilitySummaryCall) Do(opts ...googleapi.CallOption) (*VulnerabilityOccurrencesSummary, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &VulnerabilityOccurrencesSummary{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesListCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists occurrences for the specified project. // // - parent: The name of the project to list occurrences for in the form of // `projects/[PROJECT_ID]`. func (r *ProjectsOccurrencesService) List(parent string) *ProjectsOccurrencesListCall { c := &ProjectsOccurrencesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter expression. func (c *ProjectsOccurrencesListCall) Filter(filter string) *ProjectsOccurrencesListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": Number of occurrences to // return in the list. Must be positive. Max allowed page size is 1000. If not // specified, page size defaults to 20. func (c *ProjectsOccurrencesListCall) PageSize(pageSize int64) *ProjectsOccurrencesListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": Token to provide to skip // to a particular spot in the list. func (c *ProjectsOccurrencesListCall) PageToken(pageToken string) *ProjectsOccurrencesListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesListCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsOccurrencesListCall) IfNoneMatch(entityTag string) *ProjectsOccurrencesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesListCall) Context(ctx context.Context) *ProjectsOccurrencesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+parent}/occurrences") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListOccurrencesResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsOccurrencesListCall) Do(opts ...googleapi.CallOption) (*ListOccurrencesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListOccurrencesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsOccurrencesListCall) Pages(ctx context.Context, f func(*ListOccurrencesResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsOccurrencesPatchCall struct { s *Service name string occurrence *Occurrence urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Updates the specified occurrence. // // - name: The name of the occurrence in the form of // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]`. func (r *ProjectsOccurrencesService) Patch(name string, occurrence *Occurrence) *ProjectsOccurrencesPatchCall { c := &ProjectsOccurrencesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.occurrence = occurrence return c } // UpdateMask sets the optional parameter "updateMask": The fields to update. func (c *ProjectsOccurrencesPatchCall) UpdateMask(updateMask string) *ProjectsOccurrencesPatchCall { c.urlParams_.Set("updateMask", updateMask) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesPatchCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesPatchCall) Context(ctx context.Context) *ProjectsOccurrencesPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.occurrence) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.patch" call. // Any non-2xx status code is an error. Response headers are in either // *Occurrence.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesPatchCall) Do(opts ...googleapi.CallOption) (*Occurrence, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Occurrence{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesSetIamPolicyCall struct { s *Service resource string setiampolicyrequest *SetIamPolicyRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // SetIamPolicy: Sets the access control policy on the specified note or // occurrence. Requires `containeranalysis.notes.setIamPolicy` or // `containeranalysis.occurrences.setIamPolicy` permission if the resource is a // note or an occurrence, respectively. The resource takes the format // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. // // - resource: REQUIRED: The resource for which the policy is being specified. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ProjectsOccurrencesService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsOccurrencesSetIamPolicyCall { c := &ProjectsOccurrencesSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.setiampolicyrequest = setiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesSetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesSetIamPolicyCall) Context(ctx context.Context) *ProjectsOccurrencesSetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesSetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:setIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.setIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *Policy.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsOccurrencesSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsOccurrencesTestIamPermissionsCall struct { s *Service resource string testiampermissionsrequest *TestIamPermissionsRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // TestIamPermissions: Returns the permissions that a caller has on the // specified note or occurrence. Requires list permission on the project (for // example, `containeranalysis.notes.list`). The resource takes the format // `projects/[PROJECT_ID]/notes/[NOTE_ID]` for notes and // `projects/[PROJECT_ID]/occurrences/[OCCURRENCE_ID]` for occurrences. // // - resource: REQUIRED: The resource for which the policy detail is being // requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the appropriate // value for this field. func (r *ProjectsOccurrencesService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsOccurrencesTestIamPermissionsCall { c := &ProjectsOccurrencesTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.testiampermissionsrequest = testiampermissionsrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsOccurrencesTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsOccurrencesTestIamPermissionsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsOccurrencesTestIamPermissionsCall) Context(ctx context.Context) *ProjectsOccurrencesTestIamPermissionsCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsOccurrencesTestIamPermissionsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsOccurrencesTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+resource}:testIamPermissions") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.occurrences.testIamPermissions" call. // Any non-2xx status code is an error. Response headers are in either // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsOccurrencesTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &TestIamPermissionsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsResourcesExportSBOMCall struct { s *Service name string exportsbomrequest *ExportSBOMRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // ExportSBOM: Generates an SBOM and other dependency information for the given // resource. // // - name: The name of the resource in the form of // `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. func (r *ProjectsResourcesService) ExportSBOM(name string, exportsbomrequest *ExportSBOMRequest) *ProjectsResourcesExportSBOMCall { c := &ProjectsResourcesExportSBOMCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.exportsbomrequest = exportsbomrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsResourcesExportSBOMCall) Fields(s ...googleapi.Field) *ProjectsResourcesExportSBOMCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsResourcesExportSBOMCall) Context(ctx context.Context) *ProjectsResourcesExportSBOMCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsResourcesExportSBOMCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsResourcesExportSBOMCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.exportsbomrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:exportSBOM") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.resources.exportSBOM" call. // Any non-2xx status code is an error. Response headers are in either // *ExportSBOMResponse.ServerResponse.Header or (if a response was returned at // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsResourcesExportSBOMCall) Do(opts ...googleapi.CallOption) (*ExportSBOMResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ExportSBOMResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsResourcesGeneratePackagesSummaryCall struct { s *Service name string generatepackagessummaryrequest *GeneratePackagesSummaryRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // GeneratePackagesSummary: Gets a summary of the packages within a given // resource. // // - name: The name of the resource to get a packages summary for in the form // of `projects/[PROJECT_ID]/resources/[RESOURCE_URL]`. func (r *ProjectsResourcesService) GeneratePackagesSummary(name string, generatepackagessummaryrequest *GeneratePackagesSummaryRequest) *ProjectsResourcesGeneratePackagesSummaryCall { c := &ProjectsResourcesGeneratePackagesSummaryCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.generatepackagessummaryrequest = generatepackagessummaryrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsResourcesGeneratePackagesSummaryCall) Fields(s ...googleapi.Field) *ProjectsResourcesGeneratePackagesSummaryCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsResourcesGeneratePackagesSummaryCall) Context(ctx context.Context) *ProjectsResourcesGeneratePackagesSummaryCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsResourcesGeneratePackagesSummaryCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsResourcesGeneratePackagesSummaryCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.generatepackagessummaryrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta1/{+name}:generatePackagesSummary") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "containeranalysis.projects.resources.generatePackagesSummary" call. // Any non-2xx status code is an error. Response headers are in either // *PackagesSummaryResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsResourcesGeneratePackagesSummaryCall) Do(opts ...googleapi.CallOption) (*PackagesSummaryResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &PackagesSummaryResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil }