Skip to content

fix(ci): separate required and advisory checks - #791

Merged
imbajin merged 7 commits into
apache:masterfrom
hugegraph:chore/ci-minimal-required-20261006
Oct 7, 2026
Merged

imbajin merged 7 commits into
apache:masterfrom
hugegraph:chore/ci-minimal-required-20261006

Conversation

@imbajin

@imbajin imbajin commented Oct 6, 2026 •

Copy link
Copy Markdown
Member

Separate affected consumer tests from merge requirements so maintainers can decide whether failed or cancelled advisory checks need another run.

Toolchain CI before and after

Before After
Every selected consumer/image feeds a required module gate; CodeQL waits for it. Require only basic license checks. Consumer, image and dependency audits remain advisory; CodeQL starts independently.
Dependency inventory misses root Maven configuration changes; pure documentation can still scan. Audit .mvn/** with the existing Maven context; explicit prose-only changes skip builds and PR scans.
Cancellation and target-branch advancement can block unrelated checks. Isolate license checks, retain real advisory results, and do not reject completed tests solely because master advanced.

Preserve the merged Java 17 SDK/runtime policy, same-run Server fixtures, configured candidate/release compatibility checks and the existing pinned Hadoop Docker path. Only failed required-license push runs automatically retry; PRs and advisory workflows use manual reruns. The SDK, fixtures and images use the same verified ASF master commit after the Java 17/TinkerPop migration. SDK preparation builds only the Server distribution and its dependencies, retaining every required SDK module. Parent POMs are flattened before installation, and Loader prepares HDFS from the pinned Hadoop image with bounded startup and cleanup.

Migration: .asf.yaml requests only check-license-header. Existing module and scan check names remain available; verify live protection removes their old requirements after merge before independently cancelling advisory work.

Validation: policy/provenance tests, a real Java 17 SDK build from the merged ASF source, workflow checks and independent review pass. GitHub integration needs to run on the updated branch. Independent native workflows keep license checks outside advisory cancellation scope.

Does this PR potentially affect the following parts?

  • Dependencies
  • Modify configurations
  • The public API
  • Other affects
  • Nope

Documentation Status

  • Doc - Done: docs/ci.md
  • Doc - TODO
  • Doc - No Need

- keep basic license checks as the merge requirement

- run affected consumers and CodeQL independently

- audit shared Maven inputs without coupling license jobs

- preserve fixture coverage and limit automatic push retries
@codecov

codecov Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 45.91%. Comparing base (b066b80) to head (551e08a).
⚠️ Report is 252 commits behind head on master.

Additional details and impacted files
@@              Coverage Diff              @@
##             master     #791       +/-   ##
=============================================
- Coverage     62.49%   45.91%   -16.59%     
- Complexity     1903     4336     +2433     
=============================================
  Files           262      602      +340     
  Lines          9541    29047    +19506     
  Branches        886     3369     +2483     
=============================================
+ Hits           5963    13336     +7373     
- Misses         3190    14458    +11268     
- Partials        388     1253      +865     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@imbajin
imbajin marked this pull request as ready for review October 6, 2026 11:49
Pengzna
Pengzna previously approved these changes Oct 6, 2026
- preserve the merged Java 17 SDK and runtime policy

- keep dependency audits separate from required license checks

- retain independent scans and input diagnostics

- reconcile CI documentation with the current baseline
- start pinned Hadoop containers instead of downloading archives

- install concrete candidate SDK parent POM versions

- preserve license processing and all Loader profiles

- verify the Maven metadata regression and document preparation
@github-actions github-actions Bot added the client hugegraph-client label Oct 6, 2026
- include the native flatten goal in the bootstrap contract

- preserve isolated repository and provenance assertions

- verify the complete Python and Node planning checks
- use the merged ASF source for SDK, fixtures and images
- build only the Server distribution dependency reactor
- retain SDK provenance and license validation
- update build contracts and migration documentation
- record the JRaft version from the merged ASF SDK
- preserve strict dependency inventory comparison
- keep runtime dependencies and license checks unchanged

@bitflicker64 bitflicker64 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Blocking: yes. Summary: The required/advisory split, the license-only automatic retry and the independent CodeQL plan work as described. Manual and weekly CodeQL runs still fall back to all three languages and the dependency audit. The new Maven regression test for the SDK flatten step never runs in CI, and the rollout note promises an Analyze (java) context that the PR no longer always produces. Evidence: full diff of 9a63a4c against merge-base f8db70e (22 files). Ran python3 -m unittest discover -s .github/scripts -p 'test_*.py' at the head (59 tests OK, 2 skipped, one of them CandidateParentModelTest), then the same test with CANDIDATE_SDK_MAVEN_TEST=mvn (passes, writes to ~/.m2). Called create_plan with schedule/dispatch-style events ({} and a zero before), which gives full coverage, all three scan languages and the dependency audit. Live branches/master protection requires check-license-header and affected-module-tests. All latest-head checks pass except the advisory codecov/project.

Comment thread .github/scripts/test_candidate_sdk.py Resolved
Comment thread docs/ci.md Resolved
- run the Maven regression once for selected Java consumers
- isolate test artifacts and bound cold dependency downloads
- correct the documented Java scan migration behavior
@imbajin
imbajin merged commit bb5763d into apache:master Oct 7, 2026
26 of 27 checks passed
@imbajin
imbajin deleted the chore/ci-minimal-required-20261006 branch October 7, 2026 10:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

client hugegraph-client hubble hugegraph-hubble loader hugegraph-loader

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants