config

package
v3.2.2 Latest Latest
Warning

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

Go to latest
Published: Mar 17, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FilterTypeBlock    = "FILTER_TYPE_BLOCK"
	FilterTypeDocument = "FILTER_TYPE_DOCUMENT"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Dir- or git-based project fields.
	ProjectDir       string
	FindRepoUpward   bool
	IgnorePaths      []string
	DisableGitignore bool

	// Filemode fields.
	Filename string

	// Environment variable fields.
	UseSystemEnv   bool
	EnvSourceFiles []string

	Filters []*Filter

	// Log related fields.
	LogEnabled bool
	LogPath    string
	LogVerbose bool
}

Config is a uniform configuration structure for runme. It should unify all past, current, and future config proto versions.

func ParseYAML

func ParseYAML(data []byte) (*Config, error)

type Filter

type Filter struct {
	Type      string
	Condition string
	Extra     map[string]interface{}
}

func (*Filter) Evaluate

func (f *Filter) Evaluate(env interface{}) (bool, error)

type FilterBlockEnv

type FilterBlockEnv struct {
	Background             bool     `expr:"background"`
	Categories             []string `expr:"categories"`
	CloseTerminalOnSuccess bool     `expr:"close_terminal_on_success"`
	Cwd                    string   `expr:"cwd"`
	ExcludeFromRunAll      bool     `expr:"exclude_from_run_all"`
	Interactive            bool     `expr:"interactive"`
	Language               string   `expr:"language"`
	Name                   string   `expr:"name"`
	PromptEnv              bool     `expr:"prompt_env"`
}

FilterBlockEnv is the environment with fields corresponding to the options documented on https://docs.runme.dev/configuration/cell-level. Cell options are converted to this environment before evaluating the filter.

The `expr` tag is used to map the field to the corresponding option. Without it, all variables start with capitalized letters.

type FilterDocumentEnv

type FilterDocumentEnv struct {
	Cwd   string `expr:"cwd"`
	Shell string `expr:"shell"`
}

FilterDocumentEnv is the environment with fields corresponding to the options documented on https://docs.runme.dev/configuration/document-level. Document options are converted to this environment before evaluating the filter.

Directories

Path Synopsis
autoconfig provides a way to instantiate and configure objects like logger, project, session, and others.
autoconfig provides a way to instantiate and configure objects like logger, project, session, and others.

Jump to

Keyboard shortcuts

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