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

RFD - Setup jupyter-releaser for jupyterlab extensions #57

Open
krassowski opened this issue Oct 29, 2024 · 1 comment
Open

RFD - Setup jupyter-releaser for jupyterlab extensions #57

krassowski opened this issue Oct 29, 2024 · 1 comment
Labels
type: RFD 🗳 Request for discussions

Comments

@krassowski
Copy link
Member

krassowski commented Oct 29, 2024

Status Draft 🚧 / Open for comments 💬
Author(s) @krassowski
Date Created 2024-10-29
Date Last updated
Decision deadline 2024-11-12

Title

Setup jupyter-releaser for jupyterlab extensions

Summary

User benefit

Every admin and every contributor added to release team would be able to release a new version of jupyterlab extensions developed in nebari with approximately 8 clicks.

Design Proposal

There are two ways to use jupyter-releaser:

  1. from a GitHub action in the target repository (documentation)
  2. from a GitHub action in the fork of the releaser repository (documentation)

I propose to use the (1) approach as this is better for collaboration and needs setting up only once.

There are some workflow assumptions in jupyter-releaser and configuration requirements:

  • jupyter-releaser can publish to PyPI and npm signing the artifacts and for PyPI also uses the trusted publishers mechanism; it also allows to lock down the release environment (e.g. by requiring review from another admin or adding a time delay); this requires creation of a GitHub App on the organization and setting up relevant secrets.
  • jupyter-releaser can auto-generate neat changelog entries; for that each PR needs to be labelled with a set of pre-defined labels:
    • "bug" (for a bug-fix)
    • "enhancement" (improvement to existing functionality)
    • "feature" (new feature)
    • "maintenance"
    • "documentation"

The following repositories would be using the jupyter-releaser workflow:

Alternatives or approaches considered (if any)

  • Continue releasing manually
  • Setup a custom automation, for example with dispatch on publishing a release on GitHub

Best practices

The labels are in conflict with the currently used labels in nebari-dev; we can investigate configure it in jupyter-releaser to support the labels available in nebari-dev.

User impact

None

Unresolved questions

I will need help setting up the GitHub App and ideally access to a vault where I could put secrets to set it all up.

@viniciusdc viniciusdc added the type: RFD 🗳 Request for discussions label Oct 29, 2024
@viniciusdc
Copy link

I support this change

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: RFD 🗳 Request for discussions
Projects
None yet
Development

No branches or pull requests

2 participants