store

package
v0.6.34 Latest Latest
Warning

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

Go to latest
Published: Mar 22, 2022 License: MIT Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	JetbrainsGatewayConfigFileName = "sshConfigs.xml"
)

Variables

View Source
var (
	DefaultWorkspaceClassID    = config.GlobalConfig.GetDefaultWorkspaceClass()
	DefaultWorkspaceTemplateID = config.GlobalConfig.GetDefaultWorkspaceTemplate()
	DevWorkspaceTemplateID     = "test-template-aws"
)
View Source
var (
	DefaultApplicationID = "92f59a4yf"
	DefaultApplication   = entity.Application{
		ID:           DefaultApplicationID,
		Name:         "VSCode",
		Port:         22778,
		StartCommand: "",
		Version:      "1.57.1",
	}
)
View Source
var DefaultApplicationList = []entity.Application{DefaultApplication}

Functions

func GetBrevDirectory added in v0.6.24

func GetBrevDirectory() string

func GetDefaultOrNilOrg

func GetDefaultOrNilOrg(orgs []entity.Organization) *entity.Organization

func NewRestyClient

func NewRestyClient(brevAPIURL string) *resty.Client

func VerifyPrivateKey added in v0.5.0

func VerifyPrivateKey(key []byte) error

Types

type Auth

type Auth interface {
	GetAccessToken() (string, error)
}

type AuthHTTPClient

type AuthHTTPClient struct {
	// contains filtered or unexported fields
}

func NewAuthHTTPClient

func NewAuthHTTPClient(auth Auth, brevAPIURL string) *AuthHTTPClient

type AuthHTTPStore

type AuthHTTPStore struct {
	NoAuthHTTPStore
	// contains filtered or unexported fields
}

func (AuthHTTPStore) ApproveUserByID added in v0.5.0

func (s AuthHTTPStore) ApproveUserByID(userID string) (*entity.User, error)
func (s AuthHTTPStore) CreateInviteLink(organizationID string) (string, error)

func (AuthHTTPStore) CreateOrganization

func (s AuthHTTPStore) CreateOrganization(req CreateOrganizationRequest) (*entity.Organization, error)

func (AuthHTTPStore) CreateSecret

func (AuthHTTPStore) CreateWorkspace added in v0.4.0

func (s AuthHTTPStore) CreateWorkspace(organizationID string, options *CreateWorkspacesOptions) (*entity.Workspace, error)

func (AuthHTTPStore) DeleteWorkspace added in v0.4.0

func (s AuthHTTPStore) DeleteWorkspace(workspaceID string) (*entity.Workspace, error)

func (AuthHTTPStore) GetActiveOrganizationOrDefault

func (s AuthHTTPStore) GetActiveOrganizationOrDefault() (*entity.Organization, error)

returns the 'set'/active organization or the default one or nil if no orgs exist

func (AuthHTTPStore) GetActiveOrganizationOrNil

func (s AuthHTTPStore) GetActiveOrganizationOrNil() (*entity.Organization, error)

returns the 'set'/active organization or nil if not set

func (AuthHTTPStore) GetAllWorkspaces

func (s AuthHTTPStore) GetAllWorkspaces(options *GetWorkspacesOptions) ([]entity.Workspace, error)

func (AuthHTTPStore) GetContextWorkspaces added in v0.6.0

func (s AuthHTTPStore) GetContextWorkspaces() ([]entity.Workspace, error)

func (AuthHTTPStore) GetCurrentUser

func (s AuthHTTPStore) GetCurrentUser() (*entity.User, error)

func (AuthHTTPStore) GetCurrentUserKeys

func (s AuthHTTPStore) GetCurrentUserKeys() (*entity.UserKeys, error)

func (AuthHTTPStore) GetNetwork added in v0.6.24

func (s AuthHTTPStore) GetNetwork(networkID string) (*GetNetworkResponse, error)

func (AuthHTTPStore) GetNetworkAuthKey added in v0.6.24

func (s AuthHTTPStore) GetNetworkAuthKey() (*GetAuthKeyResponse, error)

func (AuthHTTPStore) GetNetworkAuthKeyByNetworkID added in v0.6.24

func (s AuthHTTPStore) GetNetworkAuthKeyByNetworkID(networkID string, ephemeral bool) (*GetAuthKeyResponse, error)

func (AuthHTTPStore) GetOrganization added in v0.6.24

func (s AuthHTTPStore) GetOrganization(organizationID string) (*entity.Organization, error)

func (AuthHTTPStore) GetOrganizations

func (s AuthHTTPStore) GetOrganizations(options *GetOrganizationsOptions) ([]entity.Organization, error)

func (AuthHTTPStore) GetSetupScriptContentsByURL added in v0.6.22

