-
Notifications
You must be signed in to change notification settings - Fork 21
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
Prepare for first release to OpenVSX #191
Conversation
19b79a3
to
ef71cfb
Compare
d514beb
to
d9b823e
Compare
d9b823e
to
d6c793e
Compare
d6c793e
to
23c283b
Compare
3087b38
to
52e07d9
Compare
branches: | ||
- master | ||
paths: | ||
- 'RELEASE' |
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.
Will that run the release already when a pull request is created?
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.
I think it will trigger the action but when it checks the RELEASE file it should immediately exit since there is no "tag" entry in the file yet.
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.
Oops - I answered the wrong question, sorry.
When a new PR is created after this is merged, the action will add the automatically created release notes to the PR, leaving the opportunity to make changes if desired (e.g. by using more detailed options in file RELEASE
). The GitHub release and release tag will only be created upon the/that PR being merged.
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.
More info about how this action works:
https://github.com/pipe-cd/actions-gh-release#actions-gh-release
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 answer!
|
||
For information about building this extension from sources, debugging, etc, please see [Developing.md](https://github.com/eclipse-cdt-cloud/vscode-trace-extension/tree/master/README.md) | ||
|
||
## Using the extension |
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.
For this PR, I think the documentation it sufficient. There other ways to open traces. As a follow-up, we should create a dedicated documentation file that is referenced here. The README in the "sister" Theia trace extension has more details: https://github.com/eclipse-cdt-cloud/theia-trace-extension/tree/master#using-the-trace-extension
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.
I just noticed above a left-over, from a previous version of the PR: the mention of "Developing.md". I will correct this.
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.
I have corrected the leftover above in the latest commit.
dd251be
to
fea8f12
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.
Looks good to me! Thanks for the contribution.
branches: | ||
- master | ||
paths: | ||
- 'RELEASE' |
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 answer!
- Renamed the build workflow to ci-cd and made modifications: - added a publish job, that publishes the .vsix extension to openvsx.org, triggered only when a release tag (v<something>) is pushed to the repo. - merged the build and ui tests jobs. They were redundent, both building the project - removed yarn package caching: practically it helped very little, cutting only ~5% vs the time it takes to install the dependencies without ~(25s vs 26s) in the best case (cache hit). With a cache miss (run with modified yarn.lock), we had a 100+% penalty, if we count the overhead of the cache being saved to GitHub infrastructure. - created a "release" workflow that uses "pipe-cd/actions-gh-release" to to create a release tag and corresponding GitHub release, when a change is detected in root file "RELEASE". - TL;DR: this is how a release is triggered, by adding the tag value reflecting release version, to RELEASE file as part of a PR. The action will add tentative release notes to the PR that can be edited as needed. Upon merging the PR, a release tag will be created in the repo, which will trigger the publish job, that will eventually result in the new version of the extension being deployed to openvsx.org - it looks like the RELEASE file must exist before its first use in a PR, so created one with no active content. - added "doc/Publishing.md" to briefly document how to go about creating new releases / publish new releases to openvsx.org - renamed public-facing name (displayName) of the extension to "Trace Viewer for VSCode", to better reflect its nature - changed public-facing mentions of "vscode" to the canonical "VSCode" - changed extension's publisher, to align with the configuration of the CDT Cloud OpenVSX publisher user: "eclipse-cdt". See: https://www.open-vsx.org/namespace/eclipse-cdt - other misc updates to the extension's package.json: added/massaged important fields (https://www.open-vsx.org/namespace/eclipse-cdt). - kept developer-specific information in repo's root README.md but moved generic information, useful to users of the extension, to extension's README (which becomes the information page for the extension when published or installed). - Added an icon for the extension. Though probably not the best ever, re-used the one from repo "theia-trace-extension" Closes #69 Signed-off-by: Marc Dumais <[email protected]>
Signed-off-by: Marc Dumais <[email protected]>
fea8f12
to
d5083dd
Compare
I just pushed a rebase on master |
Prepare for first release on openvsx.org
Changes
triggered only when a release tag (v) is pushed to the repo.
the project
only ~5% vs the time it takes to install the dependencies without
~(25s vs 26s) in the best case (cache hit). With a cache miss (run with
modified yarn.lock), we had a 100%+ penalty, if we count the overhead
of the cache being saved to GitHub infrastructure ("Post Cache..." job).
create a release tag and corresponding GitHub release, when a change
is detected in root file "RELEASE".
reflecting release version, to RELEASE file as part of a PR. The
action will add tentative release notes to the PR that can be edited
as needed. Upon merging the PR, a release tag will be created in the
repo, which will trigger the publish job, that will eventually result
in the new version of the extension being deployed to openvsx.org
so created one with no active content.
releases / publish new releases to openvsx.org
for VSCode", to better reflect its nature
Cloud OpenVSX publisher user: "eclipse-cdt". See:
https://www.open-vsx.org/namespace/eclipse-cdt
fields
(https://www.open-vsx.org/namespace/eclipse-cdt).
generic information, useful to users of the extension, to extension's
README (which becomes the information page for the extension when published
or installed).
the one from repo "theia-trace-extension"
Notes
./RELEASE
does not yet exist on master. Adding it in this PR will fix this for the future.publisher
to align withopenvsx.org
user foreclipse-cdt-cloud
may cause momentary issues during the transition, e.g. if a user attempts to install the new version (with the new publisher) when the old one (with original publisher) is already installed. The fact that the extension was never published using the old publisher should mitigate these issues for ordinary end-users.vscode-trace-server
is not yet published. It would be ideal to also publish it toopenvsx.org
ASAP. It should be possible to do so very similarly as what was done in this PR.Closes #69