synchronization_server

package
v1.1.21 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func HandleRequest

func HandleRequest(w http.ResponseWriter, r *http.Request, request, response interface{}, actionFunc func())

func PerformPost

func PerformPost(client *http.Client, url string, request, response interface{}) error

func RunSynchronizationServer

func RunSynchronizationServer(ip, port string, lockManagerFactoryFunc func(clientID string) (storage.LockManager, error), stagesStorageCacheFactoryFunc func(clientID string) (storage.StagesStorageCache, error)) error

Types

type DeleteAllStagesRequest

type DeleteAllStagesRequest struct {
	ProjectName string `json:"projectName"`
}

type DeleteAllStagesResponse

type DeleteAllStagesResponse struct {
	Err util.SerializableError `json:"err"`
}

type DeleteStagesBySignatureRequest

type DeleteStagesBySignatureRequest struct {
	ProjectName string `json:"projectName"`
	Signature   string `json:"signature"`
}

type DeleteStagesBySignatureResponse

type DeleteStagesBySignatureResponse struct {
	Err util.SerializableError `json:"err"`
}

type GetAllStagesRequest

type GetAllStagesRequest struct {
	ProjectName string `json:"projectName"`
}

type GetAllStagesResponse

type GetAllStagesResponse struct {
	Err    util.SerializableError `json:"err"`
	Found  bool                   `json:"found"`
	Stages []image.StageID        `json:"stages"`
}

type GetStagesBySignatureRequest

type GetStagesBySignatureRequest struct {
	ProjectName string `json:"projectName"`
	Signature   string `json:"signature"`
}

type GetStagesBySignatureResponse

type GetStagesBySignatureResponse struct {
	Err    util.SerializableError `json:"err"`
	Found  bool                   `json:"found"`
	Stages []image.StageID        `json:"stages"`
}

type LockDeployProcessRequest

type LockDeployProcessRequest struct {
	ProjectName     string `json:"projectName"`
	ReleaseName     string `json:"releaseName"`
	KubeContextName string `json:"kubeContextName"`
}

type LockDeployProcessResponse

type LockDeployProcessResponse struct {
	Err        util.SerializableError `json:"err"`
	LockHandle storage.LockHandle     `json:"lockHandle"`
}

type LockImageRequest

type LockImageRequest struct {
	ProjectName string `json:"projectName"`
	ImageName   string `json:"imageName"`
}

type LockImageResponse

type LockImageResponse struct {
	Err        util.SerializableError `json:"err"`
	LockHandle storage.LockHandle     `json:"lockHandle"`
}

type LockManagerHttpClient

type LockManagerHttpClient struct {
	URL        string
	HttpClient *http.Client
}

func NewLockManagerHttpClient

func NewLockManagerHttpClient(url string) *LockManagerHttpClient

func (*LockManagerHttpClient) LockDeployProcess

func (client *LockManagerHttpClient) LockDeployProcess(projectName string, releaseName string, kubeContextName string) (storage.LockHandle, error)

func (*LockManagerHttpClient) LockImage

func (client *LockManagerHttpClient) LockImage(projectName, imageName string) (storage.LockHandle, error)

func (*LockManagerHttpClient) LockStage

func (client *LockManagerHttpClient) LockStage(projectName, signature string) (storage.LockHandle, error)

func (*LockManagerHttpClient) LockStageCache

func (client *LockManagerHttpClient) LockStageCache(projectName, signature string) (storage.LockHandle, error)

func (*LockManagerHttpClient) LockStagesAndImages

func (client *LockManagerHttpClient) LockStagesAndImages(projectName string, opts storage.LockStagesAndImagesOptions) (storage.LockHandle, error)

func (*LockManagerHttpClient) Unlock

func (client *LockManagerHttpClient) Unlock(lockHandle storage.LockHandle) error

type LockManagerHttpHandler

type LockManagerHttpHandler struct {
	*http.ServeMux
	LockManager storage.LockManager
}

func NewLockManagerHttpHandler

func NewLockManagerHttpHandler(lockManager storage.LockManager) *LockManagerHttpHandler

type LockStageCacheRequest

type LockStageCacheRequest struct {
	ProjectName string `json:"projectName"`
	Signature   string `json:"signature"`
}

type LockStageCacheResponse

type LockStageCacheResponse struct {
	Err        util.SerializableError `json:"err"`
	LockHandle storage.LockHandle     `json:"lockHandle"`
}

