configuration

package
v0.0.0-...-01b0788 Latest Latest
Warning

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

Go to latest
Published: Jun 27, 2021 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ConfigurationFatal func(code int) = os.Exit
View Source
var TELEGRAM_BOT_TOKEN string
View Source
var TMDB_API_KEY string
View Source
var TRAKT_CLIENT_SECRET string

SECRET KEYS FROM ENV

View Source
var TVDB_API_KEY string
View Source
var Version string = "dev"

Functions

func Check

func Check() error

func Load

func Load() error

func UseFile

func UseFile(filePath string)

Types

type Configuration

type Configuration struct {
	Interface struct {
		Enabled bool
		Port    int
		Auth    struct {
			Username string
			Password string
		}
		UseSSL       bool   `mapstructure:"use_ssl"`
		SSLCert      string `mapstructure:"ssl_cert"`
		SSLServerKey string `mapstructure:"ssl_server_key"`
	}
	Providers     map[string]map[string]string
	Indexers      map[string][]map[string]interface{}
	Notifiers     map[string]map[string]string
	Downloaders   map[string]map[string]string
	Watchlists    map[string]interface{}
	MediaCenters  map[string]map[string]string
	Notifications struct {
		Enabled                bool `mapstructure:"enabled"`
		NotifyNewEpisode       bool `mapstructure:"notify_new_episode"`
		NotifyNewMovie         bool `mapstructure:"notify_new_movie"`
		NotifyDownloadStart    bool `mapstructure:"notify_download_start"`
		NotifyDownloadComplete bool `mapstructure:"notify_download_complete"`
		NotifyFailure          bool `mapstructure:"notify_failure"`
	}
	System struct {
		CheckInterval                int    `mapstructure:"check_interval"`
		HealthcheckInterval          int    `mapstructure:"healthcheck_interval"`
		TorrentDownloadAttemptsLimit int    `mapstructure:"torrent_download_attempts_limit"`
		TrackShows                   bool   `mapstructure:"track_shows"`
		TrackMovies                  bool   `mapstructure:"track_movies"`
		AutomaticShowDownload        bool   `mapstructure:"automatic_show_download"`
		AutomaticMovieDownload       bool   `mapstructure:"automatic_movie_download"`
		ShowDownloadDelay            int    `mapstructure:"show_download_delay"`
		MovieDownloadDelay           int    `mapstructure:"movie_download_delay"`
		PreferredMediaQuality        string `mapstructure:"preferred_media_quality"`
		ExcludedReleaseTypes         string `mapstructure:"excluded_release_types"`
		StrictTorrentCheck           bool   `mapstructure:"strict_torrent_check"`
	}
	Library struct {
		ShowPath      string `mapstructure:"show_path"`
		MoviePath     string `mapstructure:"movie_path"`
		CustomTmpPath string `mapstructure:"custom_tmp_path"`
	}
	Version string
}

YAML tags do not work in viper, mapstructure tags have to be used instead https://github.com/spf13/viper/issues/385

var Config Configuration

type ConfigurationError

type ConfigurationError struct {
	Status  StatusCode
	Key     string
	Value   string
	Message string
}

func (ConfigurationError) Error

func (e ConfigurationError) Error() string

type ConfigurationFileError

type ConfigurationFileError struct {
	File string
	Err  error
}

func (ConfigurationFileError) Error

func (e ConfigurationFileError) Error() string

type StatusCode

type StatusCode int
const (
	OK StatusCode = iota
	WARNING
	CRITICAL
	UNKNOWN
)

func (StatusCode) String

func (s StatusCode) String() string

Jump to

Keyboard shortcuts

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