Skip to content

Zip and attach the Quickstart sample to GitHub releases - #19

Merged
brionmario merged 1 commit into
thunder-id:mainfrom
brionmario:quickstart-zip-release
Aug 13, 2026
Merged

Zip and attach the Quickstart sample to GitHub releases#19
brionmario merged 1 commit into
thunder-id:mainfrom
brionmario:quickstart-zip-release

Conversation

@brionmario

@brionmario brionmario commented Aug 12, 2026

Copy link
Copy Markdown
Member

Purpose

Publish the Quickstart sample as a standalone, downloadable zip on each GitHub release, so it can be grabbed without cloning the whole SDK monorepo.

Approach

Adds a package-quickstart job to release.yml that runs after release succeeds:

  • Checks out the newly created tag and extracts samples/quickstart via git archive.
  • Rewrites pubspec.yaml's thunderid_flutter: path: ../.. to thunderid_flutter: ^<version> so the zipped copy resolves the SDK from pub.dev instead of a relative path into the monorepo.
  • Zips the result and uploads it to the release via gh release upload.

Related Issues

  • N/A

Related PRs

  • N/A

Checklist

  • Followed the contribution guidelines.
  • Manual test round performed and verified.
  • Documentation provided. (Add links if there are any)
  • Tests provided. (Add links if there are any)
    • Unit Tests
    • Integration Tests
  • Breaking changes. (Fill if applicable)
    • Breaking changes section filled.
    • breaking change label added.

Security checks

  • Followed secure coding standards.
  • Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets.

Summary by CodeRabbit

  • New Features
    • Release packages now include a downloadable Quickstart sample.
    • The sample is automatically configured to use the released SDK version.
    • Quickstart archives are attached directly to each GitHub release for easier setup.
    • The packaged sample is prepared consistently from the corresponding release, helping ensure it is ready to download and use with the matching SDK version.

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 656b9f88-9308-408f-94d9-f8b8cae1edf6

📥 Commits

Reviewing files that changed from the base of the PR and between 4a23ee3 and b17021d.

📒 Files selected for processing (1)
  • .github/workflows/release.yml
🚧 Files skipped from review as they are similar to previous changes (1)
  • .github/workflows/release.yml

📝 Walkthrough

Walkthrough

The release workflow now exposes the bumped version and adds a dependent job that packages the tagged Quickstart sample with the released SDK version and uploads the ZIP archive to the GitHub release.

Changes

Quickstart release packaging

Layer / File(s) Summary
Expose release version
.github/workflows/release.yml
The release job publishes the version generated by the bump step as a job output.
Package and upload Quickstart
.github/workflows/release.yml
The package-quickstart job checks out the release tag, updates the SDK dependency, rejects symbolic links, creates a versioned ZIP archive, and uploads it to the GitHub release.

Estimated code review effort: 3 (Moderate) | ~15–30 minutes

Mergeability Score: ⚪ Minimal · up to b1702

This PR adds release packaging for the Quickstart sample without any identified merge-blocking risk; it is merge-ready after normal checks and review.

Sequence Diagram(s)

sequenceDiagram
  participant Release as release job
  participant Package as package-quickstart job
  participant GitHub as GitHub release
  Release->>Package: Pass bumped version
  Package->>Package: Check out release tag
  Package->>Package: Update SDK dependency
  Package->>Package: Reject symbolic links
  Package->>GitHub: Upload versioned ZIP archive
Loading

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description check ✅ Passed The description follows the repository template and clearly explains the purpose, approach, related items, checklist status, and security checks.
Title check ✅ Passed The title clearly and concisely describes the main change: attaching the Quickstart ZIP archive to GitHub releases.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Adds a package-quickstart job to the release workflow that extracts
samples/quickstart from the tagged commit, repoints its pubspec.yaml
path dependency from the local monorepo source to the published
version on pub.dev, zips it, and uploads it as a release asset.

The tag checkout sets persist-credentials: false and the job rejects
any symlinks in the extracted sample before zipping it, to prevent
credential exfiltration through the release archive.

Signed-off-by: Brion <info@brionmario.com>
@brionmario
brionmario force-pushed the quickstart-zip-release branch from b17021d to 6cc24a6 Compare August 13, 2026 06:24
@brionmario
brionmario merged commit 99e1c6d into thunder-id:main Aug 13, 2026
7 checks passed
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