Junegunn Choi created HBASE-30455:
-------------------------------------

             Summary: Run website lint in precommit refguide check
                 Key: HBASE-30455
                 URL: https://issues.apache.org/jira/browse/HBASE-30455
             Project: HBase
          Issue Type: Improvement
          Components: build, website
            Reporter: Junegunn Choi
            Assignee: Junegunn Choi


h2. Problem

Precommit does not run {{npm run lint}} (ESLint and {{prettier --check}}) for 
{{hbase-website}}. Formatting errors pass the PR checks and only fail the 
post-merge {{HBase-Generate-Website}} job, which then stops publishing the 
website until someone pushes a fix.

Since July 2026, four commits merged unformatted files and needed three 
follow-up fixes:
- HBASE-30167: fixed by HBASE-30289
- HBASE-30270 and HBASE-30220: fixed by the HBASE-30270 addendum
- HBASE-30416: website builds #159 and #160 failed, fixed by an addendum

The precommit {{refguide}} check builds the site with {{-DskipTests}}. In 
{{hbase-website/pom.xml}}, {{skipTests}} activates the {{skip-tests}} profile, 
which selects the {{ci-skip-tests}} npm script instead of {{ci}}. 
{{ci-skip-tests}} does not include {{lint}}. The website job runs the full 
{{ci}} script, so it is the first place lint runs.

h2. Fix

Add {{npm run lint}} to {{ci-skip-tests}}, after {{fumadocs-init}}, the same 
position as in {{ci}}. Lint is not a test, so {{-DskipTests}} should not skip 
it. It takes about 5 seconds locally.

No change is needed in {{hbase-personality.sh}}: a lint failure makes Maven 
print {{[ERROR]}}, and the {{refguide}} check already votes -1 on that.

Also update {{hbase-website/README.md}}, which describes {{ci-skip-tests}} as 
running without lint.




--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to