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

feat(workspace): use release-please #954

Merged
merged 5 commits into from
Jan 26, 2023
Merged

feat(workspace): use release-please #954

merged 5 commits into from
Jan 26, 2023

Conversation

olaf-k
Copy link
Contributor

@olaf-k olaf-k commented Jan 13, 2023

(forget #952 this PR also takes care of removing beachball.)

READ ME PLEASE

This PR aims at changing the current Vivid release process (i.e., creating releases and corresponding npm packages) handled with beachball.

It does so by using the release-please action.

Every time PR is pushed on main, this action will be triggered. It will collect all the commits made on main related to /libs/components and update its own release PR (or create it if there is none) with this list and the next version number.

The next version number is determined by the format of commit titles. They must follow the conventional commits rules.

To actually create the release, this release PR must be merged. It will then create the GitHub release, publish the npm package and deploy to Deno.

TODO

  • The action takes care of components only. A new workflow is necessary to deploy on Deno for doc-only updates. Done in feat(workspace): deploy doc to Deno #982
  • The current flow is not optimized. It favors reusing _deploy-deno.yml for readability/maintenance purposes but technically, the Deno deployment could be done in the same step as the npm publication, reusing the same setup.

FIRST "NEW" RELEASE

We'll need to update bootstrap-sha (currently set to an arbitrary value) before the first release. It will determine the commit from which release-please will start to scan for stuff to include in the release.

After the first new release, we'll have to remove release-as. It is currently set to 3.0.0 to avoid starting at 1.0.0.

@yinonov
Copy link
Contributor

yinonov commented Jan 14, 2023

Thanks for a thorough description. it's entirely clear what to review.
Can already clear these:

  1. We're probably ok with the change
  2. We never used CHANGELOG.json but it was probably generated by beachball

@yinonov
Copy link
Contributor

yinonov commented Jan 14, 2023

extracted the lint-pr-title action replacement to #956

@olaf-k
Copy link
Contributor Author

olaf-k commented Jan 15, 2023

  1. We're probably ok with the change

Great! We might want to fine-tune it if we want to replicate the exact checks we have today (e.g., kebab-case?).
Thanks for #956.

  1. We never used CHANGELOG.json but it was probably generated by beachball

Perfect. I'll take care of the two remaining TODOs and we're good to go!

@olaf-k olaf-k marked this pull request as ready for review January 26, 2023 13:05
@codecov
Copy link

codecov bot commented Jan 26, 2023

Codecov Report

Merging #954 (79cdec1) into main (d61b119) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##              main      #954    +/-   ##
==========================================
  Coverage   100.00%   100.00%            
==========================================
  Files          123       213    +90     
  Lines         1562      2364   +802     
  Branches       108       132    +24     
==========================================
+ Hits          1562      2364   +802     
Flag Coverage Δ
unittests 100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
libs/components/src/lib/badge/badge.ts 100.00% <ø> (ø)
libs/components/src/lib/button/button.template.ts 100.00% <ø> (ø)
libs/components/src/lib/fab/fab.template.ts 100.00% <ø> (ø)
libs/components/src/lib/header/header.template.ts 100.00% <ø> (ø)
libs/components/src/lib/layout/layout.ts 100.00% <ø> (ø)
.../src/lib/accordion-item/accordion-item.template.ts 100.00% <100.00%> (ø)
...bs/components/src/lib/accordion-item/definition.ts 100.00% <100.00%> (ø)
libs/components/src/lib/accordion-item/index.ts 100.00% <100.00%> (ø)
libs/components/src/lib/accordion/definition.ts 100.00% <100.00%> (ø)
libs/components/src/lib/accordion/index.ts 100.00% <100.00%> (ø)
... and 168 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@olaf-k olaf-k requested review from yinonov and YonatanKra January 26, 2023 13:22
@yinonov
Copy link
Contributor

yinonov commented Jan 26, 2023

closes #952

yinonov
yinonov previously approved these changes Jan 26, 2023
Copy link
Contributor

@yinonov yinonov left a comment

Choose a reason for hiding this comment

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

responsible pull request 🤝

@olaf-k olaf-k merged commit 646c0dc into main Jan 26, 2023
@olaf-k olaf-k deleted the release-please branch January 26, 2023 18:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants