blob: f8be46e538c647e55da54460ae8f077b0f62636e [file] [log] [blame]
// Copyright 2019 Google Inc. All rights reserved.
// 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.
//
// See https://cloud.google.com/container-analysis/api/reference/rest/
//
// Usage example:
//
// import "google.golang.org/api/containeranalysis/v1alpha1"
// ...
// containeranalysisService, err := containeranalysis.New(oauthHttpClient)
package containeranalysis // import "google.golang.org/api/containeranalysis/v1alpha1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
gensupport "google.golang.org/api/gensupport"
googleapi "google.golang.org/api/googleapi"
)
// 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
const apiId = "containeranalysis:v1alpha1"
const apiName = "containeranalysis"
const apiVersion = "v1alpha1"
const basePath = "https://containeranalysis.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
)
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)
s.Providers = NewProvidersService(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
Providers *ProvidersService
}
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.Notes = NewProjectsNotesService(s)
rs.Occurrences = NewProjectsOccurrencesService(s)
rs.Operations = NewProjectsOperationsService(s)
rs.ScanConfigs = NewProjectsScanConfigsService(s)
return rs
}
type ProjectsService struct {
s *Service
Notes *ProjectsNotesService
Occurrences *ProjectsOccurrencesService
Operations *ProjectsOperationsService
ScanConfigs *ProjectsScanConfigsService
}
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 NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
rs := &ProjectsOperationsService{s: s}
return rs
}
type ProjectsOperationsService struct {
s *Service
}
func NewProjectsScanConfigsService(s *Service) *ProjectsScanConfigsService {
rs := &ProjectsScanConfigsService{s: s}
return rs
}
type ProjectsScanConfigsService struct {
s *Service
}
func NewProvidersService(s *Service) *ProvidersService {
rs := &ProvidersService{s: s}
rs.Notes = NewProvidersNotesService(s)
return rs
}
type ProvidersService struct {
s *Service
Notes *ProvidersNotesService
}
func NewProvidersNotesService(s *Service) *ProvidersNotesService {
rs := &ProvidersNotesService{s: s}
rs.Occurrences = NewProvidersNotesOccurrencesService(s)
return rs
}
type ProvidersNotesService struct {
s *Service
Occurrences *ProvidersNotesOccurrencesService
}
func NewProvidersNotesOccurrencesService(s *Service) *ProvidersNotesOccurrencesService {
rs := &ProvidersNotesOccurrencesService{s: s}
return rs
}
type ProvidersNotesOccurrencesService struct {
s *Service
}
// 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"`
// Name: Name of the artifact. 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`.
//
// This field is deprecated in favor of the plural `names` field; it
// continues
// to exist here to allow existing BuildProvenance serialized to json
// in
// google.devtools.containeranalysis.v1alpha1.BuildDetails.provenance_
// bytes to
// deserialize back into proto.
Name string `json:"name,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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Artifact) MarshalJSON() ([]byte, error) {
type NoMethod Artifact
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Attestation: Occurrence that represents a single "attestation". The
// authenticity of an
// Attestation can be verified using the attached signature. If the
// verifier
// trusts the public key of the signer, then verifying the signature
// is
// sufficient to establish trust. In this circumstance,
// the
// AttestationAuthority to which this Attestation is attached is
// primarily
// useful for look-up (how to find this Attestation if you already know
// the
// Authority and artifact to be verified) and intent (which authority
// was this
// attestation intended to sign for).
type Attestation struct {
PgpSignedAttestation *PgpSignedAttestation `json:"pgpSignedAttestation,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "PgpSignedAttestation") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "PgpSignedAttestation") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Attestation) MarshalJSON() ([]byte, error) {
type NoMethod Attestation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AttestationAuthority: Note kind that represents a logical attestation
// "role" or "authority". For
// example, an organization might have one `AttestationAuthority` 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 AttestationAuthority struct {
Hint *AttestationAuthorityHint `json:"hint,omitempty"`
// ForceSendFields is a list of field names (e.g. "Hint") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AttestationAuthority) MarshalJSON() ([]byte, error) {
type NoMethod AttestationAuthority
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AttestationAuthorityHint: This submessage provides human-readable
// hints about the purpose of the
// AttestationAuthority. 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 AttestationAuthorities in security sensitive contexts, such
// as when
// looking up Attestations to verify.
type AttestationAuthorityHint struct {
// HumanReadableName: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AttestationAuthorityHint) MarshalJSON() ([]byte, error) {
type NoMethod AttestationAuthorityHint
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuditConfig: Specifies the audit configuration for a service.
// The configuration determines which permission types are logged, and
// what
// identities, if any, are exempted from logging.
// An AuditConfig must have one or more AuditLogConfigs.
//
// If there are AuditConfigs for both `allServices` and a specific
// service,
// the union of the two AuditConfigs is used for that service: the
// log_types
// specified in each AuditConfig are enabled, and the exempted_members
// in each
// AuditLogConfig are exempted.
//
// Example Policy with multiple AuditConfigs:
//
// {
// "audit_configs": [
// {
// "service": "allServices"
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// "exempted_members": [
// "user:foo@gmail.com"
// ]
// },
// {
// "log_type": "DATA_WRITE",
// },
// {
// "log_type": "ADMIN_READ",
// }
// ]
// },
// {
// "service": "fooservice.googleapis.com"
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// },
// {
// "log_type": "DATA_WRITE",
// "exempted_members": [
// "user:bar@gmail.com"
// ]
// }
// ]
// }
// ]
// }
//
// For fooservice, this policy enables DATA_READ, DATA_WRITE and
// ADMIN_READ
// logging. It also exempts foo@gmail.com from DATA_READ logging,
// and
// bar@gmail.com from DATA_WRITE logging.
type AuditConfig struct {
// AuditLogConfigs: The configuration for logging of each type of
// permission.
AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
// Service: Specifies a service that will be enabled for audit
// logging.
// For example, `storage.googleapis.com`,
// `cloudsql.googleapis.com`.
// `allServices` is a special value that covers all services.
Service string `json:"service,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuditLogConfigs") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AuditConfig) MarshalJSON() ([]byte, error) {
type NoMethod AuditConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuditLogConfig: Provides the configuration for logging a type of
// permissions.
// Example:
//
// {
// "audit_log_configs": [
// {
// "log_type": "DATA_READ",
// "exempted_members": [
// "user:foo@gmail.com"
// ]
// },
// {
// "log_type": "DATA_WRITE",
// }
// ]
// }
//
// This enables 'DATA_READ' and 'DATA_WRITE' logging, while
// exempting
// foo@gmail.com from DATA_READ logging.
type AuditLogConfig struct {
// ExemptedMembers: Specifies the identities that do not cause logging
// for this type of
// permission.
// Follows the same format of Binding.members.
ExemptedMembers []string `json:"exemptedMembers,omitempty"`
// LogType: The log type that this config enables.
//
// Possible values:
// "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
// "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
// "DATA_WRITE" - Data writes. Example: CloudSQL Users create
// "DATA_READ" - Data reads. Example: CloudSQL Users list
LogType string `json:"logType,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExemptedMembers") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
type NoMethod AuditLogConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Basis: Basis describes the base image portion (Note) of the
// DockerImage
// relationship. Linked occurrences are derived from this or
// an
// equivalent image via:
// FROM <Basis.resource_url>
// Or an equivalent reference, e.g. a tag of the resource_url.
type Basis struct {
// Fingerprint: The fingerprint of the base image.
Fingerprint *Fingerprint `json:"fingerprint,omitempty"`
// ResourceUrl: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Basis) MarshalJSON() ([]byte, error) {
type NoMethod Basis
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Binding: Associates `members` with a `role`.
type Binding struct {
// Condition: Unimplemented. The condition that is associated with this
// binding.
// NOTE: an unsatisfied condition will not allow user access via
// current
// binding. Different bindings, including their conditions, are
// examined
// independently.
Condition *Expr `json:"condition,omitempty"`
// Members: Specifies the identities requesting access for a Cloud
// Platform 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.
//
// * `user:{emailid}`: An email address that represents a specific
// Google
// account. For example, `alice@gmail.com` .
//
//
// * `serviceAccount:{emailid}`: An email address that represents a
// service
// account. For example,
// `my-other-app@appspot.gserviceaccount.com`.
//
// * `group:{emailid}`: An email address that represents a Google
// group.
// For example, `admins@example.com`.
//
//
// * `domain:{domain}`: A Google Apps domain name that represents all
// the
// users of that domain. For example, `google.com` or
// `example.com`.
//
//
Members []string `json:"members,omitempty"`
// Role: Role that is assigned to `members`.
// For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Binding) MarshalJSON() ([]byte, error) {
type NoMethod Binding
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BuildDetails: Message encapsulating build provenance details.
type BuildDetails struct {
// Provenance: The actual provenance
Provenance *BuildProvenance `json:"provenance,omitempty"`
// ProvenanceBytes: Serialized JSON representation of the provenance,
// used in generating the
// `BuildSignature` in the corresponding Result. 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. "Provenance") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Provenance") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BuildDetails) MarshalJSON() ([]byte, error) {
type NoMethod BuildDetails
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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"`
// FinishTime: Time at which execution of the build was finished.
FinishTime string `json:"finishTime,omitempty"`
// Id: Unique identifier of the build.
Id string `json:"id,omitempty"`
// LogsBucket: Google Cloud Storage bucket where logs were written.
LogsBucket string `json:"logsBucket,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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BuildProvenance) MarshalJSON() ([]byte, error) {
type NoMethod BuildProvenance
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BuildSignature: Message encapsulating the signature of the verified
// build.
type BuildSignature struct {
// KeyId: An Id for the key used to sign. This could be either an Id for
// the key
// stored in `public_key` (such as the Id or fingerprint for a PGP key,
// or the
// CN for a cert), or a reference to an external key (such as a
// reference to a
// key in Cloud Key Management Service).
KeyId string `json:"keyId,omitempty"`
// KeyType: The type of the key, either stored in `public_key` or
// referenced in
// `key_id`
//
// Possible values:
// "KEY_TYPE_UNSPECIFIED" - `KeyType` is not set.
// "PGP_ASCII_ARMORED" - `PGP ASCII Armored` public key.
// "PKIX_PEM" - `PKIX PEM` public key.
KeyType string `json:"keyType,omitempty"`
// PublicKey: Public key of the builder which can be used to verify that
// the related
// findings are valid and unchanged. If `key_type` is empty, this
// defaults
// to PEM encoded public keys.
//
// This field may be empty if `key_id` references an external key.
//
// For Cloud Build based signatures, this is a PEM encoded public
// key. To verify the Cloud Build signature, place the contents of
// this field into a file (public.pem). The signature field is
// base64-decoded
// into its binary representation in signature.bin, and the provenance
// bytes
// from `BuildDetails` are base64-decoded into a binary representation
// in
// signed.bin. OpenSSL can then verify the signature:
// `openssl sha256 -verify public.pem -signature signature.bin
// signed.bin`
PublicKey string `json:"publicKey,omitempty"`
// Signature: Signature of the related `BuildProvenance`, encoded in a
// base64 string.
Signature string `json:"signature,omitempty"`
// ForceSendFields is a list of field names (e.g. "KeyId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BuildSignature) MarshalJSON() ([]byte, error) {
type NoMethod BuildSignature
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BuildType: Note holding the version of the provider's builder and the
// signature of
// the provenance message in linked BuildDetails.
type BuildType struct {
// BuilderVersion: Version of the builder which produced this Note.
BuilderVersion string `json:"builderVersion,omitempty"`
// Signature: Signature of the build in Occurrences pointing to the Note
// containing this
// `BuilderDetails`.
Signature *BuildSignature `json:"signature,omitempty"`
// ForceSendFields is a list of field names (e.g. "BuilderVersion") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *BuildType) MarshalJSON() ([]byte, error) {
type NoMethod BuildType
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Command: Command describes a step performed as part of the build
// pipeline.
type Command struct {
// Args: Command-line arguments used when executing this Command.
Args []string `json:"args,omitempty"`
// Dir: Working directory (relative to project source root) used when
// running
// this Command.
Dir string `json:"dir,omitempty"`
// Env: Environment variables set before running this Command.
Env []string `json:"env,omitempty"`
// Id: Optional unique identifier for this Command, used in wait_for to
// reference
// this Command as a dependency.
Id string `json:"id,omitempty"`
// Name: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Command) MarshalJSON() ([]byte, error) {
type NoMethod Command
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreateOperationRequest: Request for creating an operation
type CreateOperationRequest struct {
// Operation: The operation to create.
Operation *Operation `json:"operation,omitempty"`
// OperationId: The ID to use for this operation.
OperationId string `json:"operationId,omitempty"`
// ForceSendFields is a list of field names (e.g. "Operation") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Operation") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CreateOperationRequest) MarshalJSON() ([]byte, error) {
type NoMethod CreateOperationRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Deployable: An artifact that can be deployed in some runtime.
type Deployable struct {
// ResourceUri: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Deployable) MarshalJSON() ([]byte, error) {
type NoMethod Deployable
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Deployment: The period during which some deployable was active in a
// runtime.
type Deployment struct {
// Address: Address of the runtime element hosting this deployment.
Address string `json:"address,omitempty"`
// Config: Configuration used to create this deployment.
Config string `json:"config,omitempty"`
// DeployTime: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Deployment) MarshalJSON() ([]byte, error) {
type NoMethod Deployment
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Derived: Derived describes the derived image portion (Occurrence) of
// the
// DockerImage relationship. This image would be produced from a
// Dockerfile
// with FROM <DockerImage.Basis in attached Note>.
type Derived struct {
// BaseResourceUrl: Output only. This contains the base image URL for
// the derived image
// occurrence.
BaseResourceUrl string `json:"baseResourceUrl,omitempty"`
// Distance: Output only. The number of layers by which this image
// differs from the
// associated image basis.
Distance int64 `json:"distance,omitempty"`
// Fingerprint: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Derived) MarshalJSON() ([]byte, error) {
type NoMethod Derived
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Detail: Identifies all occurrences of this vulnerability in the
// package for a
// specific distro/location
// For example: glibc in cpe:/o:debian:debian_linux:8 for versions 2.1 -
// 2.2
type Detail struct {
// CpeUri: The cpe_uri in [cpe format]
// (https://cpe.mitre.org/specification/) in
// which the vulnerability manifests. Examples include distro or
// storage
// location for vulnerable jar.
// This field can be used as a filter in list requests.
CpeUri string `json:"cpeUri,omitempty"`
// Description: A vendor-specific description of this note.
Description string `json:"description,omitempty"`
// FixedLocation: The fix for this specific package version.
FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"`
// IsObsolete: Whether this Detail is obsolete. Occurrences are expected
// not to point to
// obsolete details.
IsObsolete bool `json:"isObsolete,omitempty"`
// MaxAffectedVersion: The max version of the package in which the
// vulnerability exists.
// This field can be used as a filter in list requests.
MaxAffectedVersion *Version `json:"maxAffectedVersion,omitempty"`
// MinAffectedVersion: The min version of the package in which the
// vulnerability exists.
MinAffectedVersion *Version `json:"minAffectedVersion,omitempty"`
// Package: The name of the package where the vulnerability was
// found.
// This field can be used as a filter in list requests.
Package string `json:"package,omitempty"`
// PackageType: The type of package; whether native or non native(ruby
// gems,
// node.js packages etc)
PackageType string `json:"packageType,omitempty"`
// SeverityName: The severity (eg: distro assigned severity) for this
// vulnerability.
SeverityName string `json:"severityName,omitempty"`
// ForceSendFields is a list of field names (e.g. "CpeUri") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Detail) MarshalJSON() ([]byte, error) {
type NoMethod Detail
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Discovered: Provides information about the scan status of a
// discovered resource.
type Discovered struct {
// 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.
// "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 output only
// and
// populated by the API.
AnalysisStatusError *Status `json:"analysisStatusError,omitempty"`
// ContinuousAnalysis: Whether the resource is continuously analyzed.
//
// Possible values:
// "CONTINUOUS_ANALYSIS_UNSPECIFIED" - Unknown
// "ACTIVE" - The resource is continuously analyzed.
// "INACTIVE" - The resource is ignored for continuous analysis.
ContinuousAnalysis string `json:"continuousAnalysis,omitempty"`
// Operation: Output only. An operation that indicates the status of the
// current scan.
// This field is deprecated, do not use.
Operation *Operation `json:"operation,omitempty"`
// ForceSendFields is a list of field names (e.g. "AnalysisStatus") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AnalysisStatus") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Discovered) MarshalJSON() ([]byte, error) {
type NoMethod Discovered
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Discovery: A note that indicates a type of analysis a provider would
// perform. This note
// exists in a provider's project. A `Discovery` occurrence is created
// in a
// consumer's project at the start of analysis. The occurrence's
// operation will
// indicate the status of the analysis. Absence of an occurrence linked
// to this
// note for a resource indicates that analysis hasn't started.
type Discovery struct {
// AnalysisKind: The kind of analysis that is handled by this discovery.
//
// Possible values:
// "KIND_UNSPECIFIED" - Unknown
// "PACKAGE_VULNERABILITY" - The note and occurrence represent a
// package vulnerability.
// "BUILD_DETAILS" - The note and occurrence assert build provenance.
// "IMAGE_BASIS" - This represents an image basis relationship.
// "PACKAGE_MANAGER" - This represents a package installed via a
// package manager.
// "DEPLOYABLE" - The note and occurrence track deployment events.
// "DISCOVERY" - The note and occurrence track the initial discovery
// status of a resource.
// "ATTESTATION_AUTHORITY" - This represents a logical "role" that can
// attest to artifacts.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Discovery) MarshalJSON() ([]byte, error) {
type NoMethod Discovery
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Distribution) MarshalJSON() ([]byte, error) {
type NoMethod Distribution
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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);
// }
//
// The JSON representation for `Empty` is empty JSON object `{}`.
type Empty struct {
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
}
// Expr: Represents an expression text. Example:
//
// title: "User account presence"
// description: "Determines whether the request has a user account"
// expression: "size(request.user) > 0"
type Expr struct {
// Description: An 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.
//
// The application context of the containing message determines
// which
// well-known feature set of CEL is supported.
Expression string `json:"expression,omitempty"`
// Location: An 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: An 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Expr) MarshalJSON() ([]byte, error) {
type NoMethod Expr
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FileHashes) MarshalJSON() ([]byte, error) {
type NoMethod FileHashes
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Fingerprint: A set of properties that uniquely identify a given
// Docker image.
type Fingerprint struct {
// V1Name: The layer-id of the final layer in the Docker image's
// v1
// representation.
// This field can be used as a filter in list requests.
V1Name string `json:"v1Name,omitempty"`
// V2Blob: 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.
// This field can be used as a filter in list requests.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Fingerprint) MarshalJSON() ([]byte, error) {
type NoMethod Fingerprint
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GetIamPolicyRequest: Request message for `GetIamPolicy` method.
type GetIamPolicyRequest struct {
}
// GetVulnzOccurrencesSummaryResponse: A summary of how many vulnz
// occurrences there are per severity type.
// counts by groups, or if we should have different summary
// messages
// like this.
type GetVulnzOccurrencesSummaryResponse struct {
// Counts: A map of how many occurrences were found for each severity.
Counts []*SeverityCount `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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GetVulnzOccurrencesSummaryResponse) MarshalJSON() ([]byte, error) {
type NoMethod GetVulnzOccurrencesSummaryResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1AliasContext: An alias to a
// repo revision.
type GoogleDevtoolsContaineranalysisV1alpha1AliasContext 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1AliasContext) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1AliasContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1CloudRepoSourceContext: A
// CloudRepoSourceContext denotes a particular revision in a Google
// Cloud
// Source Repo.
type GoogleDevtoolsContaineranalysisV1alpha1CloudRepoSourceContext struct {
// AliasContext: An alias, which may be a branch or tag.
AliasContext *GoogleDevtoolsContaineranalysisV1alpha1AliasContext `json:"aliasContext,omitempty"`
// RepoId: The ID of the repo.
RepoId *GoogleDevtoolsContaineranalysisV1alpha1RepoId `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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1CloudRepoSourceContext) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1CloudRepoSourceContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1GerritSourceContext: A
// SourceContext referring to a Gerrit project.
type GoogleDevtoolsContaineranalysisV1alpha1GerritSourceContext struct {
// AliasContext: An alias, which may be a branch or tag.
AliasContext *GoogleDevtoolsContaineranalysisV1alpha1AliasContext `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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1GerritSourceContext) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1GerritSourceContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1GitSourceContext: A
// GitSourceContext denotes a particular revision in a third party
// Git
// repository (e.g., GitHub).
type GoogleDevtoolsContaineranalysisV1alpha1GitSourceContext struct {
// RevisionId: Required.
// 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1GitSourceContext) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1GitSourceContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1OperationMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1ProjectRepoId: Selects a repo
// using a Google Cloud Platform project ID (e.g.,
// winged-cargo-31) and a repo name within that project.
type GoogleDevtoolsContaineranalysisV1alpha1ProjectRepoId 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1ProjectRepoId) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1ProjectRepoId
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1RepoId: A unique identifier
// for a Cloud Repo.
type GoogleDevtoolsContaineranalysisV1alpha1RepoId struct {
// ProjectRepoId: A combination of a project ID and a repo name.
ProjectRepoId *GoogleDevtoolsContaineranalysisV1alpha1ProjectRepoId `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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1RepoId) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1RepoId
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleDevtoolsContaineranalysisV1alpha1SourceContext: 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 GoogleDevtoolsContaineranalysisV1alpha1SourceContext struct {
// CloudRepo: A SourceContext referring to a revision in a Google Cloud
// Source Repo.
CloudRepo *GoogleDevtoolsContaineranalysisV1alpha1CloudRepoSourceContext `json:"cloudRepo,omitempty"`
// Gerrit: A SourceContext referring to a Gerrit project.
Gerrit *GoogleDevtoolsContaineranalysisV1alpha1GerritSourceContext `json:"gerrit,omitempty"`
// Git: A SourceContext referring to any third party Git repo (e.g.,
// GitHub).
Git *GoogleDevtoolsContaineranalysisV1alpha1GitSourceContext `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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *GoogleDevtoolsContaineranalysisV1alpha1SourceContext) MarshalJSON() ([]byte, error) {
type NoMethod GoogleDevtoolsContaineranalysisV1alpha1SourceContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Hash: Container message for hash values.
type Hash struct {
// Type: The type of hash that was performed.
//
// Possible values:
// "NONE" - No hash requested.
// "SHA256" - A sha256 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Hash) MarshalJSON() ([]byte, error) {
type NoMethod Hash
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Installation: This represents how a particular software package may
// be installed on
// a system.
type Installation struct {
// Location: All of the places within the filesystem versions of this
// package
// have been found.
Location []*Location `json:"location,omitempty"`
// Name: Output only. The name of the installed package.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Location") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Installation) MarshalJSON() ([]byte, error) {
type NoMethod Installation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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: The recovered Dockerfile directive used to construct this
// layer.
//
// Possible values:
// "DIRECTIVE_UNSPECIFIED" - Default value for unsupported/missing
// directive
// "MAINTAINER" -
// https://docs.docker.com/reference/builder/#maintainer
// "RUN" - https://docs.docker.com/reference/builder/#run
// "CMD" - https://docs.docker.com/reference/builder/#cmd
// "LABEL" - https://docs.docker.com/reference/builder/#label
// "EXPOSE" - https://docs.docker.com/reference/builder/#expose
// "ENV" - https://docs.docker.com/reference/builder/#env
// "ADD" - https://docs.docker.com/reference/builder/#add
// "COPY" - https://docs.docker.com/reference/builder/#copy
// "ENTRYPOINT" -
// https://docs.docker.com/reference/builder/#entrypoint
// "VOLUME" - https://docs.docker.com/reference/builder/#volume
// "USER" - https://docs.docker.com/reference/builder/#user
// "WORKDIR" - https://docs.docker.com/reference/builder/#workdir
// "ARG" - https://docs.docker.com/reference/builder/#arg
// "ONBUILD" - https://docs.docker.com/reference/builder/#onbuild
// "STOPSIGNAL" -
// https://docs.docker.com/reference/builder/#stopsignal
// "HEALTHCHECK" -
// https://docs.docker.com/reference/builder/#healthcheck
// "SHELL" - https://docs.docker.com/reference/builder/#shell
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Layer) MarshalJSON() ([]byte, error) {
type NoMethod Layer
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListNoteOccurrencesResponse: Response including listed occurrences
// for a note.
type ListNoteOccurrencesResponse struct {
// NextPageToken: Token to receive the next page of notes.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListNoteOccurrencesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListNoteOccurrencesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListNotesResponse: Response including listed 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
// result.
NextPageToken string `json:"nextPageToken,omitempty"`
// Notes: The occurrences 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListNotesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListNotesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListOccurrencesResponse: Response including listed active
// 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListOccurrencesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListOccurrencesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListScanConfigsResponse: A list of scan configs for the project.
type ListScanConfigsResponse struct {
// NextPageToken: A page token to pass in order to get more scan
// configs.
NextPageToken string `json:"nextPageToken,omitempty"`
// ScanConfigs: The set of scan configs.
ScanConfigs []*ScanConfig `json:"scanConfigs,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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListScanConfigsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListScanConfigsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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: The cpe_uri in [cpe
// format](https://cpe.mitre.org/specification/)
// denoting the package manager version distributing a package.
CpeUri string `json:"cpeUri,omitempty"`
// Path: The path from which we gathered that this package/version is
// installed.
Path string `json:"path,omitempty"`
// Version: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Location) MarshalJSON() ([]byte, error) {
type NoMethod Location
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Note: Provides a detailed description of a `Note`.
type Note struct {
// AttestationAuthority: A note describing an attestation role.
AttestationAuthority *AttestationAuthority `json:"attestationAuthority,omitempty"`
// BaseImage: A note describing a base image.
BaseImage *Basis `json:"baseImage,omitempty"`
// BuildType: Build provenance type for a verifiable build.
BuildType *BuildType `json:"buildType,omitempty"`
// CreateTime: Output only. The time this note was created. This field
// can be used as a
// filter in list requests.
CreateTime string `json:"createTime,omitempty"`
// Deployable: A note describing something that can be deployed.
Deployable *Deployable `json:"deployable,omitempty"`
// Discovery: A note describing a provider/analysis type.
Discovery *Discovery `json:"discovery,omitempty"`
// ExpirationTime: Time of expiration for this note, null if note does
// not expire.
ExpirationTime string `json:"expirationTime,omitempty"`
// Kind: Output only. This explicitly denotes which kind of note is
// specified. This
// field can be used as a filter in list requests.
//
// Possible values:
// "KIND_UNSPECIFIED" - Unknown
// "PACKAGE_VULNERABILITY" - The note and occurrence represent a
// package vulnerability.
// "BUILD_DETAILS" - The note and occurrence assert build provenance.
// "IMAGE_BASIS" - This represents an image basis relationship.
// "PACKAGE_MANAGER" - This represents a package installed via a
// package manager.
// "DEPLOYABLE" - The note and occurrence track deployment events.
// "DISCOVERY" - The note and occurrence track the initial discovery
// status of a resource.
// "ATTESTATION_AUTHORITY" - This represents a logical "role" that can
// attest to artifacts.
Kind string `json:"kind,omitempty"`
// LongDescription: A detailed description of this `Note`.
LongDescription string `json:"longDescription,omitempty"`
// Name: The name of the note in the
// form
// "providers/{provider_id}/notes/{NOTE_ID}"
Name string `json:"name,omitempty"`
// Package: A note describing a package hosted by various package
// managers.
Package *Package `json:"package,omitempty"`
// RelatedUrl: URLs associated with this note
RelatedUrl []*RelatedUrl `json:"relatedUrl,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"`
// VulnerabilityType: A package vulnerability type of note.
VulnerabilityType *VulnerabilityType `json:"vulnerabilityType,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g.
// "AttestationAuthority") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AttestationAuthority") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Note) MarshalJSON() ([]byte, error) {
type NoMethod Note
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Occurrence: `Occurrence` includes information about analysis
// occurrences for an image.
type Occurrence struct {
// Attestation: Describes an attestation of an artifact.
Attestation *Attestation `json:"attestation,omitempty"`
// BuildDetails: Build details for a verifiable build.
BuildDetails *BuildDetails `json:"buildDetails,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 *Deployment `json:"deployment,omitempty"`
// DerivedImage: Describes how this resource derives from the basis
// in the associated note.
DerivedImage *Derived `json:"derivedImage,omitempty"`
// Discovered: Describes the initial scan status for this resource.
Discovered *Discovered `json:"discovered,omitempty"`
// Installation: Describes the installation of a package on the linked
// resource.
Installation *Installation `json:"installation,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:
// "KIND_UNSPECIFIED" - Unknown
// "PACKAGE_VULNERABILITY" - The note and occurrence represent a
// package vulnerability.
// "BUILD_DETAILS" - The note and occurrence assert build provenance.
// "IMAGE_BASIS" - This represents an image basis relationship.
// "PACKAGE_MANAGER" - This represents a package installed via a
// package manager.
// "DEPLOYABLE" - The note and occurrence track deployment events.
// "DISCOVERY" - The note and occurrence track the initial discovery
// status of a resource.
// "ATTESTATION_AUTHORITY" - This represents a logical "role" that can
// attest to artifacts.
Kind string `json:"kind,omitempty"`
// Name: Output only. The name of the `Occurrence` in the
// form
// "projects/{project_id}/occurrences/{OCCURRENCE_ID}"
Name string `json:"name,omitempty"`
// NoteName: An analysis note associated with this image, in the
// form
// "providers/{provider_id}/notes/{NOTE_ID}"
// This field can be used as a filter in list requests.
NoteName string `json:"noteName,omitempty"`
// Remediation: A description of actions that can be taken to remedy the
// `Note`
Remediation string `json:"remediation,omitempty"`
// Resource: The resource for which the `Occurrence` applies.
Resource *Resource `json:"resource,omitempty"`
// ResourceUrl: The unique URL of the image or the container for which
// the `Occurrence`
// applies. For example, https://gcr.io/project/image@sha256:foo This
// field
// can be used as a filter in list requests.
ResourceUrl string `json:"resourceUrl,omitempty"`
// UpdateTime: Output only. The time this `Occurrence` was last updated.
UpdateTime string `json:"updateTime,omitempty"`
// VulnerabilityDetails: Details of a security vulnerability note.
VulnerabilityDetails *VulnerabilityDetails `json:"vulnerabilityDetails,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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Occurrence) MarshalJSON() ([]byte, error) {
type NoMethod Occurrence
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Operation: This resource represents a long-running operation that is
// the result of a
// network API call.
type Operation struct {
// Done: If the value is `false`, it means the operation is still in
// progress.
// If `true`, the operation is completed, and either `error` or
// `response` is
// available.
Done bool `json:"done,omitempty"`
// Error: The error result of the operation in case of failure or
// cancellation.
Error *Status `json:"error,omitempty"`
// Metadata: Service-specific metadata associated with the operation.
// It typically
// contains progress information and common metadata such as create
// time.
// Some services might not provide such metadata. Any method that
// returns a
// long-running operation should document the metadata type, if any.
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
// Name: The server-assigned name, which is only unique within the same
// service that
// originally returns it. If you use the default HTTP mapping,
// the
// `name` should have the format of `operations/some/unique/name`.
Name string `json:"name,omitempty"`
// Response: The normal response of the operation in case of success.
// If the original
// method returns no data on success, such as `Delete`, the response
// is
// `google.protobuf.Empty`. If the original method is
// standard
// `Get`/`Create`/`Update`, the response should be the resource. For
// other
// methods, the response should have the type `XxxResponse`, where
// `Xxx`
// is the original method name. For example, if the original method
// name
// is `TakeSnapshot()`, the inferred response type
// is
// `TakeSnapshotResponse`.
Response googleapi.RawMessage `json:"response,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Done") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Done") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Operation) MarshalJSON() ([]byte, error) {
type NoMethod Operation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Package: This represents a particular package that is distributed
// over
// various channels.
// e.g. glibc (aka libc6) is distributed by many, at various versions.
type Package struct {
// Distribution: The various channels by which a package is distributed.
Distribution []*Distribution `json:"distribution,omitempty"`
// Name: The name of the package.
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Distribution") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Package) MarshalJSON() ([]byte, error) {
type NoMethod Package
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PackageIssue: This message wraps a location affected by a
// vulnerability and its
// associated fix (if one is available).
type PackageIssue struct {
// AffectedLocation: The location of the vulnerability.
AffectedLocation *VulnerabilityLocation `json:"affectedLocation,omitempty"`
// FixedLocation: The location of the available fix for vulnerability.
FixedLocation *VulnerabilityLocation `json:"fixedLocation,omitempty"`
// SeverityName: The severity (eg: distro assigned severity) for this
// vulnerability.
SeverityName string `json:"severityName,omitempty"`
// ForceSendFields is a list of field names (e.g. "AffectedLocation") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AffectedLocation") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *PackageIssue) MarshalJSON() ([]byte, error) {
type NoMethod PackageIssue
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// PgpSignedAttestation: An attestation wrapper with a PGP-compatible
// signature.
// This message only supports `ATTACHED` signatures, where the payload
// that is
// signed is included alongside the signature itself in the same file.
type PgpSignedAttestation struct {
// ContentType: Type (for example schema) of the attestation payload
// that was signed.
// The verifier must ensure that the provided type is one that the
// verifier
// supports, and that the attestation payload is a valid instantiation
// of that
// type (for example by validating a JSON schema).
//
// Possible values:
// "CONTENT_TYPE_UNSPECIFIED" - `ContentType` is not set.
// "SIMPLE_SIGNING_JSON" - Atomic format attestation signature.
// See
// https://github.com/containers/image/blob/8a5d2f82a6e3263290c8e0276
// c3e0f64e77723e7/docs/atomic-signature.md
// The payload extracted from `signature` is a JSON blob conforming to
// the
// linked schema.
ContentType string `json:"contentType,omitempty"`
// PgpKeyId: The cryptographic fingerprint of the key used to generate
// the signature,
// as output by, e.g. `gpg --list-keys`. This should be the version 4,
// full
// 160-bit fingerprint, expressed as a 40 character hexadecimal string.
// See
// https://tools.ietf.org/html/rfc4880#section-12.2 for
// details.
// Implementations may choose to acknowledge "LONG", "SHORT", or
// other
// abbreviated key IDs, but only the full fingerprint is guaranteed to
// work.
// In gpg, the full fingerprint can be retrieved from the `fpr`
// field
// returned when calling --list-keys with --with-colons. For
// example:
// ```
// gpg --with-colons --with-fingerprint --force-v4-certs \
// --list-keys
// attester@example.com
// tru::1:1513631572:0:3:1:5
// pub:...<SNIP>...
// fpr:::
// ::::::24FF6481B76AC91E66A00AC657A93A81EF3AE6FB:
// ```
// Above, the fingerprint is `24FF6481B76AC91E66A00AC657A93A81EF3AE6FB`.
PgpKeyId string `json:"pgpKeyId,omitempty"`
// Signature: The raw content of the signature, as output by GNU Privacy
// Guard (GPG) or
// equivalent. Since this message only supports attached signatures,
// the
// payload that was signed must be attached. While the signature
// format
// supported is dependent on the verification implementation, currently
// only
// ASCII-armored (`--armor` to gpg), non-clearsigned (`--sign` rather
// than
// `--clearsign` to gpg) are supported. Concretely, `gpg --sign
// --armor
// --output=signature.gpg payload.json` will create the signature
// content
// expected in this field in `signature.gpg` for the
// `payload.json`
// attestation payload.
Signature string `json:"signature,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContentType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContentType") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *PgpSignedAttestation) MarshalJSON() ([]byte, error) {
type NoMethod PgpSignedAttestation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Policy: Defines an Identity and Access Management (IAM) policy. It is
// used to
// specify access control policies for Cloud Platform resources.
//
//
// A `Policy` consists of a list of `bindings`. A `binding` binds a list
// of
// `members` to a `role`, where the members can be user accounts, Google
// groups,
// Google domains, and service accounts. A `role` is a named list of
// permissions
// defined by IAM.
//
// **JSON Example**
//
// {
// "bindings": [
// {
// "role": "roles/owner",
// "members": [
// "user:mike@example.com",
// "group:admins@example.com",
// "domain:google.com",
//
// "serviceAccount:my-other-app@appspot.gserviceaccount.com"
// ]
// },
// {
// "role": "roles/viewer",
// "members": ["user:sean@example.com"]
// }
// ]
// }
//
// **YAML Example**
//
// bindings:
// - members:
// - user:mike@example.com
// - group:admins@example.com
// - domain:google.com
// - serviceAccount:my-other-app@appspot.gserviceaccount.com
// role: roles/owner
// - members:
// - user:sean@example.com
// role: roles/viewer
//
//
// For a description of IAM and its features, see the
// [IAM developer's guide](https://cloud.google.com/iam/docs).
type Policy struct {
// AuditConfigs: Specifies cloud audit logging configuration for this
// policy.
AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
// Bindings: Associates a list of `members` to a `role`.
// `bindings` with no members will result in an error.
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.
//
// If no `etag` is provided in the call to `setIamPolicy`, then the
// existing
// policy is overwritten blindly.
Etag string `json:"etag,omitempty"`
// Version: Deprecated.
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. "AuditConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuditConfigs") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Policy) MarshalJSON() ([]byte, error) {
type NoMethod Policy
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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 to associate with the note
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RelatedUrl) MarshalJSON() ([]byte, error) {
type NoMethod RelatedUrl
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RepoSource: RepoSource describes the location of the source in a
// Google Cloud Source
// Repository.
type RepoSource struct {
// BranchName: Name of the branch to build.
BranchName string `json:"branchName,omitempty"`
// CommitSha: Explicit commit SHA to build.
CommitSha string `json:"commitSha,omitempty"`
// ProjectId: ID of the project that owns the repo.
ProjectId string `json:"projectId,omitempty"`
// RepoName: Name of the repo.
RepoName string `json:"repoName,omitempty"`
// TagName: Name of the tag to build.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *RepoSource) MarshalJSON() ([]byte, error) {
type NoMethod RepoSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Resource: Resource is an entity that can have metadata. E.g., a
// Docker image.
type Resource struct {
// ContentHash: The hash of the resource content. E.g., the Docker
// digest.
ContentHash *Hash `json:"contentHash,omitempty"`
// Name: The name of the resource. E.g., the name of a Docker image -
// "Debian".
Name string `json:"name,omitempty"`
// Uri: The unique URI of the resource.
// E.g.,
// "https://gcr.io/project/image@sha256:foo" for a Docker image.
Uri string `json:"uri,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContentHash") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ContentHash") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Resource) MarshalJSON() ([]byte, error) {
type NoMethod Resource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ScanConfig: Indicates various scans and whether they are turned on or
// off.
type ScanConfig struct {
// CreateTime: Output only. The time this scan config was created.
CreateTime string `json:"createTime,omitempty"`
// Description: Output only. A human-readable description of what the
// `ScanConfig` does.
Description string `json:"description,omitempty"`
// Enabled: Indicates whether the Scan is enabled.
Enabled bool `json:"enabled,omitempty"`
// Name: Output only. The name of the ScanConfig in the
// form
// “projects/{project_id}/scanConfigs/{scan_config_id}".
Name string `json:"name,omitempty"`
// UpdateTime: Output only. The time this scan config was last updated.
UpdateTime string `json:"updateTime,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ScanConfig) MarshalJSON() ([]byte, error) {
type NoMethod ScanConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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 Cloud Platform services (such as
// Projects)
// might reject them.
Policy *Policy `json:"policy,omitempty"`
// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the
// policy to modify. Only
// the fields in the mask will be modified. If no mask is provided,
// the
// following default mask is used:
// paths: "bindings, etag"
// This field is only used by Cloud IAM.
UpdateMask string `json:"updateMask,omitempty"`
// ForceSendFields is a list of field names (e.g. "Policy") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
type NoMethod SetIamPolicyRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SeverityCount: The number of occurrences created for a specific
// severity.
type SeverityCount struct {
// Count: The number of occurrences with the severity.
Count int64 `json:"count,omitempty,string"`
// Severity: The severity of the occurrences.
//
// Possible values:
// "SEVERITY_UNSPECIFIED" - Unknown Impact
// "MINIMAL" - Minimal Impact
// "LOW" - Low Impact
// "MEDIUM" - Medium Impact
// "HIGH" - High Impact
// "CRITICAL" - Critical Impact
Severity string `json:"severity,omitempty"`
// ForceSendFields is a list of field names (e.g. "Count") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Count") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SeverityCount) MarshalJSON() ([]byte, error) {
type NoMethod SeverityCount
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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 []*GoogleDevtoolsContaineranalysisV1alpha1SourceContext `json:"additionalContexts,omitempty"`
// ArtifactStorageSource: If provided, the input binary artifacts for
// the build came from this
// location.
ArtifactStorageSource *StorageSource `json:"artifactStorageSource,omitempty"`
// Context: If provided, the source code used for the build came from
// this location.
Context *GoogleDevtoolsContaineranalysisV1alpha1SourceContext `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"`
// RepoSource: If provided, get source from this location in a Cloud
// Repo.
RepoSource *RepoSource `json:"repoSource,omitempty"`
// StorageSource: If provided, get the source from this location in in
// Google Cloud
// Storage.
StorageSource *StorageSource `json:"storageSource,omitempty"`
// ForceSendFields is a list of field names (e.g. "AdditionalContexts")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Source) MarshalJSON() ([]byte, error) {
type NoMethod Source
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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). The error model is designed to
// be:
//
// - Simple to use and understand for most users
// - Flexible enough to meet unexpected needs
//
// # Overview
//
// The `Status` message contains three pieces of data: error code, error
// message,
// and error details. The error code should be an enum value
// of
// google.rpc.Code, but it may accept additional error codes if needed.
// The
// error message should be a developer-facing English message that
// helps
// developers *understand* and *resolve* the error. If a localized
// user-facing
// error message is needed, put the localized message in the error
// details or
// localize it in the client. The optional error details may contain
// arbitrary
// information about the error. There is a predefined set of error
// detail types
// in the package `google.rpc` that can be used for common error
// conditions.
//
// # Language mapping
//
// The `Status` message is the logical representation of the error
// model, but it
// is not necessarily the actual wire format. When the `Status` message
// is
// exposed in different client libraries and different wire protocols,
// it can be
// mapped differently. For example, it will likely be mapped to some
// exceptions
// in Java, but more likely mapped to some error codes in C.
//
// # Other uses
//
// The error model and the `Status` message can be used in a variety
// of
// environments, either with or without APIs, to provide a
// consistent developer experience across different
// environments.
//
// Example uses of this error model include:
//
// - Partial errors. If a service needs to return partial errors to the
// client,
// it may embed the `Status` in the normal response to indicate the
// partial
// errors.
//
// - Workflow errors. A typical workflow has multiple steps. Each step
// may
// have a `Status` message for error reporting.
//
// - Batch operations. If a client uses batch request and batch
// response, the
// `Status` message should be used directly inside batch response,
// one for
// each error sub-response.
//
// - Asynchronous operations. If an API call embeds asynchronous
// operation
// results in its response, the status of those operations should
// be
// represented directly using the `Status` message.
//
// - Logging. If some API errors are stored in logs, the message
// `Status` could
// be used directly after any stripping needed for security/privacy
// reasons.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Status) MarshalJSON() ([]byte, error) {
type NoMethod Status
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// StorageSource: StorageSource describes the location of the source in
// an archive file in
// Google Cloud Storage.
type StorageSource struct {
// Bucket: Google Cloud Storage bucket containing source (see [Bucket
// Name
// Requirements]
// (https://cloud.google.com/storage/docs/bucket-namin
// g#requirements)).
Bucket string `json:"bucket,omitempty"`
// Generation: Google Cloud Storage generation for the object.
Generation int64 `json:"generation,omitempty,string"`
// Object: Google Cloud Storage object containing source.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *StorageSource) MarshalJSON() ([]byte, error) {
type NoMethod StorageSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
type NoMethod TestIamPermissionsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod TestIamPermissionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UpdateOperationRequest: Request for updating an existing operation
type UpdateOperationRequest struct {
// Operation: The operation to create.
Operation *Operation `json:"operation,omitempty"`
// UpdateMask: The fields to update.
UpdateMask string `json:"updateMask,omitempty"`
// ForceSendFields is a list of field names (e.g. "Operation") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Operation") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UpdateOperationRequest) MarshalJSON() ([]byte, error) {
type NoMethod UpdateOperationRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Version: Version contains structured information about the version of
// the package.
// For a discussion of this in
// Debian/Ubuntu:
// http://serverfault.com/questions/604541/debian-packages
// -version-convention
// For a discussion of this in
// Redhat/Fedora/Centos:
// http://blog.jasonantman.com/2014/07/how-yum-and-
// rpm-compare-versions/
type Version struct {
// Epoch: Used to correct mistakes in the version numbering scheme.
Epoch int64 `json:"epoch,omitempty"`
// Kind: Distinguish between sentinel MIN/MAX versions and normal
// versions.
// If kind is not NORMAL, then the other fields are ignored.
//
// Possible values:
// "NORMAL" - A standard package version, defined by the other fields.
// "MINIMUM" - A special version representing negative infinity,
// other fields are ignored.
// "MAXIMUM" - A special version representing positive infinity,
// other fields are ignored.
Kind string `json:"kind,omitempty"`
// Name: 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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Version) MarshalJSON() ([]byte, error) {
type NoMethod Version
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// VulnerabilityDetails: Used by Occurrence to point to where the
// vulnerability exists and how
// to fix it.
type VulnerabilityDetails 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"`
// PackageIssue: The set of affected locations and their fixes (if
// available) within
// the associated resource.
PackageIssue []*PackageIssue `json:"packageIssue,omitempty"`
// Severity: Output only. The note provider assigned Severity of the
// vulnerability.
//
// Possible values:
// "SEVERITY_UNSPECIFIED" - Unknown Impact
// "MINIMAL" - Minimal Impact
// "LOW" - Low Impact
// "MEDIUM" - Medium Impact
// "HIGH" - High Impact
// "CRITICAL" - Critical Impact
Severity string `json:"severity,omitempty"`
// Type: The type of package; whether native or non native(ruby
// gems,
// node.js packages etc)
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "CvssScore") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *VulnerabilityDetails) MarshalJSON() ([]byte, error) {
type NoMethod VulnerabilityDetails
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *VulnerabilityDetails) UnmarshalJSON(data []byte) error {
type NoMethod VulnerabilityDetails
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
}
// VulnerabilityLocation: The location of the vulnerability
type VulnerabilityLocation struct {
// CpeUri: The cpe_uri in [cpe format]
// (https://cpe.mitre.org/specification/)
// format. Examples include distro or storage location for vulnerable
// jar.
// This field can be used as a filter in list requests.
CpeUri string `json:"cpeUri,omitempty"`
// Package: The package being described.
Package string `json:"package,omitempty"`
// Version: The version of the package being described.
// This field can be used as a filter in list requests.
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 values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *VulnerabilityLocation) MarshalJSON() ([]byte, error) {
type NoMethod VulnerabilityLocation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// VulnerabilityType: VulnerabilityType provides metadata about a
// security vulnerability.
type VulnerabilityType struct {
// CvssScore: The CVSS score for this Vulnerability.
CvssScore float64 `json:"cvssScore,omitempty"`
// Details: All information about the package to specifically identify
// this
// vulnerability. One entry per (version range and cpe_uri) the
// package vulnerability has manifested in.
Details []*Detail `json:"details,omitempty"`
// Severity: Note provider assigned impact of the vulnerability
//
// Possible values:
// "SEVERITY_UNSPECIFIED" - Unknown Impact
// "MINIMAL" - Minimal Impact
// "LOW" - Low Impact
// "MEDIUM" - Medium Impact
// "HIGH" - High Impact
// "CRITICAL" - Critical Impact
Severity string `json:"severity,omitempty"`
// ForceSendFields is a list of field names (e.g. "CvssScore") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
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. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *VulnerabilityType) MarshalJSON() ([]byte, error) {
type NoMethod VulnerabilityType
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *VulnerabilityType) UnmarshalJSON(data []byte) error {
type NoMethod VulnerabilityType
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
}
// method id "containeranalysis.projects.notes.create":
type ProjectsNotesCreateCall struct {
s *Service
parent string
note *Note
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Create: Creates a new `Note`.
func (r *