config

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Oct 5, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthMethod

type AuthMethod int

AuthMethod represents the authentication method to use

const (
	AuthMethodUnknown AuthMethod = iota
	AuthMethodBasic              // Username + API Token (Cloud)
	AuthMethodPAT                // Personal Access Token (Server/DC)
	AuthMethodOAuth              // Bearer Token (BYO - Bring Your Own)
)

func (AuthMethod) String

func (a AuthMethod) String() string

type Config

type Config struct {
	Jira       *JiraConfig
	Confluence *ConfluenceConfig
	Opsgenie   *OpsgenieConfig
	Server     *ServerConfig
	Security   *SecurityConfig
	Logging    *LoggingConfig
	Proxy      *ProxyConfig
}

Config holds the complete application configuration

func Load

func Load(configFile ...string) (*Config, error)

Load loads configuration from environment variables, .env file, and CLI flags

func (*Config) IsConfluenceConfigured

func (c *Config) IsConfluenceConfigured() bool

IsConfluenceConfigured returns true if Confluence is configured

func (*Config) IsJiraConfigured

func (c *Config) IsJiraConfigured() bool

IsJiraConfigured returns true if Jira is configured

func (*Config) IsOpsgenieConfigured

func (c *Config) IsOpsgenieConfigured() bool

IsOpsgenieConfigured returns true if Opsgenie is configured

func (*Config) Validate

func (c *Config) Validate() error

Validate validates the configuration

type ConfluenceConfig

type ConfluenceConfig struct {
	URL              string
	Username         string
	APIToken         string
	PersonalToken    string
	OAuthAccessToken string
	OAuthCloudID     string
	SSLVerify        bool
	SpacesFilter     []string
	CustomHeaders    map[string]string
	HTTPProxy        string
	HTTPSProxy       string
	SOCKSProxy       string
	NoProxy          string
	AuthMethod       AuthMethod
}

ConfluenceConfig holds Confluence-specific configuration

func (*ConfluenceConfig) Validate

func (c *ConfluenceConfig) Validate() error

Validate validates Confluence configuration

type JiraConfig

type JiraConfig struct {
	URL              string
	Username         string
	APIToken         string
	PersonalToken    string
	OAuthAccessToken string
	OAuthCloudID     string
	SSLVerify        bool
	ProjectsFilter   []string
	CustomHeaders    map[string]string
	HTTPProxy        string
	HTTPSProxy       string
	SOCKSProxy       string
	NoProxy          string
	AuthMethod       AuthMethod
}

JiraConfig holds Jira-specific configuration

func (*JiraConfig) Validate

func (j *JiraConfig) Validate() error

Validate validates Jira configuration

type LoggingConfig

type LoggingConfig struct {
	Verbose     bool
	VeryVerbose bool
	LogToStdout bool
}

LoggingConfig holds logging configuration

type OpsgenieConfig

type OpsgenieConfig struct {
	URL           string
	APIKey        string
	SSLVerify     bool
	HTTPProxy     string
	HTTPSProxy    string
	SOCKSProxy    string
	NoProxy       string
	CustomHeaders map[string]string
}

OpsgenieConfig holds Opsgenie-specific configuration

func (*OpsgenieConfig) Validate

func (o *OpsgenieConfig) Validate() error

Validate validates Opsgenie configuration

type ProxyConfig

type ProxyConfig struct {
	HTTPProxy  string
	HTTPSProxy string
	SOCKSProxy string
	NoProxy    string
}

ProxyConfig holds global proxy configuration

type SecurityConfig

type SecurityConfig struct {
	ReadOnlyMode bool
	EnabledTools []string
}

SecurityConfig holds security and access control settings

type ServerConfig

type ServerConfig struct {
	Transport string // stdio (only supported transport)
	Port      int    // Reserved for future use
	Host      string // Reserved for future use
}

ServerConfig holds server transport configuration

func (*ServerConfig) Validate

func (s *ServerConfig) Validate() error

Validate validates server configuration

Jump to

Keyboard shortcuts

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