- Clone all 5 Zonemaster component repos (LDNS, Engine, CLI, Backend, GUI) - Dockerfile.backend: 8-stage multi-stage build LDNS→Engine→CLI→Backend - Dockerfile.gui: Astro static build served via nginx - docker-compose.yml: backend (internal) + frontend (port 5353) - nginx.conf: root redirects to /es/, /api/ proxied to backend - zonemaster-gui/config.ts: defaultLanguage set to 'es' (Spanish) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
Document generation
Background
The utility scripts described below are used to update or generate some documents in the public document tree.
- The scripts should be run at each Zonemaster release and the resulting update should be submitted to correct git branch of this git repository.
Pre-requisite
The scripts should be run on a computer where the updated git branch of
zonemaster/zonemaster has been cloned, and the equivalent version of
zonemaster/engine has been installed. Usually the git branches will
be the develop branches of each repository.
Scripts
- generateTestCaseList.pl
- This tool extracts all Test Case specifications and creates a Markdown table to be inserted in Test Case README.
- updateTestPlanReadme.pl
- This tool extracts all Test Case specifications per Test Plan and creates Markdown tables. The tables are automatically added to the Test Plan README.md file which is located in the directory named after the Test Plan.
- generateTestMessages.pl
- This tools creates a map between the Zonemaster message tags from the Zonemaster-Engine implementation of the Test Cases and the Test Case specifications. This is used to create the complete TestMessages.md file.
- generateImplementedTestCases.pl
- This tool creates a list of implemented test cases from the Zonemaster-Engine implementation. This is used to create the complete ImplementedTestCases.md file.
Steps to be run
- You are assumed to start from the root of the zonemaster/zonemaster tree. Go to directory to execute the commands from.
cd docs/public/specifications/tests
- All commands below must be run from the directory you are in now.
- Remove Test Case table from README.md in that directory and save the file.
- Run:
../../../../utils/generateTestCaseList.pl >> README.md
- Run:
../../../../utils/updateTestPlanReadme.pl
- Run:
../../../../utils/generateTestMessages.pl > TestMessages.md
- Run:
../../../../utils/generateImplementedTestCases.pl > ImplementedTestCases.md
- Verify any updated documents.
- Submit to git.