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

Add infrastructure to release/publish as part of CI #22

Merged
merged 2 commits into from
Feb 8, 2024
Merged

Conversation

marcdumais-work
Copy link
Contributor

@marcdumais-work marcdumais-work commented Feb 5, 2024

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.

@marcdumais-work marcdumais-work force-pushed the publish branch 7 times, most recently from 1a164ce to be3d9b3 Compare February 6, 2024 22:04
@marcdumais-work marcdumais-work changed the title WIP - add infrastructure to release/publish as part of CI Add infrastructure to release/publish as part of CI Feb 6, 2024
@marcdumais-work marcdumais-work marked this pull request as ready for review February 6, 2024 22:06
@marcdumais-work marcdumais-work force-pushed the publish branch 5 times, most recently from a3c6b6b to 5fb2399 Compare February 7, 2024 14:36
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]>
Copy link
Contributor

@bhufmann bhufmann 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 the contribution. I've added some comments.

README-dev.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README-dev.md Outdated Show resolved Hide resolved
@marcdumais-work
Copy link
Contributor Author

@bhufmann I have pushed a new commit, following your comments above.

Copy link
Contributor

@bhufmann bhufmann left a 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.

README-dev.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
Signed-off-by: Marc Dumais <[email protected]>
@marcdumais-work
Copy link
Contributor Author

@bhufmann the remaining typo should now be corrected.

Copy link
Contributor

@bhufmann bhufmann left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

@marcdumais-work
Copy link
Contributor Author

Thanks for the review! I will follow-up with a small PR to trigger the first release of this extension.

@marcdumais-work marcdumais-work merged commit 08e17dc into main Feb 8, 2024
4 of 6 checks passed
@marcdumais-work marcdumais-work deleted the publish branch February 8, 2024 00:44
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