76 Commits

Author SHA1 Message Date
David Dollar
e053dc8434 cleanup 2012-01-29 13:58:16 -05:00
David Dollar
557a08ea77 add utf8 test to engine 2012-01-29 13:56:51 -05:00
David Dollar
8eccc819d6 remove nonfunctional utf8 test 2012-01-29 13:56:42 -05:00
David Dollar
1da034ce66 try to add failing test for utf8 2012-01-29 10:03:31 -05:00
David Dollar
5fc7552572 refactor resource_file 2012-01-29 10:03:14 -05:00
David Dollar
083efe3ae9 sleep longer after loading scripts 2012-01-29 10:03:03 -05:00
David Dollar
224fe94dc2 add more tests 2012-01-28 18:48:26 -05:00
Chris Lowder
1b701cddf3 Simplify subclassing by adding all arguments to the initializer. Also, clean up the method signatures for existing exporters. 2012-01-24 15:10:18 +00:00
Chris Lowder
84c49ae2b8 Attempt to require the custom export class. 2012-01-24 14:36:38 +00:00
Chris Lowder
bc1c5e4c74 Extract commonality into the base class, make life easy for our plugin writers. 2012-01-24 14:36:38 +00:00
David Dollar
7ee2edcc60 Merge pull request #136 from fnichol/foreman
---

Simple enough, but this helps when re-exporting runit services. Cheers, and thanks!

Conflicts:
	spec/foreman/export/runit_spec.rb
2012-01-22 21:46:57 -05:00
David Dollar
724812d6e3 fix up specs 2012-01-22 21:17:54 -05:00
David Dollar
ce6ec4848d we're not chdiring any more 2012-01-22 21:17:38 -05:00
David Dollar
a37a097f73 use strings rather than symbols to better emulate the real thing 2012-01-22 21:17:18 -05:00
David Dollar
f28725bdac Merge pull request #139 from brainopia/foreman
---

If you remember Ive wanted to implement a prototype of process-tree monitor (and therefore restore support for complex commands), but decided to start with specing current behavior and marking desired behavior as pending specs.

This pull-request is a first pass. Its mainly Foreman::Process specs and a bit of refactoring. Specs for Foreman::Engine will be coming next (theyll cover a wide ground of possible uses). Afterwards I will replace machinery a bit to remove pending specs and ensure the rest is still passing on all available to me platforms.

If you have any notices, Ill gladly hear them.
2012-01-22 20:58:51 -05:00
David Dollar
d7000bccfa fix specs 2012-01-22 19:14:24 -05:00
brainopia
ade0005a92 Add specs for Foreman::Process#run 2012-01-22 22:07:53 +04:00
brainopia
047f106d48 - Use explicit fakefs tag in specs
- Clean up trailing whitespace
2012-01-22 15:00:43 +04:00
brainopia
158c184f8c Add specs for options of Foreman::Process#run 2012-01-22 08:55:45 +04:00
brainopia
2ed1fe8d44 Add specs for initialization of Foreman::Process 2012-01-22 08:54:42 +04:00
Fletcher Nichol
e76f3533dc runit creates a full path to export directory. 2012-01-18 20:13:08 -07:00
Matt Griffin
92d1a4d367 Fix export specs 2012-01-16 17:39:21 -05:00
Matt Griffin
f4123f4ae1 Merge branch 'master' of https://github.com/michaeldwan/foreman into feature/concurrency
Conflicts:
	spec/foreman/engine_spec.rb
	spec/foreman/export/bluepill_spec.rb
	spec/resources/export/bluepill/app.pill
