Skip to content

Doku und Vorlage auf build-conf.txt umstellen (Karte 961) - #80

Merged
daniel-marthaler merged 1 commit into
masterfrom
karte-961-kommentar
Aug 22, 2026
Merged

Doku und Vorlage auf build-conf.txt umstellen (Karte 961)#80
daniel-marthaler merged 1 commit into
masterfrom
karte-961-kommentar

Conversation

@daniel-marthaler

Copy link
Copy Markdown
Collaborator

Das README beschrieb einen Weg, der nicht funktioniert

Abschnitt 2 liess Consumer-Projekte eine plaintext-build.cfg anlegen, während load_build_conf() ausschließlich build-conf.txt sucht. Wer der Anleitung folgte, bekam ERROR: build-conf.txt not found.

Gemessen in plaintext-scripts/*.sh:

build-conf.txt          27 Vorkommen
plaintext-build.cfg      0 (außer einem Kommentar)
PLAINTEXT_BUILD_CONFIG   0     <- die Doku führte es als Priorität 2
(Kontrolle: load_build_conf 4, PLAINTEXT_CONFIG_DIR 17 — die Suche funktioniert)

Was sich ändert

1. Vorlage umbenannt, Inhalt unverändert: plaintext-build.cfg.templatebuild-conf.txt.template (per git mv).

2. Abschnitt 2 legt jetzt build-conf.txt an, mit dem Hinweis, dass der Dateiname nicht frei wählbar ist.

3. Die Prioritätenliste war zur Hälfte erfunden. Sie versprach vier Ebenen, davon existieren zwei nicht:

- | 1 | Individual environment variables | CI overrides, one-off changes |
- | 2 | `PLAINTEXT_BUILD_CONFIG` env     | GitHub Actions                |
- | 3 | `plaintext-build.cfg` file       | Local development             |
- | 4 | `build-conf.txt` file            | Legacy support                |
+ | 1 | `$PLAINTEXT_CONFIG_DIR/<projektname>/build-conf.txt` | zentrale Konfiguration |
+ | 2 | `<projektverzeichnis>/build-conf.txt`                | Projekte außerhalb     |

Dazu ein Hinweis, der praktisch wichtig ist: load_build_conf() setzt die Werte per export und überschreibt damit gleichnamige Umgebungsvariablen. Eine Variable vorher zu setzen wirkt also nicht als Übersteuerung — die Doku behauptete mit „Individual environment variables (highest wins)" genau das Gegenteil.

4. tui-modules-logic.sh:28: der Kommentar read WEBAPP_MODULE from build-conf.txt or plaintext-build.cfg ist richtiggestellt. Der Code darunter las immer nur build-conf.txt — dieser Kommentar war der einzige Treffer im ganzen Skript-Repo und hat bei der Untersuchung zu Karte 961 zunächst eine falsche Fährte gelegt.

Zusammenhang

Die sechs plaintext-build.cfg in plaintext-config entfernt Plaintext-Gmbh/plaintext-config#86. Beide PRs zusammen stellen sicher, dass es nur noch eine Build-Konfiguration gibt — eine Korrektur in der falschen Datei hat bei Karte 955 einen Deploy-Zyklus gekostet.

Was ich NICHT geprüft habe

Ob außerhalb dieser Organisation jemand die Vorlage unter ihrem alten Namen einbindet. Innerhalb wird sie nur vom README referenziert (2 Stellen, beide angepasst).

Das README beschrieb einen Weg, der nicht funktioniert: es liess Consumer-Projekte eine
plaintext-build.cfg anlegen, waehrend load_build_conf() ausschliesslich build-conf.txt sucht.
Wer der Anleitung folgte, bekam "ERROR: build-conf.txt not found".

Gemessen in plaintext-scripts/*.sh:

    build-conf.txt          27 Vorkommen
    plaintext-build.cfg      0 (ausser einem Kommentar)
    PLAINTEXT_BUILD_CONFIG   0     <- die Doku fuehrte es als Prioritaet 2
    (Kontrolle: load_build_conf 4, PLAINTEXT_CONFIG_DIR 17)

Aenderungen:

* plaintext-build.cfg.template -> build-conf.txt.template (git mv, Inhalt unveraendert)
* README Abschnitt 2: legt jetzt build-conf.txt an, mit Hinweis dass der Dateiname nicht frei
  waehlbar ist
* README "Configuration": die vierstufige Prioritaetenliste war zur Haelfte erfunden. Ersetzt
  durch die beiden Orte, die load_build_conf() tatsaechlich absucht. Dazu der Hinweis, dass die
  Werte per export gesetzt werden und gleichnamige Umgebungsvariablen damit UEBERSCHRIEBEN
  werden -- die Doku behauptete das Gegenteil ("Individual environment variables, highest wins")
* tui-modules-logic.sh:28: Kommentar "from build-conf.txt or plaintext-build.cfg"
  richtiggestellt; der Code darunter las immer nur build-conf.txt

Die sechs plaintext-build.cfg in plaintext-config entfernt PR 86 dort.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MNuJVEMABbAJUHt3gxKHrc
@daniel-marthaler
daniel-marthaler merged commit c3720ab into master Aug 22, 2026
1 check passed
@daniel-marthaler
daniel-marthaler deleted the karte-961-kommentar branch August 22, 2026 09:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant