diff options
| author | Paul Buetow <paul@buetow.org> | 2026-01-29 09:50:58 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-01-29 09:50:58 +0200 |
| commit | 1b8dd0d0fa18e2cb1e4d2f886c88de3f3f09393a (patch) | |
| tree | 93286700e062937e4d1a255b1ecad3aacca0c015 /frontends | |
| parent | 0a5db450578d56786fba25997f26faa61bd8d1ad (diff) | |
gogios: respect IP version constraints for ipv6test subdomains
- Skip ipv4/ipv6 prefixed hosts from main check loop (no www/standby variants)
- Add separate checks with appropriate IP version only:
- ipv4.ipv6test.f3s.buetow.org: IPv4 HTTP check only
- ipv6.ipv6test.f3s.buetow.org: IPv6 HTTP check only
Amp-Thread-ID: https://ampcode.com/threads/T-019c08b8-cd58-73e9-8a1d-c8f124223367
Co-authored-by: Amp <amp@ampcode.com>
Diffstat (limited to 'frontends')
| -rw-r--r-- | frontends/etc/gogios.json.tpl | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/frontends/etc/gogios.json.tpl b/frontends/etc/gogios.json.tpl index 75cd6f5..658cf5e 100644 --- a/frontends/etc/gogios.json.tpl +++ b/frontends/etc/gogios.json.tpl @@ -73,7 +73,12 @@ <% } -%> <% for my $host (@$acme_hosts) { # Skip server hostnames - they have dedicated checks above without www/standby variants - next if $host eq 'blowfish.buetow.org' or $host eq 'fishfinger.buetow.org'; -%> + next if $host eq 'blowfish.buetow.org' or $host eq 'fishfinger.buetow.org'; + # Skip ipv4/ipv6 subdomains - they're included as SANs in parent cert and checked there + next if $host =~ /^(ipv4|ipv6)\./; + my $is_ipv6_only = $host =~ /^ipv6\./; + my $is_ipv4_only = $host =~ /^ipv4\./; + -%> <% for my $prefix ('', 'standby.', 'www.') { -%> <% my $depends_on = $prefix eq 'standby.' ? 'standby.buetow.org' : 'master.buetow.org'; -%> "Check TLS Certificate <%= $prefix . $host %>": { @@ -93,6 +98,20 @@ <% } -%> <% } -%> <% } -%> + <%# Special handling for ipv4/ipv6 subdomains - only check the appropriate IP version -%> + <% for my $host (@$acme_hosts) { + next unless $host =~ /^(ipv4|ipv6)\./; + my $is_ipv6_only = $host =~ /^ipv6\./; + my $is_ipv4_only = $host =~ /^ipv4\./; + my $proto = $is_ipv6_only ? 6 : 4; + -%> + "Check HTTP IPv<%= $proto %> <%= $host %>": { + "Plugin": "<%= $plugin_dir %>/check_http", + "RandomSpread": 10, + "Args": ["<%= $host %>", "-<%= $proto %>"], + "DependsOn": ["Check Ping<%= $proto %> master.buetow.org"] + }, + <% } -%> <% for my $host (qw(fishfinger blowfish)) { -%> <% for my $proto (4, 6) { -%> "Check Dig <%= $host %>.buetow.org IPv<%= $proto %>": { |
