-
Notifications
You must be signed in to change notification settings - Fork 5
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
Add infrastructure to release/publish as part of CI #22
Conversation
1a164ce
to
be3d9b3
Compare
a3c6b6b
to
5fb2399
Compare
The added infrastructure is similar to what we recently added in the vscode-trace-extension repo. The idea is to automate creating a GitHub release and corresponding git tag, as well as the publishing to vscode extension registries (open-vsx.org to start-with). To achieve that, a new GitHub workflow was created: "release", that uses action "pipe-cd/actions-gh-release" to automatically create a GitHub release containing release notes generated from commits and a git tag. The trigger for that to happen is the modification of root file "RELEASE" to include a new release tag. We also renamed workflow "build" to "ci-cd" and updated it. It now has a publish job, that triggers upon a new release being created, and publishes the extension in "vsix" format to open-vsx.org. To prepare for the first release/publish, we also updated the extension's README, factoring-out the developer-centric information to its own file and keeping a minimal first draft of the README that will be shown to the end-users on the extension registry and in the extensions view. Also updated the extension's package.json to have the necessary fields and information, for a published extension. Once this is merged, if everything works as expected, all that will be needed for a first release will be to update the tag in file RELEASE to the release version and update the extension's version in package.json to the same. See below for some more info about the changes made, that were squashed into this single commit. add release workflow Add initial RELEASE file It's used by action pipe-cd/actions-gh-release . It will also require the initial tag in the git repo, which I will add separately. massage package.json add icon for extension For now reusing the same one as vscode-trace-extension Add format check scripts and run in workflow yarn format:check runs prettier on the sources and makes sure it's presentable README update Split the README into README-dev.md for developers and README.md for users. The later will be included and shown on the extension registry and in the extensions view, when the extension is selected. Signed-off-by: Marc Dumais <[email protected]>
5fb2399
to
f183ad3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the contribution. I've added some comments.
@bhufmann I have pushed a new commit, following your comments above. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One typo is remaining.
Signed-off-by: Marc Dumais <[email protected]>
0f040b0
to
46ebcc9
Compare
@bhufmann the remaining typo should now be corrected. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
Thanks for the review! I will follow-up with a small PR to trigger the first release of this extension. |
The added infrastructure is similar to what we recently added in the vscode-trace-extension repo. The idea is to automate creating a GitHub release and corresponding git tag, as well as the publishing to vscode extension registries (open-vsx.org to start-with).
To achieve that, a new GitHub workflow was created: "release", that uses action "pipe-cd/actions-gh-release" to automatically create a GitHub release containing release notes generated from commits and a git tag. The trigger for that to happen is the modification of root file "RELEASE" to include a new release tag.
We also renamed workflow "build" to "ci-cd" and updated it. It now has a
publish job, that triggers upon a new release being created, and publishes the extension in "vsix" format to open-vsx.org.
To prepare for the first release/publish, we also updated the extension's README factoring-out the developer-centric information to its own file and keeping a minimal first draft of the README that will be shown to the end-users on the extension registry and in the extensions view. Also updated the extension's package.json to have the necessary fields and information, for a published extension.
Note: job "Create or prepare GitHub release / GitHub release" is expected to fail at this time, because it can't yet find file "RELEASE" in the main branch.