2012-01-16 17:18:14 -05:00
David Dollar
c1f279aa6f run specs in random order 2012-01-16 09:33:34 -05:00
Matthijs Langenberg
91140638e1 Set executable bit on runit run scripts. 2012-01-16 09:33:34 -05:00
Fletcher Nichol
ab29963ee4 Expand template path under user's home directory.
* File.join won't expand `~` into `ENV['HOME']`
  (http://ruby-doc.org/core-1.9.3/File.html#method-c-expand_path)
* The FakeFS File.exists? implementation calls FileSystem#find
  (https://github.com/defunkt/fakefs/blob/master/lib/fakefs/file_system.rb#L22-33)
  containing a call to FileSystem#normalize_path which expands the
  path variable passed in
  (https://github.com/defunkt/fakefs/blob/master/lib/fakefs/file_system.rb#L91-98)
* The file system mocking library sets up a false expectation that `~`
  will be expanded in the #export_template method and consequently the
  production code can't use the template directory
* To guard against future regressions such as fixes/updates to FakeFS or
  using an alternate file system mocking library, the specs were updated
  to explicitly set `ENV['HOME']`
2012-01-15 19:09:52 -07:00
Matt Griffin
9432989fbe Steal the run method back from Thor so that it can be used in place for exec for running commands in the foreman environment.
Fix some error reporting.
2012-01-09 17:11:32 -05:00
Matt Griffin
a34bc59721 Add "exec" action to allow execution of arbitrary commands with the app's environment. 2012-01-04 15:22:10 -05:00
David Dollar
888520ee99 fix pipe error 2011-12-08 17:59:27 -08:00
David Dollar
5436b68cf1 wip 2011-12-08 17:53:13 -08:00
Chris Continanza
58e4cdafd7 rename load! to load_env! 2011-12-05 12:27:32 -08:00
Chris Continanza
44a5dff724 use ./.env as default 2011-12-05 11:37:51 -08:00
Chris Continanza
e33921f083 load contents from env file 2011-12-03 15:43:51 -08:00
Matthijs Langenberg
676d3ff8d1 Add runit export format.
Fix #28
2011-11-08 23:50:33 +01:00
David Dollar
f6ef5a5b4f display error when process doesnt exist and is run by name 2011-11-08 11:54:55 -05:00
Michael Dwan
33aa1efc90 default process concurrency is 0 when concurrency options specified, otherwise default concurrency is 1 2011-11-07 13:10:18 -07:00
Chris Lowder
02c8d2cb10 Memoizing at the Class level wreaks havoc on the specs. 2011-10-19 18:02:49 +01:00
David Dollar
86e4251840 add ability to test full comamnd line 2011-10-04 11:30:28 -04:00
David Dollar
d26ca669a1 define procfile regex, refactoring 2011-10-04 10:38:13 -04:00
David Dollar
5719f4fc72 allow multiple environment files to be specified 2011-09-16 18:24:38 -04:00
Greg Reinacker
75d4fc562d accept any whitespace around : in Procfile 2011-09-11 17:01:31 -06:00
David Dollar
b25dfee62d Merge pull request #59 from hunter/bluepill
Bluepill export
2011-09-09 13:56:02 -07:00
Thom May
8fd9b753f4 Actually test that the environment is set correctly 2011-09-06 15:59:26 +01:00
Thom May
7fc6d02e7b Read environment at initialisation
This allows us to expose the environment attribute from the engine
object and utilise it to build exported startup files.
2011-09-01 17:26:50 +01:00
Thom May
ddcaac8749 Move options into class initialisation 2011-09-01 17:06:37 +01:00
Hunter Nield
9db97abb10 Updates to get Bluepill export working & tweaks to output 2011-08-25 21:17:00 +10:00
David Dollar
ffd77312bb Merge pull request #53 from matth/master
Blank line in Procfile breaks Foreman
2011-08-22 14:27:03 -07:00
Hunter Nield
21a041527c Added basic support for Bluepill 2011-08-22 21:24:34 +10:00
Matt Haynes
2042de7732 Fix bug where blank lines in Procfile break Foreman. 2011-07-28 11:40:31 +01:00
Khaja Minhajuddin
64338c5a09 use a dedicated directory (~/.foreman/templates) to store the templates 2011-06-30 22:23:38 +05:30