docs: add end-to-end collector tutorial and link it from onboarding docs#247
Conversation
…rial for building collectors
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
💤 Files with no reviewable changes (1)
✅ Files skipped from review due to trivial changes (3)
📝 WalkthroughWalkthroughAdds a new end-to-end tutorial (docs/Tutorial_building_a_collector.md) for scaffolding and implementing Django collectors; updates multiple documentation entry points to reference the tutorial; and updates the generated package version string. ChangesCollector Tutorial and Documentation Updates
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Summary
Adds
docs/Tutorial_building_a_collector.md, a step-by-step guide for creating a collector from scratch (startcollector,AbstractCollectorhooks, pytest, YAML/Celery scheduling, deployment). Uses a fictionalheartbeat_demoapp (local only, not committed) and points to real in-repo examples (cppa_user_tracker,wg21_paper_tracker).Wires the tutorial into existing docs so new contributors have a clear path:
startcollectorcheckliststartcollector→ checklistrun_<app>.pylayout vs optionalcollectors.pysplitDocs-only; no collector code, schedule, or service-layer changes.
Apps touched
core/collectors/README.mdupdated)Test plan
python -m pytest(or scoped:python -m pytest <app>/tests)uv run pyright(if typed code changed)lint-imports(if imports or cross-app coupling changed)Manual:
Tutorial_building_a_collector.md,CONTRIBUTING.md,README.md,Onboarding.md,docs/README.md,How_to_add_a_collector.mdDocs / coupling
python scripts/generate_service_docs.pyrun (ifservices.pyorcore/protocols.pychanged)docs/updated (if behavior or ops changed)Closes #231
Summary by CodeRabbit