react/scripts/release/build-commands/print-post-build-summary.js
Brian Vaughn c371c152ab Release script (#11223)
* First chunk of new release script

* Re-ordered build steps to combine error codes and releases

* Reorganized build files; added stub publish script

* First pass at publis script. Also collect and print dry-run commits/publish commands.

* Deleted old react-release-manager scripts

* Cleaned up release package.json

* Basic README instructions

* Removed unnecessary 'async' keyword from a method

* Wordsmithing

* Tweaked README

* Renamed build -> build-commands and publish -> publish-commands to avoid conflict with .gitignore

* Bump pre-release package versions differently

* Prettier

* Improved CircleCI API token setup instructions message

* Lint fix

* Typofix
2017-10-16 15:01:14 -07:00

45 lines
1.5 KiB
JavaScript

#!/usr/bin/env node
'use strict';
const chalk = require('chalk');
const {getUnexecutedCommands} = require('../utils');
const CHANGELOG_PATH =
'https://github.com/facebook/react/edit/master/CHANGELOG.md';
module.exports = params => {
const command =
`./publish.js -v ${params.version}` +
(params.path ? ` -p ${params.path}` : '') +
(params.dry ? ' --dry' : '');
console.log(
chalk`
{green.bold Build successful!}
${getUnexecutedCommands()}
Next there are a couple of manual steps:
{bold.underline Step 1: Update the CHANGELOG}
Here are a few things to keep in mind:
• The changes should be easy to understand. (Friendly one-liners are better than PR titles.)
• Make sure all contributors are credited.
• Verify that the markup is valid by previewing it in the editor: {blue.bold ${CHANGELOG_PATH}}
{bold.underline Step 2: Smoke test the packages}
1. Open {yellow.bold fixtures/packaging/babel-standalone/dev.html} in the browser.
2. It should say {italic "Hello world!"}
3. Next go to {yellow.bold fixtures/packaging} and run {bold node build-all.js}
4. Install the "serve" module ({bold npm install -g serve})
5. Go to the repo root and {bold serve -s .}
6. Open {blue.bold http://localhost:5000/fixtures/packaging}
7. Verify every iframe shows {italic "Hello world!"}
After completing the above steps, resume the release process by running:
{yellow.bold ${command}}
`.replace(/\n +/g, '\n')
);
};