TSC icon indicating copy to clipboard operation
TSC copied to clipboard

Add Windows and MacOS machines to nodejs-private GA

Open RafaelGSS opened this issue 1 year ago • 13 comments

Hi folks,

I'm wondering if we could add Windows and MacOS machines to GA for nodejs-private. It's currently hard to identify some errors in a short time because we can only run CI after its lock down. IIRC we have removed macOS from GA because we were exceeding GA the limit very often. But, what about adding actions and running the CI only when a specific label is added?

This would prevent a lot of stress by the releaser when doing security releases. No need to rush things.

Feel free to move it to a different repository if this is not the best place to discuss it.

cc: @nodejs/tsc @nodejs/security-release for awarness

RafaelGSS avatar Jan 20 '25 17:01 RafaelGSS

FWIW Build WG has nothing to do with use of GitHub Actions. The GitHub Actions limits on the private repo are a matter for the TSC, who own the Enterprise account for the Node.js orgs (public and private).

Note that we don't run tests on Windows in GHA on https://github.com/nodejs/node -- see https://github.com/nodejs/node/pull/50519 for the last (failed) attempt to get the tests passing in GitHub Actions on Windows.

richardlau avatar Jan 20 '25 17:01 richardlau

Feel free to move it to a different repository if this is not the best place to discuss it.

I'm not sure where the best place to move this for further discussion would be.

richardlau avatar Jan 20 '25 17:01 richardlau

Feel free to move it to a different repository if this is not the best place to discuss it.

I'm not sure where the best place to move this for further discussion would be.

I'll try TSC.

richardlau avatar Jan 20 '25 17:01 richardlau

Right, for windows, we have a limitation, I could investigate a bit further and see if I can get this done. What about OSX, have we tried to include them via GA? Is it even supported by GA?

RafaelGSS avatar Jan 20 '25 19:01 RafaelGSS

macOS has been running in https://github.com/nodejs/node/actions/workflows/test-macos.yml.

richardlau avatar Jan 20 '25 20:01 richardlau

I remember we disabled it on nodejs-private because we were exceeding the quota of a private project. I'll make a PR to bring it back but behind a label, that should reduce the costs.

RafaelGSS avatar Jan 20 '25 20:01 RafaelGSS

The workflows can be enabled/disabled with a few clicks (for example here for macOS: https://github.com/nodejs-private/node-private/actions/workflows/test-macos.yml). I think it would be overkill to create a labeling system specific to the private org when we can already manage it like that. BTW I disabled the test-asan workflow, which takes more than 2h30m every time it runs.

Also I think that we have more private actions minutes than before since we were moved to the enterprise account.

targos avatar Jan 21 '25 09:01 targos

Also remember that we already have a simple way to skip workflows while the PR is not ready: Put the PR in draft state. If you want to quickly run workflows once: Undraft and redraft.

targos avatar Jan 21 '25 09:01 targos

Also remember that we already have a simple way to skip workflows while the PR is not ready: Put the PR in draft state. If you want to quickly run workflows once: Undraft and redraft.

I think draft PRs aren't enabled in private repos. At least I couldn't find how to transform a PR into a Draft there.

RafaelGSS avatar Jan 21 '25 12:01 RafaelGSS

It's in the top-right of the PR interface:

Image

targos avatar Jan 21 '25 12:01 targos

Oh nice. I'll work on Windows support then.

RafaelGSS avatar Jan 21 '25 19:01 RafaelGSS

@RafaelGSS it sounds like you go the answer you needed. Does this still need to be open?

mhdawson avatar Mar 04 '25 22:03 mhdawson

I was planning to leave it open until we enable Windows test suite on GitHub CI. But, I tried locally and the current situation is slightly difficult than I thought and I'm unsure if I'll have bandwidth to pursue this task.

RafaelGSS avatar Mar 05 '25 19:03 RafaelGSS