api

package
v0.0.0-...-4a11b79 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 2, 2020 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package api contains CIPD backend API definitions.

Index

Constants

This section is empty.

Variables

View Source
var (
	HashAlgo_name = map[int32]string{
		0: "HASH_ALGO_UNSPECIFIED",
		1: "SHA1",
		2: "SHA256",
	}
	HashAlgo_value = map[string]int32{
		"HASH_ALGO_UNSPECIFIED": 0,
		"SHA1":                  1,
		"SHA256":                2,
	}
)

Enum value maps for HashAlgo.

View Source
var (
	UploadStatus_name = map[int32]string{
		0: "UPLOAD_STATUS_UNSPECIFIED",
		1: "UPLOADING",
		2: "VERIFYING",
		3: "PUBLISHED",
		4: "ERRORED",
		5: "CANCELED",
	}
	UploadStatus_value = map[string]int32{
		"UPLOAD_STATUS_UNSPECIFIED": 0,
		"UPLOADING":                 1,
		"VERIFYING":                 2,
		"PUBLISHED":                 3,
		"ERRORED":                   4,
		"CANCELED":                  5,
	}
)

Enum value maps for UploadStatus.

View Source
var (
	EventKind_name = map[int32]string{
		0:   "EVENT_KIND_UNSPECIFIED",
		100: "PREFIX_ACL_CHANGED",
		200: "PACKAGE_CREATED",
		201: "PACKAGE_DELETED",
		202: "PACKAGE_HIDDEN",
		203: "PACKAGE_UNHIDDEN",
		300: "INSTANCE_CREATED",
		301: "INSTANCE_DELETED",
		302: "INSTANCE_REF_SET",
		303: "INSTANCE_REF_UNSET",
		304: "INSTANCE_TAG_ATTACHED",
		305: "INSTANCE_TAG_DETACHED",
	}
	EventKind_value = map[string]int32{
		"EVENT_KIND_UNSPECIFIED": 0,
		"PREFIX_ACL_CHANGED":     100,
		"PACKAGE_CREATED":        200,
		"PACKAGE_DELETED":        201,
		"PACKAGE_HIDDEN":         202,
		"PACKAGE_UNHIDDEN":       203,
		"INSTANCE_CREATED":       300,
		"INSTANCE_DELETED":       301,
		"INSTANCE_REF_SET":       302,
		"INSTANCE_REF_UNSET":     303,
		"INSTANCE_TAG_ATTACHED":  304,
		"INSTANCE_TAG_DETACHED":  305,
	}
)

Enum value maps for EventKind.

View Source
var (
	Role_name = map[int32]string{
		0: "ROLE_UNSPECIFIED",
		1: "READER",
		2: "WRITER",
		3: "OWNER",
	}
	Role_value = map[string]int32{
		"ROLE_UNSPECIFIED": 0,
		"READER":           1,
		"WRITER":           2,
		"OWNER":            3,
	}
)

Enum value maps for Role.

View Source
var (
	RegistrationStatus_name = map[int32]string{
		0: "REGISTRATION_STATUS_UNSPECIFIED",
		1: "REGISTERED",
		2: "ALREADY_REGISTERED",
		3: "NOT_UPLOADED",
	}
	RegistrationStatus_value = map[string]int32{
		"REGISTRATION_STATUS_UNSPECIFIED": 0,
		"REGISTERED":                      1,
		"ALREADY_REGISTERED":              2,
		"NOT_UPLOADED":                    3,
	}
)

Enum value maps for RegistrationStatus.

View Source
var (
	Processor_State_name = map[int32]string{
		0: "STATE_UNSPECIFIED",
		1: "PENDING",
		2: "SUCCEEDED",
		3: "FAILED",
	}
	Processor_State_value = map[string]int32{
		"STATE_UNSPECIFIED": 0,
		"PENDING":           1,
		"SUCCEEDED":         2,
		"FAILED":            3,
	}
)

Enum value maps for Processor_State.

View Source
var File_go_chromium_org_luci_cipd_api_cipd_v1_cas_proto protoreflect.FileDescriptor
View Source
var File_go_chromium_org_luci_cipd_api_cipd_v1_events_proto protoreflect.FileDescriptor
View Source
var File_go_chromium_org_luci_cipd_api_cipd_v1_exported_proto protoreflect.FileDescriptor
View Source
var File_go_chromium_org_luci_cipd_api_cipd_v1_repo_proto protoreflect.FileDescriptor

Functions

func FileDescriptorSet

func FileDescriptorSet() *descriptor.FileDescriptorSet

FileDescriptorSet returns a descriptor set for this proto package, which includes all defined services, and all transitive dependencies.

Will not return nil.

Do NOT modify the returned descriptor.

func RegisterRepositoryServer

func RegisterRepositoryServer(s prpc.Registrar, srv RepositoryServer)

func RegisterStorageServer

func RegisterStorageServer(s prpc.Registrar, srv StorageServer)

Types

type AttachTagsRequest

type AttachTagsRequest struct {

	// The package that holds the instance we attach tags to.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// The instance we attach tags to.
	Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// One or more tags to attach (order doesn't matter).
	Tags []*Tag `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
	// contains filtered or unexported fields
}

func (*AttachTagsRequest) Descriptor deprecated

func (*AttachTagsRequest) Descriptor() ([]byte, []int)

Deprecated: Use AttachTagsRequest.ProtoReflect.Descriptor instead.

func (*AttachTagsRequest) GetInstance

func (x *AttachTagsRequest) GetInstance() *ObjectRef

func (*AttachTagsRequest) GetPackage

func (x *AttachTagsRequest) GetPackage() string

func (*AttachTagsRequest) GetTags

func (x *AttachTagsRequest) GetTags() []*Tag

func (*AttachTagsRequest) ProtoMessage

func (*AttachTagsRequest) ProtoMessage()

func (*AttachTagsRequest) ProtoReflect

func (x *AttachTagsRequest) ProtoReflect() protoreflect.Message

func (*AttachTagsRequest) Reset

func (x *AttachTagsRequest) Reset()

func (*AttachTagsRequest) String

func (x *AttachTagsRequest) String() string

type BeginUploadRequest

type BeginUploadRequest struct {

	// A reference to the object the client wants to put in the storage, if known.
	//
	// If such object already exists, RPC will finish with ALREADY_EXISTS status
	// right away.
	//
	// If this field is missing (in case the client doesn't know the hash yet),
	// the client MUST supply hash_algo field, to let the backend know what
	// hashing algorithm it should use for calculating object's hash.
	//
	// The calculated hash will be returned back to the client as part of
	// UploadOperation ('object' field) by FinishUpload call.
	Object *ObjectRef `protobuf:"bytes,1,opt,name=object,proto3" json:"object,omitempty"`
	// An algorithm to use to derive object's name during uploads when the final
	// hash of the object is not yet known.
	//
	// Optional if 'object' is present.
	//
	// If both 'object' and 'hash_algo' are present, 'object.hash_algo' MUST match
	// 'hash_algo'.
	HashAlgo HashAlgo `protobuf:"varint,2,opt,name=hash_algo,json=hashAlgo,proto3,enum=cipd.HashAlgo" json:"hash_algo,omitempty"`
	// contains filtered or unexported fields
}

func (*BeginUploadRequest) Descriptor deprecated

func (*BeginUploadRequest) Descriptor() ([]byte, []int)

Deprecated: Use BeginUploadRequest.ProtoReflect.Descriptor instead.

func (*BeginUploadRequest) GetHashAlgo

func (x *BeginUploadRequest) GetHashAlgo() HashAlgo

func (*BeginUploadRequest) GetObject

func (x *BeginUploadRequest) GetObject() *ObjectRef

func (*BeginUploadRequest) ProtoMessage

func (*BeginUploadRequest) ProtoMessage()

func (*BeginUploadRequest) ProtoReflect

func (x *BeginUploadRequest) ProtoReflect() protoreflect.Message

func (*BeginUploadRequest) Reset

func (x *BeginUploadRequest) Reset()

func (*BeginUploadRequest) String

func (x *BeginUploadRequest) String() string

type CancelUploadRequest

type CancelUploadRequest struct {

	// An identifier of an upload operation returned by BeginUpload RPC.
	UploadOperationId string `protobuf:"bytes,1,opt,name=upload_operation_id,json=uploadOperationId,proto3" json:"upload_operation_id,omitempty"`
	// contains filtered or unexported fields
}

func (*CancelUploadRequest) Descriptor deprecated

func (*CancelUploadRequest) Descriptor() ([]byte, []int)

Deprecated: Use CancelUploadRequest.ProtoReflect.Descriptor instead.

func (*CancelUploadRequest) GetUploadOperationId

func (x *CancelUploadRequest) GetUploadOperationId() string

func (*CancelUploadRequest) ProtoMessage

func (*CancelUploadRequest) ProtoMessage()

func (*CancelUploadRequest) ProtoReflect

func (x *CancelUploadRequest) ProtoReflect() protoreflect.Message

func (*CancelUploadRequest) Reset

func (x *CancelUploadRequest) Reset()

func (*CancelUploadRequest) String

func (x *CancelUploadRequest) String() string

type DecoratedStorage

type DecoratedStorage struct {
	// Service is the service to decorate.
	Service StorageServer
	// Prelude is called for each method before forwarding the call to Service.
	// If Prelude returns an error, then the call is skipped and the error is
	// processed via the Postlude (if one is defined), or it is returned directly.
	Prelude func(ctx context.Context, methodName string, req proto.Message) (context.Context, error)
	// Postlude is called for each method after Service has processed the call, or
	// after the Prelude has returned an error. This takes the the Service's
	// response proto (which may be nil) and/or any error. The decorated
	// service will return the response (possibly mutated) and error that Postlude
	// returns.
	Postlude func(ctx context.Context, methodName string, rsp proto.Message, err error) error
}

func (*DecoratedStorage) BeginUpload

func (s *DecoratedStorage) BeginUpload(ctx context.Context, req *BeginUploadRequest) (rsp *UploadOperation, err error)

func (*DecoratedStorage) CancelUpload

func (s *DecoratedStorage) CancelUpload(ctx context.Context, req *CancelUploadRequest) (rsp *UploadOperation, err error)

func (*DecoratedStorage) FinishUpload

func (s *DecoratedStorage) FinishUpload(ctx context.Context, req *FinishUploadRequest) (rsp *UploadOperation, err error)

func (*DecoratedStorage) GetObjectURL

func (s *DecoratedStorage) GetObjectURL(ctx context.Context, req *GetObjectURLRequest) (rsp *ObjectURL, err error)

type DeleteRefRequest

type DeleteRefRequest struct {

	// Name of the ref, e.g. "latest".
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Name of the package where the ref is defined.
	Package string `protobuf:"bytes,2,opt,name=package,proto3" json:"package,omitempty"`
	// contains filtered or unexported fields
}

func (*DeleteRefRequest) Descriptor deprecated

func (*DeleteRefRequest) Descriptor() ([]byte, []int)

Deprecated: Use DeleteRefRequest.ProtoReflect.Descriptor instead.

func (*DeleteRefRequest) GetName

func (x *DeleteRefRequest) GetName() string

func (*DeleteRefRequest) GetPackage

func (x *DeleteRefRequest) GetPackage() string

func (*DeleteRefRequest) ProtoMessage

func (*DeleteRefRequest) ProtoMessage()

func (*DeleteRefRequest) ProtoReflect

func (x *DeleteRefRequest) ProtoReflect() protoreflect.Message

func (*DeleteRefRequest) Reset

func (x *DeleteRefRequest) Reset()

func (*DeleteRefRequest) String

func (x *DeleteRefRequest) String() string

type DescribeClientRequest

type DescribeClientRequest struct {

	// The CIPD client package we want to get info about.
	//
	// For example 'infra/tools/cipd/linux-amd64'.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// The client instance we want to get the info about.
	Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// contains filtered or unexported fields
}

func (*DescribeClientRequest) Descriptor deprecated

func (*DescribeClientRequest) Descriptor() ([]byte, []int)

Deprecated: Use DescribeClientRequest.ProtoReflect.Descriptor instead.

func (*DescribeClientRequest) GetInstance

func (x *DescribeClientRequest) GetInstance() *ObjectRef

func (*DescribeClientRequest) GetPackage

func (x *DescribeClientRequest) GetPackage() string

func (*DescribeClientRequest) ProtoMessage

func (*DescribeClientRequest) ProtoMessage()

func (*DescribeClientRequest) ProtoReflect

func (x *DescribeClientRequest) ProtoReflect() protoreflect.Message

func (*DescribeClientRequest) Reset

func (x *DescribeClientRequest) Reset()

func (*DescribeClientRequest) String

func (x *DescribeClientRequest) String() string

type DescribeClientResponse

type DescribeClientResponse struct {

	// The instance with all output fields filled in.
	Instance *Instance `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"`
	// Reference to the extracted client binary in the storage.
	//
	// The hash algo here always matches the algo used when uploading the client
	// package file.
	//
	// Clients should expect to find an algo here that they do not support (if
	// the server was updated to support a better algo). They should pick the best
	// algo they support from client_ref_aliases list and use it for validation.
	//
	// Thus this field is mostly FYI.
	ClientRef *ObjectRef `protobuf:"bytes,2,opt,name=client_ref,json=clientRef,proto3" json:"client_ref,omitempty"`
	// Signed URL pointing to the extracted client binary in the storage.
	ClientBinary *ObjectURL `protobuf:"bytes,3,opt,name=client_binary,json=clientBinary,proto3" json:"client_binary,omitempty"`
	// Size of the client binary in bytes.
	ClientSize int64 `protobuf:"varint,4,opt,name=client_size,json=clientSize,proto3" json:"client_size,omitempty"`
	// SHA1 digest of the client binary (as hex string).
	//
	// Used only by old clients and present here for backward compatibility
	// reasons.
	//
	// Newer clients must verify one of client_ref_aliases instead.
	LegacySha1 string `protobuf:"bytes,5,opt,name=legacy_sha1,json=legacySha1,proto3" json:"legacy_sha1,omitempty"`
	// Contains hashes of the client binary calculated using ALL algos supported
	// by the server at the time the client package was uploaded.
	//
	// The callers that want to verify the client binary hash should pick the best
	// algo they understand.
	//
	// The list at least includes 'client_ref' itself and SHA1 hash (matching
	// legacy_sha1). The order is undefined.
	ClientRefAliases []*ObjectRef `protobuf:"bytes,6,rep,name=client_ref_aliases,json=clientRefAliases,proto3" json:"client_ref_aliases,omitempty"`
	// contains filtered or unexported fields
}

