Documentation

Overview

    Package impl instantiates the full implementation of the CIPD backend services.

    It is imported by GAE's frontend and backend modules that expose appropriate bits and pieces over pRPC and HTTP.

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    func Main

    func Main(extra []module.Module, cb func(srv *server.Server, svc *Services) error)

      Main initializes the core server modules and launches the callback.

      Types

      type Services

      type Services struct {
      	// InternalCAS is non-ACLed implementation of cas.StorageService to be used
      	// only from within the backend code itself.
      	InternalCAS cas.StorageServer
      
      	// PublicCAS is ACL-protected implementation of cas.StorageServer that can be
      	// exposed as a public API.
      	PublicCAS cipdapi.StorageServer
      
      	// PublicRepo is ACL-protected implementation of cipd.RepositoryServer that
      	// can be exposed as a public API.
      	PublicRepo repo.Server
      
      	// AdminAPI is ACL-protected implementation of cipd.AdminServer that can be
      	// exposed as an external API to be used by administrators.
      	AdminAPI adminapi.AdminServer
      
      	// EventLogger can flush events to BigQuery.
      	EventLogger *model.BigQueryEventLogger
      }

        Services is a collection of initialized CIPD backend service subsystems.

        Source Files

        Directories

        Path Synopsis
        Package admin contains implementation of cipd.Admin RPC service.
        Package admin contains implementation of cipd.Admin RPC service.
        cas
        Package cas contains implementation of cipd.Storage service RPC service.
        Package cas contains implementation of cipd.Storage service RPC service.
        tasks
        Package tasks contains task queue tasks definitions.
        Package tasks contains task queue tasks definitions.
        Package gs implement Google Storage API wrapper used by CIPD backend.
        Package gs implement Google Storage API wrapper used by CIPD backend.
        Package metadata implements handling of prefix metadata.
        Package metadata implements handling of prefix metadata.
        Package model contains core CIPD datastore entities.
        Package model contains core CIPD datastore entities.
        tasks
        Package tasks contains task queue tasks definitions.
        Package tasks contains task queue tasks definitions.
        Package monitoring implements monitoring used by CIPD backend.
        Package monitoring implements monitoring used by CIPD backend.
        Package repo contains implementation of cipd.Repository service RPC service.
        Package repo contains implementation of cipd.Repository service RPC service.
        processing
        Package processing contains code related to post-registration instance processing.
        Package processing contains code related to post-registration instance processing.
        tasks
        Package tasks contains task queue tasks definitions.
        Package tasks contains task queue tasks definitions.
        Package rpcacl contains helpers for checking ACLs of individual RPCs.
        Package rpcacl contains helpers for checking ACLs of individual RPCs.
        Package settings contains definition of global CIPD backend settings.
        Package settings contains definition of global CIPD backend settings.
        Package testutil contains helpers used from CIPD backend unit tests.
        Package testutil contains helpers used from CIPD backend unit tests.