Release
이 섹션은 개발 가이드라인 범위는 벗어나있지만 참고할만한 내용이기 때문에 모든 절차가 자세히 기술되진 않았습니다. 버전 정보와 릴리즈를 위한 개략적인 절차를 참고로만 읽어주세요.
큐브리드의 빌드 번호는 다음과 같은 규칙을 가집니다.
- Major.Minor.Patch.Revision
- e.g) 11.1.0.0512.2d9a03248
- Patch는 이전 릴리즈 시점부터 commit count를 기준으로 증가합니다.
- Revision은 빌드 시점의 commit hash가 입력됩니다.
Major와 Minor 버전 릴리즈 시 다음의 예시와 같이 코드 네임을 가집니다.
- 과일 이름
- elderberry (11.1)
- damson (11.0)
- cherry (10.2), cherry sherbet
- banana (10.0), banana pie (10.1)
- 버전 번호는 항상 바뀔 수 있습니다.
- 릴리즈 후에는 코드 네임 대신 버전 번호로 관리합니다.
Major 버전 릴리즈 시에 다음과 같은 마일스톤을 가집니다.
- Code Freeze
- CC (Code Complete): All major changes are completed
- ZAB (Zero Active Bug): All triaged issues are resolved
- ZRB (Zero Resolved Bug): All resolved issues are closed
- FTC (Full Test Complete): Full tests for release are succeed
- GA (General Availability build): Distribute the release version
- Code Freeze 후 develop로부터 pre-release 브랜치를 생성하여 관리합니다.
- ZRB 달성을 위해 pre-release 브랜치에 major change에 대한 regression 패치를 합니다.
- ZRB에서 release를 위한 full test를 진행합니다.
- FTC에서 release를 위한 테스트로부터 regression 해결을 위해 pre-release 브랜치에 적용한 major change에 대한 패치를 develop으로 port 합니다.
- FTC 이전에 패치가 충분히 검증 되었다면 미리 develop으로 port 할 수 있습니다.
- GA 시 pre-release는 release로 만들고 제거합니다.
최신 메이저 버전이 아닌 이전 버전의 릴리즈와 핫픽스의 경우 pre-release 브랜치를 생성하지 않고, develop으로부터 backport 후 full test를 진행하고 릴리즈합니다.
Last modified 1yr ago