func (s AuthHTTPStore) GetSetupScriptContentsByURL(url string) (string, error)

func (AuthHTTPStore) GetUsers added in v0.5.0

func (s AuthHTTPStore) GetUsers(queryParams map[string]string) ([]entity.User, error)

func (AuthHTTPStore) GetWorkspace

func (s AuthHTTPStore) GetWorkspace(workspaceID string) (*entity.Workspace, error)

func (AuthHTTPStore) GetWorkspaceMetaData

func (s AuthHTTPStore) GetWorkspaceMetaData(workspaceID string) (*entity.WorkspaceMetaData, error)

func (AuthHTTPStore) GetWorkspaces

func (s AuthHTTPStore) GetWorkspaces(organizationID string, options *GetWorkspacesOptions) ([]entity.Workspace, error)

func (AuthHTTPStore) NewAuthHTTPStore

func (s AuthHTTPStore) NewAuthHTTPStore() *AuthHTTPStore

Used if need new instance to customize settings

func (AuthHTTPStore) RegisterNode added in v0.6.20

func (s AuthHTTPStore) RegisterNode(publicKey string) error

func (AuthHTTPStore) ResetWorkspace added in v0.4.0

func (s AuthHTTPStore) ResetWorkspace(workspaceID string) (*entity.Workspace, error)

func (AuthHTTPStore) SetDefaultOrganization added in v0.4.0

func (s AuthHTTPStore) SetDefaultOrganization(org *entity.Organization) error

func (*AuthHTTPStore) SetForbiddenStatusRetryHandler added in v0.4.0

func (s *AuthHTTPStore) SetForbiddenStatusRetryHandler(handler func() error) error

func (AuthHTTPStore) StartWorkspace added in v0.4.0

func (s AuthHTTPStore) StartWorkspace(workspaceID string) (*entity.Workspace, error)

func (AuthHTTPStore) StopWorkspace

func (s AuthHTTPStore) StopWorkspace(workspaceID string) (*entity.Workspace, error)

func (AuthHTTPStore) UpdateUser added in v0.5.0

func (s AuthHTTPStore) UpdateUser(userID string, updatedUser *entity.UpdateUser) (*entity.User, error)

func (*AuthHTTPStore) WithStaticHeader added in v0.6.24

func (s *AuthHTTPStore) WithStaticHeader(header string, value string) *AuthHTTPStore

type BasicStore

type BasicStore struct{}

func NewBasicStore

func NewBasicStore() *BasicStore

func (*BasicStore) WithFileSystem

func (b *BasicStore) WithFileSystem(fs afero.Fs) *FileStore

type CreateOrganizationRequest

type CreateOrganizationRequest struct {
	Name string `json:"name"`
}

type CreateSecretRequest

type CreateSecretRequest struct {
	Name          string        `json:"name"`
	HierarchyType HierarchyType `json:"hierarchyType"`
	HierarchyID   string        `json:"hierarchyID"`
	Src           SecretReqSrc  `json:"src"`
	Dest          SecretReqDest `json:"dest"`
}

type CreateWorkspacesOptions added in v0.4.0

type CreateWorkspacesOptions struct {
	Name                 string               `json:"name"`
	WorkspaceGroupID     string               `json:"workspaceGroupId"`
	WorkspaceClassID     string               `json:"workspaceClassId"`
	GitRepo              string               `json:"gitRepo"`
	IsStoppable          bool                 `json:"isStoppable"`
	WorkspaceTemplateID  string               `json:"workspaceTemplateId"`
	PrimaryApplicationID string               `json:"primaryApplicationId"`
	Applications         []entity.Application `json:"applications"`
	StartupScript        string               `json:"startupScript"`
}

func NewCreateWorkspacesOptions added in v0.4.0

func NewCreateWorkspacesOptions(clusterID, name string) *CreateWorkspacesOptions

func (*CreateWorkspacesOptions) WithClassID added in v0.6.19

func (c *CreateWorkspacesOptions) WithClassID(classID string) *CreateWorkspacesOptions

func (*CreateWorkspacesOptions) WithGitRepo added in v0.4.0

func (c *CreateWorkspacesOptions) WithGitRepo(gitRepo string) *CreateWorkspacesOptions

func (*CreateWorkspacesOptions) WithStartupScript added in v0.6.16

func (c *CreateWorkspacesOptions) WithStartupScript(startupScript string) *CreateWorkspacesOptions

func (*CreateWorkspacesOptions) WithWorkspaceClassID added in v0.5.0

func (c *CreateWorkspacesOptions) WithWorkspaceClassID(workspaceClassID string) *CreateWorkspacesOptions

type Dependencies added in v0.6.16

