Skip to content

Feature/adding GitHub workflow to repo - #8

Merged
Oluwaseyi89 merged 8 commits into
mainfrom
feature/adding-github-workflow-to-repo
May 8, 2026
Merged

Feature/adding GitHub workflow to repo#8
Oluwaseyi89 merged 8 commits into
mainfrom
feature/adding-github-workflow-to-repo

Conversation

@Oluwaseyi89

Copy link
Copy Markdown
Owner

Pull Request: Add GitHub Actions CI/CD workflows and local quality gates

Summary

This PR introduces comprehensive CI/CD pipelines and local pre-commit hooks across all ParcelApp services, ensuring code quality before code reaches the repository.

Changes by Service

GitHub Actions Workflows

Service Workflow
parcel-app-admin CI build + lint + test
parcel-app-web CI build + lint + test
parcel-app-service Django checks + tests
parcel-app-payment-service Gradle build + tests

Local Quality Gates

Service Tool Hooks
parcel-app-admin Husky pre-commit, pre-push
parcel-app-web Husky pre-commit, pre-push
parcel-app-service pre-commit (Python) Ruff lint + format
parcel-app-payment-service pre-commit (Python) Ruff lint + format

Supporting Changes

  • Updated package.json and package-lock.json for frontend hook tooling
  • Added Django migrations: geolocation (initial) + messaging (initial)

Impact

  • Developer experience: Automatic linting and formatting on commit
  • Code quality: Broken builds cannot reach main
  • Consistency: Same checks run locally and in CI

Validation

  • All workflows pass on this branch
  • pre-commit hooks pass locally
  • Django migrations apply cleanly

Files Changed

15 files changed, +982 insertions, -2 deletions

…ky quality gates

add GitHub Actions workflow for lint, test, and build on admin changes
configure artifact upload for main branch pushes
add Husky pre-commit hook to run lint and tests
add Husky pre-push hook to run production build
wire Husky setup via prepare script in package.json
…ates

Body:

add GitHub Actions workflow for web app test and build on main push/PR
upload Next.js build artifact on main pushes
add Husky setup via prepare script and devDependency
add pre-commit hook to run tests
add pre-push hook to run production build
…nd initial migrations

Body:

add GitHub Actions workflow for service checks with Postgres and Redis
run Django check, migration drift check, migrate, and test in CI
add Python pre-commit configuration for pre-commit and pre-push stages
generate initial migrations for geolocation and messaging apps
…push quality gates

Body:

add GitHub Actions CI for Java 17 Gradle test and bootJar build
validate Gradle wrapper and upload built jar artifact on main pushes
add Python pre-commit hooks for local pre-commit test and pre-push build checks
align local hook env defaults with CI test profile settings
… exempt surface

Body:

require authentication or trusted internal token for payment register and context endpoints
prevent anonymous access to payment RBAC-protected routes
remove redundant csrf_exempt wrapper from Paystack webhook URL
fix Django RBAC matrix and CSRF surface audit test failures
…e regression tests

Body:

restore Husky in parcel-app-admin and regenerate lockfile for npm ci consistency
normalize package.json formatting in parcel-app-admin scripts/devDependencies
add API test helper to reset module-scoped CSRF cache between tests
reset API cache in authStore regression beforeEach to prevent cross-test leakage
fix flaky switchActiveRole regression failure in parcel-app-web
Body:

refactor effect-driven data loaders to avoid synchronous setState in useEffect
defer async fetch invocations via queueMicrotask in admin page components
fix react-hooks/set-state-in-effect errors in banking, complaints, dashboard, dispatch, moderation, orders, settings, and users pages
verify parcel-app-admin lint passes successfully
@Oluwaseyi89
Oluwaseyi89 merged commit 34fa429 into main May 8, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant