Skip to content

Commit 185ed6f

Browse files
omalk98mholt
andauthored
cmd: Assume Caddyfile based on filename prefix and suffix (#5919)
This can be helpful if editors only consider file extensions for certain features. * added special case support for caddyfile suffix, case insensitive * Update cmd/main.go Co-authored-by: Matt Holt <[email protected]> * skip caddyfile adapter for registered file extensions --------- Co-authored-by: Matt Holt <[email protected]>
1 parent 4a0492f commit 185ed6f

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

cmd/main.go

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -157,11 +157,16 @@ func loadConfigWithLogger(logger *zap.Logger, configFile, adapterName string) ([
157157
}
158158
}
159159

160-
// as a special case, if a config file called "Caddyfile" was
161-
// specified, and no adapter is specified, assume caddyfile adapter
162-
// for convenience
163-
if strings.HasPrefix(filepath.Base(configFile), "Caddyfile") &&
164-
filepath.Ext(configFile) != ".json" &&
160+
// as a special case, if a config file starts with "caddyfile" or
161+
// has a ".caddyfile" extension, and no adapter is specified, and
162+
// no adapter module name matches the extension, assume
163+
// caddyfile adapter for convenience
164+
baseConfig := strings.ToLower(filepath.Base(configFile))
165+
baseConfigExt := filepath.Ext(baseConfig)
166+
if (strings.HasPrefix(baseConfig, "caddyfile") ||
167+
strings.HasSuffix(baseConfig, ".caddyfile")) &&
168+
caddyconfig.GetAdapter(baseConfigExt[1:]) == nil &&
169+
baseConfigExt != ".json" &&
165170
adapterName == "" {
166171
adapterName = "caddyfile"
167172
}

0 commit comments

Comments
 (0)