func (*DescribeClientResponse) Descriptor deprecated

func (*DescribeClientResponse) Descriptor() ([]byte, []int)

Deprecated: Use DescribeClientResponse.ProtoReflect.Descriptor instead.

func (*DescribeClientResponse) GetClientBinary

func (x *DescribeClientResponse) GetClientBinary() *ObjectURL

func (*DescribeClientResponse) GetClientRef

func (x *DescribeClientResponse) GetClientRef() *ObjectRef

func (*DescribeClientResponse) GetClientRefAliases

func (x *DescribeClientResponse) GetClientRefAliases() []*ObjectRef

func (*DescribeClientResponse) GetClientSize

func (x *DescribeClientResponse) GetClientSize() int64

func (*DescribeClientResponse) GetInstance

func (x *DescribeClientResponse) GetInstance() *Instance

func (*DescribeClientResponse) GetLegacySha1

func (x *DescribeClientResponse) GetLegacySha1() string

func (*DescribeClientResponse) ProtoMessage

func (*DescribeClientResponse) ProtoMessage()

func (*DescribeClientResponse) ProtoReflect

func (x *DescribeClientResponse) ProtoReflect() protoreflect.Message

func (*DescribeClientResponse) Reset

func (x *DescribeClientResponse) Reset()

func (*DescribeClientResponse) String

func (x *DescribeClientResponse) String() string

type DescribeInstanceRequest

type DescribeInstanceRequest struct {

	// The package that holds the instance we want to get the info for.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// The instance we want to get the info for.
	Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// Whether the response should include "refs" field.
	DescribeRefs bool `protobuf:"varint,3,opt,name=describe_refs,json=describeRefs,proto3" json:"describe_refs,omitempty"`
	// Whether the response should include "tags" field.
	DescribeTags bool `protobuf:"varint,4,opt,name=describe_tags,json=describeTags,proto3" json:"describe_tags,omitempty"`
	// Whether the response should include "processors" field.
	DescribeProcessors bool `protobuf:"varint,5,opt,name=describe_processors,json=describeProcessors,proto3" json:"describe_processors,omitempty"`
	// contains filtered or unexported fields
}

func (*DescribeInstanceRequest) Descriptor deprecated

func (*DescribeInstanceRequest) Descriptor() ([]byte, []int)

Deprecated: Use DescribeInstanceRequest.ProtoReflect.Descriptor instead.

func (*DescribeInstanceRequest) GetDescribeProcessors

func (x *DescribeInstanceRequest) GetDescribeProcessors() bool

func (*DescribeInstanceRequest) GetDescribeRefs

func (x *DescribeInstanceRequest) GetDescribeRefs() bool

func (*DescribeInstanceRequest) GetDescribeTags

func (x *DescribeInstanceRequest) GetDescribeTags() bool

func (*DescribeInstanceRequest) GetInstance

func (x *DescribeInstanceRequest) GetInstance() *ObjectRef

func (*DescribeInstanceRequest) GetPackage

func (x *DescribeInstanceRequest) GetPackage() string

func (*DescribeInstanceRequest) ProtoMessage

func (*DescribeInstanceRequest) ProtoMessage()

func (*DescribeInstanceRequest) ProtoReflect

func (x *DescribeInstanceRequest) ProtoReflect() protoreflect.Message

func (*DescribeInstanceRequest) Reset

func (x *DescribeInstanceRequest) Reset()

func (*DescribeInstanceRequest) String

func (x *DescribeInstanceRequest) String() string

type DescribeInstanceResponse

type DescribeInstanceResponse struct {

	// The instance with all output fields filled in.
	Instance *Instance `protobuf:"bytes,1,opt,name=instance,proto3" json:"instance,omitempty"`
	// Refs pointing to the instance, sorted by modification time, most recent
	// first.
	//
	// Present only if the request has describe_refs == true.
	Refs []*Ref `protobuf:"bytes,2,rep,name=refs,proto3" json:"refs,omitempty"`
	// Tags attached to the instance, sorted by the tag key first, and then
	// by the timestamp (most recent first).
	//
	// Present only if the request has describe_tags == true.
	Tags []*Tag `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
	// State of the processors that handled the instance (if any), sorted by their
	// ID.
	//
	// Present only if the request has describe_processors == true.
	Processors []*Processor `protobuf:"bytes,4,rep,name=processors,proto3" json:"processors,omitempty"`
	// contains filtered or unexported fields
}

func (*DescribeInstanceResponse) Descriptor deprecated

func (*DescribeInstanceResponse) Descriptor() ([]byte, []int)

Deprecated: Use DescribeInstanceResponse.ProtoReflect.Descriptor instead.

func (*DescribeInstanceResponse) GetInstance

func (x *DescribeInstanceResponse) GetInstance() *Instance

func (*DescribeInstanceResponse) GetProcessors

func (x *DescribeInstanceResponse) GetProcessors() []*Processor

func (*DescribeInstanceResponse) GetRefs

func (x *DescribeInstanceResponse) GetRefs() []*Ref

func (*DescribeInstanceResponse) GetTags

func (x *DescribeInstanceResponse) GetTags() []*Tag

func (*DescribeInstanceResponse) ProtoMessage

func (*DescribeInstanceResponse) ProtoMessage()

func (*DescribeInstanceResponse) ProtoReflect

func (x *DescribeInstanceResponse) ProtoReflect() protoreflect.Message

func (*DescribeInstanceResponse) Reset

func (x *DescribeInstanceResponse) Reset()

func (*DescribeInstanceResponse) String

func (x *DescribeInstanceResponse) String() string

type DetachTagsRequest

type DetachTagsRequest struct {

	// The package that holds the instance we detach tags from.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// The instance we detach tags from.
	Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// One or more tags to detach (order doesn't matter).
	Tags []*Tag `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags,omitempty"`
	// contains filtered or unexported fields
}

func (*DetachTagsRequest) Descriptor deprecated

func (*DetachTagsRequest) Descriptor() ([]byte, []int)

Deprecated: Use DetachTagsRequest.ProtoReflect.Descriptor instead.

func (*DetachTagsRequest) GetInstance

func (x *DetachTagsRequest) GetInstance() *ObjectRef

func (*DetachTagsRequest) GetPackage

func (x *DetachTagsRequest) GetPackage() string

func (*DetachTagsRequest) GetTags

func (x *DetachTagsRequest) GetTags() []*Tag

func (*DetachTagsRequest) ProtoMessage

func (*DetachTagsRequest) ProtoMessage()

func (*DetachTagsRequest) ProtoReflect

func (x *DetachTagsRequest) ProtoReflect() protoreflect.Message

func (*DetachTagsRequest) Reset

func (x *DetachTagsRequest) Reset()

func (*DetachTagsRequest) String

func (x *DetachTagsRequest) String() string

type Event

type Event struct {
	Kind EventKind `protobuf:"varint,1,opt,name=kind,proto3,enum=cipd.EventKind" json:"kind,omitempty"`
	Who  string    `protobuf:"bytes,2,opt,name=who,proto3" json:"who,omitempty"` // an identity string, e.g. "user:<email>"
	// Real time is used only for up to millisecond precisions. Nanoseconds are
	// abused to order events emitted by a single transaction.
	When     *timestamp.Timestamp `protobuf:"bytes,3,opt,name=when,proto3" json:"when,omitempty"`
	Package  string               `protobuf:"bytes,4,opt,name=package,proto3" json:"package,omitempty"`   // a package name or a prefix (for PREFIX_* events)
	Instance string               `protobuf:"bytes,5,opt,name=instance,proto3" json:"instance,omitempty"` // an instance ID for INSTANCE_*
	Ref      string               `protobuf:"bytes,6,opt,name=ref,proto3" json:"ref,omitempty"`           // a ref name for INSTANCE_REF_*
	Tag      string               `protobuf:"bytes,7,opt,name=tag,proto3" json:"tag,omitempty"`           // a tag (in 'k:v' form) for INSTANCE_TAG_*
	// An ACL diff for PREFIX_ACL_CHANGED.
	GrantedRole []*PrefixMetadata_ACL `protobuf:"bytes,8,rep,name=granted_role,json=grantedRole,proto3" json:"granted_role,omitempty"`
	RevokedRole []*PrefixMetadata_ACL `protobuf:"bytes,9,rep,name=revoked_role,json=revokedRole,proto3" json:"revoked_role,omitempty"`
	// contains filtered or unexported fields
}

Event in a global structured event log.

It exists in both BigQuery (for adhoc queries) and in Datastore (for showing in web UI, e.g. for "recent tags" feature).

Datastore entities contains serialized Event as is, plus a copy of some of its fields for indexing.

func (*Event) Descriptor deprecated

func (*Event) Descriptor() ([]byte, []int)

Deprecated: Use Event.ProtoReflect.Descriptor instead.

func (*Event) GetGrantedRole

func (x *Event) GetGrantedRole() []*PrefixMetadata_ACL

func (*Event) GetInstance

func (x *Event) GetInstance() string

func (*Event) GetKind

func (x *Event) GetKind() EventKind

func (*Event) GetPackage

func (x *Event) GetPackage() string

func (*Event) GetRef

func (x *Event) GetRef() string

func (*Event) GetRevokedRole

func (x *Event) GetRevokedRole() []*PrefixMetadata_ACL

func (*Event) GetTag

func (x *Event) GetTag() string

func (*Event) GetWhen

func (x *Event) GetWhen() *timestamp.Timestamp

func (*Event) GetWho

func (x *Event) GetWho() string

func (*Event) ProtoMessage

func (*Event) ProtoMessage()

func (*Event) ProtoReflect

func (x *Event) ProtoReflect() protoreflect.Message

func (*Event) Reset

func (x *Event) Reset()

func (*Event) String

func (x *Event) String() string

type EventKind

type EventKind int32
const (
	EventKind_EVENT_KIND_UNSPECIFIED EventKind = 0
	// Prefix events: relate to some CIPD prefix.
	EventKind_PREFIX_ACL_CHANGED EventKind = 100
	// Package events: relate to a package (as a whole).
	EventKind_PACKAGE_CREATED  EventKind = 200
	EventKind_PACKAGE_DELETED  EventKind = 201
	EventKind_PACKAGE_HIDDEN   EventKind = 202
	EventKind_PACKAGE_UNHIDDEN EventKind = 203
	// Instance events: relate to a particular package instance.
	EventKind_INSTANCE_CREATED      EventKind = 300
	EventKind_INSTANCE_DELETED      EventKind = 301
	EventKind_INSTANCE_REF_SET      EventKind = 302
	EventKind_INSTANCE_REF_UNSET    EventKind = 303
	EventKind_INSTANCE_TAG_ATTACHED EventKind = 304
	EventKind_INSTANCE_TAG_DETACHED EventKind = 305
)

