[XELP] Publish releases to GitHub Packages - #3
Merged
Conversation
Replace the git tag and xelp/dist shadow release with a workflow that publishes to GitHub Packages as @plexinc/<name>, matching how the other Plex client repos consume private packages. Authentication is the workflow GITHUB_TOKEN, so the repository stores no publishing secret, and the package name is rewritten in CI rather than on xelp/main, leaving upstream merges unaffected. The lint and test suites previously ran as a side effect of npm version, which triggers preversion. Setting the version with npm pkg set skips lifecycle scripts, so they now run as their own steps. Consumers keep the upstream package name by installing through an npm alias, so imports, bin names and plugin references do not change.
Both workflows compute the same MAJOR.MINOR.<date><PATCH> version and so want the same tag, and the shadow release force pushes it, so running the two against one commit means one clobbers the other. Park the shadow release rather than delete it, matching the .disabled convention already used in this family of repos, so restoring it is a rename. roku-client is the only consumer of this fork, and it keeps installing from the existing git tag until it moves to the @plexinc package, so nothing depends on this workflow staying runnable in the meantime.
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds a manual GitHub Actions workflow to build and publish the xelp/main package to GitHub Packages under the @plexinc scope, then tag and create a GitHub Release (with an optional dry-run mode).
Changes:
- Introduces a new release workflow with
workflow_dispatchanddryRuninput. - Computes a date-stamped version, rewrites package metadata for
@plexinc, and publishes to GitHub Packages. - Tags the commit and creates a GitHub Release with install notes.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
xelp_npm_release.yml, which buildsxelp/mainand publishes it to GitHub Packagesas
@plexinc/brighterscript, replacing thexelp/distgit tag release. It authenticateswith the built in
GITHUB_TOKEN, so there is no publishing secret to store in this repo.xelp_shadow_release.ymlis renamed to.disabledrather than deleted, since bothworkflows derive the same version and would fight over the same tag. Restoring it is a
rename, and it is a separate commit so it can be reverted on its own.
A
workflow_dispatchworkflow is only dispatchable from the default branch, so the firstrun happens after this merges. Run it with
dryRun: truefirst, which builds, lints, testsand packs without publishing.