릴리스 후보에 투표하기
릴리스 후보에 투표하기 (Voting on Release Candidates)
모두가 HBase 릴리스 후보(RC)에 투표해 보는 것이 권장돼요. 다만 PMC 멤버의 투표만 구속력이 있어요. 투표 기준이 되는 기준(baseline) 검증 항목과 추가 검증 절차를 살펴볼게요.
출처: 문서
본문
모두가 HBase 릴리스 후보에 투표해 보도록 권장해요. PMC 멤버의 투표만 구속력(binding)이 있어요. PMC 멤버는 릴리스 후보 정책 투표에 대한 이 WIP 문서(Release Policy)를 읽어 주세요.
+1 구속력 투표를 하기 전에, 개인은 서명된 소스 코드 패키지를 자신의 하드웨어에 다운로드하고, 제공된 대로 컴파일하고, 결과 실행 파일을 자신의 플랫폼에서 테스트해야 하며, 암호화 서명을 검증하고 패키지가 ASF 릴리스 정책 요구사항을 충족하는지도 확인해야 해요.
후자와 관련해, 모든 파일이 적절히 라이선스되었는지 확인하려면 mvn apache-rat:check를 실행해 주세요.
이 프로세스에 어떻게 도달했는지는 HBase, mail # dev - On recent discussion clarifying ASF release policy를 참고해 주세요.
릴리스 검증을 돕기 위해 다음 지침을 따르고 검증 결과에 따라 투표해 주세요.
릴리스 후보 투표를 위한 기준 검증 (Baseline Verifications for Voting Release Candidates)
기여자마다 자신만의 검증 체크리스트가 있지만, 릴리스 후보 투표에는 다음 항목들이 일반적으로 사용돼요.
- CHANGES.md(있는 경우)
- RELEASENOTES.md(릴리스 노트, 있는 경우)
- 생성된 API 호환성 보고서
무엇이 호환되어야 하는지에 대해서는 버전 관리 지침을 참고해 주세요. 특히 높은 심각도(high severity)로 표시된 항목에 유의해 주세요.
- hbase-vote.sh를 사용해 체크섬, 서명, 파일 라이선스, 소스 빌드, 단위 테스트에 대한 sanity 검사를 수행해 주세요.
hbase-vote.sh 셸 스크립트는 HBase 소스의 dev-support 디렉터리에서 사용할 수 있어요. 사용법은 다음과 같아요.
./dev-support/hbase-vote.sh -h
hbase-vote. A script for standard vote which verifies the following items
1. Checksum of sources and binaries
2. Signature of sources and binaries
3. Rat check
4. Built from source
5. Unit tests
Usage: hbase-vote.sh -s | --source <url> [-k | --key <signature>] [-f | --keys-file-url <url>] [-o | --output-dir </path/to/use>] [-P runSmallTests] [-D property[=value]]
hbase-vote.sh -h | --help
-h | --help Show this screen.
-s | --source '<url>' A URL pointing to the release candidate sources and binaries
e.g. https://dist.apache.org/repos/dist/dev/hbase/hbase-<version>RC0/
-k | --key '<signature>' A signature of the public key, e.g. 9AD2AE49
-f | --keys-file-url '<url>' the URL of the key file, default is
https://downloads.apache.org/hbase/KEYS
-o | --output-dir '</path>' directory which has the stdout and stderr of each verification target
-P | list of maven profiles to activate for test UT/IT, i.e. <-P runSmallTests> Defaults to runAllTests
-D | list of maven properties to set for the mvn invocations, i.e. <-D hadoop.profile=3.0> Defaults to unset
- 단위 테스트 실패가 보이면, 솔로 테스트 결과와 그것이 flaky(야간) 테스트 대시보드(예: master 브랜치 대시보드, 테스트 브랜치에 따라 변경)의 일부인지 여부를 언급해 주세요.
릴리스 후보 투표를 위한 추가 검증 (Additional Verifications for Voting Release Candidates)
일반 검증 외에도 기여자는 추가 우려 사항을 언급할 수 있어요. 예를 들어 분산 환경에서 특정 기능에 대한 종단 간(end to end) 테스트를 실행하는 것처럼요. 이는 선택 사항이며 항상 권장돼요.
- 분산 HBase 클러스터를 시작하고 클러스터에서 특정 워크로드의 테스트 결과를 언급해 주세요. 예를 들어
create/put/get/scan/flush/list/disable/drop 같은 기본 테이블 연산 실행
LoadTestTool (LTT)과 IntegrationTestBigLinkedList (ITBLL) 같은 내장 테스트 실행
더 알아보기 (Learn more)
릴리스 준비와 공지 전체 과정은 Releasing Apache HBase와 Announcing Releases 문서를 보시길 권해요.