Skip to content

revise development pipeline #509

@josefaidt

Description

@josefaidt

Describe the Feature

PR Workflow

  1. dev submits PR against main branch
  2. maintainers must approve and add run-ci label to invoke CI prereq
  3. automated check runs to ensure PR has no more than 1 database migration file
  4. maintainers (min: 2) must review and approve PR with appropriate semver label
  5. automated check runs to ensure PR has semver label added
  6. all 3 checks pass (ci, migration file, semver label)
  7. PR is merged to main

Deployment/Release Workflow

  1. PR is merged to main
  2. release action confirms release to start
  3. release action reads semver label from PR that was merged
  4. release action builds the project, runs tests
  5. release action uses semver label to create prerelease tag
  6. release action deploys to staging environment (i.e. next)
  7. release action runs tests on live staging environment
  8. release action uses semver label to prepare/create release tag
  9. release action deploys to production environment (i.e. main)
  10. release action runs tests on live production environment
  11. release action pushes to release tag
  12. release action publishes release notes

if any of these steps fails:

  1. release action opens GitHub issue with the release: failed label and project devs are assigned
    1. this can be extended to send Slack/Discord messages

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions