Files
ansible-bind9-role/CHANGELOG.md
Daniel Akulenok ef45f4ef0b docs: Add version support policy and changelog
- Establish formal version maintenance strategy
- Define BIND9 9.18 (LTS) and 9.20+ support tiers
- Document branching strategy (main for 9.18, 9.20 for next major)
- Define backporting policies for security, bugs, features
- Create release management and CI/CD framework
- Add OS platform compatibility matrix
2026-02-07 22:52:53 +01:00

3.5 KiB

Changelog

All notable changes to the ansible-bind9-role will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • Version support policy documentation in docs/VERSION_SUPPORT.md
  • Branching strategy for supporting multiple BIND9 versions
  • Grammar comparison tooling (scripts/compare_bind_versions.py)
  • Grammar fetcher for upstream BIND9 sources (scripts/fetch_bind_grammar.py)
  • Automated version difference tracking
  • Operating system support matrix

Changed

  • Established formal release management process
  • Defined backporting policy for security, bugs, and features

Planned

  • BIND9 9.20+ support in separate 9.20 branch
  • Multi-platform molecule test matrix
  • Automated BIND9 version detection in tasks
  • Version-specific template conditional logic
  • Enhanced CI/CD pipeline with version matrix testing

[1.0.0] - TBD

Initial Release

  • Full support for BIND9 9.18.x (LTS)
  • Configuration grammar based on BIND9 9.18.44
  • Comprehensive template system for all BIND9 statement types:
    • acl
    • controls
    • dlz
    • dnssec-policy
    • dyndb
    • http
    • key
    • logging
    • options
    • parental-agents
    • primaries (masters)
    • server
    • statistics-channels
    • tls
    • trust-anchors
    • view
    • zone (all types: primary, secondary, forward, hint, stub, static-stub, mirror, redirect, in-view, delegation-only)
  • Support for Debian 11, 12, 13
  • Support for Ubuntu 20.04, 22.04, 24.04
  • Molecule testing framework
  • Configuration validation with named-checkconf
  • Automatic configuration backup and rollback on errors
  • Detailed configuration grammar documentation
  • GPL-3.0-or-later license

Version History (Pre-Changelog)

Prior to this changelog, the role was developed without formal version tracking. This changelog starts with the establishment of the version support policy.


Versioning Schema

  • MAJOR: Incompatible changes to role variables or behavior
  • MINOR: New features in a backwards compatible manner
  • PATCH: Backwards compatible bug fixes

Branch-Specific Versioning

  • main branch: vX.Y.Z (BIND9 9.18 LTS)
  • 9.20 branch: v9.20.X[-suffix] (BIND9 9.20+)
    • Suffixes: -alpha, -beta, -rc for pre-releases

Release Types

Security Releases

Critical security fixes are released as patch versions and backported to all supported branches.

Feature Releases

New features are added in minor version increments. Breaking changes require major version increments.

Bug Fix Releases

Bug fixes are released as patch versions when they accumulate or for critical issues.

Upgrade Notes

From Pre-Versioned to v1.0.0

The first official release establishes baseline compatibility. Users of pre-release versions should:

  1. Review all role variables for any changes
  2. Test in non-production environment
  3. Review generated configuration with named-checkconf
  4. Check docs/VERSION_SUPPORT.md for supported platforms

Future Upgrades

Check individual version sections above for specific upgrade notes and breaking changes.

Contributing

See docs/VERSION_SUPPORT.md for contribution guidelines and release processes.