Browse Source
Tune AppConfigDir and docs for Storage module
master
Matthew Holt
5 years ago
No known key found for this signature in database
GPG Key ID: 2A349DD577D586A5
2 changed files with
11 additions and
13 deletions
-
caddy.go
-
storage.go
|
|
@ -61,11 +61,10 @@ type Config struct { |
|
|
|
Logging *Logging `json:"logging,omitempty"` |
|
|
|
|
|
|
|
// StorageRaw is a storage module that defines how/where Caddy
|
|
|
|
// stores assets (such as TLS certificates). By default, this is
|
|
|
|
// the local file system (`caddy.storage.file_system` module).
|
|
|
|
// If the `XDG_DATA_HOME` environment variable is set, then
|
|
|
|
// `$XDG_DATA_HOME/caddy` is the default folder. Otherwise,
|
|
|
|
// `$HOME/.local/share/caddy` is the default folder.
|
|
|
|
// stores assets (such as TLS certificates). The default storage
|
|
|
|
// module is `caddy.storage.file_system` (the local file system),
|
|
|
|
// and the default path
|
|
|
|
// [depends on the OS and environment](/docs/conventions#data-directory).
|
|
|
|
StorageRaw json.RawMessage `json:"storage,omitempty" caddy:"namespace=caddy.storage inline_key=module"` |
|
|
|
|
|
|
|
// AppsRaw are the apps that Caddy will load and run. The
|
|
|
|
|
|
@ -84,15 +84,14 @@ func homeDirUnsafe() string { |
|
|
|
//
|
|
|
|
// Ref: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
|
|
|
|
func AppConfigDir() string { |
|
|
|
basedir := os.Getenv("XDG_CONFIG_HOME") |
|
|
|
if basedir == "" { |
|
|
|
var err error |
|
|
|
basedir, err = os.UserConfigDir() |
|
|
|
if basedir := os.Getenv("XDG_CONFIG_HOME"); basedir != "" { |
|
|
|
return filepath.Join(basedir, "caddy") |
|
|
|
} |
|
|
|
basedir, err := os.UserConfigDir() |
|
|
|
if err != nil { |
|
|
|
Log().Warn("unable to determine directory for user configuration; falling back to current directory", zap.Error(err)) |
|
|
|
return "./caddy" |
|
|
|
} |
|
|
|
} |
|
|
|
subdir := "caddy" |
|
|
|
switch runtime.GOOS { |
|
|
|
case "windows", "darwin": |
|
|
|