type Dependencies struct {
	Rust   string
	Java   string
	Node   string
	TS     string
	Go     string
	Solana string
}

type DestConfig

type DestConfig struct {
	Name string `json:"name,omitempty"`
	Path string `json:"path,omitempty"`
}

type DestType

type DestType string
const (
	File        DestType = "file"
	EnvVariable DestType = "env"
)

type FileStore

type FileStore struct {
	BasicStore

	User *user.User
	// contains filtered or unexported fields
}

func (FileStore) BuildBrevHome added in v0.6.24

func (f FileStore) BuildBrevHome() error

func (FileStore) ClearDefaultOrganization added in v0.6.29

func (f FileStore) ClearDefaultOrganization() error

func (FileStore) CopyBin added in v0.6.22

func (f FileStore) CopyBin(targetBin string) error

CopyBin copies the running executeable to a target, creating directories as needed

func (FileStore) CreateNewSSHConfigBackup

func (f FileStore) CreateNewSSHConfigBackup() error

func (FileStore) DeleteAuthTokens added in v0.4.0

func (f FileStore) DeleteAuthTokens() error

func (FileStore) DoesJetbrainsFilePathExist added in v0.6.3

func (f FileStore) DoesJetbrainsFilePathExist() (bool, error)

func (FileStore) FileExists added in v0.5.0

func (f FileStore) FileExists(filepath string) (bool, error)

func (FileStore) GetAuthTokens added in v0.4.0

func (f FileStore) GetAuthTokens() (*entity.AuthTokens, error)

func (FileStore) GetBrevHomePath added in v0.6.24

func (f FileStore) GetBrevHomePath() (string, error)

func (FileStore) GetBrevSSHConfigPath added in v0.6.0

func (f FileStore) GetBrevSSHConfigPath() (string, error)

func (FileStore) GetCurrentWorkspaceGroupID added in v0.6.24

func (f FileStore) GetCurrentWorkspaceGroupID() (string, error)

func (FileStore) GetCurrentWorkspaceID added in v0.6.20

func (f FileStore) GetCurrentWorkspaceID() (string, error)

GetCurrentWorkspaceID will return an empty string when not in a brev workspace, and otherwise return its id

func (FileStore) GetCurrentWorkspaceMeta added in v0.6.24

func (f FileStore) GetCurrentWorkspaceMeta() (*WorkspaceMeta, error)

func (FileStore) GetCurrentWorkspaceServiceToken added in v0.6.24

func (f FileStore) GetCurrentWorkspaceServiceToken() (string, error)

func (FileStore) GetDependenciesForImport added in v0.6.16

func (f FileStore) GetDependenciesForImport(path string) (*Dependencies, error)

func (FileStore) GetDotGitConfigFile added in v0.6.16

func (f FileStore) GetDotGitConfigFile(path string) (string, error)

func (FileStore) GetJetBrainsConfig added in v0.5.0

func (f FileStore) GetJetBrainsConfig() (string, error)

func (FileStore) GetJetBrainsConfigPath added in v0.5.0

func (f FileStore) GetJetBrainsConfigPath() (string, error)

func (FileStore) GetOSUser added in v0.6.24

func (f FileStore) GetOSUser() string

func (FileStore) GetOrCreateFile added in v0.5.0

func (f FileStore) GetOrCreateFile(path string) (afero.File, error)

func (FileStore) GetPrivateKeyPath added in v0.6.0

func (f FileStore) GetPrivateKeyPath() (string, error)

func (FileStore) GetServerSockFile added in v0.6.24

func (f FileStore) GetServerSockFile() string

func (FileStore) GetUserSSHConfig added in v0.6.0

func (f FileStore) GetUserSSHConfig() (string, error)

!! need something to resolve file path of user ssh

func (FileStore) GetUserSSHConfigPath added in v0.6.0

func (f FileStore) GetUserSSHConfigPath() (string, error)

func (FileStore) Remove added in v0.6.24

func (f FileStore) Remove(target string) error

func (FileStore) SaveAuthTokens added in v0.4.0

func (f FileStore) SaveAuthTokens(token entity.AuthTokens) error

func (FileStore) UserHomeDir added in v0.6.24

func (f FileStore) UserHomeDir() (string, error)

func (*FileStore) WithAuthHTTPClient

func (f *FileStore) WithAuthHTTPClient(c *AuthHTTPClient) *AuthHTTPStore

func (*FileStore) WithNoAuthHTTPClient

func (f *FileStore) WithNoAuthHTTPClient(c *NoAuthHTTPClient) *NoAuthHTTPStore

func (*FileStore) WithUserID added in v0.6.24

func (f *FileStore) WithUserID(userID string) (*FileStore, error)

