chore: add justfile for local development tasks#9209
Conversation
|
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 (2)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThis PR adds a ChangesJustfile Task Runner Addition
🎯 2 (Simple) | ⏱️ ~10 minutes 🚥 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)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds a just task runner configuration to streamline local development workflows, and documents its usage for contributors.
Changes:
- Introduced a
justfilewith common Docker Compose, Django management, DB ops, and frontend commands. - Added a tip to
CONTRIBUTING.mdpointing contributors to the newjustfilerecipes.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| justfile | Adds just recipes to standardize local dev commands (Docker, Django, DB, frontend). |
| CONTRIBUTING.md | Documents the optional just-based workflow for easier onboarding. |
e3bb672 to
edfbebe
Compare
There was a problem hiding this comment.
🧹 Nitpick comments (1)
justfile (1)
84-85: ⚡ Quick winConsider using
/bin/shfor broader compatibility.The
shellrecipe uses/bin/bash, which may not be available in Alpine-based containers. While the default serviceapilikely has bash, users might invokejust shell plane-db(Alpine Postgres image) and encounter errors.♻️ Proposed fix for Alpine compatibility
-# Open a shell in a running service (default: api). +# Open a shell in a running service (default: api; Alpine containers use /bin/sh). shell service='api': - {{compose}} exec {{service}} /bin/bash + {{compose}} exec {{service}} /bin/shAlternatively, keep
/bin/bashfor the primary use case (api) and document the limitation in the comment.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@justfile` around lines 84 - 85, The shell recipe currently invokes /bin/bash via the line "{{compose}} exec {{service}} /bin/bash", which fails in Alpine-based containers; change the shell invocation to use /bin/sh (i.e. "{{compose}} exec {{service}} /bin/sh") for broader compatibility, or implement a simple fallback that tries /bin/bash then /bin/sh when running the shell recipe, keeping the recipe name "shell" and the "service" variable unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In `@justfile`:
- Around line 84-85: The shell recipe currently invokes /bin/bash via the line
"{{compose}} exec {{service}} /bin/bash", which fails in Alpine-based
containers; change the shell invocation to use /bin/sh (i.e. "{{compose}} exec
{{service}} /bin/sh") for broader compatibility, or implement a simple fallback
that tries /bin/bash then /bin/sh when running the shell recipe, keeping the
recipe name "shell" and the "service" variable unchanged.
Description
Adds a comprehensive
justfilefor local-development task runner and documents it.composeandsettingsvariables so the compose-file path and Django settings module are defined once.manage(arbitrarymanage.pycommands),makemigrations,django-shell,createsuperuser,collectstatic,dbshell,db-backup/db-restore,rebuild,up-fg,stats, andprune.docker-compose-local.ymlservice names and the api container'splane.settings.localmodule.README.mdandCONTRIBUTING.mdso contributors can discover it viajust.No application code is touched — this is dev tooling and documentation only.
Type of Change
Screenshots and Media (if applicable)
Test Scenarios
just(orjust default) and confirm all recipes are listed without parse errors.just setupgenerates.envfiles and installs dependencies.just upbuilds and starts services; just ps shows them running;just downstops them.just infrastarts only db/redis/mq/minio.just migrateapplies migrations via the migrator service.just manage showmigrationsruns inside the api container againstplane.settings.local.just dbshellopens a psql session;just db-backupwrites a dump and just db-restore reads it back.just fe-devstarts web (:3000) and admin (:3001/god-mode);just fe-checkandjust fe-fixrun.justfileresolve.References
Summary by CodeRabbit
Documentation
Chores