dto

package
v0.17.0-alpha.1 Latest Latest
Warning

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

Go to latest
Published: May 23, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const ProfileDataId = "profile_data"

Variables

This section is empty.

Functions

func ToApiKey

func ToApiKey(apiKeyDTO ApiKeyDTO) apikey.ApiKey

func ToContainerRegistry added in v0.13.0

func ToFileStatus added in v0.15.0

func ToFileStatus(statusDTO *FileStatusDTO) *workspace.FileStatus

func ToGitProviderConfig

func ToGitProviderConfig(gitProviderDTO GitProviderConfigDTO) gitprovider.GitProviderConfig

func ToGitStatus added in v0.15.0

func ToGitStatus(statusDTO *GitStatusDTO) *workspace.GitStatus

func ToProfileData added in v0.15.0

func ToProfileData(profileDataDTO ProfileDataDTO) *profiledata.ProfileData

func ToProject

func ToProject(projectDTO ProjectDTO) *workspace.Project

func ToProjectState

func ToProjectState(stateDTO *ProjectStateDTO) *workspace.ProjectState

func ToProviderTarget

func ToProviderTarget(providerTargetDTO ProviderTargetDTO) *provider.ProviderTarget

func ToRepository

func ToRepository(repoDTO RepositoryDTO) *gitprovider.GitRepository

func ToWorkspace

func ToWorkspace(workspaceDTO WorkspaceDTO) *workspace.Workspace

Types

type ApiKeyDTO

type ApiKeyDTO struct {
	KeyHash string `gorm:"primaryKey"`
	Type    apikey.ApiKeyType
	Name    string `gorm:"uniqueIndex"`
}

func ToApiKeyDTO

func ToApiKeyDTO(apiKey apikey.ApiKey) ApiKeyDTO

type ContainerRegistryDTO added in v0.13.0

type ContainerRegistryDTO struct {
	Server   string `gorm:"primaryKey"`
	Username string `json:"username"`
	Password string `json:"password"`
}

func ToContainerRegistryDTO added in v0.13.0

func ToContainerRegistryDTO(cr *containerregistry.ContainerRegistry) ContainerRegistryDTO

type FileStatusDTO added in v0.15.0

type FileStatusDTO struct {
	Name     string `json:"name"`
	Extra    string `json:"extra"`
	Staging  string `json:"staging"`
	Worktree string `json:"worktree"`
}

func ToFileStatusDTO added in v0.15.0

func ToFileStatusDTO(status *workspace.FileStatus) *FileStatusDTO

type GitProviderConfigDTO

type GitProviderConfigDTO struct {
	Id         string  `gorm:"primaryKey"`
	Username   string  `json:"username"`
	Token      string  `json:"token"`
	BaseApiUrl *string `json:"baseApiUrl,omitempty"`
}

func ToGitProviderConfigDTO

func ToGitProviderConfigDTO(gitProvider gitprovider.GitProviderConfig) GitProviderConfigDTO

type GitStatusDTO added in v0.15.0

type GitStatusDTO struct {
	CurrentBranch string           `json:"currentBranch"`
	Files         []*FileStatusDTO `json:"fileStatus"`
}

func ToGitStatusDTO added in v0.15.0

func ToGitStatusDTO(status *workspace.GitStatus) *GitStatusDTO

type ProfileDataDTO added in v0.15.0

type ProfileDataDTO struct {
	Id      string            `gorm:"primaryKey"`
	EnvVars map[string]string `gorm:"serializer:json"`
}

func ToProfileDataDTO added in v0.15.0

func ToProfileDataDTO(profileData *profiledata.ProfileData) ProfileDataDTO

type ProjectDTO

type ProjectDTO struct {
	Name              string           `json:"name"`
	Image             string           `json:"image"`
	User              string           `json:"user"`
	Repository        RepositoryDTO    `json:"repository"`
	WorkspaceId       string           `json:"workspaceId"`
	Target            string           `json:"target"`
	ApiKey            string           `json:"apiKey"`
	State             *ProjectStateDTO `json:"state,omitempty" gorm:"serializer:json"`
	PostStartCommands []string         `json:"postStartCommands,omitempty"`
}

func ToProjectDTO

func ToProjectDTO(project *workspace.Project, workspace *workspace.Workspace) ProjectDTO

type ProjectStateDTO

type ProjectStateDTO struct {
	UpdatedAt string        `json:"updatedAt"`
	Uptime    uint64        `json:"uptime"`
	GitStatus *GitStatusDTO `json:"gitStatus"`
}

func ToProjectStateDTO

func ToProjectStateDTO(state *workspace.ProjectState) *ProjectStateDTO

type ProviderTargetDTO

type ProviderTargetDTO struct {
	Name            string `json:"name" gorm:"primaryKey"`
	ProviderName    string `json:"providerName"`
	ProviderVersion string `json:"providerVersion"`
	Options         string `json:"options"`
}

func ToProviderTargetDTO

func ToProviderTargetDTO(providerTarget *provider.ProviderTarget) ProviderTargetDTO

type RepositoryDTO

type RepositoryDTO struct {
	Id       string  `json:"id"`
	Url      string  `json:"url"`
	Name     string  `json:"name"`
	Owner    string  `json:"owner"`
	Sha      string  `json:"sha"`
	Source   string  `json:"source"`
	Branch   *string `default:"main" json:"branch,omitempty"`
	PrNumber *uint32 `json:"prNumber,omitempty"`
	Path     *string `json:"path,omitempty"`
}

func ToRepositoryDTO

func ToRepositoryDTO(repo *gitprovider.GitRepository) RepositoryDTO

type WorkspaceDTO

type WorkspaceDTO struct {
	Id       string       `gorm:"primaryKey"`
	Name     string       `json:"name" gorm:"unique"`
	Target   string       `json:"target"`
	ApiKey   string       `json:"apiKey"`
	Projects []ProjectDTO `gorm:"serializer:json"`
}

func ToWorkspaceDTO

func ToWorkspaceDTO(workspace *workspace.Workspace) WorkspaceDTO

func (WorkspaceDTO) GetProject

func (w WorkspaceDTO) GetProject(name string) (*ProjectDTO, error)

Jump to

Keyboard shortcuts

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