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.



This section is empty.


View Source
var (
	// TQ is global Task Queue dispatcher used by the CIPD service.
	// It serializes and routes Task Queue tasks. The tasks are registered in
	// the constructors below. The router is installed in 'backend' module only,
	// since we executed tasks only there.
	TQ = tq.Dispatcher{BaseURL: "/internal/tq/"}

	// InternalCAS is non-ACLed implementation of cas.StorageService to be used
	// only from within the backend code itself.
	InternalCAS = cas.Internal(&TQ)

	// PublicCAS is ACL-protected implementation of cas.StorageServer that can be
	// exposed as a public API.
	PublicCAS = cas.Public(InternalCAS)

	// PublicRepo is ACL-protected implementation of cipd.RepositoryServer that
	// can be exposed as a public API.
	PublicRepo = repo.Public(InternalCAS, &TQ)

	// AdminAPI is ACL-protected implementation of cipd.AdminServer that can be
	// exposed as an external API to be used by administrators.
	AdminAPI = admin.AdminAPI(&TQ)


This section is empty.


This section is empty.

Source Files


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