Package Exports
- @camporter/watchman-processor
- @camporter/watchman-processor/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@camporter/watchman-processor) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Watchman-Processor
File synchronizer with a simplistic dashboard for Facebook's watchman file watching service

About
Watchman-Processor can monitor a folder and synchronize file changes to another folder. The other folder could be local or remote. Watchman-Processor is simply the glue between watchman and rsync.
Installation
Install Facebook Watchman
brew update
brew install watchmanInstall watchman-processor
npm install -g @camporter/watchman-processorCreate configuration file
watchman-processor --initSetup configuration file
open ~/.watchman-processor.config.jsConfiguration
The following is an example .watchman-processor.config.js file with comments about the different settings available
var path = require('path');
var HOME_FOLDER = process.env[(process.platform === 'win32') ? 'USERPROFILE' : 'HOME'];
const IGNORE_FOLDERS = ['.git', 'node_modules'];
module.exports = {
debug: false, // changes the output to show debug information, cmd and stdout output
syncDelete: true, // delete extraneous files from destination
emoji: true, // if your terminal window can support emojis
controlWatchman: true, // this will tell watchman-processor to shutdown watchman, when quitting
rsyncCmd: 'rsync', // default: 'rsync' -- override to whatever rsync command is installed or located
subscriptions: {
example1: {
type: 'rsync', // set the subscription to rsync files from a 'source' folder to 'destination' folder
// source folder to sync
source: path.join(HOME_FOLDER, '/tmp/example1/'),
// destination to sync, could be local or server location. Any supported rsync location.
destination: 'user@server:/tmp/example1/',
// relative paths to ignore from watchman and rsync
ignoreFolders: IGNORE_FOLDERS
},
example2: {
type: 'rsync',
source: path.join(HOME_FOLDER, '/tmp/example2/'),
destination: 'user@server:/tmp/example2/',
ignoreFolders: IGNORE_FOLDERS
}
}
};