Configuration and image-overlay repository for Sikker Selvbetjening.
This project defines target-specific configuration, renders normalized overlay data, and builds derived container images on top of the shared base image.
The repository is responsible for:
- Declaring per-target configuration in a structured format
- Validating configuration against shared schemas
- Rendering an overlay payload for each build target
- Applying overlays with helper tooling from the base image
- Building and publishing target-specific images
- Build targets are selected from the inventory configuration.
- Target configuration is loaded and merged in deterministic order.
- The merged configuration is normalized and written as overlay payload.
- Base-image overlay helpers transform payload data into concrete filesystem changes.
- A derived image is built from the base image and pushed with standard tags.
- config/
- Configuration input for targets and environments
- playbooks/
- Rendering and operational playbooks
- schemas/
- JSON schema definitions used for configuration validation
- scripts/
- Local and CI helper scripts for validation and image builds
- templates/
- Reusable template fragments used during render steps
Validation is done in two layers:
- Schema validation: configuration is validated against the shared schema contract.
- Logical validation: additional checks ensure internally consistent settings before build.
The schema contract is sourced from the base image, which keeps configuration validation aligned with runtime expectations.
The image build flow is target-oriented and designed for CI matrix execution:
- Render target overlay into a build directory
- Apply helper-driven transformations from the base image
- Build derived image
- Tag and push to registry
Tags typically include latest and immutable identifiers (for example date and commit-derived tags).
This repository depends on the base image in two important ways:
- It reads schema definitions from the base image to validate configuration.
- It runs base-image overlay helper tools to materialize final filesystem changes.
This makes schema locations and helper interfaces a compatibility boundary between the two repositories.
Use this repository when you need to:
- Build a configuration-specific image for one or more targets
- Validate configuration changes before publishing
- Produce reproducible overlays for deployment pipelines
- Prefer small, incremental configuration changes per target.
- Run validation before building and pushing images.
- Keep render logic deterministic so CI and local runs produce identical output.