Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cargo dist #2528

Merged
merged 3 commits into from
Jan 30, 2025
Merged

Cargo dist #2528

merged 3 commits into from
Jan 30, 2025

Conversation

jackkleeman
Copy link
Contributor

@jackkleeman jackkleeman commented Jan 22, 2025

Changes:

  • This will upload to the release restate-{cli,server}.target.tar.xz instead of restate.target.tar.gz. The tool doesn't support unifying packages together, we would have to make a new cargo package that contains both binary targets, which I'm not really that sure how to do. We could also just manually merge the two tars if people want this
  • We will do a helm upload after creating a release, previously it was before

The following steps are a bit tricky to test, and we may need to debug on next release:

  • Homebrew release
  • NPM release
  • Docker release
  • Helm release

@jackkleeman jackkleeman force-pushed the cargo-dist branch 30 times, most recently from 6a4b888 to d47feb8 Compare January 23, 2025 11:25
@jackkleeman jackkleeman force-pushed the cargo-dist branch 6 times, most recently from 4e66c8f to 0e0575d Compare January 28, 2025 13:33
Copy link

github-actions bot commented Jan 28, 2025

Test Results

  7 files  ±0    7 suites  ±0   4m 12s ⏱️ -43s
 47 tests ±0   46 ✅ ±0  1 💤 ±0  0 ❌ ±0 
182 runs  ±0  179 ✅ ±0  3 💤 ±0  0 ❌ ±0 

Results for commit a9441e1. ± Comparison against base commit 7fab8f6.

♻️ This comment has been updated with latest results.

Copy link
Contributor

@tillrohrmann tillrohrmann left a comment

Choose a reason for hiding this comment

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

Thanks for changing our release infrastructure to use cargo dist @jackkleeman. Not an expert in dist but from what I can tell, it looks good to me. Would be great if we could try it out before release time to make sure that things are actually working (if there is kind of "dry-run" possible).

@@ -16,6 +19,9 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
app_name:
- restate-cli
- restate-server
Copy link
Contributor

Choose a reason for hiding this comment

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

Should we also include restatectl?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

lets address this separately if we want to

Cargo.toml Outdated Show resolved Hide resolved
.github/workflows/release.yml Show resolved Hide resolved
.github/workflows/release.yml Show resolved Hide resolved
on:
pull_request:
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is it important to run this workflow on pull requests? Running a release workflow on a pull request is on first sight a bit confusing to me.

Copy link
Contributor

Choose a reason for hiding this comment

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

Ah ok, I guess we do it because we want to catch breaking changes to dist in a PR, right? If yes, then maybe let's document this somewhere.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

this is what dist suggests, and given that we will now run ci as part of the 'plan' stage, which is also what runs on prs, this seems sensible to me. i dont feel strongly about it, but it does mean we have effectively one ci workflow, and release is just about it 'going further' than the pr workflow.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

actually, i think i will change this around a bit

Copy link
Contributor Author

Choose a reason for hiding this comment

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

ive moved ci to the 'host' stage, so we should still run it deliberately on pr instead of relying on the plan running on PR. but i think its still good for plan to run on each pr, so we know release.yml is still valid, as they suggest.

.github/workflows/release.yml Show resolved Hide resolved
@AhmedSoliman
Copy link
Contributor

Anything blocking this from being merged? or should I go ahead and merge it?

@jackkleeman jackkleeman merged commit 34005ae into main Jan 30, 2025
25 checks passed
@jackkleeman jackkleeman deleted the cargo-dist branch January 30, 2025 16:32
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.

3 participants