Documentation
¶
Index ¶
- type Config
- func (c *Config) GetAllPinnedWorkflows() []PinnedWorkflow
- func (c *Config) GetConfigPath() string
- func (c *Config) GetRefreshInterval() int
- func (c *Config) Merge(other *Config)
- func (c *Config) Save(path string) error
- func (c *Config) SaveToRepoDefault(p *paths.Paths) error
- func (c *Config) SaveToUserConfig(p *paths.Paths) error
- func (c *Config) SaveWithHeader(path string, includeHeader bool) error
- func (c *Config) SetRefreshInterval(interval int)
- func (c *Config) Validate() error
- type Group
- type PinnedWorkflow
- type Preferences
- type Workflow
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
Repository string `yaml:"repository"`
Preferences *Preferences `yaml:"preferences,omitempty"` // User preferences (optional)
Groups []Group `yaml:"groups,omitempty"`
// contains filtered or unexported fields
}
func LoadFromPath ¶ added in v0.3.0
LoadFromPath loads a config from a specific path
func LoadMerged ¶ added in v0.3.1
LoadMerged loads and merges configuration from multiple paths. Paths should be provided in order of precedence (lowest to highest). Later configs overwrite earlier ones.
func (*Config) GetAllPinnedWorkflows ¶
func (c *Config) GetAllPinnedWorkflows() []PinnedWorkflow
func (*Config) GetConfigPath ¶ added in v0.3.0
GetConfigPath returns the path to this config file
func (*Config) GetRefreshInterval ¶ added in v0.3.0
GetRefreshInterval returns the refresh interval from preferences
func (*Config) Merge ¶ added in v0.3.1
Merge merges another config into this one. Fields from 'other' take precedence over this config.
func (*Config) SaveToRepoDefault ¶ added in v0.3.0
SaveToRepoDefault saves the config to the repository default location
func (*Config) SaveToUserConfig ¶ added in v0.3.0
SaveToUserConfig saves the config to the user's config file
func (*Config) SaveWithHeader ¶ added in v0.3.0
SaveWithHeader saves the config with an optional header
func (*Config) SetRefreshInterval ¶ added in v0.3.0
SetRefreshInterval sets the refresh interval in preferences
type Group ¶
type Group struct {
ID string `yaml:"id"`
Name string `yaml:"name"`
Description string `yaml:"description,omitempty"`
Workflows []string `yaml:"workflows,omitempty"`
WorkflowDefs []Workflow `yaml:"workflowDefs,omitempty"`
WorkflowPatterns []string `yaml:"workflowPatterns,omitempty"`
Jobs []string `yaml:"jobs,omitempty"`
Groups []Group `yaml:"groups,omitempty"`
PinnedWorkflows []string `yaml:"pinnedWorkflows,omitempty"`
}
func (*Group) GetAllWorkflows ¶
func (*Group) GetWorkflowDef ¶
func (*Group) HasWorkflows ¶
type PinnedWorkflow ¶
type Preferences ¶ added in v0.3.0
type Preferences struct {
RefreshInterval int `yaml:"refreshInterval,omitempty"` // in seconds, 0 = disabled
Theme string `yaml:"theme,omitempty"` // Theme preference (e.g., "dark", "light")
Keybindings string `yaml:"keybindings,omitempty"` // Keybinding style (e.g., "vim", "emacs")
CustomSettings map[string]string `yaml:"customSettings,omitempty"` // Extensible custom settings
}
Preferences contains user-specific settings that should not be shared