func (EventKind) Descriptor

func (EventKind) Descriptor() protoreflect.EnumDescriptor

func (EventKind) Enum

func (x EventKind) Enum() *EventKind

func (EventKind) EnumDescriptor deprecated

func (EventKind) EnumDescriptor() ([]byte, []int)

Deprecated: Use EventKind.Descriptor instead.

func (EventKind) Number

func (x EventKind) Number() protoreflect.EnumNumber

func (EventKind) String

func (x EventKind) String() string

func (EventKind) Type

type ExportedTag

type ExportedTag struct {
	Id         string               `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`                                   // (pkg, inst, id) is full tag key
	Instance   string               `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`                       // an instance ID, e.g. "AdPcH..."
	Package    string               `protobuf:"bytes,3,opt,name=package,proto3" json:"package,omitempty"`                         // a package name, e.g. "a/b/c"
	Key        string               `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"`                                 // key portion of the tag
	Value      string               `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"`                             // value portion of the tag
	AttachedBy string               `protobuf:"bytes,6,opt,name=attached_by,json=attachedBy,proto3" json:"attached_by,omitempty"` // who added it, "user:<email>"
	AttachedTs *timestamp.Timestamp `protobuf:"bytes,7,opt,name=attached_ts,json=attachedTs,proto3" json:"attached_ts,omitempty"` // when it was added
	// contains filtered or unexported fields
}

ExportedTag defines a schema for 'exported_tags_<jobid>' BigQuery tables.

It is populated by EXPORT_TAGS_TO_BQ mapper job and can be used for various adhoc analysis of tags.

func (*ExportedTag) Descriptor deprecated

func (*ExportedTag) Descriptor() ([]byte, []int)

Deprecated: Use ExportedTag.ProtoReflect.Descriptor instead.

func (*ExportedTag) GetAttachedBy

func (x *ExportedTag) GetAttachedBy() string

func (*ExportedTag) GetAttachedTs

func (x *ExportedTag) GetAttachedTs() *timestamp.Timestamp

func (*ExportedTag) GetId

func (x *ExportedTag) GetId() string

func (*ExportedTag) GetInstance

func (x *ExportedTag) GetInstance() string

func (*ExportedTag) GetKey

func (x *ExportedTag) GetKey() string

func (*ExportedTag) GetPackage

func (x *ExportedTag) GetPackage() string

func (*ExportedTag) GetValue

func (x *ExportedTag) GetValue() string

func (*ExportedTag) ProtoMessage

func (*ExportedTag) ProtoMessage()

func (*ExportedTag) ProtoReflect

func (x *ExportedTag) ProtoReflect() protoreflect.Message

func (*ExportedTag) Reset

func (x *ExportedTag) Reset()

func (*ExportedTag) String

func (x *ExportedTag) String() string

type FinishUploadRequest

type FinishUploadRequest struct {

	// An identifier of an upload operation returned by BeginUpload RPC.
	UploadOperationId string `protobuf:"bytes,1,opt,name=upload_operation_id,json=uploadOperationId,proto3" json:"upload_operation_id,omitempty"`
	// If set, instructs Storage to skip the hash verification and just assume the
	// uploaded object has the given hash.
	//
	// This is used internally by the service as an optimization for cases when
	// it trusts the uploaded data (for example, when it upload it itself).
	//
	// External callers are denied usage of this field. Attempt to use it results
	// in PERMISSION_DENIED.
	ForceHash *ObjectRef `protobuf:"bytes,2,opt,name=force_hash,json=forceHash,proto3" json:"force_hash,omitempty"`
	// contains filtered or unexported fields
}

func (*FinishUploadRequest) Descriptor deprecated

func (*FinishUploadRequest) Descriptor() ([]byte, []int)

Deprecated: Use FinishUploadRequest.ProtoReflect.Descriptor instead.

func (*FinishUploadRequest) GetForceHash

func (x *FinishUploadRequest) GetForceHash() *ObjectRef

func (*FinishUploadRequest) GetUploadOperationId

func (x *FinishUploadRequest) GetUploadOperationId() string

func (*FinishUploadRequest) ProtoMessage

func (*FinishUploadRequest) ProtoMessage()

func (*FinishUploadRequest) ProtoReflect

func (x *FinishUploadRequest) ProtoReflect() protoreflect.Message

func (*FinishUploadRequest) Reset

func (x *FinishUploadRequest) Reset()

func (*FinishUploadRequest) String

func (x *FinishUploadRequest) String() string

type GetInstanceURLRequest

type GetInstanceURLRequest struct {

	// The package that holds the instance we want to get URL of.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// The instance we want to get URL of.
	Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// contains filtered or unexported fields
}

func (*GetInstanceURLRequest) Descriptor deprecated

