Add CI/CD infrastructure, custom lint workflow, pre-commit config, and documentation updates#10
Open
abhishyantkhare wants to merge 9 commits intomainfrom
Open
Add CI/CD infrastructure, custom lint workflow, pre-commit config, and documentation updates#10abhishyantkhare wants to merge 9 commits intomainfrom
abhishyantkhare wants to merge 9 commits intomainfrom
Conversation
|
🚅 Deployed to the plane-pr-10 environment in plane
|
…ents - Add CLAUDE.md with project context, architecture, commands, and code style - Remove CLAUDE.md from .gitignore to allow version control - Add custom lint rules script (apps/api/scripts/custom_lint_rules.py) - no-dataclass: prefer Pydantic BaseModel over @DataClass - no-typed-dict: prefer Pydantic BaseModel over TypedDict - no-dict-tuple-return: return BaseModel instead of dict/tuple - modal-complexity: limit Modal function size/complexity - tool-name-string: use ToolClass.name instead of hardcoded strings - Update Ruff config with UP006 and UP035 rules for modern Python - Add dependabot.yml for automated dependency updates
…nch triggers - Add pull-request-custom-lint-api.yml workflow to run custom Python lint rules in CI - Add .pre-commit-config.yaml for Python developers (Ruff + custom lint rules) - Update codespell.yml and codeql.yml to trigger on main branch - Add legacy allowlist to custom_lint_rules.py for pre-existing violations - Format workflow files with Prettier
e76ccdb to
3643e1f
Compare
- Update Dockerfile.railway-web to compute VITE_API_BASE_URL and VITE_WEB_BASE_URL from RAILWAY_SERVICE_PLANE_API_V2_URL and RAILWAY_SERVICE_PLANE_WEB_V2_URL when RAILWAY_ENVIRONMENT_NAME contains "pr-" - Update Django CORS settings to dynamically allow Railway PR domains: - Add specific PR domain from RAILWAY_PUBLIC_DOMAIN - Add regex pattern for *.up.railway.app domains - Update Django URL settings (WEB_URL, APP_BASE_URL, etc.) to compute from Railway service URLs in PR environments - This fixes CORS failures when frontend in PR env tries to call PR API
In Railway PR environments, there may not be a separate migrator service running, causing the API/worker/beat services to hang indefinitely waiting for migrations to complete. This change detects PR environments (RAILWAY_ENVIRONMENT_NAME contains "pr-") and runs migrations directly instead of waiting for a separate migrator. Changes: - docker-entrypoint-api.sh: Run migrations if in PR environment - docker-entrypoint-worker.sh: Run migrations if in PR environment - docker-entrypoint-beat.sh: Run migrations if in PR environment
- Remove duplicate shebang that was causing script parsing issues - Add echo statements for debugging container startup - Add CACHE_BUST ARG to Dockerfile.railway-api to force cache invalidation - Clean up comments in entrypoint script
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Original Task
Changes
1. CI Workflow Triggers: Add `main` Branch Support
All CI workflows were originally configured to trigger only on PRs to the `preview` branch, but this fork uses `main` as the primary branch. Updated 9 workflows to trigger on both `preview` and `main`:
2. New CI Workflow: Custom Python Lint Rules (`.github/workflows/pull-request-custom-lint-api.yml`)
3. Pre-commit Configuration (`.pre-commit-config.yaml`)
4. Updated Custom Lint Rules (`apps/api/scripts/custom_lint_rules.py`)
5. Updated Documentation
Repository Health Summary