From 76224eba02cfb97b18c724d69440b1fc999fccd6 Mon Sep 17 00:00:00 2001 From: Diego Bernardes Date: Tue, 5 Mar 2019 23:33:22 +0000 Subject: Support changing godoc instance (#38) This adds the ability to change the godoc.org instance used by Sally to link to documentation by providing a new `godoc` section in the configuration. --- config.go | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'config.go') diff --git a/config.go b/config.go index 735b147..37045e9 100644 --- a/config.go +++ b/config.go @@ -4,14 +4,20 @@ import ( "fmt" "io/ioutil" "sort" + "strings" - "gopkg.in/yaml.v2" + yaml "gopkg.in/yaml.v2" ) +const _defaultGodocServer = "godoc.org" + // Config represents the structure of the yaml file type Config struct { URL string `yaml:"url"` Packages map[string]Package `yaml:"packages"` + Godoc struct { + Host string `yaml:"host"` + } `yaml:"godoc"` } // Package details the options available for each repo @@ -59,5 +65,15 @@ func Parse(path string) (*Config, error) { return nil, fmt.Errorf("packages in %s must be alphabetically ordered", path) } + if c.Godoc.Host == "" { + c.Godoc.Host = _defaultGodocServer + } else { + host := c.Godoc.Host + host = strings.TrimPrefix(host, "https://") + host = strings.TrimPrefix(host, "http://") + host = strings.TrimSuffix(host, "/") + c.Godoc.Host = host + } + return &c, err } -- cgit v1.2.3