Files
zonemaster.es/zonemaster/docs/internal/maintenance/ReleaseProcess-preparation.md
Malin 8d4eaa1489 feat: add full Zonemaster stack with Docker and Spanish UI
- 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>
2026-04-21 08:19:24 +02:00

4.2 KiB

Release process - Preparation

The steps in this document should be processed early in the release process, definitely before acceptance testing starts, but also before development has been completed.

1. Update prerequisites

Make sure the declaration of prerequisites is up to date with regard to SupportCriteria.

2. Update CI configuration

Make sure the Travis configuration for each repo, in the develop branch is up to date with the supported Perl versions.

Zonemaster-GUI uses no Perl and Zonemaster/Zonemaster uses no Travis.

3. Verify that META.yml will have all the correct data

This section is not relevant for Zonemaster-GUI or Zonemaster/Zonemaster.

META.yml is created by Makefile.PL so if META.yml is not correct, then Makefile.PL must be updated.

  1. Make a clean clone for each repository
     git clean -dfx
     git reset --hard
  1. Check out the develop branch. Check out the right commit of the submodule (LDNS) if Zonemaster-LDNS.
     git checkout origin/develop
     git submodule update # Zonemaster-LDNS only
  1. Run
     perl Makefile.PL --no-ed25519 # zonemaster-ldns only
     perl Makefile.PL              # other repositories
  1. Verify that META.yml contains all the paths in the table in Appendix META below and that the value at each path matches the listed requirement.

4. Verify that MANIFEST and MANIFEST.SKIP are up to date

This section is not relevant for Zonemaster-GUI or Zonemaster/Zonemaster.

MANIFEST must, directly or indirectly, list all files that should be installed. MANIFEST.SKIP must list all file that should not be installed, and what is counted are all files available when make dist is run.

5. Check for deprecated features

Check all documentation in all repositories for deprecated features that are planned to be removed in the upcoming release.

If anything was found and there is no PR to remove it, then create an issue labelled P-High that something must be done before the release unless there is already an issue.

Removed feature will probably require that the major version is increased (breaking change). See "Versions and Releases".

Appendix META

Requirements for generated META.yml file.

Property Requirement
abstract component tag line
author current maintainer and original author
license license string
name name of the component
recommends all modules that aren't strictly required but still used if available
requires all required modules
requires.perl minimum perl version
resources.bugtracker link to the bug tracker
resources.license link to the license text
resources.repository link to the repository
version version number of the new release