summaryrefslogtreecommitdiffstats
path: root/hugolib/config.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-05-22 14:40:06 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-05-22 18:11:03 +0200
commit4ddcf52ccc7af3e23109ebaac1f0486087a212ba (patch)
tree08b51d4693f5ea91d816ca4c5ac043536ae73646 /hugolib/config.go
parent353148c2bc2cdb9f2eb8ee967ba756ce09323801 (diff)
Add an unified .Site.Config with a services section
Fixes #4751
Diffstat (limited to 'hugolib/config.go')
-rw-r--r--hugolib/config.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/hugolib/config.go b/hugolib/config.go
index b9cfd92d6..73ba84686 100644
--- a/hugolib/config.go
+++ b/hugolib/config.go
@@ -23,6 +23,7 @@ import (
"github.com/gohugoio/hugo/config"
"github.com/gohugoio/hugo/config/privacy"
+ "github.com/gohugoio/hugo/config/services"
"github.com/gohugoio/hugo/helpers"
"github.com/spf13/afero"
"github.com/spf13/viper"
@@ -33,6 +34,26 @@ type SiteConfig struct {
// This contains all privacy related settings that can be used to
// make the YouTube template etc. GDPR compliant.
Privacy privacy.Config
+
+ // Services contains config for services such as Google Analytics etc.
+ Services services.Config
+}
+
+func loadSiteConfig(cfg config.Provider) (scfg SiteConfig, err error) {
+ privacyConfig, err := privacy.DecodeConfig(cfg)
+ if err != nil {
+ return
+ }
+
+ servicesConfig, err := services.DecodeConfig(cfg)
+ if err != nil {
+ return
+ }
+
+ scfg.Privacy = privacyConfig
+ scfg.Services = servicesConfig
+
+ return
}
// ConfigSourceDescriptor describes where to find the config (e.g. config.toml etc.).