fix(examples): compose.pangolin.yml + .env.example — PRINTER_HUB_* prefix, korrekte Pangolin-Labels#113
Conversation
… aktuelle Konfiguration Behebt 6 Bitrot-Probleme aus Issue #73: 1. Backend-Env-Variablen auf PRINTER_HUB_*-Prefix umgestellt 2. PRINTERS/SNMP_COMMUNITY durch printers.yaml-Volume ersetzt 3. Pangolin-Labels von pangolin.resources.* auf pangolin.public-resources.* korrigiert 4. Pflichtfelder ssl, targets[0].method, targets[0].path-match, name ergänzt 5. protocol=https → protocol=http korrigiert (SSL termination at Pangolin edge) 6. Netzwerk-Alias-Pattern für pangolin_pangolin_mgmt ergänzt 7. docker-restart-Kommentar durch neutralen Container-Management-Hinweis ersetzt Closes #73 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! Dieses Pull Request behebt Konfigurationsprobleme in den Beispiel-Dateien für die Pangolin-Integration. Durch die Aktualisierung der Umgebungsvariablen-Präfixe, die Umstellung auf eine dateibasierte Drucker-Konfiguration und die Korrektur der Pangolin-Labels wird die Stabilität und Wartbarkeit der Deployment-Beispiele sichergestellt. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize the Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request refactors configuration files to prefix environment variables with "PRINTER_HUB_" and migrates printer definitions to a "printers.yaml" file. It also updates Pangolin labels and network configurations in "compose.pangolin.yml". The review feedback identifies two issues: an inconsistency in "compose.pangolin.yml" where a comment mentions "path-prefix" but the labels use "targets[0].path", and the removal of "LOG_LEVEL" from ".env.example" while it is still referenced by the frontend container.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
| # Note: Two routes on the same full-domain are only possible with distinct | ||
| # path-prefix values. The webhook resource bypasses SSO so that external | ||
| # callers can post without a browser session. |
There was a problem hiding this comment.
Der Kommentar erwähnt, dass zwei Routen auf derselben Domain nur mit unterschiedlichen path-prefix-Werten möglich sind. Im Code wird jedoch kein path-prefix-Label auf Ressourcenebene verwendet, sondern targets[0].path und targets[0].path-match. Bitte prüfen Sie, ob der Kommentar veraltet ist oder ob hier tatsächlich ein Label wie pangolin.public-resources.printerhub-webhooks.path-prefix=/api/webhook/ auf Ressourcenebene fehlt, damit Pangolin die Routen und den SSO-Bypass korrekt trennen kann.
|
|
||
| # ----- Logging -------------------------------------------------------------- | ||
| LOG_LEVEL=INFO | ||
| PRINTER_HUB_LOG_LEVEL=INFO |
There was a problem hiding this comment.
In .env.example wurde LOG_LEVEL durch PRINTER_HUB_LOG_LEVEL ersetzt. In compose.pangolin.yml wird für den Frontend-Container jedoch weiterhin LOG_LEVEL=${LOG_LEVEL:-INFO} verwendet. Da LOG_LEVEL nun nicht mehr in .env.example dokumentiert ist, ist für Benutzer nicht direkt ersichtlich, wie sie das Logging des Frontends konfigurieren können. Es wird empfohlen, einen entsprechenden Kommentar oder die Variable LOG_LEVEL=INFO für das Frontend in .env.example zu behalten.
PRINTER_HUB_LOG_LEVEL=INFO
# LOG_LEVEL=INFO
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #113 +/- ##
==========================================
+ Coverage 89.18% 89.20% +0.02%
==========================================
Files 91 91
Lines 4243 4243
Branches 365 365
==========================================
+ Hits 3784 3785 +1
Misses 360 360
+ Partials 99 98 -1
Flags with carried forward coverage won't be shown. Click here to find out more. Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Updates the Pangolin deployment examples to match the current backend configuration model (PRINTER_HUB_* env vars + printers.yaml) and the correct Pangolin Blueprint label schema, preventing silent misconfiguration when users copy these templates.
Changes:
- Updated
examples/compose.pangolin.ymlto usePRINTER_HUB_*env vars, mountprinters.yaml, and switch Pangolin labels topangolin.public-resources.*with required fields (incl. two-resource webhook route). - Updated
examples/.env.exampleto document the printers.yaml-based setup and to usePRINTER_HUB_*-prefixed backend variables.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| examples/compose.pangolin.yml | Fixes Pangolin labels/network aliasing and backend env var wiring for the Pangolin example stack. |
| examples/.env.example | Refreshes example env var names and docs to align with current backend settings and printers.yaml config. |
| # Public hostname of the hub (used in Pangolin blueprint labels). | ||
| # Only relevant for reverse-proxy variants — for standalone, leave blank. |
| # ----- Logging -------------------------------------------------------------- | ||
| LOG_LEVEL=INFO | ||
| PRINTER_HUB_LOG_LEVEL=INFO |
| # Note: Two routes on the same full-domain are only possible with distinct | ||
| # path-prefix values. The webhook resource bypasses SSO so that external | ||
| # callers can post without a browser session. |
## <small>0.10.1 (2026-06-10)</small> * fix(brother-ql): doppelter 'preflight SNMP failed' Prefix vermieden (Issue #105) (#114) ([e459fd7](e459fd7)), closes [#105](#105) [#114](#114) [#105](#105) * fix(examples): aktualisiere compose.pangolin.yml und .env.example auf aktuelle Konfiguration (#113) ([a16643e](a16643e)), closes [#113](#113) [#73](#73) * chore(deps): bump the go-minor-and-patch group across 1 directory with 3 updates (#112) ([3939741](3939741)), closes [#112](#112) * docs: Phase 1k.1 Layout-Engine + TapeGeometry + ContentTypes (Spec + Plan) (#108) ([a5425a5](a5425a5)), closes [#108](#108) [#103](#103) [#108](#108) [#103](#103) [#103](#103) [#103](#103) [#103](#103) [#103](#103) [#103](#103) [#103](#103) [#103](#103) [#103](#103) * ci(deps): bump codecov/codecov-action in the actions-all group (#111) ([2a9454b](2a9454b)), closes [#111](#111) [skip ci]
Summary
examples/compose.pangolin.ymlundexamples/.env.examplehaben seit Mai 2026 Bit-Rot akkumuliert. Bei einem Produktions-Deploy auf hhdocker02 (2026-05-17) haben beide Dateien durch stille Fehler fehlgeschlagen — keine Fehlermeldung, der Hub startet aber mit falschen Defaults. Dieses PR behebt alle 6 Probleme aus Issue #73.Contributor License Agreement (CLA)
By opening this pull request you affirm that you have read and agree to the
project's Contributor License Agreement for the contribution(s)
included here.
Linked issue
Closes #73
Type of change
Hardware tested on
Test coverage
Änderungen im Detail
compose.pangolin.yml
PRINTERS=,WEBHOOK_API_KEY=, …PRINTER_HUB_PRINTERS_CONFIG=,PRINTER_HUB_WEBHOOK_API_KEY=, …PRINTERS=slug:ip(veraltet)printers.yaml-Volume-Mountpangolin.resources.*(ignoriert)pangolin.public-resources.*(korrekt)ssl,targets[0].method,targets[0].path-match,nameprotocolhttps(falsch)http(SSL termination at Pangolin edge)pangolin-newt(hardcoded)pangolin_mgmtmitname: pangolin_pangolin_mgmt(Alias-Pattern)docker restart pangolin-newt.env.example
PRINTER_HUB_*-Prefix aktualisiertPRINTERS=slug:ip-Zeile durch Hinweis aufprinters.yamlersetztSNMP_COMMUNITY,DATABASE_URL,LOG_LEVEL, Integration-Keys korrekt präfixiertChecklist