Developer and maintainer tooling for the HBase project. This directory contains CI configuration, release automation, code analysis, and various utility scripts.
PR-level CI runs via GitHub Actions (see ../.github/workflows/). Nightly
builds, branch validation, and precommit checks still use Jenkins
configurations in this directory:
Jenkinsfile,Jenkinsfile_GitHub-- Pipeline definitionshbase_nightly_yetus.sh,jenkins_precommit_github_yetus.sh-- Yetus-based precommit and nightly check scriptshbase-personality.sh-- Yetus personality plugin that customizes checks for HBasejenkinsEnv.sh,jenkins-scripts/-- Shared Jenkins environment setupHOW_TO_YETUS_LOCAL.md-- Guide for running Yetus checks locally
create-release/-- Docker-based release candidate builder (tags, builds, signs, publishes). Entry point isdo-release-docker.sh.make_rc.sh-- Older release candidate script (superseded bycreate-release/)hbase-vote.sh-- Generates release vote email contentgit-jira-release-audit/-- Audits git history against JIRA fixVersion fields to find discrepancies between what was committed and what JIRA says shipped
checkcompatibility.py-- Checks API/ABI compatibility between versionscheckstyle_report.py-- Generates checkstyle reportsspotbugs-exclude.xml-- SpotBugs exclusion rulescode-coverage/-- Scripts for generating code coverage reportsflaky-tests/-- Flaky test detection, reporting, and dashboardslicense-header-- Apache License header template
docker/-- Dockerfile for CI build environmenthbase_docker/,hbase_docker.sh-- Docker-based local test clusteradhoc_run_tests/-- Scripts for running test suites outside CIintegration-test/-- Integration test support
smart-apply-patch.sh,make_patch.sh-- Patch creation and applicationrebase_all_git_branches.sh-- Rebases all local tracking brancheszombie-detector.sh-- Detects leaked processes from test runsgather_machine_environment.sh-- Captures build machine info for debugginggh_hide_old_comments.sh-- Hides outdated bot comments on GitHub PRs
hbase_eclipse_formatter.xml-- Eclipse code formatter settingseclipse.importorder-- Eclipse import orderingHBase Code Template.xml-- IntelliJ code template
design-docs/ collects design documents and proposals for major features.
These capture the rationale behind complex subsystems and are useful for
understanding why the code is structured the way it is.