func (FileStore) WriteBrevSSHConfig added in v0.6.0

func (f FileStore) WriteBrevSSHConfig(config string) error

func (FileStore) WriteJetBrainsConfig added in v0.5.0

func (f FileStore) WriteJetBrainsConfig(config string) error

func (FileStore) WritePrivateKey

func (f FileStore) WritePrivateKey(pem string) error

func (FileStore) WriteString added in v0.6.22

func (f FileStore) WriteString(path, data string) error

func (FileStore) WriteUserSSHConfig added in v0.6.0

func (f FileStore) WriteUserSSHConfig(config string) error

type GetAuthKeyResponse added in v0.6.24

type GetAuthKeyResponse struct {
	CoordServerURL string `json:"coordServerUrl"`
	AuthKey        string `json:"authKey"`
}

type GetNetworkResponse added in v0.6.24

type GetNetworkResponse struct {
	ID                 string   `json:"id"`
	CreatedAt          string   `json:"createdAt"`
	DNSSearchDomains   []string `json:"dnsSearchDomains"`
	Name               string   `json:"name"`
	OrginizationID     string   `json:"organizationId"`
	UserID             string   `json:"userId"`
	ExternalIdentifier string   `json:"externalIdentifier"`
}

type GetOrganizationsOptions added in v0.4.0

type GetOrganizationsOptions struct {
	Name string
}

type GetWorkspacesOptions

type GetWorkspacesOptions struct {
	UserID string
	Name   string
}

type GithubReleaseMetadata added in v0.4.0

type GithubReleaseMetadata struct {
	TagName      string `json:"tag_name"`
	IsDraft      bool   `json:"draft"`
	IsPrerelease bool   `json:"prerelease"`
	Name         string `json:"name"`
	Body         string `json:"body"`
}

type HTTPResponseError

type HTTPResponseError struct {
	// contains filtered or unexported fields
}

func NewHTTPResponseError

func NewHTTPResponseError(response *resty.Response) *HTTPResponseError

func (HTTPResponseError) Error

func (e HTTPResponseError) Error() string

type HierarchyType

type HierarchyType string
const (
	Org  HierarchyType = "org"
	User HierarchyType = "user"
)

type NoAuthHTTPClient

type NoAuthHTTPClient struct {
	// contains filtered or unexported fields
}

func NewNoAuthHTTPClient

func NewNoAuthHTTPClient(brevAPIURL string) *NoAuthHTTPClient

type NoAuthHTTPStore

type NoAuthHTTPStore struct {
	FileStore
	// contains filtered or unexported fields
}

func (NoAuthHTTPStore) CreateUser

func (n NoAuthHTTPStore) CreateUser(identityToken string) (*entity.User, error)

func (NoAuthHTTPStore) GetLatestReleaseMetadata added in v0.4.0

func (n NoAuthHTTPStore) GetLatestReleaseMetadata() (*GithubReleaseMetadata, error)

func (NoAuthHTTPStore) GetSetupScriptContentsByURL added in v0.6.22

func (n NoAuthHTTPStore) GetSetupScriptContentsByURL(url string) (string, error)

func (NoAuthHTTPStore) Healthcheck added in v0.6.13

func (n NoAuthHTTPStore) Healthcheck() error

func (NoAuthHTTPStore) NewNoAuthHTTPStore

func (n NoAuthHTTPStore) NewNoAuthHTTPStore() *NoAuthHTTPStore

Used if need new instance to customize settings

func (*NoAuthHTTPStore) WithAuth

func (n *NoAuthHTTPStore) WithAuth(auth Auth) *AuthHTTPStore

func (*NoAuthHTTPStore) WithAuthHTTPClient

func (n *NoAuthHTTPStore) WithAuthHTTPClient(c *AuthHTTPClient) *AuthHTTPStore

type SecretReqDest

type SecretReqDest struct {
	Type   DestType   `json:"type"`
	Config DestConfig `json:"config"`
}

type SecretReqSrc

type SecretReqSrc struct {
	Type   SrcType   `json:"type"`
	Config SrcConfig `json:"config"`
}

type SrcConfig

type SrcConfig struct {
	Value string `json:"value"`
}

type SrcType

type SrcType string
const (
	KeyValue SrcType = "kv2"
)

type UserCreateResponse added in v0.6.20

type UserCreateResponse struct {
	User         entity.User `json:"user"`
	ErrorMessage string      `json:"errorMessage"`
}

type WorkspaceMeta added in v0.6.24

type WorkspaceMeta struct {
	WorkspaceID      string `json:"workspaceId"`
	WorkspaceGroupID string `json:"workspaceGroupId"`
}

Jump to

Keyboard shortcuts

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