type LockStageRequest

type LockStageRequest struct {
	ProjectName string `json:"projectName"`
	Signature   string `json:"signature"`
}

type LockStageResponse

type LockStageResponse struct {
	Err        util.SerializableError `json:"err"`
	LockHandle storage.LockHandle     `json:"lockHandle"`
}

type LockStagesAndImagesRequest

type LockStagesAndImagesRequest struct {
	ProjectName string                             `json:"projectName"`
	Opts        storage.LockStagesAndImagesOptions `json:"opts"`
}

type LockStagesAndImagesResponse

type LockStagesAndImagesResponse struct {
	Err        util.SerializableError `json:"err"`
	LockHandle storage.LockHandle     `json:"lockHandle"`
}

type StagesStorageCacheHttpClient

type StagesStorageCacheHttpClient struct {
	URL        string
	HttpClient *http.Client
}

func NewStagesStorageCacheHttpClient

func NewStagesStorageCacheHttpClient(url string) *StagesStorageCacheHttpClient

func (*StagesStorageCacheHttpClient) DeleteAllStages

func (client *StagesStorageCacheHttpClient) DeleteAllStages(projectName string) error

func (*StagesStorageCacheHttpClient) DeleteStagesBySignature

func (client *StagesStorageCacheHttpClient) DeleteStagesBySignature(projectName, signature string) error

func (*StagesStorageCacheHttpClient) GetAllStages

func (client *StagesStorageCacheHttpClient) GetAllStages(projectName string) (bool, []image.StageID, error)

func (*StagesStorageCacheHttpClient) GetStagesBySignature

func (client *StagesStorageCacheHttpClient) GetStagesBySignature(projectName, signature string) (bool, []image.StageID, error)

func (*StagesStorageCacheHttpClient) StoreStagesBySignature

func (client *StagesStorageCacheHttpClient) StoreStagesBySignature(projectName, signature string, stages []image.StageID) error

func (*StagesStorageCacheHttpClient) String

func (client *StagesStorageCacheHttpClient) String() string

type StagesStorageCacheHttpHandler

type StagesStorageCacheHttpHandler struct {
	*http.ServeMux
	StagesStorageCache storage.StagesStorageCache
}

func NewStagesStorageCacheHttpHandler

func NewStagesStorageCacheHttpHandler(stagesStorageCache storage.StagesStorageCache) *StagesStorageCacheHttpHandler

type StoreStagesBySignatureRequest

type StoreStagesBySignatureRequest struct {
	ProjectName string          `json:"projectName"`
	Signature   string          `json:"signature"`
	Stages      []image.StageID `json:"stages"`
}

type StoreStagesBySignatureResponse

type StoreStagesBySignatureResponse struct {
	Err util.SerializableError `json:"err"`
}

type SynchronizationServerHandler

type SynchronizationServerHandler struct {
	LockManagerFactoryFunc        func(clientID string) (storage.LockManager, error)
	StagesStorageCacheFactoryFunc func(clientID string) (storage.StagesStorageCache, error)

	SyncrhonizationServerByClientID map[string]*SynchronizationServerHandlerByClientID
	// contains filtered or unexported fields
}

func NewSynchronizationServerHandler

func NewSynchronizationServerHandler(lockManagerFactoryFunc func(requestID string) (storage.LockManager, error), stagesStorageCacheFactoryFunc func(requestID string) (storage.StagesStorageCache, error)) *SynchronizationServerHandler

func (*SynchronizationServerHandler) ServeHTTP

func (server *SynchronizationServerHandler) ServeHTTP(w http.ResponseWriter, r *http.Request)

type SynchronizationServerHandlerByClientID

type SynchronizationServerHandlerByClientID struct {
	*http.ServeMux
	ClientID           string
	LockManager        storage.LockManager
	StagesStorageCache storage.StagesStorageCache
}

func NewSynchronizationServerHandlerByClientID

func NewSynchronizationServerHandlerByClientID(clientID string, lockManager storage.LockManager, stagesStorageCache storage.StagesStorageCache) *SynchronizationServerHandlerByClientID

type UnlockRequest

type UnlockRequest struct {
	LockHandle storage.LockHandle `json:"lockHandle"`
}

type UnlockResponse

type UnlockResponse struct {
	Err util.SerializableError `json:"err"`
}

Jump to

Keyboard shortcuts

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