detached 09c4c09

chore: remove dead dns_suffix config field

DNSSuffix was set from network_isolation.dns_suffix but never read
anywhere in the codebase. Remove the struct field, config wiring,
viper default, and all documentation references across docs/ and wiki/.
commit
09c4c09dca690ed6547a8bc1b09523ba4003c23a
author
brice · · 2026-03-03 03:57 UTC
parent
fe58985
signature
unsigned
6 files · +0 -23
M docs/config/index.md +0 -1
@@ -106,7 +106,6 @@ preserve = true # Keep volumes on container removal
106106 [network_isolation]
107107 enabled = true # Per-app isolated networks
108108 network_prefix = "gordon" # Network name prefix
109-dns_suffix = ".internal" # DNS suffix for services
110109
111110 # Auto-route
112111 [auto_route]
@@ -106,7 +106,6 @@ preserve = true # Keep volumes on container removal
106 [network_isolation]106 [network_isolation]
107 enabled = true # Per-app isolated networks107 enabled = true # Per-app isolated networks
108 network_prefix = "gordon" # Network name prefix108 network_prefix = "gordon" # Network name prefix
109-dns_suffix = ".internal" # DNS suffix for services
110 109
111 # Auto-route110 # Auto-route
112 [auto_route]111 [auto_route]
M docs/config/network-isolation.md +0 -16
@@ -8,7 +8,6 @@ Isolate applications in separate Docker networks for enhanced security.
88 [network_isolation]
99 enabled = true
1010 network_prefix = "gordon"
11-dns_suffix = ".internal"
1211 ```
1312
1413 ## Options
@@ -17,7 +16,6 @@ dns_suffix = ".internal"
1716 |--------|------|---------|-------------|
1817 | `enabled` | bool | `false` | Enable per-app network isolation |
1918 | `network_prefix` | string | `"gordon"` | Prefix for created networks |
20-| `dns_suffix` | string | `".internal"` | DNS suffix for service discovery |
2119
2220 ## How It Works
2321
@@ -99,19 +97,6 @@ db = connect("postgresql://postgres:5432/mydb")
9997 cache = connect("redis://redis:6379")
10098 ```
10199
102-## DNS Resolution
103-
104-The `dns_suffix` option adds a suffix for internal DNS resolution:
105-
106-```toml
107-[network_isolation]
108-dns_suffix = ".internal"
109-```
110-
111-Services can be accessed as:
112-- `postgres` (short form)
113-- `postgres.internal` (with suffix)
114-
115100 ## Examples
116101
117102 ### Basic Isolation
@@ -137,7 +122,6 @@ Each app gets its own network with its own database.
137122 [network_isolation]
138123 enabled = true
139124 network_prefix = "prod"
140-dns_suffix = ".internal"
141125
142126 [routes]
143127 "app.company.com" = "company-app:v2.1.0"
@@ -8,7 +8,6 @@ Isolate applications in separate Docker networks for enhanced security.
8 [network_isolation]8 [network_isolation]
9 enabled = true9 enabled = true
10 network_prefix = "gordon"10 network_prefix = "gordon"
11-dns_suffix = ".internal"
12 ```11 ```
13 12
14 ## Options13 ## Options
@@ -17,7 +16,6 @@ dns_suffix = ".internal"
17 |--------|------|---------|-------------|16 |--------|------|---------|-------------|
18 | `enabled` | bool | `false` | Enable per-app network isolation |17 | `enabled` | bool | `false` | Enable per-app network isolation |
19 | `network_prefix` | string | `"gordon"` | Prefix for created networks |18 | `network_prefix` | string | `"gordon"` | Prefix for created networks |
20-| `dns_suffix` | string | `".internal"` | DNS suffix for service discovery |
21 19
22 ## How It Works20 ## How It Works
23 21
@@ -99,19 +97,6 @@ db = connect("postgresql://postgres:5432/mydb")
99 cache = connect("redis://redis:6379")97 cache = connect("redis://redis:6379")
100 ```98 ```
101 99
102-## DNS Resolution
103-
104-The `dns_suffix` option adds a suffix for internal DNS resolution:
105-
106-```toml
107-[network_isolation]
108-dns_suffix = ".internal"
109-```
110-
111-Services can be accessed as:
112-- `postgres` (short form)
113-- `postgres.internal` (with suffix)
114-
115 ## Examples100 ## Examples
116 101
117 ### Basic Isolation102 ### Basic Isolation
@@ -137,7 +122,6 @@ Each app gets its own network with its own database.
137 [network_isolation]122 [network_isolation]
138 enabled = true123 enabled = true
139 network_prefix = "prod"124 network_prefix = "prod"
140-dns_suffix = ".internal"
141 125
142 [routes]126 [routes]
143 "app.company.com" = "company-app:v2.1.0"127 "app.company.com" = "company-app:v2.1.0"
M docs/config/reference.md +0 -2
@@ -105,7 +105,6 @@ enabled = false # Create routes from image labels a
105105 [network_isolation]
106106 enabled = false # Enable per-app Docker networks
107107 network_prefix = "gordon" # Prefix for created networks
108-dns_suffix = ".internal" # DNS suffix for internal resolution
109108
110109 # =============================================================================
111110 # VOLUMES
@@ -215,7 +214,6 @@ keep_last = 3 # Keep N newest tags per repository
215214 | `auto_route.enabled` | `false` | Auto-route disabled |
216215 | `network_isolation.enabled` | `false` | Isolation disabled |
217216 | `network_isolation.network_prefix` | `"gordon"` | Network prefix |
218-| `network_isolation.dns_suffix` | `".internal"` | DNS suffix |
219217 | `volumes.auto_create` | `true` | Auto-create volumes |
220218 | `volumes.prefix` | `"gordon"` | Volume prefix |
221219 | `volumes.preserve` | `true` | Keep volumes |
@@ -105,7 +105,6 @@ enabled = false # Create routes from image labels a
105 [network_isolation]105 [network_isolation]
106 enabled = false # Enable per-app Docker networks106 enabled = false # Enable per-app Docker networks
107 network_prefix = "gordon" # Prefix for created networks107 network_prefix = "gordon" # Prefix for created networks
108-dns_suffix = ".internal" # DNS suffix for internal resolution
109 108
110 # =============================================================================109 # =============================================================================
111 # VOLUMES110 # VOLUMES
@@ -215,7 +214,6 @@ keep_last = 3 # Keep N newest tags per repository
215 | `auto_route.enabled` | `false` | Auto-route disabled |214 | `auto_route.enabled` | `false` | Auto-route disabled |
216 | `network_isolation.enabled` | `false` | Isolation disabled |215 | `network_isolation.enabled` | `false` | Isolation disabled |
217 | `network_isolation.network_prefix` | `"gordon"` | Network prefix |216 | `network_isolation.network_prefix` | `"gordon"` | Network prefix |
218-| `network_isolation.dns_suffix` | `".internal"` | DNS suffix |
219 | `volumes.auto_create` | `true` | Auto-create volumes |217 | `volumes.auto_create` | `true` | Auto-create volumes |
220 | `volumes.prefix` | `"gordon"` | Volume prefix |218 | `volumes.prefix` | `"gordon"` | Volume prefix |
221 | `volumes.preserve` | `true` | Keep volumes |219 | `volumes.preserve` | `true` | Keep volumes |
M internal/app/run.go +0 -2
@@ -1187,7 +1187,6 @@ func createContainerService(ctx context.Context, v *viper.Viper, cfg Config, svc
11871187 VolumePreserve: v.GetBool("volumes.preserve"),
11881188 NetworkIsolation: v.GetBool("network_isolation.enabled"),
11891189 NetworkPrefix: v.GetString("network_isolation.network_prefix"),
1190- DNSSuffix: v.GetString("network_isolation.dns_suffix"),
11911190 NetworkGroups: svc.configSvc.GetNetworkGroups(),
11921191 Attachments: svc.configSvc.GetAttachments(),
11931192 ReadinessDelay: v.GetDuration("deploy.readiness_delay"),
@@ -2349,7 +2348,6 @@ func loadConfig(v *viper.Viper, configPath string) error {
23492348 v.SetDefault("auto_route.enabled", false)
23502349 v.SetDefault("network_isolation.enabled", false)
23512350 v.SetDefault("network_isolation.network_prefix", "gordon")
2352- v.SetDefault("network_isolation.dns_suffix", ".internal")
23532351 v.SetDefault("volumes.auto_create", true)
23542352 v.SetDefault("volumes.prefix", "gordon")
23552353 v.SetDefault("volumes.preserve", true)
@@ -1187,7 +1187,6 @@ func createContainerService(ctx context.Context, v *viper.Viper, cfg Config, svc
1187 VolumePreserve: v.GetBool("volumes.preserve"),1187 VolumePreserve: v.GetBool("volumes.preserve"),
1188 NetworkIsolation: v.GetBool("network_isolation.enabled"),1188 NetworkIsolation: v.GetBool("network_isolation.enabled"),
1189 NetworkPrefix: v.GetString("network_isolation.network_prefix"),1189 NetworkPrefix: v.GetString("network_isolation.network_prefix"),
1190- DNSSuffix: v.GetString("network_isolation.dns_suffix"),
1191 NetworkGroups: svc.configSvc.GetNetworkGroups(),1190 NetworkGroups: svc.configSvc.GetNetworkGroups(),
1192 Attachments: svc.configSvc.GetAttachments(),1191 Attachments: svc.configSvc.GetAttachments(),
1193 ReadinessDelay: v.GetDuration("deploy.readiness_delay"),1192 ReadinessDelay: v.GetDuration("deploy.readiness_delay"),
@@ -2349,7 +2348,6 @@ func loadConfig(v *viper.Viper, configPath string) error {
2349 v.SetDefault("auto_route.enabled", false)2348 v.SetDefault("auto_route.enabled", false)
2350 v.SetDefault("network_isolation.enabled", false)2349 v.SetDefault("network_isolation.enabled", false)
2351 v.SetDefault("network_isolation.network_prefix", "gordon")2350 v.SetDefault("network_isolation.network_prefix", "gordon")
2352- v.SetDefault("network_isolation.dns_suffix", ".internal")
2353 v.SetDefault("volumes.auto_create", true)2351 v.SetDefault("volumes.auto_create", true)
2354 v.SetDefault("volumes.prefix", "gordon")2352 v.SetDefault("volumes.prefix", "gordon")
2355 v.SetDefault("volumes.preserve", true)2353 v.SetDefault("volumes.preserve", true)
M internal/usecase/container/service.go +0 -1
@@ -38,7 +38,6 @@ type Config struct {
3838 VolumePreserve bool
3939 NetworkIsolation bool
4040 NetworkPrefix string
41- DNSSuffix string
4241 NetworkGroups map[string][]string
4342 Attachments map[string][]string
4443 ReadinessDelay time.Duration // Delay after container starts before considering it ready
@@ -38,7 +38,6 @@ type Config struct {
38 VolumePreserve bool38 VolumePreserve bool
39 NetworkIsolation bool39 NetworkIsolation bool
40 NetworkPrefix string40 NetworkPrefix string
41- DNSSuffix string
42 NetworkGroups map[string][]string41 NetworkGroups map[string][]string
43 Attachments map[string][]string42 Attachments map[string][]string
44 ReadinessDelay time.Duration // Delay after container starts before considering it ready43 ReadinessDelay time.Duration // Delay after container starts before considering it ready
M wiki/examples/production.md +0 -1
@@ -58,7 +58,6 @@ preserve = true
5858 [network_isolation]
5959 enabled = true
6060 network_prefix = "prod"
61-dns_suffix = ".internal"
6261
6362 # Application routes with pinned versions
6463 [routes]
@@ -58,7 +58,6 @@ preserve = true
58 [network_isolation]58 [network_isolation]
59 enabled = true59 enabled = true
60 network_prefix = "prod"60 network_prefix = "prod"
61-dns_suffix = ".internal"
62 61
63 # Application routes with pinned versions62 # Application routes with pinned versions
64 [routes]63 [routes]

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 7

Tags 106

↑↓ moveenter openesc close