func (*GetInstanceURLRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetInstanceURLRequest.ProtoReflect.Descriptor instead.

func (*GetInstanceURLRequest) GetInstance

func (x *GetInstanceURLRequest) GetInstance() *ObjectRef

func (*GetInstanceURLRequest) GetPackage

func (x *GetInstanceURLRequest) GetPackage() string

func (*GetInstanceURLRequest) ProtoMessage

func (*GetInstanceURLRequest) ProtoMessage()

func (*GetInstanceURLRequest) ProtoReflect

func (x *GetInstanceURLRequest) ProtoReflect() protoreflect.Message

func (*GetInstanceURLRequest) Reset

func (x *GetInstanceURLRequest) Reset()

func (*GetInstanceURLRequest) String

func (x *GetInstanceURLRequest) String() string

type GetObjectURLRequest

type GetObjectURLRequest struct {

	// A reference to the object the client wants to fetch.
	Object *ObjectRef `protobuf:"bytes,1,opt,name=object,proto3" json:"object,omitempty"`
	// If present, the returned URL will be served with Content-Disposition header
	// that includes the given filename. It makes browsers save the file under the
	// given name.
	DownloadFilename string `protobuf:"bytes,2,opt,name=download_filename,json=downloadFilename,proto3" json:"download_filename,omitempty"`
	// contains filtered or unexported fields
}

func (*GetObjectURLRequest) Descriptor deprecated

func (*GetObjectURLRequest) Descriptor() ([]byte, []int)

Deprecated: Use GetObjectURLRequest.ProtoReflect.Descriptor instead.

func (*GetObjectURLRequest) GetDownloadFilename

func (x *GetObjectURLRequest) GetDownloadFilename() string

func (*GetObjectURLRequest) GetObject

func (x *GetObjectURLRequest) GetObject() *ObjectRef

func (*GetObjectURLRequest) ProtoMessage

func (*GetObjectURLRequest) ProtoMessage()

func (*GetObjectURLRequest) ProtoReflect

func (x *GetObjectURLRequest) ProtoReflect() protoreflect.Message

func (*GetObjectURLRequest) Reset

func (x *GetObjectURLRequest) Reset()

func (*GetObjectURLRequest) String

func (x *GetObjectURLRequest) String() string

type HashAlgo

type HashAlgo int32

Supported hashing algorithms used by the content-addressable storage.

Literal names are important, since they are used to construct Google Storage paths internally.

const (
	HashAlgo_HASH_ALGO_UNSPECIFIED HashAlgo = 0
	HashAlgo_SHA1                  HashAlgo = 1
	HashAlgo_SHA256                HashAlgo = 2
)

func (HashAlgo) Descriptor

func (HashAlgo) Descriptor() protoreflect.EnumDescriptor

func (HashAlgo) Enum

func (x HashAlgo) Enum() *HashAlgo

func (HashAlgo) EnumDescriptor deprecated

func (HashAlgo) EnumDescriptor() ([]byte, []int)

Deprecated: Use HashAlgo.Descriptor instead.

func (HashAlgo) Number

func (x HashAlgo) Number() protoreflect.EnumNumber

func (HashAlgo) String

func (x HashAlgo) String() string

func (HashAlgo) Type

type InheritedPrefixMetadata

type InheritedPrefixMetadata struct {

	// Per-prefix metadata that applies to a prefix, ordered by prefix length.
	//
	// For example, when requesting metadata for prefix "a/b/c/d" the reply may
	// contain entries for "a", "a/b", "a/b/c/d" (in that order, with "a/b/c"
	// skipped in this example as not having any metadata attached).
	PerPrefixMetadata []*PrefixMetadata `protobuf:"bytes,1,rep,name=per_prefix_metadata,json=perPrefixMetadata,proto3" json:"per_prefix_metadata,omitempty"`
	// contains filtered or unexported fields
}

func (*InheritedPrefixMetadata) Descriptor deprecated

func (*InheritedPrefixMetadata) Descriptor() ([]byte, []int)

Deprecated: Use InheritedPrefixMetadata.ProtoReflect.Descriptor instead.

func (*InheritedPrefixMetadata) GetPerPrefixMetadata

func (x *InheritedPrefixMetadata) GetPerPrefixMetadata() []*PrefixMetadata

func (*InheritedPrefixMetadata) ProtoMessage

func (*InheritedPrefixMetadata) ProtoMessage()

func (*InheritedPrefixMetadata) ProtoReflect

func (x *InheritedPrefixMetadata) ProtoReflect() protoreflect.Message

func (*InheritedPrefixMetadata) Reset

func (x *InheritedPrefixMetadata) Reset()

func (*InheritedPrefixMetadata) String

func (x *InheritedPrefixMetadata) String() string

type Instance

type Instance struct {

	// A name of the package, e.g. "a/b/c/d".
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// A reference to the instance file in the storage.
	Instance *ObjectRef `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// User who registered the instance (output only).
	RegisteredBy string `protobuf:"bytes,3,opt,name=registered_by,json=registeredBy,proto3" json:"registered_by,omitempty"`
	// When the instance was registered (output only).
	RegisteredTs *timestamp.Timestamp `protobuf:"bytes,4,opt,name=registered_ts,json=registeredTs,proto3" json:"registered_ts,omitempty"`
	// contains filtered or unexported fields
}

Instance is a pointer to an instance of some package.

func (*Instance) Descriptor deprecated

func (*Instance) Descriptor() ([]byte, []int)

Deprecated: Use Instance.ProtoReflect.Descriptor instead.

func (*Instance) GetInstance

func (x *Instance) GetInstance() *ObjectRef

func (*Instance) GetPackage

func (x *Instance) GetPackage() string

func (*Instance) GetRegisteredBy

func (x *Instance) GetRegisteredBy() string

func (*Instance) GetRegisteredTs

func (x *Instance) GetRegisteredTs() *timestamp.Timestamp

func (*Instance) ProtoMessage

func (*Instance) ProtoMessage()

func (*Instance) ProtoReflect

func (x *Instance) ProtoReflect() protoreflect.Message

func (*Instance) Reset

func (x *Instance) Reset()

func (*Instance) String

func (x *Instance) String() string

type ListInstancesRequest

type ListInstancesRequest struct {

	// Name of a package to list instances of.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// Number of instances to return on one page, default is 100.
	PageSize int32 `protobuf:"varint,20,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// Value of 'next_page_token' from the previous response.
	//
	// Can be used to resume fetching.
	PageToken string `protobuf:"bytes,21,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// contains filtered or unexported fields
}

func (*ListInstancesRequest) Descriptor deprecated

func (*ListInstancesRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListInstancesRequest.ProtoReflect.Descriptor instead.

func (*ListInstancesRequest) GetPackage

func (x *ListInstancesRequest) GetPackage() string

func (*ListInstancesRequest) GetPageSize

func (x *ListInstancesRequest) GetPageSize() int32

func (*ListInstancesRequest) GetPageToken

func (x *ListInstancesRequest) GetPageToken() string

func (*ListInstancesRequest) ProtoMessage

func (*ListInstancesRequest) ProtoMessage()

func (*ListInstancesRequest) ProtoReflect

func (x *ListInstancesRequest) ProtoReflect() protoreflect.Message

func (*ListInstancesRequest) Reset

func (x *ListInstancesRequest) Reset()

func (*ListInstancesRequest) String

func (x *ListInstancesRequest) String() string

type ListInstancesResponse

type ListInstancesResponse struct {

	// Package instances, sorted by registration time, most recent first.
	Instances []*Instance `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty"`
	// Value to pass as 'page_token' in ListInstancesRequest to resume fetching or
	// empty string if there's no more results.
	NextPageToken string `protobuf:"bytes,20,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	// contains filtered or unexported fields
}

func (*ListInstancesResponse) Descriptor deprecated

func (*ListInstancesResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListInstancesResponse.ProtoReflect.Descriptor instead.

func (*ListInstancesResponse) GetInstances

func (x *ListInstancesResponse) GetInstances() []*Instance

func (*ListInstancesResponse) GetNextPageToken

func (x *ListInstancesResponse) GetNextPageToken() string

func (*ListInstancesResponse) ProtoMessage

func (*ListInstancesResponse) ProtoMessage()

func (*ListInstancesResponse) ProtoReflect

func (x *ListInstancesResponse) ProtoReflect() protoreflect.Message

func (*ListInstancesResponse) Reset

func (x *ListInstancesResponse) Reset()

func (*ListInstancesResponse) String

func (x *ListInstancesResponse) String() string

type ListPrefixRequest

type ListPrefixRequest struct {

	// A prefix within the repository to list, e.g. "a/b/c". Empty prefix is also
	// accepted: it means "root of the repository".
	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// If false, list only direct descendants of the prefix, otherwise all.
	Recursive bool `protobuf:"varint,2,opt,name=recursive,proto3" json:"recursive,omitempty"`
	// If true, include hidden packages in the result.
	IncludeHidden bool `protobuf:"varint,3,opt,name=include_hidden,json=includeHidden,proto3" json:"include_hidden,omitempty"`
	// contains filtered or unexported fields
}

func (*ListPrefixRequest) Descriptor deprecated

func (*ListPrefixRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListPrefixRequest.ProtoReflect.Descriptor instead.

func (*ListPrefixRequest) GetIncludeHidden

func (x *ListPrefixRequest) GetIncludeHidden() bool

func (*ListPrefixRequest) GetPrefix

func (x *ListPrefixRequest) GetPrefix() string

func (*ListPrefixRequest) GetRecursive

func (x *ListPrefixRequest) GetRecursive() bool

func (*ListPrefixRequest) ProtoMessage

func (*ListPrefixRequest) ProtoMessage()

func (*ListPrefixRequest) ProtoReflect

func (x *ListPrefixRequest) ProtoReflect() protoreflect.Message

func (*ListPrefixRequest) Reset

func (x *ListPrefixRequest) Reset()

func (*ListPrefixRequest) String

func (x *ListPrefixRequest) String() string

type ListPrefixResponse

type ListPrefixResponse struct {

	// Lexicographically sorted list of full packages names.
	Packages []string `protobuf:"bytes,1,rep,name=packages,proto3" json:"packages,omitempty"`
	// Lexicographically sorted list of child prefixes (without trailing '/').
	Prefixes []string `protobuf:"bytes,2,rep,name=prefixes,proto3" json:"prefixes,omitempty"`
	// contains filtered or unexported fields
}

func (*ListPrefixResponse) Descriptor deprecated

func (*ListPrefixResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListPrefixResponse.ProtoReflect.Descriptor instead.

func (*ListPrefixResponse) GetPackages

func (x *ListPrefixResponse) GetPackages() []string

func (*ListPrefixResponse) GetPrefixes

func (x *ListPrefixResponse) GetPrefixes() []string

func (*ListPrefixResponse) ProtoMessage

func (*ListPrefixResponse) ProtoMessage()

func (*ListPrefixResponse) ProtoReflect

func (x *ListPrefixResponse) ProtoReflect() protoreflect.Message

func (*ListPrefixResponse) Reset

func (x *ListPrefixResponse) Reset()

func (*ListPrefixResponse) String

func (x *ListPrefixResponse) String() string

type ListRefsRequest

type ListRefsRequest struct {

	// Name of a package to list refs of.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// contains filtered or unexported fields
}

func (*ListRefsRequest) Descriptor deprecated

func (*ListRefsRequest) Descriptor() ([]byte, []int)

Deprecated: Use ListRefsRequest.ProtoReflect.Descriptor instead.

func (*ListRefsRequest) GetPackage

func (x *ListRefsRequest) GetPackage() string

func (*ListRefsRequest) ProtoMessage

func (*ListRefsRequest) ProtoMessage()

func (*ListRefsRequest) ProtoReflect

func (x *ListRefsRequest) ProtoReflect() protoreflect.Message

func (*ListRefsRequest) Reset

func (x *ListRefsRequest) Reset()

func (*ListRefsRequest) String

func (x *ListRefsRequest) String() string

type ListRefsResponse

type ListRefsResponse struct {

	// Package refs, sorted by modification time, most recently touched first.
	Refs []*Ref `protobuf:"bytes,1,rep,name=refs,proto3" json:"refs,omitempty"`
	// contains filtered or unexported fields
}

func (*ListRefsResponse) Descriptor deprecated

func (*ListRefsResponse) Descriptor() ([]byte, []int)

Deprecated: Use ListRefsResponse.ProtoReflect.Descriptor instead.

func (*ListRefsResponse) GetRefs

func (x *ListRefsResponse) GetRefs() []*Ref

func (*ListRefsResponse) ProtoMessage

func (*ListRefsResponse) ProtoMessage()

func (*ListRefsResponse) ProtoReflect

func (x *ListRefsResponse) ProtoReflect() protoreflect.Message

func (*ListRefsResponse) Reset

func (x *ListRefsResponse) Reset()

func (*ListRefsResponse) String

func (x *ListRefsResponse) String() string

type ObjectRef

type ObjectRef struct {
	HashAlgo  HashAlgo `protobuf:"varint,1,opt,name=hash_algo,json=hashAlgo,proto3,enum=cipd.HashAlgo" json:"hash_algo,omitempty"` // an algorithm applied to the body to get the name
	HexDigest string   `protobuf:"bytes,2,opt,name=hex_digest,json=hexDigest,proto3" json:"hex_digest,omitempty"`                  // the name as lowercase hex string, e.g 'abcdef...'
	// contains filtered or unexported fields
}

A reference to an object in the content-addressable storage.

func (*ObjectRef) Descriptor deprecated

func (*ObjectRef) Descriptor() ([]byte, []int)

Deprecated: Use ObjectRef.ProtoReflect.Descriptor instead.

func (*ObjectRef) GetHashAlgo

func (x *ObjectRef) GetHashAlgo() HashAlgo

func (*ObjectRef) GetHexDigest

func (x *ObjectRef) GetHexDigest() string

func (*ObjectRef) ProtoMessage

func (*ObjectRef) ProtoMessage()

func (*ObjectRef) ProtoReflect

func (x *ObjectRef) ProtoReflect() protoreflect.Message

func (*ObjectRef) Reset

func (x *ObjectRef) Reset()

func (*ObjectRef) String

func (x *ObjectRef) String() string

type ObjectURL

type ObjectURL struct {

	// A signed HTTPS URL to the object's body.
	//
	// Fetching it doesn't require authentication. Expires after some unspecified
	// short amount of time. It is expected that callers will use it immediately.
	//
	// The URL isn't guaranteed to have any particular internal structure. Do not
	// attempt to parse it.
	SignedUrl string `protobuf:"bytes,1,opt,name=signed_url,json=signedUrl,proto3" json:"signed_url,omitempty"`
	// contains filtered or unexported fields
}

func (*ObjectURL) Descriptor deprecated

func (*ObjectURL) Descriptor() ([]byte, []int)

Deprecated: Use ObjectURL.ProtoReflect.Descriptor instead.

func (*ObjectURL) GetSignedUrl

func (x *ObjectURL) GetSignedUrl() string

func (*ObjectURL) ProtoMessage

func (*ObjectURL) ProtoMessage()

func (*ObjectURL) ProtoReflect

func (x *ObjectURL) ProtoReflect() protoreflect.Message

func (*ObjectURL) Reset

func (x *ObjectURL) Reset()

func (*ObjectURL) String

func (x *ObjectURL) String() string

type PackageRequest

type PackageRequest struct {
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// contains filtered or unexported fields
}

PackageRequest names a package and nothing else.

func (*PackageRequest) Descriptor deprecated

func (*PackageRequest) Descriptor() ([]byte, []int)

Deprecated: Use PackageRequest.ProtoReflect.Descriptor instead.

func (*PackageRequest) GetPackage

func (x *PackageRequest) GetPackage() string

func (*PackageRequest) ProtoMessage

func (*PackageRequest) ProtoMessage()

func (*PackageRequest) ProtoReflect

func (x *PackageRequest) ProtoReflect() protoreflect.Message

func (*PackageRequest) Reset

func (x *PackageRequest) Reset()

func (*PackageRequest) String

func (x *PackageRequest) String() string

type PrefixMetadata

type PrefixMetadata struct {

	// Prefix this metadata is defined at, e.g. "a/b/c".
	//
	// Note: there's no metadata at the root, so prefix must never be "".
	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// An opaque string that identifies a particular version of this metadata.
	//
	// Used by UpdatePrefixMetadata to prevent an accidental overwrite of changes.
	Fingerprint string `protobuf:"bytes,2,opt,name=fingerprint,proto3" json:"fingerprint,omitempty"`
	// When the metadata was modified the last time.
	//
	// Managed by the server, ignored when passed to UpdatePrefixMetadata.
	UpdateTime *timestamp.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// Identity string of whoever modified the metadata the last time.
	//
	// Managed by the server, ignored when passed to UpdatePrefixMetadata.
	UpdateUser string `protobuf:"bytes,4,opt,name=update_user,json=updateUser,proto3" json:"update_user,omitempty"`
	// ACLs that apply to this prefix and all subprefixes, as a mapping from
	// a role to a list of users and groups that have it.
	Acls []*PrefixMetadata_ACL `protobuf:"bytes,5,rep,name=acls,proto3" json:"acls,omitempty"`
	// contains filtered or unexported fields
}

PrefixMetadata is metadata defined at some concrete package prefix.

It applies to this prefix and all subprefixes, recursively.

func (*PrefixMetadata) Descriptor deprecated

func (*PrefixMetadata) Descriptor() ([]byte, []int)

Deprecated: Use PrefixMetadata.ProtoReflect.Descriptor instead.

func (*PrefixMetadata) GetAcls

func (x *PrefixMetadata) GetAcls() []*PrefixMetadata_ACL

func (*PrefixMetadata) GetFingerprint

func (x *PrefixMetadata) GetFingerprint() string

func (*PrefixMetadata) GetPrefix

func (x *PrefixMetadata) GetPrefix() string

func (*PrefixMetadata) GetUpdateTime

func (x *PrefixMetadata) GetUpdateTime() *timestamp.Timestamp

func (*PrefixMetadata) GetUpdateUser

func (x *PrefixMetadata) GetUpdateUser() string

func (*PrefixMetadata) ProtoMessage

func (*PrefixMetadata) ProtoMessage()

func (*PrefixMetadata) ProtoReflect

func (x *PrefixMetadata) ProtoReflect() protoreflect.Message

func (*PrefixMetadata) Reset

func (x *PrefixMetadata) Reset()

func (*PrefixMetadata) String

func (x *PrefixMetadata) String() string

type PrefixMetadata_ACL

type PrefixMetadata_ACL struct {

	// Role that this ACL describes.
	Role Role `protobuf:"varint,1,opt,name=role,proto3,enum=cipd.Role" json:"role,omitempty"`
	// Users and groups that have the specified role.
	//
	// Each entry has a form "<kind>:<value>", e.g "group:..." or "user:...".
	Principals []string `protobuf:"bytes,2,rep,name=principals,proto3" json:"principals,omitempty"`
	// contains filtered or unexported fields
}

func (*PrefixMetadata_ACL) Descriptor deprecated

func (*PrefixMetadata_ACL) Descriptor() ([]byte, []int)

Deprecated: Use PrefixMetadata_ACL.ProtoReflect.Descriptor instead.

func (*PrefixMetadata_ACL) GetPrincipals

func (x *PrefixMetadata_ACL) GetPrincipals() []string

func (*PrefixMetadata_ACL) GetRole

func (x *PrefixMetadata_ACL) GetRole() Role

func (*PrefixMetadata_ACL) ProtoMessage

func (*PrefixMetadata_ACL) ProtoMessage()

func (*PrefixMetadata_ACL) ProtoReflect

func (x *PrefixMetadata_ACL) ProtoReflect() protoreflect.Message

func (*PrefixMetadata_ACL) Reset

func (x *PrefixMetadata_ACL) Reset()

func (*PrefixMetadata_ACL) String

func (x *PrefixMetadata_ACL) String() string

type PrefixRequest

type PrefixRequest struct {

	// A prefix within the repository, e.g. "a/b/c".
	Prefix string `protobuf:"bytes,1,opt,name=prefix,proto3" json:"prefix,omitempty"`
	// contains filtered or unexported fields
}

func (*PrefixRequest) Descriptor deprecated

func (*PrefixRequest) Descriptor() ([]byte, []int)

Deprecated: Use PrefixRequest.ProtoReflect.Descriptor instead.

func (*PrefixRequest) GetPrefix

func (x *PrefixRequest) GetPrefix() string

func (*PrefixRequest) ProtoMessage

func (*PrefixRequest) ProtoMessage()

func (*PrefixRequest) ProtoReflect

func (x *PrefixRequest) ProtoReflect() protoreflect.Message

func (*PrefixRequest) Reset

func (x *PrefixRequest) Reset()

func (*PrefixRequest) String

func (x *PrefixRequest) String() string

type Processor

type Processor struct {

	// Internal identifier of the processor, e.g. "cipd_client_binary:v1"
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// The state of this processor, see the enum.
	State Processor_State `protobuf:"varint,2,opt,name=state,proto3,enum=cipd.Processor_State" json:"state,omitempty"`
	// When the processor finished running (successfully or not).
	FinishedTs *timestamp.Timestamp `protobuf:"bytes,3,opt,name=finished_ts,json=finishedTs,proto3" json:"finished_ts,omitempty"`
	// For SUCCEEDED state, result of the processing.
	Result *_struct.Struct `protobuf:"bytes,4,opt,name=result,proto3" json:"result,omitempty"`
	// For FAILED state, the error message.
	Error string `protobuf:"bytes,5,opt,name=error,proto3" json:"error,omitempty"`
	// contains filtered or unexported fields
}

Processor describes a state of some post-registration processing step performed on an instance.

func (*Processor) Descriptor deprecated

func (*Processor) Descriptor() ([]byte, []int)

Deprecated: Use Processor.ProtoReflect.Descriptor instead.

func (*Processor) GetError

func (x *Processor) GetError() string

func (*Processor) GetFinishedTs

func (x *Processor) GetFinishedTs() *timestamp.Timestamp

func (*Processor) GetId

func (x *Processor) GetId() string

func (*Processor) GetResult

func (x *Processor) GetResult() *_struct.Struct

func (*Processor) GetState

func (x *Processor) GetState() Processor_State

func (*Processor) ProtoMessage

func (*Processor) ProtoMessage()

func (*Processor) ProtoReflect

func (x *Processor) ProtoReflect() protoreflect.Message

func (*Processor) Reset

func (x *Processor) Reset()

func (*Processor) String

func (x *Processor) String() string

type Processor_State

type Processor_State int32
const (
	Processor_STATE_UNSPECIFIED Processor_State = 0
	Processor_PENDING           Processor_State = 1
	Processor_SUCCEEDED         Processor_State = 2
	Processor_FAILED            Processor_State = 3
)

func (Processor_State) Descriptor

func (Processor_State) Enum

func (x Processor_State) Enum() *Processor_State

func (Processor_State) EnumDescriptor deprecated

func (Processor_State) EnumDescriptor() ([]byte, []int)

Deprecated: Use Processor_State.Descriptor instead.

func (Processor_State) Number

func (Processor_State) String

func (x Processor_State) String() string

func (Processor_State) Type

type Ref

type Ref struct {

	// Name of the ref, e.g. "latest".
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Name of the package where the ref is defined.
	Package string `protobuf:"bytes,2,opt,name=package,proto3" json:"package,omitempty"`
	// A package instance the ref is pointing to.
	Instance *ObjectRef `protobuf:"bytes,3,opt,name=instance,proto3" json:"instance,omitempty"`
	// User who modified this ref the last time (output only).
	ModifiedBy string `protobuf:"bytes,4,opt,name=modified_by,json=modifiedBy,proto3" json:"modified_by,omitempty"`
	// When the ref was modified the last time (output only).
	ModifiedTs *timestamp.Timestamp `protobuf:"bytes,5,opt,name=modified_ts,json=modifiedTs,proto3" json:"modified_ts,omitempty"`
	// contains filtered or unexported fields
}

Ref is a mutable named pointer to some package instance that can be used as a version identifier.

func (*Ref) Descriptor deprecated

func (*Ref) Descriptor() ([]byte, []int)

Deprecated: Use Ref.ProtoReflect.Descriptor instead.

func (*Ref) GetInstance

func (x *Ref) GetInstance() *ObjectRef

func (*Ref) GetModifiedBy

func (x *Ref) GetModifiedBy() string

func (*Ref) GetModifiedTs

func (x *Ref) GetModifiedTs() *timestamp.Timestamp

func (*Ref) GetName

func (x *Ref) GetName() string

func (*Ref) GetPackage

func (x *Ref) GetPackage() string

func (*Ref) ProtoMessage

func (*Ref) ProtoMessage()

func (*Ref) ProtoReflect

func (x *Ref) ProtoReflect() protoreflect.Message

func (*Ref) Reset

func (x *Ref) Reset()

func (*Ref) String

func (x *Ref) String() string

type RegisterInstanceResponse

type RegisterInstanceResponse struct {

	// Outcome of the operation, see the enum for possibilities.
	//
	// Defines what other fields are present.
	Status RegistrationStatus `protobuf:"varint,1,opt,name=status,proto3,enum=cipd.RegistrationStatus" json:"status,omitempty"`
	// For statuses REGISTERED and ALREADY_REGISTERED contains details about the
	// instance. Not set for NOT_UPLOADED status.
	Instance *Instance `protobuf:"bytes,2,opt,name=instance,proto3" json:"instance,omitempty"`
	// For status NOT_UPLOADED contains a new upload operation that can be used
	// together with Storage service to upload the instance file. Not set for
	// other statuses.
	UploadOp *UploadOperation `protobuf:"bytes,3,opt,name=upload_op,json=uploadOp,proto3" json:"upload_op,omitempty"`
	// contains filtered or unexported fields
}

func (*RegisterInstanceResponse) Descriptor deprecated

func (*RegisterInstanceResponse) Descriptor() ([]byte, []int)

Deprecated: Use RegisterInstanceResponse.ProtoReflect.Descriptor instead.

func (*RegisterInstanceResponse) GetInstance

func (x *RegisterInstanceResponse) GetInstance() *Instance

func (*RegisterInstanceResponse) GetStatus

func (*RegisterInstanceResponse) GetUploadOp

func (x *RegisterInstanceResponse) GetUploadOp() *UploadOperation

func (*RegisterInstanceResponse) ProtoMessage

func (*RegisterInstanceResponse) ProtoMessage()

func (*RegisterInstanceResponse) ProtoReflect

func (x *RegisterInstanceResponse) ProtoReflect() protoreflect.Message

func (*RegisterInstanceResponse) Reset

func (x *RegisterInstanceResponse) Reset()

func (*RegisterInstanceResponse) String

func (x *RegisterInstanceResponse) String() string

type RegistrationStatus

type RegistrationStatus int32

RegistrationStatus is part of RegisterInstance RPC response.

const (
	RegistrationStatus_REGISTRATION_STATUS_UNSPECIFIED RegistrationStatus = 0
	RegistrationStatus_REGISTERED                      RegistrationStatus = 1 // the instance was successfully registered just now
	RegistrationStatus_ALREADY_REGISTERED              RegistrationStatus = 2 // the instance already exists, this is OK
	RegistrationStatus_NOT_UPLOADED                    RegistrationStatus = 3 // the instance should be uploaded to Storage first
)

func (RegistrationStatus) Descriptor

func (RegistrationStatus) Enum

func (RegistrationStatus) EnumDescriptor deprecated

func (RegistrationStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use RegistrationStatus.Descriptor instead.

func (RegistrationStatus) Number

func (RegistrationStatus) String

func (x RegistrationStatus) String() string

func (RegistrationStatus) Type

type RepositoryClient

type RepositoryClient interface {
	// Returns metadata associated with the given prefix.
	//
	// Requires the caller to have OWNER role for the requested prefix or any of
	// parent prefixes, otherwise the call fails with PERMISSION_DENIED error.
	//
	// If the caller has OWNER permission in any of parent prefixes, but the
	// requested prefix has no metadata associated with it, the call fails with
	// NOT_FOUND error.
	GetPrefixMetadata(ctx context.Context, in *PrefixRequest, opts ...grpc.CallOption) (*PrefixMetadata, error)
	// Returns metadata associated with the given prefix and all parent prefixes.
	//
	// Requires the caller to have OWNER role for the requested prefix or any of
	// parent prefixes, otherwise the call fails with PERMISSION_DENIED error.
	//
	// Note that if the caller has permission to see the metadata for the
	// requested prefix, they will also see metadata for all parent prefixes,
	// since it is needed to assemble the final metadata for the prefix (it
	// includes inherited properties from all parent prefixes).
	GetInheritedPrefixMetadata(ctx context.Context, in *PrefixRequest, opts ...grpc.CallOption) (*InheritedPrefixMetadata, error)
	// Updates or creates metadata associated with the given prefix.
	//
	// Requires the caller to have OWNER role for the requested prefix or any of
	// parent prefixes, otherwise the call fails with PERMISSION_DENIED error.
	//
	// This method checks 'fingerprint' field of the PrefixMetadata object. If the
	// metadata for the given prefix already exists, and the fingerprint in the
	// request doesn't match the current fingerprint, the request fails with
	// FAILED_PRECONDITION error.
	//
	// If the metadata doesn't exist yet, its fingerprint is assumed to be empty
	// string. So pass empty fingerprint when creating initial metadata objects.
	//
	// If the caller passes empty fingerprint, but the metadata already exists,
	// the request fails with ALREADY_EXISTS error.
	//
	// Note that there's no way to delete metadata once it was created. Passing
	// empty PrefixMetadata object is the best that can be done.
	//
	// On success returns PrefixMetadata object with the updated fingerprint.
	UpdatePrefixMetadata(ctx context.Context, in *PrefixMetadata, opts ...grpc.CallOption) (*PrefixMetadata, error)
	// Returns a set of roles the caller has in the given prefix.
	//
	// Unlike GetPrefixMetadata call that requires OWNER access (since it returns
	// a lot of detailed information), GetRolesInPrefix can be called by anyone.
	//
	// It understands and expands roles inheritance, e.g. if the caller is an
	// OWNER, the result will also contain WRITER and READER (as they are implied
	// by being an OWNER).
	//
	// Returns empty set of roles if the caller has no permissions to access the
	// prefix at all or such prefix doesn't exist.
	GetRolesInPrefix(ctx context.Context, in *PrefixRequest, opts ...grpc.CallOption) (*RolesInPrefixResponse, error)
	// Lists packages and subprefixes registered under the prefix.
	//
	// Lists either only direct descendants or recursively all descendants. The
	// result is sorted lexicographically.
	//
	// For example, for packages ["a", "a/b", "a/c/d", "a/c/e/f"], listing of "a"
	// will be:
	//   * {packages: ["a/b"], prefixes: ["a/c"]} if listing non-recursively.
	//   * {packages: ["a/b", "a/c/d", "a/c/e/f"], prefixes: ["a/c", "a/c/e"]} if
	//     listing recursively.
	//
	// Returns only packages and prefixes visible to the caller. This applies even
	// when listing a prefix the caller has no direct read access to. For example,
	// recursively listing the root prefix will return all packages the caller has
	// read access to (no matter when in the hierarchy they are located), even if
	// the caller has no READER permission in the root. It works as if the caller
	// can freely browse the repository that contains only the packages they can
	// see and nothing else.
	ListPrefix(ctx context.Context, in *ListPrefixRequest, opts ...grpc.CallOption) (*ListPrefixResponse, error)
	// HidePackage marks the package as hidden.
	//
	// This removes it from the ListPrefix results, but doesn't otherwise affect
	// its usage (e.g. it is still fetchable).
	//
	// Requires OWNER role for the package prefix. Returns PERMISSION_DENIED
	// otherwise.
	HidePackage(ctx context.Context, in *PackageRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// UnhidePackage marks the package as visible again.
	//
	// It's reverse of HidePackage.
	//
	// Requires OWNER role for the package prefix. Returns PERMISSION_DENIED
	// otherwise.
	UnhidePackage(ctx context.Context, in *PackageRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// DeletePackage removes the package (along with all its instances, tags, refs
	// etc) from the repository.
	//
	// There's no undo. Once the package is deleted, it is gone forever.
	//
	// This operation has a potential to break various pinned historical CIPD
	// ensure files and thus should not be used casually, only in extreme cases.
	// Consider just hiding the package instead of deleting it.
	//
	// For the reasons above, the operation requires admin access: only owners of
	// the repository root can delete packages.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a root owner.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package doesn't exist.
	DeletePackage(ctx context.Context, in *PackageRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// Registers a package instance in the repository (if it was uploaded to the
	// storage already and wasn't registered yet) or initiates a new upload
	// operation.
	//
	// Callers are expected to execute the following protocol:
	//   1. Attempt to register a package instance by calling RegisterInstance.
	//   2. On NOT_UPLOADED status, upload the package data and finalize the
	//      upload operation using Storage RPC service and upload_op from the
	//      response.
	//   3. Once the upload operation is finalized, call RegisterInstance again,
	//      it should succeed with status REGISTERED now.
	//
	// If such instance is already registered by someone else, returns
	// ALREADY_REGISTERED status. This is not an error.
	//
	// Callers must have roles WRITER or OWNER for the package prefix. Returns
	// PERMISSION_DENIED otherwise.
	RegisterInstance(ctx context.Context, in *Instance, opts ...grpc.CallOption) (*RegisterInstanceResponse, error)
	// Lists instances of a package, most recent first.
	//
	// Callers must have roles READER (or above) for the package prefix. Returns
	// PERMISSION_DENIED otherwise.
	//
	// If the package doesn't exist, returns NOT_FOUND.
	ListInstances(ctx context.Context, in *ListInstancesRequest, opts ...grpc.CallOption) (*ListInstancesResponse, error)
	// Returns package instances that have all given tags attached.
	//
	// Queries only instances of some particular package (i.e. this is not a
	// global query).
	//
	// Callers must have roles READER (or above) for the package prefix. Returns
	// PERMISSION_DENIED otherwise.
	//
	// If the package doesn't exist, returns NOT_FOUND.
	SearchInstances(ctx context.Context, in *SearchInstancesRequest, opts ...grpc.CallOption) (*SearchInstancesResponse, error)
	// Creates a new ref or moves an existing one.
	//
	// A ref is a mutable named pointer to some existing package instance that
	// can be used as a version identifier. For example, "latest" or "stable".
	//
	// Refs are namespaced to some particular package. E.g. "latest" ref in
	// packages "A" and "B" are completely different entities not related to each
	// other.
	//
	// Pointing a ref to an instance generally makes the instance "discoverable".
	// For that reason the ref can be set only to instances that successfully
	// passed all post-registration processing.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a WRITER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package or the instance the ref points to doesn't exist.
	//   FAILED_PRECONDITION if the instance is still being processed.
	//   ABORTED if the instance has some failed processors associated with it,
	//       such instance is effectively broken and should not be used.
	CreateRef(ctx context.Context, in *Ref, opts ...grpc.CallOption) (*empty.Empty, error)
	// Removes a ref.
	//
	// Not a failure if there's no such ref.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a WRITER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package doesn't exist.
	DeleteRef(ctx context.Context, in *DeleteRefRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// Lists refs defined in a package, most recently modified first.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package doesn't exist.
	ListRefs(ctx context.Context, in *ListRefsRequest, opts ...grpc.CallOption) (*ListRefsResponse, error)
	// Attaches one or more tags to an instance.
	//
	// Silently skips already attached tags.
	//
	// Tags are "key:value" pairs associated with a concrete package instance.
	// They can be used for querying registered instances and for version
	// resolution: if a tag is attached to one and only one instance of a package,
	// the tag uniquely identifies this instance and such tag can be used as an
	// alias of the instance ID.
	//
	// Tags generally should be assumed globally namespaced (e.g. it makes sense
	// to query for all registered instances with a given tag, across all
	// packages), and they don't have to be unique: same tag may be attached to
	// multiple instances (of the same or different packages).
	//
	// Additionally, tags (unlike refs) are intended to be mostly static, since
	// they usually relate to some properties of package instances, which are
	// static entities. This is particularity important for tags used for version
	// resolution.
	//
	// Attaching a tag to an instance generally makes the instance "discoverable".
	// For that reason tags can be attached only to instances that successfully
	// passed all post-registration processing.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a WRITER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package or the instance doesn't exist.
	//   FAILED_PRECONDITION if the instance is still being processed.
	//   ABORTED if the instance has some failed processors associated with it,
	//       such instance is effectively broken and should not be used.
	AttachTags(ctx context.Context, in *AttachTagsRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// Detaches one or more tags if they were attached.
	//
	// This call should not be used routinely, since tags are assumed to be
	// static (and thus not detachable).
	//
	// It is occasionally useful for fixing screw ups though. For that reason,
	// DetachTags is allowed only by OWNERS of a prefix (not WRITERS, like
	// AttachTags).
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not an OWNER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package or the instance doesn't exist.
	DetachTags(ctx context.Context, in *DetachTagsRequest, opts ...grpc.CallOption) (*empty.Empty, error)
	// Takes a version string and resolves it into a concrete package instance.
	//
	// A version string can be any of:
	//   * A string-encoded instance ID, e.g. "abcdef....".
	//   * A ref name, e.g. "latest".
	//   * A tag, e.g. "version:1.10.3".
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if there's no such package or version.
	//   FAILED_PRECONDITION if the tag resolves to multiple instances.
	ResolveVersion(ctx context.Context, in *ResolveVersionRequest, opts ...grpc.CallOption) (*Instance, error)
	// Produces a signed URL that can be used to fetch the package instance file.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if there's no such instance.
	GetInstanceURL(ctx context.Context, in *GetInstanceURLRequest, opts ...grpc.CallOption) (*ObjectURL, error)
	// Returns information about a package instance.
	//
	// Depending on fields set in the request, returns details such as when the
	// instance was registered and by whom, refs pointing to it, tags attached to
	// it, state of all processors that handled it (if any).
	//
	// May also be used as a simple instance presence check, if all describe_*
	// fields in the request are false. If the request succeeds, then the
	// instance exists.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the instance doesn't exist.
	DescribeInstance(ctx context.Context, in *DescribeInstanceRequest, opts ...grpc.CallOption) (*DescribeInstanceResponse, error)
	// Returns information about a CIPD client package.
	//
	// Used by the client self-update procedure.
	//
	// Returns:
	//   NOT_FOUND if the package or the instance doesn't exist.
	//   FAILED_PRECONDITION if the instance is still being processed.
	//   ABORTED if the instance has some failed processors associated with it,
	//       such instance is effectively broken and should not be used.
	DescribeClient(ctx context.Context, in *DescribeClientRequest, opts ...grpc.CallOption) (*DescribeClientResponse, error)
}

RepositoryClient is the client API for Repository service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewRepositoryClient

func NewRepositoryClient(cc grpc.ClientConnInterface) RepositoryClient

func NewRepositoryPRPCClient

func NewRepositoryPRPCClient(client *prpc.Client) RepositoryClient

type RepositoryServer

type RepositoryServer interface {
	// Returns metadata associated with the given prefix.
	//
	// Requires the caller to have OWNER role for the requested prefix or any of
	// parent prefixes, otherwise the call fails with PERMISSION_DENIED error.
	//
	// If the caller has OWNER permission in any of parent prefixes, but the
	// requested prefix has no metadata associated with it, the call fails with
	// NOT_FOUND error.
	GetPrefixMetadata(context.Context, *PrefixRequest) (*PrefixMetadata, error)
	// Returns metadata associated with the given prefix and all parent prefixes.
	//
	// Requires the caller to have OWNER role for the requested prefix or any of
	// parent prefixes, otherwise the call fails with PERMISSION_DENIED error.
	//
	// Note that if the caller has permission to see the metadata for the
	// requested prefix, they will also see metadata for all parent prefixes,
	// since it is needed to assemble the final metadata for the prefix (it
	// includes inherited properties from all parent prefixes).
	GetInheritedPrefixMetadata(context.Context, *PrefixRequest) (*InheritedPrefixMetadata, error)
	// Updates or creates metadata associated with the given prefix.
	//
	// Requires the caller to have OWNER role for the requested prefix or any of
	// parent prefixes, otherwise the call fails with PERMISSION_DENIED error.
	//
	// This method checks 'fingerprint' field of the PrefixMetadata object. If the
	// metadata for the given prefix already exists, and the fingerprint in the
	// request doesn't match the current fingerprint, the request fails with
	// FAILED_PRECONDITION error.
	//
	// If the metadata doesn't exist yet, its fingerprint is assumed to be empty
	// string. So pass empty fingerprint when creating initial metadata objects.
	//
	// If the caller passes empty fingerprint, but the metadata already exists,
	// the request fails with ALREADY_EXISTS error.
	//
	// Note that there's no way to delete metadata once it was created. Passing
	// empty PrefixMetadata object is the best that can be done.
	//
	// On success returns PrefixMetadata object with the updated fingerprint.
	UpdatePrefixMetadata(context.Context, *PrefixMetadata) (*PrefixMetadata, error)
	// Returns a set of roles the caller has in the given prefix.
	//
	// Unlike GetPrefixMetadata call that requires OWNER access (since it returns
	// a lot of detailed information), GetRolesInPrefix can be called by anyone.
	//
	// It understands and expands roles inheritance, e.g. if the caller is an
	// OWNER, the result will also contain WRITER and READER (as they are implied
	// by being an OWNER).
	//
	// Returns empty set of roles if the caller has no permissions to access the
	// prefix at all or such prefix doesn't exist.
	GetRolesInPrefix(context.Context, *PrefixRequest) (*RolesInPrefixResponse, error)
	// Lists packages and subprefixes registered under the prefix.
	//
	// Lists either only direct descendants or recursively all descendants. The
	// result is sorted lexicographically.
	//
	// For example, for packages ["a", "a/b", "a/c/d", "a/c/e/f"], listing of "a"
	// will be:
	//   * {packages: ["a/b"], prefixes: ["a/c"]} if listing non-recursively.
	//   * {packages: ["a/b", "a/c/d", "a/c/e/f"], prefixes: ["a/c", "a/c/e"]} if
	//     listing recursively.
	//
	// Returns only packages and prefixes visible to the caller. This applies even
	// when listing a prefix the caller has no direct read access to. For example,
	// recursively listing the root prefix will return all packages the caller has
	// read access to (no matter when in the hierarchy they are located), even if
	// the caller has no READER permission in the root. It works as if the caller
	// can freely browse the repository that contains only the packages they can
	// see and nothing else.
	ListPrefix(context.Context, *ListPrefixRequest) (*ListPrefixResponse, error)
	// HidePackage marks the package as hidden.
	//
	// This removes it from the ListPrefix results, but doesn't otherwise affect
	// its usage (e.g. it is still fetchable).
	//
	// Requires OWNER role for the package prefix. Returns PERMISSION_DENIED
	// otherwise.
	HidePackage(context.Context, *PackageRequest) (*empty.Empty, error)
	// UnhidePackage marks the package as visible again.
	//
	// It's reverse of HidePackage.
	//
	// Requires OWNER role for the package prefix. Returns PERMISSION_DENIED
	// otherwise.
	UnhidePackage(context.Context, *PackageRequest) (*empty.Empty, error)
	// DeletePackage removes the package (along with all its instances, tags, refs
	// etc) from the repository.
	//
	// There's no undo. Once the package is deleted, it is gone forever.
	//
	// This operation has a potential to break various pinned historical CIPD
	// ensure files and thus should not be used casually, only in extreme cases.
	// Consider just hiding the package instead of deleting it.
	//
	// For the reasons above, the operation requires admin access: only owners of
	// the repository root can delete packages.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a root owner.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package doesn't exist.
	DeletePackage(context.Context, *PackageRequest) (*empty.Empty, error)
	// Registers a package instance in the repository (if it was uploaded to the
	// storage already and wasn't registered yet) or initiates a new upload
	// operation.
	//
	// Callers are expected to execute the following protocol:
	//   1. Attempt to register a package instance by calling RegisterInstance.
	//   2. On NOT_UPLOADED status, upload the package data and finalize the
	//      upload operation using Storage RPC service and upload_op from the
	//      response.
	//   3. Once the upload operation is finalized, call RegisterInstance again,
	//      it should succeed with status REGISTERED now.
	//
	// If such instance is already registered by someone else, returns
	// ALREADY_REGISTERED status. This is not an error.
	//
	// Callers must have roles WRITER or OWNER for the package prefix. Returns
	// PERMISSION_DENIED otherwise.
	RegisterInstance(context.Context, *Instance) (*RegisterInstanceResponse, error)
	// Lists instances of a package, most recent first.
	//
	// Callers must have roles READER (or above) for the package prefix. Returns
	// PERMISSION_DENIED otherwise.
	//
	// If the package doesn't exist, returns NOT_FOUND.
	ListInstances(context.Context, *ListInstancesRequest) (*ListInstancesResponse, error)
	// Returns package instances that have all given tags attached.
	//
	// Queries only instances of some particular package (i.e. this is not a
	// global query).
	//
	// Callers must have roles READER (or above) for the package prefix. Returns
	// PERMISSION_DENIED otherwise.
	//
	// If the package doesn't exist, returns NOT_FOUND.
	SearchInstances(context.Context, *SearchInstancesRequest) (*SearchInstancesResponse, error)
	// Creates a new ref or moves an existing one.
	//
	// A ref is a mutable named pointer to some existing package instance that
	// can be used as a version identifier. For example, "latest" or "stable".
	//
	// Refs are namespaced to some particular package. E.g. "latest" ref in
	// packages "A" and "B" are completely different entities not related to each
	// other.
	//
	// Pointing a ref to an instance generally makes the instance "discoverable".
	// For that reason the ref can be set only to instances that successfully
	// passed all post-registration processing.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a WRITER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package or the instance the ref points to doesn't exist.
	//   FAILED_PRECONDITION if the instance is still being processed.
	//   ABORTED if the instance has some failed processors associated with it,
	//       such instance is effectively broken and should not be used.
	CreateRef(context.Context, *Ref) (*empty.Empty, error)
	// Removes a ref.
	//
	// Not a failure if there's no such ref.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a WRITER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package doesn't exist.
	DeleteRef(context.Context, *DeleteRefRequest) (*empty.Empty, error)
	// Lists refs defined in a package, most recently modified first.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package doesn't exist.
	ListRefs(context.Context, *ListRefsRequest) (*ListRefsResponse, error)
	// Attaches one or more tags to an instance.
	//
	// Silently skips already attached tags.
	//
	// Tags are "key:value" pairs associated with a concrete package instance.
	// They can be used for querying registered instances and for version
	// resolution: if a tag is attached to one and only one instance of a package,
	// the tag uniquely identifies this instance and such tag can be used as an
	// alias of the instance ID.
	//
	// Tags generally should be assumed globally namespaced (e.g. it makes sense
	// to query for all registered instances with a given tag, across all
	// packages), and they don't have to be unique: same tag may be attached to
	// multiple instances (of the same or different packages).
	//
	// Additionally, tags (unlike refs) are intended to be mostly static, since
	// they usually relate to some properties of package instances, which are
	// static entities. This is particularity important for tags used for version
	// resolution.
	//
	// Attaching a tag to an instance generally makes the instance "discoverable".
	// For that reason tags can be attached only to instances that successfully
	// passed all post-registration processing.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a WRITER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package or the instance doesn't exist.
	//   FAILED_PRECONDITION if the instance is still being processed.
	//   ABORTED if the instance has some failed processors associated with it,
	//       such instance is effectively broken and should not be used.
	AttachTags(context.Context, *AttachTagsRequest) (*empty.Empty, error)
	// Detaches one or more tags if they were attached.
	//
	// This call should not be used routinely, since tags are assumed to be
	// static (and thus not detachable).
	//
	// It is occasionally useful for fixing screw ups though. For that reason,
	// DetachTags is allowed only by OWNERS of a prefix (not WRITERS, like
	// AttachTags).
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not an OWNER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the package or the instance doesn't exist.
	DetachTags(context.Context, *DetachTagsRequest) (*empty.Empty, error)
	// Takes a version string and resolves it into a concrete package instance.
	//
	// A version string can be any of:
	//   * A string-encoded instance ID, e.g. "abcdef....".
	//   * A ref name, e.g. "latest".
	//   * A tag, e.g. "version:1.10.3".
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if there's no such package or version.
	//   FAILED_PRECONDITION if the tag resolves to multiple instances.
	ResolveVersion(context.Context, *ResolveVersionRequest) (*Instance, error)
	// Produces a signed URL that can be used to fetch the package instance file.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if there's no such instance.
	GetInstanceURL(context.Context, *GetInstanceURLRequest) (*ObjectURL, error)
	// Returns information about a package instance.
	//
	// Depending on fields set in the request, returns details such as when the
	// instance was registered and by whom, refs pointing to it, tags attached to
	// it, state of all processors that handled it (if any).
	//
	// May also be used as a simple instance presence check, if all describe_*
	// fields in the request are false. If the request succeeds, then the
	// instance exists.
	//
	// Returns:
	//   PERMISSION_DENIED if the caller is not a READER for the prefix.
	//   INVALID_ARGUMENT if the request is malformed.
	//   NOT_FOUND if the instance doesn't exist.
	DescribeInstance(context.Context, *DescribeInstanceRequest) (*DescribeInstanceResponse, error)
	// Returns information about a CIPD client package.
	//
	// Used by the client self-update procedure.
	//
	// Returns:
	//   NOT_FOUND if the package or the instance doesn't exist.
	//   FAILED_PRECONDITION if the instance is still being processed.
	//   ABORTED if the instance has some failed processors associated with it,
	//       such instance is effectively broken and should not be used.
	DescribeClient(context.Context, *DescribeClientRequest) (*DescribeClientResponse, error)
}

RepositoryServer is the server API for Repository service.

type ResolveVersionRequest

type ResolveVersionRequest struct {

	// The package that contains the instance we are resolving version of.
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// The version string to resolve, see ResolveVersion for details.
	Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
	// contains filtered or unexported fields
}

func (*ResolveVersionRequest) Descriptor deprecated

func (*ResolveVersionRequest) Descriptor() ([]byte, []int)

Deprecated: Use ResolveVersionRequest.ProtoReflect.Descriptor instead.

func (*ResolveVersionRequest) GetPackage

func (x *ResolveVersionRequest) GetPackage() string

func (*ResolveVersionRequest) GetVersion

func (x *ResolveVersionRequest) GetVersion() string

func (*ResolveVersionRequest) ProtoMessage

func (*ResolveVersionRequest) ProtoMessage()

func (*ResolveVersionRequest) ProtoReflect

func (x *ResolveVersionRequest) ProtoReflect() protoreflect.Message

func (*ResolveVersionRequest) Reset

func (x *ResolveVersionRequest) Reset()

func (*ResolveVersionRequest) String

func (x *ResolveVersionRequest) String() string

type Role

type Role int32

Roles used in package prefix ACLs.

A user can have one or more such roles for a package prefix. They get inherited by all subprefixes.

const (
	Role_ROLE_UNSPECIFIED Role = 0
	// Readers can fetch package instances and package metadata (e.g. list of
	// instances, all tags, all refs), but not prefix metadata (e.g. ACLs).
	Role_READER Role = 1
	// Writers can do everything that readers can, plus create new packages,
	// upload package instances, attach tags, move refs.
	Role_WRITER Role = 2
	// Owners can do everything that writers can, plus read prefix metadata for
	// all parent prefixes and all subprefixes, and modify prefix metadata for
	// all subprefixes.
	Role_OWNER Role = 3
)

func (Role) Descriptor

func (Role) Descriptor() protoreflect.EnumDescriptor

func (Role) Enum

func (x Role) Enum() *Role

func (Role) EnumDescriptor deprecated

func (Role) EnumDescriptor() ([]byte, []int)

Deprecated: Use Role.Descriptor instead.

func (Role) Number

func (x Role) Number() protoreflect.EnumNumber

func (Role) String

func (x Role) String() string

func (Role) Type

func (Role) Type() protoreflect.EnumType

type RolesInPrefixResponse

type RolesInPrefixResponse struct {

	// Unordered set or roles the caller has in the requested prefix.
	Roles []*RolesInPrefixResponse_RoleInPrefix `protobuf:"bytes,1,rep,name=roles,proto3" json:"roles,omitempty"`
	// contains filtered or unexported fields
}

func (*RolesInPrefixResponse) Descriptor deprecated

func (*RolesInPrefixResponse) Descriptor() ([]byte, []int)

Deprecated: Use RolesInPrefixResponse.ProtoReflect.Descriptor instead.

func (*RolesInPrefixResponse) GetRoles

func (*RolesInPrefixResponse) ProtoMessage

func (*RolesInPrefixResponse) ProtoMessage()

func (*RolesInPrefixResponse) ProtoReflect

func (x *RolesInPrefixResponse) ProtoReflect() protoreflect.Message

func (*RolesInPrefixResponse) Reset

func (x *RolesInPrefixResponse) Reset()

func (*RolesInPrefixResponse) String

func (x *RolesInPrefixResponse) String() string

type RolesInPrefixResponse_RoleInPrefix

type RolesInPrefixResponse_RoleInPrefix struct {
	Role Role `protobuf:"varint,1,opt,name=role,proto3,enum=cipd.Role" json:"role,omitempty"`
	// contains filtered or unexported fields
}

func (*RolesInPrefixResponse_RoleInPrefix) Descriptor deprecated

func (*RolesInPrefixResponse_RoleInPrefix) Descriptor() ([]byte, []int)

Deprecated: Use RolesInPrefixResponse_RoleInPrefix.ProtoReflect.Descriptor instead.

func (*RolesInPrefixResponse_RoleInPrefix) GetRole

func (*RolesInPrefixResponse_RoleInPrefix) ProtoMessage

func (*RolesInPrefixResponse_RoleInPrefix) ProtoMessage()

func (*RolesInPrefixResponse_RoleInPrefix) ProtoReflect

func (*RolesInPrefixResponse_RoleInPrefix) Reset

func (*RolesInPrefixResponse_RoleInPrefix) String

type SearchInstancesRequest

type SearchInstancesRequest struct {

	// Name of a package to query instances of (required).
	Package string `protobuf:"bytes,1,opt,name=package,proto3" json:"package,omitempty"`
	// Tags to look for (the found instances have ALL these tags attached).
	//
	// Due to internal limitations, the query is most efficient only when it
	// specifies one tag to filter by. All additional tags are checked in a
	// separate step after the initial query. For that reason when searching for
	// multiple tags it is better to specify the most limiting tags first.
	Tags []*Tag `protobuf:"bytes,2,rep,name=tags,proto3" json:"tags,omitempty"`
	// Number of instances to return on one page, default is 100.
	PageSize int32 `protobuf:"varint,20,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// Value of 'next_page_token' from the previous response.
	//
	// Can be used to resume fetching.
	PageToken string `protobuf:"bytes,21,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchInstancesRequest) Descriptor deprecated

func (*SearchInstancesRequest) Descriptor() ([]byte, []int)

Deprecated: Use SearchInstancesRequest.ProtoReflect.Descriptor instead.

func (*SearchInstancesRequest) GetPackage

func (x *SearchInstancesRequest) GetPackage() string

func (*SearchInstancesRequest) GetPageSize

func (x *SearchInstancesRequest) GetPageSize() int32

func (*SearchInstancesRequest) GetPageToken

func (x *SearchInstancesRequest) GetPageToken() string

func (*SearchInstancesRequest) GetTags

func (x *SearchInstancesRequest) GetTags() []*Tag

func (*SearchInstancesRequest) ProtoMessage

func (*SearchInstancesRequest) ProtoMessage()

func (*SearchInstancesRequest) ProtoReflect

func (x *SearchInstancesRequest) ProtoReflect() protoreflect.Message

func (*SearchInstancesRequest) Reset

func (x *SearchInstancesRequest) Reset()

func (*SearchInstancesRequest) String

func (x *SearchInstancesRequest) String() string

type SearchInstancesResponse

type SearchInstancesResponse struct {

	// Package instances, sorted by registration time, most recent first.
	Instances []*Instance `protobuf:"bytes,1,rep,name=instances,proto3" json:"instances,omitempty"`
	// Value to pass as 'page_token' in SearchInstancesRequest to resume fetching
	// or empty string if there's no more results.
	NextPageToken string `protobuf:"bytes,20,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchInstancesResponse) Descriptor deprecated

func (*SearchInstancesResponse) Descriptor() ([]byte, []int)

Deprecated: Use SearchInstancesResponse.ProtoReflect.Descriptor instead.

func (*SearchInstancesResponse) GetInstances

func (x *SearchInstancesResponse) GetInstances() []*Instance

func (*SearchInstancesResponse) GetNextPageToken

func (x *SearchInstancesResponse) GetNextPageToken() string

func (*SearchInstancesResponse) ProtoMessage

func (*SearchInstancesResponse) ProtoMessage()

func (*SearchInstancesResponse) ProtoReflect

func (x *SearchInstancesResponse) ProtoReflect() protoreflect.Message

func (*SearchInstancesResponse) Reset

func (x *SearchInstancesResponse) Reset()

func (*SearchInstancesResponse) String

func (x *SearchInstancesResponse) String() string

type StorageClient

type StorageClient interface {
	// Produces a signed URL that can be used to fetch an object.
	//
	// Returns NOT_FOUND status code if there's no such object.
	GetObjectURL(ctx context.Context, in *GetObjectURLRequest, opts ...grpc.CallOption) (*ObjectURL, error)
	// Initiates an upload operation.
	//
	// Once the upload is initiated the client is responsible for uploading the
	// object to the temporary location (provided via 'upload_url' which should be
	// used as an upload URL in Google Storage Resumable Upload protocol) and
	// finishing the upload with a call to FinishUpload, which will launch
	// the verification of the object's hash on the server side.
	//
	// If the client knows the hash of the object it wants to upload already, it
	// can provide it via 'object' field. In that case Storage may reply right
	// away that such object already exists by retuning ALREADY_EXISTS status
	// code.
	//
	// If the client doesn't know the hash yet (perhaps if the object's body is
	// generated on the fly), it still can open an upload operation and start
	// streaming the data. When finalizing the upload the backend will calculate
	// and return the resulting hash of the object.
	//
	// An UploadOperation returned by this method contains tokens that grant
	// direct upload access to whoever possesses them, so it should be treated as
	// a secret. See UploadOperation for more info.
	BeginUpload(ctx context.Context, in *BeginUploadRequest, opts ...grpc.CallOption) (*UploadOperation, error)
	// Finishes the pending upload operation, returning its new status.
	//
	// Clients are expected to finish Google Storage Resumable protocol first
	// before calling FinishUpload. Failure to do so will cause the upload
	// operation to end up in ERROR state.
	//
	// This call is idempotent and it is expected that clients will keep polling
	// it if they want to wait for the server to verify the hash of the uploaded
	// object.
	//
	// Returns NOT_FOUND if the provided upload operation doesn't exist.
	//
	// Errors related to the uploaded file body are communicated through 'status'
	// field of the upload operation, since they are not directly related to this
	// RPC call, but rather to the upload operation itself.
	FinishUpload(ctx context.Context, in *FinishUploadRequest, opts ...grpc.CallOption) (*UploadOperation, error)
	// CancelUpload aborts the pending upload operation.
	//
	// It moves it to CANCELED state if it was in UPLOADING state and cleans up
	// any temporary garbage. Returns the most recent state of the upload
	// operation (whatever it may be).
	//
	// Does nothing if the operation is already canceled or failed.
	//
	// Returns:
	//   NOT_FOUND if the provided upload operation doesn't exist.
	//   FAILED_PRECONDITION if the upload operation is in PUBLISHED or VERIFYING
	//      state (i.e. finished or being finalized now).
	CancelUpload(ctx context.Context, in *CancelUploadRequest, opts ...grpc.CallOption) (*UploadOperation, error)
}

StorageClient is the client API for Storage service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewStorageClient

func NewStorageClient(cc grpc.ClientConnInterface) StorageClient

func NewStoragePRPCClient

func NewStoragePRPCClient(client *prpc.Client) StorageClient

type StorageServer

type StorageServer interface {
	// Produces a signed URL that can be used to fetch an object.
	//
	// Returns NOT_FOUND status code if there's no such object.
	GetObjectURL(context.Context, *GetObjectURLRequest) (*ObjectURL, error)
	// Initiates an upload operation.
	//
	// Once the upload is initiated the client is responsible for uploading the
	// object to the temporary location (provided via 'upload_url' which should be
	// used as an upload URL in Google Storage Resumable Upload protocol) and
	// finishing the upload with a call to FinishUpload, which will launch
	// the verification of the object's hash on the server side.
	//
	// If the client knows the hash of the object it wants to upload already, it
	// can provide it via 'object' field. In that case Storage may reply right
	// away that such object already exists by retuning ALREADY_EXISTS status
	// code.
	//
	// If the client doesn't know the hash yet (perhaps if the object's body is
	// generated on the fly), it still can open an upload operation and start
	// streaming the data. When finalizing the upload the backend will calculate
	// and return the resulting hash of the object.
	//
	// An UploadOperation returned by this method contains tokens that grant
	// direct upload access to whoever possesses them, so it should be treated as
	// a secret. See UploadOperation for more info.
	BeginUpload(context.Context, *BeginUploadRequest) (*UploadOperation, error)
	// Finishes the pending upload operation, returning its new status.
	//
	// Clients are expected to finish Google Storage Resumable protocol first
	// before calling FinishUpload. Failure to do so will cause the upload
	// operation to end up in ERROR state.
	//
	// This call is idempotent and it is expected that clients will keep polling
	// it if they want to wait for the server to verify the hash of the uploaded
	// object.
	//
	// Returns NOT_FOUND if the provided upload operation doesn't exist.
	//
	// Errors related to the uploaded file body are communicated through 'status'
	// field of the upload operation, since they are not directly related to this
	// RPC call, but rather to the upload operation itself.
	FinishUpload(context.Context, *FinishUploadRequest) (*UploadOperation, error)
	// CancelUpload aborts the pending upload operation.
	//
	// It moves it to CANCELED state if it was in UPLOADING state and cleans up
	// any temporary garbage. Returns the most recent state of the upload
	// operation (whatever it may be).
	//
	// Does nothing if the operation is already canceled or failed.
	//
	// Returns:
	//   NOT_FOUND if the provided upload operation doesn't exist.
	//   FAILED_PRECONDITION if the upload operation is in PUBLISHED or VERIFYING
	//      state (i.e. finished or being finalized now).
	CancelUpload(context.Context, *CancelUploadRequest) (*UploadOperation, error)
}

StorageServer is the server API for Storage service.

type Tag

type Tag struct {

	// Key should be a lowercase identifier-like string ([a-z0-9_\-]+).
	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	// Value can be an arbitrary string.
	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
	// User that attached this tag (output only).
	AttachedBy string `protobuf:"bytes,3,opt,name=attached_by,json=attachedBy,proto3" json:"attached_by,omitempty"`
	// When the tag was attached (output only).
	AttachedTs *timestamp.Timestamp `protobuf:"bytes,4,opt,name=attached_ts,json=attachedTs,proto3" json:"attached_ts,omitempty"`
	// contains filtered or unexported fields
}

Tag is a key:value pair attached to some instance.

Keys don't have to be unique, only the full pair should. For example, it is fine to have "version:1" and "version:2" tags attached to the same instance.

The total length of the tag (as "key:value" pair) should be less that 400 bytes.

func (*Tag) Descriptor deprecated

func (*Tag) Descriptor() ([]byte, []int)

Deprecated: Use Tag.ProtoReflect.Descriptor instead.

func (*Tag) GetAttachedBy

func (x *Tag) GetAttachedBy() string

func (*Tag) GetAttachedTs

func (x *Tag) GetAttachedTs() *timestamp.Timestamp

func (*Tag) GetKey

func (x *Tag) GetKey() string

func (*Tag) GetValue

func (x *Tag) GetValue() string

func (*Tag) ProtoMessage

func (*Tag) ProtoMessage()

func (*Tag) ProtoReflect

func (x *Tag) ProtoReflect() protoreflect.Message

func (*Tag) Reset

func (x *Tag) Reset()

func (*Tag) String

func (x *Tag) String() string

type UnimplementedRepositoryServer

type UnimplementedRepositoryServer struct {
}

UnimplementedRepositoryServer can be embedded to have forward compatible implementations.

func (*UnimplementedRepositoryServer) AttachTags

func (*UnimplementedRepositoryServer) CreateRef

func (*UnimplementedRepositoryServer) DeletePackage

func (*UnimplementedRepositoryServer) DeleteRef

func (*UnimplementedRepositoryServer) DescribeClient

func (*UnimplementedRepositoryServer) DescribeInstance

func (*UnimplementedRepositoryServer) DetachTags

func (*UnimplementedRepositoryServer) GetInheritedPrefixMetadata

func (*UnimplementedRepositoryServer) GetInstanceURL

func (*UnimplementedRepositoryServer) GetPrefixMetadata

func (*UnimplementedRepositoryServer) GetRolesInPrefix

func (*UnimplementedRepositoryServer) HidePackage

func (*UnimplementedRepositoryServer) ListInstances

func (*UnimplementedRepositoryServer) ListPrefix

func (*UnimplementedRepositoryServer) ListRefs

func (*UnimplementedRepositoryServer) RegisterInstance

func (*UnimplementedRepositoryServer) ResolveVersion

func (*UnimplementedRepositoryServer) SearchInstances

func (*UnimplementedRepositoryServer) UnhidePackage

func (*UnimplementedRepositoryServer) UpdatePrefixMetadata

type UnimplementedStorageServer

type UnimplementedStorageServer struct {
}

UnimplementedStorageServer can be embedded to have forward compatible implementations.

func (*UnimplementedStorageServer) BeginUpload

func (*UnimplementedStorageServer) CancelUpload

func (*UnimplementedStorageServer) FinishUpload

func (*UnimplementedStorageServer) GetObjectURL

type UploadOperation

type UploadOperation struct {

	// An opaque string that identifies this upload operation.
	//
	// It acts as a temporary authorization token for FinishUpload RPC. Treat it
	// as a secret.
	OperationId string `protobuf:"bytes,1,opt,name=operation_id,json=operationId,proto3" json:"operation_id,omitempty"`
	// URL the client should use in Google Storage Resumable Upload protocol to
	// upload the object's body.
	//
	// No authentication is required to upload data to this URL, so it also should
	// be treated as a secret.
	UploadUrl string `protobuf:"bytes,2,opt,name=upload_url,json=uploadUrl,proto3" json:"upload_url,omitempty"`
	// Status of the upload operation.
	Status UploadStatus `protobuf:"varint,3,opt,name=status,proto3,enum=cipd.UploadStatus" json:"status,omitempty"`
	// For PUBLISHED status, the reference to the published object.
	//
	// This is in particular useful for uploads when the hash of the object is not
	// known until the upload is finished.
	Object *ObjectRef `protobuf:"bytes,4,opt,name=object,proto3" json:"object,omitempty"`
	// For ERRORED status, a human readable error message.
	ErrorMessage string `protobuf:"bytes,5,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
	// contains filtered or unexported fields
}

func (*UploadOperation) Descriptor deprecated

func (*UploadOperation) Descriptor() ([]byte, []int)

Deprecated: Use UploadOperation.ProtoReflect.Descriptor instead.

func (*UploadOperation) GetErrorMessage

func (x *UploadOperation) GetErrorMessage() string

func (*UploadOperation) GetObject

func (x *UploadOperation) GetObject() *ObjectRef

func (*UploadOperation) GetOperationId

func (x *UploadOperation) GetOperationId() string

func (*UploadOperation) GetStatus

func (x *UploadOperation) GetStatus() UploadStatus

func (*UploadOperation) GetUploadUrl

func (x *UploadOperation) GetUploadUrl() string

func (*UploadOperation) ProtoMessage

func (*UploadOperation) ProtoMessage()

func (*UploadOperation) ProtoReflect

func (x *UploadOperation) ProtoReflect() protoreflect.Message

func (*UploadOperation) Reset

func (x *UploadOperation) Reset()

func (*UploadOperation) String

func (x *UploadOperation) String() string

type UploadStatus

type UploadStatus int32
const (
	UploadStatus_UPLOAD_STATUS_UNSPECIFIED UploadStatus = 0
	UploadStatus_UPLOADING                 UploadStatus = 1 // the data is being uploaded now
	UploadStatus_VERIFYING                 UploadStatus = 2 // the object's hash is being verified now
	UploadStatus_PUBLISHED                 UploadStatus = 3 // the object has been published in the CAS
	UploadStatus_ERRORED                   UploadStatus = 4 // there were fatal errors during the finalization
	UploadStatus_CANCELED                  UploadStatus = 5 // the operation was canceled via CancelUpload
)

func (UploadStatus) Descriptor

func (UploadStatus) Enum

func (x UploadStatus) Enum() *UploadStatus

func (UploadStatus) EnumDescriptor deprecated

func (UploadStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use UploadStatus.Descriptor instead.

func (UploadStatus) Number

func (UploadStatus) String

func (x UploadStatus) String() string

func (UploadStatus) Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL