-
Notifications
You must be signed in to change notification settings - Fork 19
Improve the release script #2419
Copy link
Copy link
Open
Labels
AcceptedA feature request or issue is accepted and will be implementedA feature request or issue is accepted and will be implementedFeature-request
Description
Currently, npm run release runs into a number of stumbling blocks, as follows:
- Commands
lernaandcross-envapparently need to be globally installed to be found by the script. This should not be necessary, and currently leads to silent failure of the release process. - As it stands, it is not possible to enter the required 6-digit OTP token to satisfy npm two-factor authentication in the
lerna publishsub-step. - Releasing is restricted to the release branch, but no upfront check to determine such branch exists both locally and remotely is performed, with informative error messages on what to do and why this restriction is in-place.
- In case a release is botched for whatever reason, a subsequent attempt may fail due to the git tags issued by the
lerna versionsub-step already existing. The release script should force these git tags even if they exist, to facilitate robust re-releasing in the face of failures. - The use of
prepublishOnlyandpostpublishscripts in each Pattern-Library component's package.json is very brittle and has repeatedly led to failure, because these scripts edit the package.json file on disk but are not done transactionally, i.e. it is not the case that either both or none of these scripts are guaranteed to be executed. A better release process must not edit package.jsons.
Make the release script robust by removing the above stumbling blocks.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
AcceptedA feature request or issue is accepted and will be implementedA feature request or issue is accepted and will be implementedFeature-request