feat: Add grammar fetch and comparison tooling
- Add fetch_bind_grammar.py for MCP-based grammar file retrieval - Add compare_bind_versions.py for version differences analysis - Add process_mcp_result.py for handling base64-encoded MCP output - Create upstream directory structure with fetching instructions - Document grammar file locations and structure
This commit is contained in:
54
bind9-grammar/upstream/README.md
Normal file
54
bind9-grammar/upstream/README.md
Normal file
@@ -0,0 +1,54 @@
|
||||
# BIND9 Grammar Files - Upstream Source
|
||||
|
||||
This directory contains upstream BIND9 grammar files from the official BIND9 mirror for version comparison and validation.
|
||||
|
||||
## Files to Fetch
|
||||
|
||||
When grammar files are needed, fetch from:
|
||||
- **Repository**: https://git.valid.dk/Mirrors/bind9
|
||||
- **9.18 Tag**: v9.18.44
|
||||
- **9.20 Tag**: v9.20.18
|
||||
|
||||
### Required Grammar Files (from doc/misc/)
|
||||
|
||||
- options
|
||||
- forward.zoneopt
|
||||
- hint.zoneopt
|
||||
- in-view.zoneopt
|
||||
- mirror.zoneopt
|
||||
- primary.zoneopt
|
||||
- redirect.zoneopt
|
||||
- secondary.zoneopt
|
||||
- static-stub.zoneopt
|
||||
- stub.zoneopt
|
||||
- delegation-only.zoneopt
|
||||
- rndc.grammar
|
||||
- parsegrammar.py
|
||||
- checkgrammar.py
|
||||
|
||||
## Directory Structure
|
||||
|
||||
```
|
||||
upstream/
|
||||
├── v9.18.44/
|
||||
│ ├── grammar/ (Grammar files)
|
||||
│ └── metadata.json (Fetch metadata)
|
||||
└── v9.20.18/
|
||||
├── grammar/ (Grammar files)
|
||||
└── metadata.json (Fetch metadata)
|
||||
```
|
||||
|
||||
## Fetching
|
||||
|
||||
Option 1: Using git fetch
|
||||
```bash
|
||||
git clone --depth 1 --branch v9.18.44 https://git.valid.dk/Mirrors/bind9.git /tmp/bind9-9.18
|
||||
cp /tmp/bind9-9.18/doc/misc/* bind9-grammar/upstream/v9.18.44/grammar/
|
||||
```
|
||||
|
||||
Option 2: Using Gitea MCP tools (see scripts/fetch_bind_grammar.py)
|
||||
|
||||
## Scripts
|
||||
|
||||
- `scripts/fetch_bind_grammar.py` - MCP-based fetcher template
|
||||
- `scripts/compare_bind_versions.py` - Grammar comparison tool
|
||||
Reference in New Issue
Block a user