luci: Index | Files | Directories

package cas

import ""

Package cas contains implementation of cipd.Storage service RPC service.

There are two instances of the implementation available:

* The internal one, that doesn't do any ACL checks and that can be used
  internally by the CIPD backend. Get it with Internal().
* The publicly exposed one. It wraps the internal one, adding ACLs. Get it
  with Public().


Package Files

acled.go cas.go doc.go signed_urls.go signer.go

func Public Uses

func Public(internal api.StorageServer) api.StorageServer

Public returns publicly exposed implementation of cipd.Storage service that wraps the given internal implementation with ACLs.

type StorageServer Uses

type StorageServer interface {

    // GetReader returns an io.ReaderAt implementation to read contents of an
    // object in the storage.
    // Returns grpc errors. In particular NotFound is returned if there's no such
    // object in the storage.
    GetReader(ctx context.Context, ref *api.ObjectRef) (gs.Reader, error)

StorageServer extends StorageServer RPC interface with some methods used internally by other CIPD server modules.

func Internal Uses

func Internal(d *tq.Dispatcher) StorageServer

Internal returns non-ACLed implementation of StorageService.

It can be used internally by the backend. Assumes ACL checks are already done.

Registers some task queue tasks in the given dispatcher.


tasksPackage tasks contains task queue tasks definitions.

Package cas imports 33 packages (graph) and is imported by 3 packages. Updated 2020-12-06. Refresh now. Tools for package owners.