Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 113 lines (66 sloc) 3.79 kB
eab59d8 @liangzan updated the readme
authored
1 # Forewoman
2
e463724 @liangzan forgot to add to readme on the directory option
authored
3 Forewoman is a Node.js port of [foreman](https://github.com/ddollar/foreman), with the added feature of hot code reloading. Credits to [node-supervisor](https://github.com/isaacs/node-supervisor) for inspiring the hot code reloading implementation.
eab59d8 @liangzan updated the readme
authored
4
5 Forewoman is extracted from the code base of [Notifymode](http://notifymode.com)
6
7 ## Caveats
8
9 Forewoman should work on Linux, Mac OS and other variants of Unix. Windows is not supported.
10
11 ## Installation
12
13 You can install locally
14
15 npm install forewoman
16
17 or globally
18
19 npm install -g forewoman
20
21 If you choose to install locally, you have to invoke the full path to the __forewoman__ command.
22
23 ./node_modules/forewoman/bin/forewoman
24
25 If it is a global install, __forewoman__ should be available from your PATH.
26
ca70781 @liangzan added a section on the compatibility changes
authored
27 ## Versions compatibility
28
29 Use v0.2.x for Node v0.6.x. Use the latest for Node v0.8.x.
30
eab59d8 @liangzan updated the readme
authored
31 ## Usage
32
db78e6b @liangzan updated the readme with the export documentation
authored
33 ### SYNOPSIS for start
eab59d8 @liangzan updated the readme
authored
34
35 forewoman start [OPTION]
36
37 forewoman start is used to run your application directly from the command line.
38
d1a546e @liangzan procfile documentation
authored
39 If no additional parameters are passed, forewoman will run one instance of each type of process defined in your __Procfile__. The format of a __Procfile__ is explained [here](http://blog.daviddollar.org/2011/05/06/introducing-foreman.html)
eab59d8 @liangzan updated the readme
authored
40
41 If a parameter is passed, forewoman will run one instance of the specified application type.
42
43 The following options control how the application is run:
44
45 ### Options
46
47 #### -c, --concurrency
48 Specify the number of each process type to run. The value passed in should be in the format process=num,process=num
49
50 #### -e, --env
51 Specify one or more .env files to load
52
e463724 @liangzan forgot to add to readme on the directory option
authored
53 #### -d, --directory
54 Specify an alternate application root. This defaults to the directory containing the Procfile.
55
eab59d8 @liangzan updated the readme
authored
56 #### -f, --procfile
57 Specify an alternate Procfile to load, implies -d at the Procfile root.
58
59 #### -p, --port
60 Specify which port to use as the base for this application. Should be a multiple of 1000.
61
62 #### -w, --watch
63 Specify the files to watch. If the files are modified, forewoman will restart the process. The value passed in should be in the format process=/path/to/file,process=/path/to/file
64
db78e6b @liangzan updated the readme with the export documentation
authored
65 ### SYNOPSIS for export
66
f458cfe @liangzan added the documentation for supervisord
authored
67 forewoman export <format> <location> [OPTION]
db78e6b @liangzan updated the readme with the export documentation
authored
68
69 forewoman export is used to export your application to another process management format
70
f458cfe @liangzan added the documentation for supervisord
authored
71 An location to export must be passed as an argument.
db78e6b @liangzan updated the readme with the export documentation
authored
72
73 ### Formats
74
f458cfe @liangzan added the documentation for supervisord
authored
75 - runit
76 - upstart
77 - inittab
78 - supervisord
db78e6b @liangzan updated the readme with the export documentation
authored
79 - monit (coming)
80
81 ### Options
82
83 #### -a, --app
84 Use this name rather than the application\'s root directory name as the name of the application when exporting.
85
86 #### -c, --concurrency
87 Specify the number of each process type to run. The value passed in should be in the format process=num,process=num
88
89 #### -l, --log
90 Specify the directory to place process logs in.
91
92 #### -p, --port
93 Specify which port to use as the base for this application. Should be a multiple of 1000.
94
95 #### -u, --user
96 Specify the user the application should be run as. Defaults to the app name
97
98 #### -t, --template
99 Specify an alternate template to use for creating export files. Read the templates directory for examples. Specify your option by template_name=/path/to/template. Eg. runit's log_run.mustache can be replaced by "log_run=/path/to/alt.mustache" The templates should be a [Mustache](https://github.com/janl/mustache.js/) template
100
101 #### -d, --directory
102 Specify an alternate application root. This defaults to the directory containing the Procfile.
103
104 #### -e, --env
105 Specify an alternate environment file. You can specify more than one file by using: --env file1,file2.
106
107 #### -f, --procfile
108 Specify an alternate location for the application's Procfile. This file's containing directory will be assumed to be the root directory of the application.
109
eab59d8 @liangzan updated the readme
authored
110 ## License
111
112 Copyright (c) 2012 Wong Liang Zan. MIT License
Something went wrong with that request. Please try again.