config

package
v0.0.2 Latest Latest
Warning

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

Go to latest
Published: Jan 3, 2021 License: GPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Checkout

type Checkout struct {
	FsPrefix                 string `json:"fs_prefix"`
	Path                     string `json:"path"`
	KeepsGroupPath           bool   `json:"keepsGroupPath"`
	KeepsBaseGroupNameInPath bool   `json:"keepsBaseGroupNameInPath"`
}

type CheckoutSettings

type CheckoutSettings struct {
	Basedir         string                `json:"basedir"`
	DefaultProtocol GitAccessProtocol     `json:"protocol"`
	Store           CheckoutStoreSettings `json:"store"`
	BulkElements    []string              `json:"bulkElements,omitempty"`
}

type CheckoutStoreSettings

type CheckoutStoreSettings struct {
	SyncDBPath string `json:"syncDBPath"`
	LogLevel   string `json:"logLevel"`
}

type Config

type Config struct {
	APIVersion  string                     `json:"apiVersion"`
	Kind        string                     `json:"kind"`
	Remotes     map[string]RemoteConnector `json:"remotes,omitempty"`
	Directories []Directory                `json:"directories,omitempty"`
}

func NewConfigFromBytes

func NewConfigFromBytes(bs []byte) (Config, error)

func NewConfigFromFiles

func NewConfigFromFiles(paths []string) ([]Config, error)

type Directory

type Directory struct {
	Path     string              `json:"path"`
	Contents []DirectoryContents `json:"contents,omitempty"`
}

type DirectoryContentFilter

type DirectoryContentFilter struct {
	Excludes              []string `json:"excludes,omitempty"`
	Includes              []string `json:"includes,omitempty"`
	IncludesArchivedRepos bool     `json:"includesArchivedRepos"`
	ArchivedReposOnly     bool     `json:"archivedReposOnly"`
}

type DirectoryContents

type DirectoryContents struct {
	Ref      DirectoryContentsRef `json:"ref"`
	Checkout Checkout             `json:"checkout"`
}

type DirectoryContentsRef

type DirectoryContentsRef struct {
	Remote string                 `json:"remote"`
	IDS    []string               `json:"ids"`
	Kind   DirectoryType          `json:"kind"`
	Filter DirectoryContentFilter `json:"filter"`
}

type DirectoryType

type DirectoryType string
const (
	DirectoryTypeGroup   DirectoryType = "group"
	DirectoryTypeProject DirectoryType = "project"
	DirectoryTypeUser    DirectoryType = "user"
)

func DirectoryTypeFromString

func DirectoryTypeFromString(directoryType string) (DirectoryType, error)

func (DirectoryType) String

func (r DirectoryType) String() string

type GitAccessProtocol

type GitAccessProtocol string
const (
	SSH  GitAccessProtocol = "ssh"
	HTTP GitAccessProtocol = "http"
)

func (GitAccessProtocol) String

func (r GitAccessProtocol) String() string

type RemoteConnector

type RemoteConnector struct {
	Endpoint  RemoteEndpoint      `json:"endpoint"`
	Connector RemoteTypeConnector `json:"connector"`
}

type RemoteConnectorAuth

type RemoteConnectorAuth struct {
	Token string `json:"token"`
}

func (*RemoteConnectorAuth) GetTokenValue

func (a *RemoteConnectorAuth) GetTokenValue() (string, error)

type RemoteEndpoint

type RemoteEndpoint struct {
	URI  string              `json:"uri"`
	Auth RemoteConnectorAuth `json:"auth"`
}

type RemoteTypeConnector

type RemoteTypeConnector string
const (
	RemoteTypeGithub RemoteTypeConnector = "github"
	RemoteTypeGitlab RemoteTypeConnector = "gitlab"
)

func (RemoteTypeConnector) String

func (r RemoteTypeConnector) String() string

type SyncManagerConfig

type SyncManagerConfig struct {
	APIVersion string                     `json:"apiVersion"`
	Kind       string                     `json:"kind"`
	Remotes    map[string]RemoteConnector `json:"remotes,omitempty"`
	Settings   CheckoutSettings           `json:"settings,omitempty"`
}

Jump to

Keyboard shortcuts

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