// 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/v1" // ... // 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/v1" 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:v1" const apiName = "containeranalysis" const apiVersion = "v1" 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) } // 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) } // AttestationNote: 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 AttestationNote 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 *AttestationNote) MarshalJSON() ([]byte, error) { type NoMethod AttestationNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // AttestationOccurrence: 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 lookup (how to find this attestation if you already // know the authority and artifact to be verified) and intent (for which // authority this attestation was intended to sign. type AttestationOccurrence struct { // Jwts: One or more JWTs encoding a self-contained attestation. Each JWT // encodes the payload that it verifies within the JWT itself. Verifier // implementation SHOULD ignore the `serialized_payload` field when verifying // these JWTs. If only JWTs are present on this AttestationOccurrence, then the // `serialized_payload` SHOULD be left empty. Each JWT SHOULD encode a claim // specific to the `resource_uri` of this Occurrence, but this is not validated // by Grafeas metadata API implementations. The JWT itself is opaque to // Grafeas. Jwts []*Jwt `json:"jwts,omitempty"` // SerializedPayload: Required. The serialized payload that is verified by one // or more `signatures`. 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. "Jwts") 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. "Jwts") 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 *AttestationOccurrence) MarshalJSON() ([]byte, error) { type NoMethod AttestationOccurrence 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. 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) } 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) } // BuildNote: Note holding the version of the provider's builder and the // signature of the provenance message in the build details occurrence. type BuildNote struct { // BuilderVersion: Required. Immutable. Version of the builder which produced // this build. BuilderVersion string `json:"builderVersion,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 *BuildNote) MarshalJSON() ([]byte, error) { type NoMethod BuildNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BuildOccurrence: Details of a build occurrence. type BuildOccurrence struct { // InTotoSlsaProvenanceV1: In-Toto Slsa Provenance V1 represents a slsa // provenance meeting the slsa spec, wrapped in an in-toto statement. This // allows for direct jsonification of a to-spec in-toto slsa statement with a // to-spec slsa provenance. InTotoSlsaProvenanceV1 *InTotoSlsaProvenanceV1 `json:"inTotoSlsaProvenanceV1,omitempty"` // IntotoProvenance: Deprecated. See InTotoStatement for the replacement. // In-toto Provenance representation as defined in spec. IntotoProvenance *InTotoProvenance `json:"intotoProvenance,omitempty"` // IntotoStatement: In-toto Statement representation as defined in spec. The // intoto_statement can contain any type of provenance. The serialized payload // of the statement can be stored and signed in the Occurrence's envelope. IntotoStatement *InTotoStatement `json:"intotoStatement,omitempty"` // Provenance: 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 *BuildOccurrence) MarshalJSON() ([]byte, error) { type NoMethod BuildOccurrence 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) } // 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) } type BuilderConfig struct { Id string `json:"id,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *BuilderConfig) MarshalJSON() ([]byte, error) { type NoMethod BuilderConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // CVSS: Common Vulnerability Scoring System. For details, see // https://www.first.org/cvss/specification-document This is a message we will // try to use for storing various versions of CVSS rather than making a // separate proto for storing a specific version. type CVSS struct { // Possible values: // "ATTACK_COMPLEXITY_UNSPECIFIED" // "ATTACK_COMPLEXITY_LOW" // "ATTACK_COMPLEXITY_HIGH" // "ATTACK_COMPLEXITY_MEDIUM" 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: // "AUTHENTICATION_UNSPECIFIED" // "AUTHENTICATION_MULTIPLE" // "AUTHENTICATION_SINGLE" // "AUTHENTICATION_NONE" Authentication string `json:"authentication,omitempty"` // Possible values: // "IMPACT_UNSPECIFIED" // "IMPACT_HIGH" // "IMPACT_LOW" // "IMPACT_NONE" // "IMPACT_PARTIAL" // "IMPACT_COMPLETE" 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" // "IMPACT_PARTIAL" // "IMPACT_COMPLETE" 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" // "IMPACT_PARTIAL" // "IMPACT_COMPLETE" 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 *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: 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 } // Category: The category to which the update belongs. type Category struct { // CategoryId: The identifier of the category. CategoryId string `json:"categoryId,omitempty"` // Name: The localized name of the category. Name string `json:"name,omitempty"` // ForceSendFields is a list of field names (e.g. "CategoryId") 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. "CategoryId") 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 *Category) MarshalJSON() ([]byte, error) { type NoMethod Category return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // CisBenchmark: A compliance check that is a CIS benchmark. type CisBenchmark struct { ProfileLevel int64 `json:"profileLevel,omitempty"` // 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"` // ForceSendFields is a list of field names (e.g. "ProfileLevel") 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. "ProfileLevel") 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 *CisBenchmark) MarshalJSON() ([]byte, error) { type NoMethod CisBenchmark return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // 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) } // CloudStorageLocation: Empty placeholder to denote that this is a Google // Cloud Storage export request. type CloudStorageLocation struct { } // 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) } // Completeness: Indicates that the builder claims certain fields in this // message to be complete. type Completeness struct { // Arguments: If true, the builder claims that recipe.arguments is complete, // meaning that all external inputs are properly captured in the recipe. Arguments bool `json:"arguments,omitempty"` // Environment: If true, the builder claims that recipe.environment is claimed // to be complete. Environment bool `json:"environment,omitempty"` // Materials: If true, the builder claims that materials are complete, usually // through some controls to prevent network access. Sometimes called // "hermetic". Materials bool `json:"materials,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 *Completeness) MarshalJSON() ([]byte, error) { type NoMethod Completeness return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ComplianceNote struct { CisBenchmark *CisBenchmark `json:"cisBenchmark,omitempty"` // Description: A description about this compliance check. Description string `json:"description,omitempty"` Impact string `json:"impact,omitempty"` // Rationale: A rationale for the existence of this compliance check. Rationale string `json:"rationale,omitempty"` // Remediation: A description of remediation steps if the compliance check // fails. Remediation string `json:"remediation,omitempty"` // ScanInstructions: Serialized scan instructions with a predefined format. ScanInstructions string `json:"scanInstructions,omitempty"` // Title: The title that identifies this compliance check. Title string `json:"title,omitempty"` // Version: The OS and config versions the benchmark applies to. Version []*ComplianceVersion `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "CisBenchmark") 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. "CisBenchmark") 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 *ComplianceNote) MarshalJSON() ([]byte, error) { type NoMethod ComplianceNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ComplianceOccurrence: An indication that the compliance checks in the // associated ComplianceNote were not satisfied for particular resources or a // specified reason. type ComplianceOccurrence struct { NonComplianceReason string `json:"nonComplianceReason,omitempty"` NonCompliantFiles []*NonCompliantFile `json:"nonCompliantFiles,omitempty"` // Version: The OS and config version the benchmark was run on. Version *ComplianceVersion `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "NonComplianceReason") 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. "NonComplianceReason") 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 *ComplianceOccurrence) MarshalJSON() ([]byte, error) { type NoMethod ComplianceOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ComplianceVersion: Describes the CIS benchmark version that is applicable to // a given OS and os version. type ComplianceVersion struct { // BenchmarkDocument: The name of the document that defines this benchmark, // e.g. "CIS Container-Optimized OS". BenchmarkDocument string `json:"benchmarkDocument,omitempty"` // CpeUri: The CPE URI (https://cpe.mitre.org/specification/) this benchmark is // applicable to. CpeUri string `json:"cpeUri,omitempty"` // Version: The version of the benchmark. This is set to the version of the // OS-specific CIS document the benchmark is defined in. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "BenchmarkDocument") 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. "BenchmarkDocument") 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 *ComplianceVersion) MarshalJSON() ([]byte, error) { type NoMethod ComplianceVersion 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) } type DSSEAttestationNote struct { // Hint: DSSEHint hints at the purpose of the attestation authority. Hint *DSSEHint `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 *DSSEAttestationNote) MarshalJSON() ([]byte, error) { type NoMethod DSSEAttestationNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DSSEAttestationOccurrence: Deprecated. Prefer to use a regular Occurrence, // and populate the Envelope at the top level of the Occurrence. type DSSEAttestationOccurrence struct { // Envelope: If doing something security critical, make sure to verify the // signatures in this metadata. Envelope *Envelope `json:"envelope,omitempty"` Statement *InTotoStatement `json:"statement,omitempty"` // ForceSendFields is a list of field names (e.g. "Envelope") 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. "Envelope") 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 *DSSEAttestationOccurrence) MarshalJSON() ([]byte, error) { type NoMethod DSSEAttestationOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DSSEHint: 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 DSSEHint struct { // HumanReadableName: Required. The human readable name of this attestation // authority, for example "cloudbuild-prod". 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 *DSSEHint) MarshalJSON() ([]byte, error) { type NoMethod DSSEHint return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DeploymentNote: An artifact that can be deployed in some runtime. type DeploymentNote 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 *DeploymentNote) MarshalJSON() ([]byte, error) { type NoMethod DeploymentNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DeploymentOccurrence: The period during which some deployable was active in // a runtime. type DeploymentOccurrence 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 *DeploymentOccurrence) MarshalJSON() ([]byte, error) { type NoMethod DeploymentOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Detail: A detail for a distro and package affected by this vulnerability and // its associated fix (if one is available). type Detail struct { // AffectedCpeUri: Required. The CPE URI (https://cpe.mitre.org/specification/) // this vulnerability affects. AffectedCpeUri string `json:"affectedCpeUri,omitempty"` // AffectedPackage: Required. The package this vulnerability affects. AffectedPackage string `json:"affectedPackage,omitempty"` // AffectedVersionEnd: The version number at the end of an interval in which // this vulnerability exists. A vulnerability can affect a package between // version numbers that are disjoint sets of intervals (example: [1.0.0-1.1.0], // [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its // own Detail. If a specific affected version is provided by a vulnerability // database, affected_version_start and affected_version_end will be the same // in that Detail. AffectedVersionEnd *Version `json:"affectedVersionEnd,omitempty"` // AffectedVersionStart: The version number at the start of an interval in // which this vulnerability exists. A vulnerability can affect a package // between version numbers that are disjoint sets of intervals (example: // [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be // represented in its own Detail. If a specific affected version is provided by // a vulnerability database, affected_version_start and affected_version_end // will be the same in that Detail. AffectedVersionStart *Version `json:"affectedVersionStart,omitempty"` // Description: A vendor-specific description of this vulnerability. Description string `json:"description,omitempty"` // FixedCpeUri: The distro recommended CPE URI // (https://cpe.mitre.org/specification/) to update to that contains a fix for // this vulnerability. It is possible for this to be different from the // affected_cpe_uri. FixedCpeUri string `json:"fixedCpeUri,omitempty"` // FixedPackage: The distro recommended package to update to that contains a // fix for this vulnerability. It is possible for this to be different from the // affected_package. FixedPackage string `json:"fixedPackage,omitempty"` // FixedVersion: The distro recommended version to update to that contains a // fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no // such version is yet available. FixedVersion *Version `json:"fixedVersion,omitempty"` // IsObsolete: Whether this detail is obsolete. Occurrences are expected not to // point to obsolete details. IsObsolete bool `json:"isObsolete,omitempty"` // PackageType: The type of package; whether native or non native (e.g., ruby // gems, node.js packages, etc.). PackageType string `json:"packageType,omitempty"` // SeverityName: The distro assigned severity of 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. "AffectedCpeUri") 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. "AffectedCpeUri") 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) } // 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) } // DiscoveryNote: 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 DiscoveryNote 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. // "UPGRADE" - This represents an available package upgrade. // "COMPLIANCE" - This represents a Compliance Note // "DSSE_ATTESTATION" - This represents a DSSE attestation Note // "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 *DiscoveryNote) MarshalJSON() ([]byte, error) { type NoMethod DiscoveryNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // DiscoveryOccurrence: Provides information about the analysis status of a // discovered resource. type DiscoveryOccurrence 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"` // ArchiveTime: Output only. The time occurrences related to this discovery // occurrence were archived. ArchiveTime string `json:"archiveTime,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"` // Cpe: The CPE of the resource being scanned. Cpe string `json:"cpe,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 *DiscoveryOccurrence) MarshalJSON() ([]byte, error) { type NoMethod DiscoveryOccurrence 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) } // 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) } // ExportSBOMRequest: The request to generate and export SBOM. Target must be // specified for the request. type ExportSBOMRequest struct { // CloudStorageLocation: Empty placeholder to denote that this is a Google // Cloud Storage export request. CloudStorageLocation *CloudStorageLocation `json:"cloudStorageLocation,omitempty"` // ForceSendFields is a list of field names (e.g. "CloudStorageLocation") 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. "CloudStorageLocation") 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 *ExportSBOMRequest) MarshalJSON() ([]byte, error) { type NoMethod ExportSBOMRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ExportSBOMResponse: The response from a call to ExportSBOM. type ExportSBOMResponse struct { // DiscoveryOccurrence: The name of the discovery occurrence in the form // "projects/{project_id}/occurrences/{OCCURRENCE_ID} It can be used to track // the progress of the SBOM export. DiscoveryOccurrence string `json:"discoveryOccurrence,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "DiscoveryOccurrence") 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. "DiscoveryOccurrence") 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) } // 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) } // 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"` // ResourceUri: The affected resource. ResourceUri string `json:"resourceUri,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) } // 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) } // GrafeasV1FileLocation: Indicates the location at which a package was found. type GrafeasV1FileLocation struct { // FilePath: For jars that are contained inside .war files, this filepath can // indicate the path to war file combined with the path to jar file. FilePath string `json:"filePath,omitempty"` // ForceSendFields is a list of field names (e.g. "FilePath") 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. "FilePath") 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 *GrafeasV1FileLocation) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1FileLocation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1SlsaProvenanceZeroTwoSlsaBuilder: Identifies the entity that // executed the recipe, which is trusted to have correctly performed the // operation and populated this provenance. type GrafeasV1SlsaProvenanceZeroTwoSlsaBuilder struct { Id string `json:"id,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *GrafeasV1SlsaProvenanceZeroTwoSlsaBuilder) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1SlsaProvenanceZeroTwoSlsaBuilder return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1SlsaProvenanceZeroTwoSlsaCompleteness: Indicates that the builder // claims certain fields in this message to be complete. type GrafeasV1SlsaProvenanceZeroTwoSlsaCompleteness struct { Environment bool `json:"environment,omitempty"` Materials bool `json:"materials,omitempty"` Parameters bool `json:"parameters,omitempty"` // ForceSendFields is a list of field names (e.g. "Environment") 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. "Environment") 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 *GrafeasV1SlsaProvenanceZeroTwoSlsaCompleteness) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1SlsaProvenanceZeroTwoSlsaCompleteness return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1SlsaProvenanceZeroTwoSlsaConfigSource: Describes where the config // file that kicked off the build came from. This is effectively a pointer to // the source where buildConfig came from. type GrafeasV1SlsaProvenanceZeroTwoSlsaConfigSource struct { Digest map[string]string `json:"digest,omitempty"` EntryPoint string `json:"entryPoint,omitempty"` Uri string `json:"uri,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 *GrafeasV1SlsaProvenanceZeroTwoSlsaConfigSource) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1SlsaProvenanceZeroTwoSlsaConfigSource return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1SlsaProvenanceZeroTwoSlsaInvocation: Identifies the event that // kicked off the build. type GrafeasV1SlsaProvenanceZeroTwoSlsaInvocation struct { ConfigSource *GrafeasV1SlsaProvenanceZeroTwoSlsaConfigSource `json:"configSource,omitempty"` Environment googleapi.RawMessage `json:"environment,omitempty"` Parameters googleapi.RawMessage `json:"parameters,omitempty"` // ForceSendFields is a list of field names (e.g. "ConfigSource") 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. "ConfigSource") 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 *GrafeasV1SlsaProvenanceZeroTwoSlsaInvocation) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1SlsaProvenanceZeroTwoSlsaInvocation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1SlsaProvenanceZeroTwoSlsaMaterial: The collection of artifacts that // influenced the build including sources, dependencies, build tools, base // images, and so on. type GrafeasV1SlsaProvenanceZeroTwoSlsaMaterial struct { Digest map[string]string `json:"digest,omitempty"` Uri string `json:"uri,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 *GrafeasV1SlsaProvenanceZeroTwoSlsaMaterial) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1SlsaProvenanceZeroTwoSlsaMaterial return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GrafeasV1SlsaProvenanceZeroTwoSlsaMetadata: Other properties of the build. type GrafeasV1SlsaProvenanceZeroTwoSlsaMetadata struct { BuildFinishedOn string `json:"buildFinishedOn,omitempty"` BuildInvocationId string `json:"buildInvocationId,omitempty"` BuildStartedOn string `json:"buildStartedOn,omitempty"` Completeness *GrafeasV1SlsaProvenanceZeroTwoSlsaCompleteness `json:"completeness,omitempty"` Reproducible bool `json:"reproducible,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildFinishedOn") 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. "BuildFinishedOn") 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 *GrafeasV1SlsaProvenanceZeroTwoSlsaMetadata) MarshalJSON() ([]byte, error) { type NoMethod GrafeasV1SlsaProvenanceZeroTwoSlsaMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Hash: Container message for hash values. type Hash struct { // Type: Required. The type of hash that was performed, e.g. "SHA-256". 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) } // Identity: The unique identifier of the update. type Identity struct { // Revision: The revision number of the update. Revision int64 `json:"revision,omitempty"` // UpdateId: The revision independent identifier of the update. UpdateId string `json:"updateId,omitempty"` // ForceSendFields is a list of field names (e.g. "Revision") 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. "Revision") 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 *Identity) MarshalJSON() ([]byte, error) { type NoMethod Identity return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ImageNote: 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 ImageNote 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 *ImageNote) MarshalJSON() ([]byte, error) { type NoMethod ImageNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ImageOccurrence: Details of the derived image portion of the DockerImage // relationship. This image would be produced from a Dockerfile with FROM . type ImageOccurrence 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 *ImageOccurrence) MarshalJSON() ([]byte, error) { type NoMethod ImageOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type InTotoProvenance struct { // BuilderConfig: required BuilderConfig *BuilderConfig `json:"builderConfig,omitempty"` // Materials: The collection of artifacts that influenced the build including // sources, dependencies, build tools, base images, and so on. This is // considered to be incomplete unless metadata.completeness.materials is true. // Unset or null is equivalent to empty. Materials []string `json:"materials,omitempty"` Metadata *Metadata `json:"metadata,omitempty"` // Recipe: Identifies the configuration used for the build. When combined with // materials, this SHOULD fully describe the build, such that re-running this // recipe results in bit-for-bit identical output (if the build is // reproducible). required Recipe *Recipe `json:"recipe,omitempty"` // ForceSendFields is a list of field names (e.g. "BuilderConfig") 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. "BuilderConfig") 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 *InTotoProvenance) MarshalJSON() ([]byte, error) { type NoMethod InTotoProvenance 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) } // InTotoStatement: Spec defined at // https://github.com/in-toto/attestation/tree/main/spec#statement The // serialized InTotoStatement will be stored as Envelope.payload. // Envelope.payloadType is always "application/vnd.in-toto+json". type InTotoStatement struct { // Type: Always `https://in-toto.io/Statement/v0.1`. Type string `json:"_type,omitempty"` // PredicateType: `https://slsa.dev/provenance/v0.1` for SlsaProvenance. PredicateType string `json:"predicateType,omitempty"` Provenance *InTotoProvenance `json:"provenance,omitempty"` SlsaProvenance *SlsaProvenance `json:"slsaProvenance,omitempty"` SlsaProvenanceZeroTwo *SlsaProvenanceZeroTwo `json:"slsaProvenanceZeroTwo,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 *InTotoStatement) MarshalJSON() ([]byte, error) { type NoMethod InTotoStatement 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 Jwt struct { // CompactJwt: The compact encoding of a JWS, which is always three base64 // encoded strings joined by periods. For details, see: // https://tools.ietf.org/html/rfc7515.html#section-3.1 CompactJwt string `json:"compactJwt,omitempty"` // ForceSendFields is a list of field names (e.g. "CompactJwt") 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. "CompactJwt") 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 *Jwt) MarshalJSON() ([]byte, error) { type NoMethod Jwt return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type KnowledgeBase struct { // Name: The KB name (generally of the form KB[0-9]+ (e.g., 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. See https://docs.docker.com/engine/reference/builder/ for more // information. 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) } // 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/) 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) } type Material struct { Digest map[string]string `json:"digest,omitempty"` Uri string `json:"uri,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 *Material) MarshalJSON() ([]byte, error) { type NoMethod Material return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Metadata: Other properties of the build. type Metadata struct { // BuildFinishedOn: The timestamp of when the build completed. BuildFinishedOn string `json:"buildFinishedOn,omitempty"` // BuildInvocationId: Identifies the particular build invocation, which can be // useful for finding associated logs or other ad-hoc analysis. The value // SHOULD be globally unique, per in-toto Provenance spec. BuildInvocationId string `json:"buildInvocationId,omitempty"` // BuildStartedOn: The timestamp of when the build started. BuildStartedOn string `json:"buildStartedOn,omitempty"` // Completeness: Indicates that the builder claims certain fields in this // message to be complete. Completeness *Completeness `json:"completeness,omitempty"` // Reproducible: If true, the builder claims that running the recipe on // materials will produce bit-for-bit identical output. Reproducible bool `json:"reproducible,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildFinishedOn") 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. "BuildFinishedOn") 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 *Metadata) MarshalJSON() ([]byte, error) { type NoMethod Metadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // NonCompliantFile: Details about files that caused a compliance check to // fail. display_command is a single command that can be used to display a list // of non compliant files. When there is no such command, we can also iterate a // list of non compliant file using 'path'. type NonCompliantFile struct { // DisplayCommand: Command to display the non-compliant files. DisplayCommand string `json:"displayCommand,omitempty"` // Path: Empty if `display_command` is set. Path string `json:"path,omitempty"` // Reason: Explains why a file is non compliant for a CIS check. Reason string `json:"reason,omitempty"` // ForceSendFields is a list of field names (e.g. "DisplayCommand") 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. "DisplayCommand") 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 *NonCompliantFile) MarshalJSON() ([]byte, error) { type NoMethod NonCompliantFile return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Note: A type of analysis that can be done for a resource. type Note struct { // Attestation: A note describing an attestation role. Attestation *AttestationNote `json:"attestation,omitempty"` // Build: A note describing build provenance for a verifiable build. Build *BuildNote `json:"build,omitempty"` // Compliance: A note describing a compliance check. Compliance *ComplianceNote `json:"compliance,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"` // Deployment: A note describing something that can be deployed. Deployment *DeploymentNote `json:"deployment,omitempty"` // Discovery: A note describing the initial analysis of a resource. Discovery *DiscoveryNote `json:"discovery,omitempty"` // DsseAttestation: A note describing a dsse attestation note. DsseAttestation *DSSEAttestationNote `json:"dsseAttestation,omitempty"` // ExpirationTime: Time of expiration for this note. Empty if note does not // expire. ExpirationTime string `json:"expirationTime,omitempty"` // Image: A note describing a base image. Image *ImageNote `json:"image,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. // "UPGRADE" - This represents an available package upgrade. // "COMPLIANCE" - This represents a Compliance Note // "DSSE_ATTESTATION" - This represents a DSSE attestation Note // "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 *PackageNote `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"` // 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"` // 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"` // Upgrade: A note describing available package upgrades. Upgrade *UpgradeNote `json:"upgrade,omitempty"` // Vulnerability: A note describing a package vulnerability. Vulnerability *VulnerabilityNote `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. "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 *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 *AttestationOccurrence `json:"attestation,omitempty"` // Build: Describes a verifiable build. Build *BuildOccurrence `json:"build,omitempty"` // Compliance: Describes a compliance violation on a linked resource. Compliance *ComplianceOccurrence `json:"compliance,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 *DeploymentOccurrence `json:"deployment,omitempty"` // Discovery: Describes when a resource was discovered. Discovery *DiscoveryOccurrence `json:"discovery,omitempty"` // DsseAttestation: Describes an attestation of an artifact using dsse. DsseAttestation *DSSEAttestationOccurrence `json:"dsseAttestation,omitempty"` // Envelope: https://github.com/secure-systems-lab/dsse Envelope *Envelope `json:"envelope,omitempty"` // Image: Describes how this resource derives from the basis in the associated // note. Image *ImageOccurrence `json:"image,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. // "UPGRADE" - This represents an available package upgrade. // "COMPLIANCE" - This represents a Compliance Note // "DSSE_ATTESTATION" - This represents a DSSE attestation Note // "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"` // Package: Describes the installation of a package on the linked resource. Package *PackageOccurrence `json:"package,omitempty"` // Remediation: A description of actions that can be taken to remedy the note. Remediation string `json:"remediation,omitempty"` // ResourceUri: Required. Immutable. A URI that represents the resource for // which the occurrence applies. For example, // `https://gcr.io/project/image@sha256:123abc` for a Docker image. ResourceUri string `json:"resourceUri,omitempty"` // SbomReference: Describes a specific SBOM reference occurrences. SbomReference *SBOMReferenceOccurrence `json:"sbomReference,omitempty"` // UpdateTime: Output only. The time this occurrence was last updated. UpdateTime string `json:"updateTime,omitempty"` // Upgrade: Describes an available package upgrade on the linked resource. Upgrade *UpgradeOccurrence `json:"upgrade,omitempty"` // Vulnerability: Describes a security vulnerability. Vulnerability *VulnerabilityOccurrence `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) } // PackageIssue: A detail for a distro and package this vulnerability // occurrence was found in and its associated fix (if one is available). type PackageIssue struct { // AffectedCpeUri: Required. The CPE URI (https://cpe.mitre.org/specification/) // this vulnerability was found in. AffectedCpeUri string `json:"affectedCpeUri,omitempty"` // AffectedPackage: Required. The package this vulnerability was found in. AffectedPackage string `json:"affectedPackage,omitempty"` // AffectedVersion: Required. The version of the package that is installed on // the resource affected by this vulnerability. AffectedVersion *Version `json:"affectedVersion,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"` // FileLocation: The location at which this package was found. FileLocation []*GrafeasV1FileLocation `json:"fileLocation,omitempty"` // FixAvailable: Output only. Whether a fix is available for this package. FixAvailable bool `json:"fixAvailable,omitempty"` // FixedCpeUri: The CPE URI (https://cpe.mitre.org/specification/) this // vulnerability was fixed in. It is possible for this to be different from the // affected_cpe_uri. FixedCpeUri string `json:"fixedCpeUri,omitempty"` // FixedPackage: The package this vulnerability was fixed in. It is possible // for this to be different from the affected_package. FixedPackage string `json:"fixedPackage,omitempty"` // FixedVersion: Required. The version of the package this vulnerability was // fixed in. Setting this to VersionKind.MAXIMUM means no fix is yet available. FixedVersion *Version `json:"fixedVersion,omitempty"` // PackageType: The type of package (e.g. OS, MAVEN, GO). PackageType string `json:"packageType,omitempty"` // ForceSendFields is a list of field names (e.g. "AffectedCpeUri") 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. "AffectedCpeUri") 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) } // PackageNote: PackageNote represents a particular package version. type PackageNote 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: Deprecated. 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 *PackageNote) MarshalJSON() ([]byte, error) { type NoMethod PackageNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // PackageOccurrence: Details on how a particular software package was // installed on a system. type PackageOccurrence 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 *PackageOccurrence) MarshalJSON() ([]byte, error) { type NoMethod PackageOccurrence 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) } // Recipe: Steps taken to build the artifact. For a TaskRun, typically each // container corresponds to one step in the recipe. type Recipe struct { // Arguments: Collection of all external inputs that influenced the build on // top of recipe.definedInMaterial and recipe.entryPoint. For example, if the // recipe type were "make", then this might be the flags passed to make aside // from the target, which is captured in recipe.entryPoint. Since the arguments // field can greatly vary in structure, depending on the builder and recipe // type, this is of form "Any". Arguments []googleapi.RawMessage `json:"arguments,omitempty"` // DefinedInMaterial: Index in materials containing the recipe steps that are // not implied by recipe.type. For example, if the recipe type were "make", // then this would point to the source containing the Makefile, not the make // program itself. Set to -1 if the recipe doesn't come from a material, as // zero is default unset value for int64. DefinedInMaterial int64 `json:"definedInMaterial,omitempty,string"` // EntryPoint: String identifying the entry point into the build. This is often // a path to a configuration file and/or a target label within that file. The // syntax and meaning are defined by recipe.type. For example, if the recipe // type were "make", then this would reference the directory in which to run // make as well as which target to use. EntryPoint string `json:"entryPoint,omitempty"` // Environment: Any other builder-controlled inputs necessary for correctly // evaluating the recipe. Usually only needed for reproducing the build but not // evaluated as part of policy. Since the environment field can greatly vary in // structure, depending on the builder and recipe type, this is of form "Any". Environment []googleapi.RawMessage `json:"environment,omitempty"` // Type: URI indicating what type of recipe was performed. It determines the // meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and // materials. Type string `json:"type,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 *Recipe) MarshalJSON() ([]byte, error) { type NoMethod Recipe 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) } // 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) } 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) } type SlsaBuilder struct { Id string `json:"id,omitempty"` // ForceSendFields is a list of field names (e.g. "Id") 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. "Id") 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 *SlsaBuilder) MarshalJSON() ([]byte, error) { type NoMethod SlsaBuilder return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SlsaCompleteness: Indicates that the builder claims certain fields in this // message to be complete. type SlsaCompleteness struct { // Arguments: If true, the builder claims that recipe.arguments is complete, // meaning that all external inputs are properly captured in the recipe. Arguments bool `json:"arguments,omitempty"` // Environment: If true, the builder claims that recipe.environment is claimed // to be complete. Environment bool `json:"environment,omitempty"` // Materials: If true, the builder claims that materials are complete, usually // through some controls to prevent network access. Sometimes called // "hermetic". Materials bool `json:"materials,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 *SlsaCompleteness) MarshalJSON() ([]byte, error) { type NoMethod SlsaCompleteness return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SlsaMetadata: Other properties of the build. type SlsaMetadata struct { // BuildFinishedOn: The timestamp of when the build completed. BuildFinishedOn string `json:"buildFinishedOn,omitempty"` // BuildInvocationId: Identifies the particular build invocation, which can be // useful for finding associated logs or other ad-hoc analysis. The value // SHOULD be globally unique, per in-toto Provenance spec. BuildInvocationId string `json:"buildInvocationId,omitempty"` // BuildStartedOn: The timestamp of when the build started. BuildStartedOn string `json:"buildStartedOn,omitempty"` // Completeness: Indicates that the builder claims certain fields in this // message to be complete. Completeness *SlsaCompleteness `json:"completeness,omitempty"` // Reproducible: If true, the builder claims that running the recipe on // materials will produce bit-for-bit identical output. Reproducible bool `json:"reproducible,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildFinishedOn") 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. "BuildFinishedOn") 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 *SlsaMetadata) MarshalJSON() ([]byte, error) { type NoMethod SlsaMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type SlsaProvenance struct { // Builder: required Builder *SlsaBuilder `json:"builder,omitempty"` // Materials: The collection of artifacts that influenced the build including // sources, dependencies, build tools, base images, and so on. This is // considered to be incomplete unless metadata.completeness.materials is true. // Unset or null is equivalent to empty. Materials []*Material `json:"materials,omitempty"` Metadata *SlsaMetadata `json:"metadata,omitempty"` // Recipe: Identifies the configuration used for the build. When combined with // materials, this SHOULD fully describe the build, such that re-running this // recipe results in bit-for-bit identical output (if the build is // reproducible). required Recipe *SlsaRecipe `json:"recipe,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 *SlsaProvenance) MarshalJSON() ([]byte, error) { type NoMethod SlsaProvenance 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) } // SlsaProvenanceZeroTwo: See full explanation of fields at // slsa.dev/provenance/v0.2. type SlsaProvenanceZeroTwo struct { BuildConfig googleapi.RawMessage `json:"buildConfig,omitempty"` BuildType string `json:"buildType,omitempty"` Builder *GrafeasV1SlsaProvenanceZeroTwoSlsaBuilder `json:"builder,omitempty"` Invocation *GrafeasV1SlsaProvenanceZeroTwoSlsaInvocation `json:"invocation,omitempty"` Materials []*GrafeasV1SlsaProvenanceZeroTwoSlsaMaterial `json:"materials,omitempty"` Metadata *GrafeasV1SlsaProvenanceZeroTwoSlsaMetadata `json:"metadata,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildConfig") 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. "BuildConfig") 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 *SlsaProvenanceZeroTwo) MarshalJSON() ([]byte, error) { type NoMethod SlsaProvenanceZeroTwo return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SlsaRecipe: Steps taken to build the artifact. For a TaskRun, typically each // container corresponds to one step in the recipe. type SlsaRecipe struct { // Arguments: Collection of all external inputs that influenced the build on // top of recipe.definedInMaterial and recipe.entryPoint. For example, if the // recipe type were "make", then this might be the flags passed to make aside // from the target, which is captured in recipe.entryPoint. Depending on the // recipe Type, the structure may be different. Arguments googleapi.RawMessage `json:"arguments,omitempty"` // DefinedInMaterial: Index in materials containing the recipe steps that are // not implied by recipe.type. For example, if the recipe type were "make", // then this would point to the source containing the Makefile, not the make // program itself. Set to -1 if the recipe doesn't come from a material, as // zero is default unset value for int64. DefinedInMaterial int64 `json:"definedInMaterial,omitempty,string"` // EntryPoint: String identifying the entry point into the build. This is often // a path to a configuration file and/or a target label within that file. The // syntax and meaning are defined by recipe.type. For example, if the recipe // type were "make", then this would reference the directory in which to run // make as well as which target to use. EntryPoint string `json:"entryPoint,omitempty"` // Environment: Any other builder-controlled inputs necessary for correctly // evaluating the recipe. Usually only needed for reproducing the build but not // evaluated as part of policy. Depending on the recipe Type, the structure may // be different. Environment googleapi.RawMessage `json:"environment,omitempty"` // Type: URI indicating what type of recipe was performed. It determines the // meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and // materials. Type string `json:"type,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 *SlsaRecipe) MarshalJSON() ([]byte, error) { type NoMethod SlsaRecipe 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) } 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 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) } // UpgradeDistribution: The Upgrade Distribution represents metadata about the // Upgrade for each operating system (CPE). Some distributions have additional // metadata around updates, classifying them into various categories and // severities. type UpgradeDistribution struct { // Classification: The operating system classification of this Upgrade, as // specified by the upstream operating system upgrade feed. For Windows the // classification is one of the category_ids listed at // https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ff357803(v=vs.85) Classification string `json:"classification,omitempty"` // CpeUri: Required - The specific operating system this metadata applies to. // See https://cpe.mitre.org/specification/. CpeUri string `json:"cpeUri,omitempty"` // Cve: The cve tied to this Upgrade. Cve []string `json:"cve,omitempty"` // Severity: The severity as specified by the upstream operating system. Severity string `json:"severity,omitempty"` // ForceSendFields is a list of field names (e.g. "Classification") 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. "Classification") 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 *UpgradeDistribution) MarshalJSON() ([]byte, error) { type NoMethod UpgradeDistribution return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // UpgradeNote: An Upgrade Note represents a potential upgrade of a package to // a given version. For each package version combination (i.e. bash 4.0, bash // 4.1, bash 4.1.2), there will be an Upgrade Note. For Windows, windows_update // field represents the information related to the update. type UpgradeNote struct { // Distributions: Metadata about the upgrade for each specific operating // system. Distributions []*UpgradeDistribution `json:"distributions,omitempty"` // Package: Required for non-Windows OS. The package this Upgrade is for. Package string `json:"package,omitempty"` // Version: Required for non-Windows OS. The version of the package in machine // + human readable form. Version *Version `json:"version,omitempty"` // WindowsUpdate: Required for Windows OS. Represents the metadata about the // Windows update. WindowsUpdate *WindowsUpdate `json:"windowsUpdate,omitempty"` // ForceSendFields is a list of field names (e.g. "Distributions") 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. "Distributions") 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 *UpgradeNote) MarshalJSON() ([]byte, error) { type NoMethod UpgradeNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // UpgradeOccurrence: An Upgrade Occurrence represents that a specific // resource_url could install a specific upgrade. This presence is supplied via // local sources (i.e. it is present in the mirror and the running system has // noticed its availability). For Windows, both distribution and windows_update // contain information for the Windows update. type UpgradeOccurrence struct { // Distribution: Metadata about the upgrade for available for the specific // operating system for the resource_url. This allows efficient filtering, as // well as making it easier to use the occurrence. Distribution *UpgradeDistribution `json:"distribution,omitempty"` // Package: Required for non-Windows OS. The package this Upgrade is for. Package string `json:"package,omitempty"` // ParsedVersion: Required for non-Windows OS. The version of the package in a // machine + human readable form. ParsedVersion *Version `json:"parsedVersion,omitempty"` // WindowsUpdate: Required for Windows OS. Represents the metadata about the // Windows update. WindowsUpdate *WindowsUpdate `json:"windowsUpdate,omitempty"` // ForceSendFields is a list of field names (e.g. "Distribution") 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. "Distribution") 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 *UpgradeOccurrence) MarshalJSON() ([]byte, error) { type NoMethod UpgradeOccurrence 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"` // FullName: Human readable version string. This string is of the form :- and // is only set when kind is NORMAL. FullName string `json:"fullName,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) } // 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) } // VulnerabilityNote: A security vulnerability that can be found in resources. type VulnerabilityNote struct { // CvssScore: 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 full description of the v2 CVSS for this vulnerability. CvssV2 *CVSS `json:"cvssV2,omitempty"` // CvssV3: The full description of the CVSSv3 for this vulnerability. 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"` // Details: Details of all known distros and packages affected by this // vulnerability. Details []*Detail `json:"details,omitempty"` // Severity: The note provider assigned severity of this 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 *VulnerabilityNote) MarshalJSON() ([]byte, error) { type NoMethod VulnerabilityNote return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *VulnerabilityNote) UnmarshalJSON(data []byte) error { type NoMethod VulnerabilityNote 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 } // VulnerabilityOccurrence: An occurrence of a severity vulnerability on a // resource. type VulnerabilityOccurrence 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"` // 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"` // Cvssv3: The cvss v3 score for the vulnerability. Cvssv3 *CVSS `json:"cvssv3,omitempty"` // EffectiveSeverity: The distro assigned severity for this vulnerability when // it is available, otherwise this is the note provider assigned severity. 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"` // FixAvailable: Output only. Whether at least one of the affected packages has // a fix available. FixAvailable bool `json:"fixAvailable,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 this // 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 (e.g., 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 *VulnerabilityOccurrence) MarshalJSON() ([]byte, error) { type NoMethod VulnerabilityOccurrence return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } func (s *VulnerabilityOccurrence) UnmarshalJSON(data []byte) error { type NoMethod VulnerabilityOccurrence 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 } // 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 (https://cpe.mitre.org/specification/) this // vulnerability affects. CpeUri string `json:"cpeUri,omitempty"` // Description: The description of this 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 KBs // presence is considered a fix. FixingKbs []*KnowledgeBase `json:"fixingKbs,omitempty"` // Name: Required. The name of this 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) } // WindowsUpdate: Windows Update represents the metadata about the update for // the Windows operating system. The fields in this message come from the // Windows Update API documented at // https://docs.microsoft.com/en-us/windows/win32/api/wuapi/nn-wuapi-iupdate. type WindowsUpdate struct { // Categories: The list of categories to which the update belongs. Categories []*Category `json:"categories,omitempty"` // Description: The localized description of the update. Description string `json:"description,omitempty"` // Identity: Required - The unique identifier for the update. Identity *Identity `json:"identity,omitempty"` // KbArticleIds: The Microsoft Knowledge Base article IDs that are associated // with the update. KbArticleIds []string `json:"kbArticleIds,omitempty"` // LastPublishedTimestamp: The last published timestamp of the update. LastPublishedTimestamp string `json:"lastPublishedTimestamp,omitempty"` // SupportUrl: The hyperlink to the support information for the update. SupportUrl string `json:"supportUrl,omitempty"` // Title: The localized title of the update. Title string `json:"title,omitempty"` // ForceSendFields is a list of field names (e.g. "Categories") 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. "Categories") 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 *WindowsUpdate) MarshalJSON() ([]byte, error) { type NoMethod WindowsUpdate 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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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 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, "v1/{+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 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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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, "v1/{+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 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, "v1/{+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 }