microsoft / rushstack

Monorepo for tools developed by the Rush Stack community
https://rushstack.io/
Other
5.84k stars 594 forks source link

[rush] Why rush changes works only to should publish projects? #4223

Open StefanoPastore opened 1 year ago

StefanoPastore commented 1 year ago

Summary

I have some project that are published on NPM registry but i have also some API services that i will deploy on kubernetes when they change. I would like to generate changelog and bump version also to projects that are not published on NPM registry. Is there something that i'm missing?

Details

$ rush change should apply also to projects that are not NPM packages, maybe we could assume that changes should refer all projects that are deployed or adding an explicit shouldDeploy instead of shouldChange for these kind of projects, in this way i'll have version bumped and changelog also for services.

Standard questions

Please answer these questions to help us investigate your issue more quickly:

Question Answer
@microsoft/rush globally installed version? 5.100.1
rushVersion from rush.json? 5.100.1
useWorkspaces from rush.json? Is not defined, it is true in common/config/rush/pnpm-config.json
Operating system? MacOS Ventura 13.4.1
Would you consider contributing a PR? I don't know
Node.js version (node -v)? v18.16.1
gomain commented 1 year ago

I ended up making version policies "noPublish" and "doPublish" such that all projects have a version policy (to take advantage of rush change) then use the --version-policy doPublish --publish when rush publish to narrow the published packages.

I believe the bump/publish/deploy features are being revamped #3934.

StefanoPastore commented 1 year ago

Thank you @gomain I'll use the same approach in the meantime.

iclanton commented 1 year ago

Versioning was originally only designed around publishing to a package feed, however, @elliot-nelson is spearheading a redesign of publishing. Would you mention this functionality in that issue (https://github.com/microsoft/rushstack/issues/3934)?