Files
weave-scope/client
Mike Lang 02a2dd9d7a Fix ownership issues with client/build-external
When the directory is created during the build process, it is as root.

This prevents us deleting root-owned files inside the directory during make clean.

In client/build/, we get around this because the directory contains a tracked file,
so it's created during git checkout.
We make this the case for build-external by adding a hidden, empty file to track.
This won't fix existing checkouts though, so we also add a fix-up step to make clean.

The use of .gitignore as the empty file to track is taken from
	https://git.wiki.kernel.org/index.php/GitFaq#Can_I_add_empty_directories.3F
Specifically:
	"If you really need a directory to exist in checkouts you should create a file in it.
	.gitignore works well for this purpose"
2017-01-27 14:57:02 -08:00
..
2017-01-27 08:13:17 -08:00
2016-04-20 12:33:22 +02:00
2017-01-18 11:51:41 +01:00
2017-01-24 11:25:02 -08:00
2017-01-24 13:36:39 -08:00
2017-01-24 13:36:39 -08:00
2017-01-24 17:41:41 -08:00
2016-09-28 13:04:55 -07:00

Scope UI

Getting Started (using local node)

  • You need nodejs 4.2.2 and a running weavescope container
  • Setup: npm install
  • Develop: BACKEND_HOST=<dockerhost-ip> npm start and then open http://localhost:4042/

This will start a webpack-dev-server that serves the UI and proxies API requests to the container.

Getting Started (using node in a container)

  • You need a running weavescope container
  • Develop: make WEBPACK_SERVER_HOST=<dockerhost-ip> client-start and then open http://<dockerhost-ip>:4042/

This will start a webpack-dev-server that serves the UI from the UI build container and proxies API requests to the weavescope container.

Test Production Bundles Locally

  • Build: npm run build, output will be in build/
  • Serve files from build/: BACKEND_HOST=<dockerhost-ip> npm run start-production and then open http://localhost:4042/

Coding

This directory has a .eslintrc, make sure your editor supports linter hints. To run a linter, you also run npm run lint.

Logging

To enable logging in the console, activate it via localStorage in the dev tools console:

localStorage["debug"] = "scope:*"

The Scope UI uses debug for logging, e.g.,:

const debug = require('debug')('scope:app-store');
debug('Store log message');

Gotchas

Got a blank screen when loading http://localhost:4042?

Make sure you are accessing the right machine: If you're running npm start on a virtual machine with IP 10.0.0.8, you need to point your browser to http://10.0.0.8:4042. Also, you may need to manually configure the virtual machine to expose ports 4041 (webpack-dev-server) and 4042 (express proxy).