Release Management

Việc quản lý các phiên bản release được quy định từ các bước chuẩn bị cho đến khi phát hành chính thức trên môi trường production.

Release flow

Đối với môi trường Development

  • Thực hiện việc tạo Pull Request (PR) theo template được quy định sẵn

  • Destination của PR luôn là nhánh develop

  • Leader review và merged PR

Đối với môi trường Staging

  • Leader tạo nhánh release từ nhánh develop với quy tắc đặt tên theo Semantic Versioning release/<version number> e.g. release/1.0.0.

  • Leader tiến hành deploy nhánh release đã tạo lên môi trường Staging

  • Quá trình test và bug fixes phải được checked out từ nhánh release hiện tại và luôn được merged trở lại vào nhánh release

Đối với môi trường Production

Leader kiểm tra Checklist / Change logs để chuẩn bị release môi trường production

#1 - Finish the release

  • Checkout nhánh release hiện tại

  • Tiến hành Finish the release (tuân theo git-flow) - merged trở lại vào nhánh developmaster

#2 - Tagging version

Một khi code đã được merged vào nhánh master, chúng ta phải gắn thẻ (tagging) để theo dõi các phiên bản.

  • Tạo tag theo version của nhánh release hiện tại

  • Tạo Change logs tuân theo Convention sau đây

    • Liệt kê thay đổi dưới dạng bullet point list

    • Group các thay đổi theo Loại issue

    • Bắt buộc kèm theo Backlog-ID

    • Kèm theo Pull-Request-ID nếu có, nhưng không bắt buộc

Features
- [backlog-id] As a user I can view the list of job positions (#pull-request-id)
- [backlog-id] As a user I can view the details of a job position (#pull-request-id))

Bugs
- [backlog-id] Fix: Login with LinkedIn (#pull-request-id))

Chores
- [backlog-id] Set up production environment (#pull-request-id))
  • Push tag mới được tạo lên remote

#3 - Deploy to Production and Hot fix (Nếu có)

  • Leader tiến hành deploy version tag cần triển khai lên môi trường Production

  • Quá trình vận hành nếu có xãy ra bugs cần hotfix thì hotfix phải được checked out từ nhánh master

    và phải được merged trở lại nhánh master kèm theo việc tạo tag có number version tuân theo Semantic Versioning

Last updated

Was this helpful?