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

Consider auto-publishing workflow for every PR #2119

Closed
arboleya opened this issue Apr 19, 2024 · 8 comments
Closed

Consider auto-publishing workflow for every PR #2119

arboleya opened this issue Apr 19, 2024 · 8 comments
Assignees
Labels
chore Issue is a chore

Comments

@arboleya
Copy link
Member

Problem

Currently, we can have auto-publishing tags for the PRs we chose using this flag:

This is manual and error-prone; one must always turn it on and off.

Another problem is that published tags are left behind; the registry is massive.

click to see screenshot

registry

Solution

We should consider cleaning this up and automating this workflow.

One idea is to turn on auto-publishing for every PR automatically.

  • Every PR gets an auto-publishing tag that lasts for its lifetime and auto-updates on each commit
  • After the PR is merged or deleted, all published tags for that PR are deleted from the registry
@arboleya arboleya added the chore Issue is a chore label Apr 19, 2024
@arboleya arboleya changed the title Consider publishing/deleting PRs automatically Consider auto-publishing workflow for every PR Apr 19, 2024
@arboleya arboleya added the p1 label Jun 9, 2024
@arboleya arboleya added this to the 0.x post-launch milestone Jun 12, 2024
@petertonysmith94
Copy link
Contributor

petertonysmith94 commented Jun 26, 2024

We're unable to unpublish our published package versions automatically with ease (less than 72 hours published) due to our package hierarchy (which was tested in #2377).

This could be alleviated if we migrate to using a single fuels package:

Marking as blocked until we are able to unpublish NPM package versions and should be revisited after:

@arboleya
Copy link
Member Author

IIUC and this won't be possible, perhaps we could close this issue.

@petertonysmith94
Copy link
Contributor

IIUC and this won't be possible, perhaps we could close this issue.

I think it might be possible after:

@arboleya
Copy link
Member Author

Considering we can't unpublish versions, I wonder if we should go the simple way and run our installation checks on existent tags, like the next tag (before release) or latest (after release).

@petertonysmith94
Copy link
Contributor

petertonysmith94 commented Jun 28, 2024

Considering we can't unpublish versions, I wonder if we should go the simple way and run our installation checks on existent tags, like the next tag (before release) or latest (after release).

That does seem reasonable - I'd be good if we could test out the functionality before we go into release. Maybe there is a way to test out the functionality locally.

Would we deprecate fuels-ts/.github/workflows/pr-release.yaml?

@arboleya
Copy link
Member Author

I don't think so, or not necessarily.

The ability to publish PRs in isolation is handy.

@petertonysmith94
Copy link
Contributor

I don't think so, or not necessarily.

The ability to publish PRs in isolation is handy.

Wonderful!

IMO - the following workflow doesn't work well:

# comment out if:false to enable release PR to npm
# if: false

I believe a more manual approach, using the workflow_dispatch event might alleviate some of the issues we have. This could do away with the requirement of toggling the # if: false in a commit.

@arboleya
Copy link
Member Author

arboleya commented Jul 1, 2024

I agree, but are we still in the scope of this issue? 🙂

Otherwise, could we close this and perhaps create a new one based on your suggestion?

@arboleya arboleya added p2 and removed p1 labels Jul 19, 2024
@arboleya arboleya self-assigned this Jul 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Issue is a chore
Projects
None yet
Development

No branches or pull requests

2 participants