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

umputun / cronn / 19485067761
75%

Build:
DEFAULT BRANCH: master
Ran 19 Nov 2025 12:20AM UTC
Jobs 1
Files 24
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

19 Nov 2025 12:18AM UTC coverage: 74.477% (+0.05%) from 74.427%
19485067761

push

github

web-flow
Add base URL support for reverse proxy deployments (#53)

* feat: add base URL support for reverse proxy deployments

add --web.base-url flag to enable running web dashboard behind reverse proxy at subpath (e.g., /cronn). implements url() template helper for dynamic URL generation, cookiePath() helper for cookie scoping, and http.StripPrefix wrapper for proper routing.

- add --web.base-url flag with validation (must start with /, trailing slash removed)
- implement url() and cookiePath() template helpers
- update all templates (base, login, dashboard, jobs) to use url helper
- update app.js to use window.BASE_URL for dynamic API calls
- add cookie path scoping to match base URL
- add comprehensive tests (9 subtests covering all scenarios)
- update README with reverse proxy configuration examples

backward compatible - empty base URL defaults to root path

* test: add validateBaseURL tests and improve nginx docs

- add table-driven test for validateBaseURL covering edge cases
- fix nginx config to handle both /cronn and /cronn/ paths
- add redirect for consistency in reverse proxy setup

* fix(web): correct base URL redirect without trailing slash

add handler() method to properly redirect base URL requests
without trailing slash to the correct path. previously,
/cronn would incorrectly redirect to / instead of /cronn/.

the fix extracts base URL wrapping logic into a dedicated
handler() method that both production and tests can use,
preventing logic duplication.

related #52

* test(web): fix flaky cleanup test race condition

the Eventually check was succeeding as soon as 3 executions existed, which
could happen after processing only the first 3 events. in slower CI
environments, the remaining events would process after the check, leaving 4
executions instead of the expected 3.

now the check waits for the newest execution (output 4) to exist, ensuring
all 5 events are fully processed before verifying the final count.

45 of 51 new or added lines in 4 files covered. (88.24%)

2 existing lines in 1 file now uncovered.

2530 of 3397 relevant lines covered (74.48%)

37.9 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
6
28.52
1.9% app/main.go

Uncovered Existing Lines

Lines Coverage ∆ File
2
93.31
-0.67% app/web/jobs.go
Jobs
ID Job ID Ran Files Coverage
1 19485067761.1 19 Nov 2025 12:20AM UTC 24
74.48
GitHub Action Run
Source Files on build 19485067761
  • Tree
  • List 24
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 498874bb on github
  • Prev Build on master (#19361305093)
  • Next Build on master (#19485677064)
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

© 2025 Coveralls, Inc