Initialize GovOPlaN meta repository
This commit is contained in:
115
README.md
Normal file
115
README.md
Normal file
@@ -0,0 +1,115 @@
|
||||
# GovOPlaN
|
||||
|
||||
<!-- govoplan-repository-type:start -->
|
||||
**Repository type:** system (meta).
|
||||
<!-- govoplan-repository-type:end -->
|
||||
|
||||
This is the GovOPlaN meta repository. It is the operator entry point for
|
||||
whole-product development, release orchestration, repository bootstrap, and
|
||||
system-level Docker composition.
|
||||
|
||||
It is not a runtime module. Runtime behavior belongs to `govoplan-core` and the
|
||||
installed modules/connectors discovered by core.
|
||||
|
||||
## Common Commands
|
||||
|
||||
Create the whole-product development virtualenv in this meta repository:
|
||||
|
||||
```sh
|
||||
python3 -m venv .venv
|
||||
./.venv/bin/python -m pip install --upgrade pip
|
||||
./.venv/bin/python -m pip install -r requirements-dev.txt
|
||||
```
|
||||
|
||||
The meta venv is the default Python environment for launch, check, release, and
|
||||
Gitea tooling. `GOVOPLAN_VENV_ROOT` or `PYTHON` can override it for special
|
||||
cases.
|
||||
|
||||
Start the development stack through the meta repository:
|
||||
|
||||
```sh
|
||||
./tools/launch/launch-dev.sh
|
||||
```
|
||||
|
||||
Start the shared development PostgreSQL service:
|
||||
|
||||
```sh
|
||||
./tools/launch/start-dev-postgres.sh
|
||||
```
|
||||
|
||||
Check which GovOPlaN repositories are present and dirty:
|
||||
|
||||
```sh
|
||||
./tools/repo/repo-status.sh
|
||||
```
|
||||
|
||||
Clone missing repositories listed in `repositories.json`:
|
||||
|
||||
```sh
|
||||
./tools/repo/bootstrap-repositories.py
|
||||
```
|
||||
|
||||
Update generated repository type notes in all READMEs:
|
||||
|
||||
```sh
|
||||
./tools/repo/update-repository-type-notes.py
|
||||
```
|
||||
|
||||
Run the consolidated focused verification suite:
|
||||
|
||||
```sh
|
||||
./tools/checks/check-focused.sh
|
||||
```
|
||||
|
||||
Run the cross-repository dependency boundary gate:
|
||||
|
||||
```sh
|
||||
./tools/checks/check_dependency_boundaries.py
|
||||
```
|
||||
|
||||
Run installer rollback drills:
|
||||
|
||||
```sh
|
||||
./tools/checks/module-installer-rollback-drill.py --format json
|
||||
```
|
||||
|
||||
Release, catalog, Gitea, security-audit, and cross-repository maintenance
|
||||
commands should also be called from this repository through `tools/`.
|
||||
|
||||
## Configuration
|
||||
|
||||
The repository root `.env.example` is the self-hosted operator template for a
|
||||
full GovOPlaN installation. Development profile examples live below `dev/`, for
|
||||
example `dev/postgres/.env.example` and `dev/production-like/.env.example`.
|
||||
|
||||
Do not commit populated `.env` files. Gitea tokens should stay in a local file
|
||||
such as `~/.config/gitea/gitea.env` and be passed with `--env-file`.
|
||||
|
||||
## Structure
|
||||
|
||||
The repository categories are documented in
|
||||
`docs/REPOSITORY_STRUCTURE.md`. The machine-readable list lives in
|
||||
`repositories.json`.
|
||||
|
||||
# GovOPlaN Docker
|
||||
|
||||
Whole-product Docker composition belongs in this meta repository.
|
||||
|
||||
Current module-specific Docker test beds remain in their owning repositories
|
||||
until they are migrated or wrapped here:
|
||||
|
||||
- `govoplan/dev/postgres`
|
||||
- `govoplan/dev/production-like`
|
||||
- `govoplan-campaign/dev/mail-testbed`
|
||||
- `govoplan-files/dev/connectors`
|
||||
|
||||
The target shape is:
|
||||
|
||||
- `govoplan/dev/postgres`: shared local development PostgreSQL service.
|
||||
- `govoplan/dev/production-like`: production-like validation composition.
|
||||
- module repositories keep only narrow connector or protocol test beds.
|
||||
|
||||
What doesn't belong here:
|
||||
|
||||
- `addideas-govoplan-website/docker-compose.yml`: public website serving
|
||||
profile; this one stays with the website repository.
|
||||
Reference in New Issue
Block a user