Files
DDI/.golangci.yml
beug.k@beugsiud.deandClaude Opus 5.5 3564686db0 feat(configgen): BIND and Kea configuration generator with integration tests
- configgen: input model shared by derivation and renderers
- derive: forward zones per domain, reverse zones (IPv4 octet, IPv6 nibble
  boundaries), A/AAAA/PTR from static and manual_dhcp entries, Kea subnets
  with effective pools and reservations; pure and deterministic
- bindgen: zone-statement include, options include, zone files with strict
  validation, canonical ordering and RFC 1035 TXT escaping
- keagen: typed Kea DHCPv4 JSON with strict validation
- golden-file, validation, determinism and fuzz tests
- integration tests check generated files with real named-checkconf,
  named-checkzone (BIND 9.18, 9.20) and kea-dhcp4 -t (Kea 2.6, 3.2);
  new CI job

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 14:19:25 +02:00

71 lines
1.7 KiB
YAML

# SPDX-License-Identifier: Apache-2.0
version: "2"
run:
timeout: 5m
build-tags:
- integration
linters:
default: standard # errcheck, govet, ineffassign, staticcheck, unused
enable:
- bodyclose
- copyloopvar
- depguard
- errorlint
- gosec
- misspell
- nilerr
- noctx
- revive
- unconvert
- usestdlibvars
settings:
depguard:
rules:
# Licence boundary (docs/adr/0002): Apache-2.0 code must never link
# proprietary server code.
apache-licensed-code:
files:
- "**/agent/**"
- "**/internal/**"
- "**/proto/**"
# server/internal is proprietary and matched by "**/internal/**" above
- "!**/server/**"
deny:
- pkg: git.beugsiud.de/beug.k/DDI/server
desc: "agent/, internal/ and proto/ are Apache-2.0 and must not import proprietary server code (ADR 0002)"
- pkg: git.beugsiud.de/beug.k/DDI/web
desc: "agent/, internal/ and proto/ are Apache-2.0 and must not import proprietary web code (ADR 0002)"
misspell:
locale: US
revive:
rules:
- name: exported
- name: package-comments
- name: var-naming
- name: indent-error-flow
- name: errorf
- name: error-strings
- name: receiver-naming
- name: unused-parameter
disabled: true
exclusions:
generated: strict
presets:
- std-error-handling
rules:
- path: _test\.go
linters:
- gosec
- noctx
formatters:
enable:
- gofmt
- goimports
settings:
goimports:
local-prefixes:
- git.beugsiud.de/beug.k/DDI