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: Implement CD "release" #255

Merged
merged 6 commits into from
Apr 18, 2024
Merged

feat: Implement CD "release" #255

merged 6 commits into from
Apr 18, 2024

Conversation

wakamsha
Copy link
Contributor

@wakamsha wakamsha commented Apr 15, 2024

Summary

Implemented the CD that automatically does the following:

  • Determination of version number according to SemVer2
  • Publishing to npm
  • Updated CHANGELOG and "Release" information

Details

Implemented the CD to automate release workflow using semantic-release.

Until now, we built a release workflow using release-it, but we decided to replace it for the following reasons:

  • semantic-release automatically determines and select the next version number.
  • semantic-release supports "Squash Merge" strategy.

Also, since semantic-release requires Node.js v20 or above from v23.0, the version of Node.js used in this project was set to v20 or above.

ref: Release v23.0.0 · semantic-release/semantic-release

References

@wakamsha wakamsha self-assigned this Apr 15, 2024
@wakamsha wakamsha marked this pull request as ready for review April 17, 2024 09:53
Copy link
Contributor

@tongari07 tongari07 left a comment

Choose a reason for hiding this comment

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

I have made two comments, please check them!

@wakamsha wakamsha requested a review from taigakiyokawa April 18, 2024 06:00
@@ -25,7 +25,7 @@ jobs:
run: npm install

- name: Release
run: npx semantic-release
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Since the npx command always installs the latest version, I modified it to use the module listed in package.json.

Copy link
Member

@taigakiyokawa taigakiyokawa left a comment

Choose a reason for hiding this comment

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

LGTM 🙆‍♂️

Copy link
Contributor

@tongari07 tongari07 left a comment

Choose a reason for hiding this comment

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

LGTM 👍

@wakamsha wakamsha merged commit 66734d1 into main Apr 18, 2024
7 checks passed
@wakamsha wakamsha deleted the implement-cd branch April 18, 2024 08:43
github-actions bot pushed a commit that referenced this pull request Apr 18, 2024
# [3.0.0](2.0.0...3.0.0) (2024-04-18)

### Bug Fixes

* Allow to omit importing some functions for test files written in TypeScript ([#250](#250)) ([7da21e3](7da21e3))

### Features

* Implement CD "release" ([#255](#255)) ([66734d1](66734d1))
* Implement config "node" ([#244](#244)) ([170e699](170e699))
* Implement config "react" ([#240](#240)) ([a8908d6](a8908d6))
* Implement config `jsdoc` ([#238](#238)) ([24cdd78](24cdd78))
* Implement the rule "best-practices" ([#210](#210)) ([701a0e6](701a0e6))
* Implement the rule "errors" ([#211](#211)) ([907c92a](907c92a))
* Implement the rule "es6" ([#212](#212)) ([31e3000](31e3000))
* Implement the rule "imports" ([#213](#213)) ([b09c196](b09c196))
* Implement the rule "react-hooks" ([#226](#226)) ([d1e574d](d1e574d))
* Implement the rule "style" ([#216](#216)) ([6d2261d](6d2261d))
* Implement the rule "variables" ([#222](#222)) ([e91e5d2](e91e5d2))
* Implement v3 config "essentials" ([#237](#237)) ([af7c775](af7c775))
* Implement v3 config "next" ([#243](#243)) ([00fdb4d](00fdb4d))
* Implement v3 config "storybook" ([#241](#241)) ([bca4534](bca4534))
* Implement v3 config "test/react" ([#239](#239)) ([e488f4a](e488f4a))
* Implement v3 config "typescript" ([#242](#242)) ([eb3d1e4](eb3d1e4))
* Implement v3 rule "jesdoc" ([#234](#234)) ([b407ee3](b407ee3))
* Implement v3 rule "jest-dom" ([#231](#231)) ([e0891ed](e0891ed))
* Implement v3 rule "jest" ([#228](#228)) ([d544fa0](d544fa0))
* Implement v3 rule "next" ([#227](#227)) ([b1662ad](b1662ad))
* Implement v3 rule "node" ([#215](#215)) ([91bcb4c](91bcb4c))
* Implement v3 rule "promise" ([#223](#223)) ([b79e339](b79e339))
* Implement v3 rule "testing-library" ([#232](#232)) ([6afbe8f](6afbe8f))
* Implement v3 rule "typescript" ([#236](#236)) ([6d42dc6](6d42dc6))
* Implement v3 rule `jsx-a11y` ([#224](#224)) ([7fe1bd4](7fe1bd4))
* Implement v3 rule `react` ([#225](#225)) ([fe33aa2](fe33aa2))
* Implement v3 rule storybook ([#233](#233)) ([d879dc5](d879dc5))

### BREAKING CHANGES

* * Linter rules have been significantly added and are now more strict.

* The way `eslintrc` is configured has been changed.
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.

4 participants