Skip to content

docs(readme): add sparse-clone instructions for contributors - #79

Merged
miacycle merged 1 commit into
masterfrom
docs/sparse-clone-instructions
Aug 1, 2026
Merged

miacycle merged 1 commit into
masterfrom
docs/sparse-clone-instructions

Conversation

@miacycle

@miacycle miacycle commented Aug 1, 2026 •

Copy link
Copy Markdown
Member

Description

This repo is the QA dashboard's data store: it aggregates Allure test results from across the Meshery ecosystem. Every CI run commits fresh raw results and regenerated per-PR reports, so a full clone is tens of gigabytes and grows continuously - yet almost none of that data is needed to work on the dashboard itself (build scripts, styling, report configuration).

This PR documents a sparse-clone workflow so contributors can clone lean while keeping full commit history and everything required to build the report.

What's added to the README

A new "Cloning this repository (use a sparse clone)" section covering:

  • Why the repo is so large, and a table of the generated directories that are safe to exclude (meshery-results, meshery-server-results, mesheryctl-results, kanvas-results, remote-provider-results, pr-reports).
  • Recommended recipe: blobless partial clone (--filter=blob:none) + git sparse-checkout excluding those directories. sparse-checkout alone would still download the full multi-GB pack; the blob filter is what actually skips the excluded content.
  • Converting an existing full clone to sparse.
  • Re-including an excluded directory on demand (git sparse-checkout add) or restoring the full tree (git sparse-checkout disable).

Measured impact

Full clone Sparse clone (this workflow)
On-disk footprint ~48 GB ~245 MB
Commit history / git log / blame full full
Generated result & report dirs present excluded (fetched on demand if ever needed)

Docs-only change; no functional impact on the dashboard or its build.

Notes for reviewers

  • Requires Git 2.25+ (git sparse-checkout); 2.27+ recommended for partial-clone support - noted inline.
  • The documented command block was validated against a live clone before submitting.

Summary by CodeRabbit

  • Documentation
    • Added guidance for efficiently cloning the QA repository.
    • Documented generated test-result and report directories to exclude.
    • Explained how to update sparse-checkout settings and restore the full working tree.

The qa repo aggregates Allure test results across the Meshery ecosystem;
every CI run commits fresh results and regenerated per-PR reports, so a
full clone is tens of GB and grows continuously. Document a blobless
partial clone + sparse-checkout workflow that excludes the generated
test-result and report directories (meshery-results, meshery-server-results,
mesheryctl-results, kanvas-results, remote-provider-results, pr-reports)
while keeping full history and everything needed to build the dashboard.

Includes recipes for a fresh sparse clone, converting an existing full
clone, and re-including excluded directories on demand.

Signed-off-by: Mia Grenell <184569369+miacycle@users.noreply.github.com>
Copilot AI review requested due to automatic review settings August 1, 2026 21:41

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds contributor documentation for cloning this repo using a sparse + partial clone workflow to avoid downloading large generated test result/report directories while retaining full history.

Changes:

  • Documented which generated directories are safe to exclude from a working tree.
  • Added a recommended blobless partial clone + git sparse-checkout recipe.
  • Added instructions for converting an existing clone and re-including excluded directories.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread README.md
Comment on lines +97 to +104
| Directory | Contents |
| --- | --- |
| `meshery-results/` | Raw Allure results for Meshery integration tests |
| `meshery-server-results/` | Raw Allure results for Meshery Server Go unit tests |
| `mesheryctl-results/` | Raw Allure results for `mesheryctl` tests |
| `kanvas-results/` | Raw Allure results for Kanvas (extension) |
| `remote-provider-results/` | Raw Allure results for the Remote Provider (extension) |
| `pr-reports/` | Generated per-PR HTML reports (the largest contributor to repo size) |
Comment thread README.md
'!/pr-reports/'

# 3. Populate the working tree
git checkout master
@miacycle
miacycle merged commit 852cbc6 into master Aug 1, 2026
3 of 4 checks passed
@miacycle
miacycle deleted the docs/sparse-clone-instructions branch August 1, 2026 21:42
@coderabbitai

coderabbitai Bot commented Aug 1, 2026 •

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 9e6b9c8d-2d0f-4af1-a2dc-c8c2d5eb6910

📥 Commits

Reviewing files that changed from the base of the PR and between 8807c14 and 9f7eb2b.

📒 Files selected for processing (1)
  • README.md

📝 Walkthrough

Walkthrough

Changes

QA repository clone guidance

Layer / File(s) Summary
Sparse clone instructions
README.md
Documents blobless sparse cloning, generated directories to exclude, sparse-checkout setup for existing clones, selective directory restoration, full working-tree restoration, and Git version requirements.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Suggested reviewers: copilot

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/sparse-clone-instructions

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants