Skip to content

Commit

Permalink
feat(v2): add CLI option for polling (#2630)
Browse files Browse the repository at this point in the history
* Add CLI option to polling

Some environments (specifically docker containers) can have issues with file watching for live reloads. [Webpack Dev Server provides a polling alternative](https://webpack.js.org/configuration/watch/#watchoptionspoll) option for this

* Update docusaurus.js

* Update cli.md

Co-authored-by: Yangshun Tay <[email protected]>
  • Loading branch information
TomBrien and yangshun authored Apr 20, 2020
1 parent 2823d73 commit 852b5e8
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 1 deletion.
1 change: 1 addition & 0 deletions packages/docusaurus-types/src/index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ export interface StartCLIOptions {
host: string;
hotOnly: boolean;
open: boolean;
poll: boolean;
}

export interface BuildCLIOptions {
Expand Down
7 changes: 6 additions & 1 deletion packages/docusaurus/bin/docusaurus.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,12 +85,17 @@ cli
'Do not fallback to page refresh if hot reload fails (default: false)',
)
.option('--no-open', 'Do not open page in the browser (default: false)')
.action((siteDir = '.', {port, host, hotOnly, open}) => {
.option(
'--poll',
'Use polling rather than watching for reload (default: false)',
)
.action((siteDir = '.', {port, host, hotOnly, open, poll}) => {
wrapCommand(start)(path.resolve(siteDir), {
port,
host,
hotOnly,
open,
poll,
});
});

Expand Down
1 change: 1 addition & 0 deletions packages/docusaurus/src/commands/start.ts
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,7 @@ export async function start(
publicPath: baseUrl,
watchOptions: {
ignored: /node_modules/,
poll: cliOptions.poll,
},
historyApiFallback: {
rewrites: [{from: /\/*/, to: baseUrl}],
Expand Down
1 change: 1 addition & 0 deletions website/docs/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ Builds and serves a preview of your site locally with [Webpack Dev Server](https
| `--host` | `localhost` | Specify a host to use. E.g., if you want your server to be accessible externally, you can use `--host 0.0.0.0` |
| `--hot-only` | `false` | Enables Hot Module Replacement without page refresh as fallback in case of build failures. More information [here](https://webpack.js.org/configuration/dev-server/#devserverhotonly). |
| `--no-open` | `false` | Do not open automatically the page in the browser. |
| `--poll` | `false` | Use polling of files rather than watching for live reload as a fallback in environments where watching doesn't work. More information [here](https://webpack.js.org/configuration/watch/#watchoptionspoll). |

:::important

Expand Down

0 comments on commit 852b5e8

Please sign in to comment.