Development Workflow

This is the process from development to release for IDK tasks.

Branch Creation

  • Create a branch with the task's code, e.g., CU-abc123.

Pull Request

  • Create a pull request pointing to the master branch.

Code Review

  • Request a code review from Copilot.
  • Implement any appropriate changes.

Testing

  • Django tests are automatically run by GitHub Actions using the django-tests.yml workflow.
  • Ensure all tests pass.

Merge and Deploy

  • Merge the PR into the master branch.
  • The build workflow will be triggered in GitHub Actions.
  • Wait for a successful build.
  • Build and deploy to the development instance using the build tag and add it to the deployment repo.

Testing and Approval

  • Ensure your implementation works on the dev instance.
  • Mark the task as ready for testing.
  • Request approval from QA.
  • QA marks the task as approved.

Release

  • The PO:
  • Defines the release date.
  • Ensures there are no unapproved tasks on the master branch.
  • Waits until all tasks on the master branch are approved.
  • Technical Lead creates a release on GitHub with the next minor version (e.g., 3.15.0, 3.16.0).
  • Technical Lead deploys to production by using the correct tag on the deploy repo.