• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lfit / releng-gerrit_to_platform / 25802805456
93%

Build:
DEFAULT BRANCH: main
Ran 13 May 2026 01:41PM UTC
Jobs 1
Files 8
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

13 May 2026 01:17PM UTC coverage: 92.806%. Remained the same
25802805456

push

github

ModeSevenIndustrialSolutions
Feat(logging): Add centralised logging framework

Adds gerrit_to_platform._logging, an opt-in logging framework
configured via G2P_LOG_* environment variables or a new [logging]
section in gerrit_to_platform.ini.  The framework owns every
handler, formatter and filter; modules obtain loggers through a
single get_logger() helper.

Default behaviour is unchanged (WARNING to stderr) so existing
deployments at gerrit.linuxfoundation.org continue to behave as
they do today.  Verbose diagnostics, JSON output and a secondary
file sink are purely additive and operator-controlled.

Each hook invocation carries a short URL-safe correlation id
attached to every record as cid=...; an enclosing wrapper (e.g.
the gerrit-action hook wrapper) may seed the id by exporting an
environment variable named in correlation_id_env so the same id
appears in both the wrapper log and the package log.

Hook entry-points (patchset-created, comment-added, change-merged)
now call configure() and emit a structured trace covering hook
entry, event-parse, platform detection, workflow lookup, dispatch
attempt, dispatch result and exit (with elapsed_ms).  The github
client wrapper logs every dispatch and workflows-list call with
timing and outcome.  User-facing print() calls remain in place and
run parallel to the new logging stream.

A RedactingFilter is attached to every handler installed by
configure() and scrubs GitHub token shapes (gh[posr]_...),
Authorization headers, ?token= query-string parameters and
labelled token=/secret=/password= values.  Coverage in
tests/test_logging.py asserts no synthetic token reaches a
handler verbatim, plus precedence (env over INI), idempotent
configure(), broken-file-sink fallback, JSON formatter shape and
schema_version, and per-logger overrides.

The ephemeral gerrit-action and test-deploy-gerrit container
deployments need this so operators can extract per-event traces
from short-lived Docker / GitHub-Actions sandboxes where the only
post-mortem a... (continued)

249 of 274 new or added lines in 6 files covered. (90.88%)

14 existing lines in 2 files now uncovered.

516 of 556 relevant lines covered (92.81%)

0.93 hits per line

Uncovered Changes

Lines Coverage ∆ File
8
95.32
0.0% src/gerrit_to_platform/_logging.py
5
86.55
0.0% src/gerrit_to_platform/comment_added.py
3
89.29
0.0% src/gerrit_to_platform/change_merged.py
3
94.12
0.0% src/gerrit_to_platform/github.py
3
91.67
0.0% src/gerrit_to_platform/helpers.py
3
88.89
0.0% src/gerrit_to_platform/patchset_created.py

Coverage Regressions

Lines Coverage ∆ File
10
86.55
0.0% src/gerrit_to_platform/comment_added.py
4
91.67
0.0% src/gerrit_to_platform/helpers.py
Jobs
ID Job ID Ran Files Coverage
1 ubuntu-latest - py3.11 - 25802805456.1 13 May 2026 01:41PM UTC 8
92.81
GitHub Action Run
Source Files on build 25802805456
  • Tree
  • List 8
  • Changed 2
  • Source Changed 2
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25802805456
  • 64005662 on github
  • Prev Build on main (#25748786678)
  • Next Build on main (#25802813140)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc