homesteading 0.0.3 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e3f78071cf516eee0c8c69887eba099415188a19
4
- data.tar.gz: 1371a2df0e472cdbaca551429f18bf72f619af67
3
+ metadata.gz: 0039eb0fb194b6b8c19d748278c27cfb60ab7a7f
4
+ data.tar.gz: c6c76b4084c08103105fd7c71175d164006cfaa6
5
5
  SHA512:
6
- metadata.gz: 6d9438b9fe42473728c9bfc94da79a90038da68067dc1f72b25a1894383e00922030dcc2ae5cf9d8f471885762b64fbf4e6ce423dcec33c0836a7b817ba9f659
7
- data.tar.gz: d5d2507bd9eee11b4799c25c850810eb615831a5ff5921647655cf17af19824b325a9c1fb95aae9eb1b22668bdcfd74e4fc38f0963e41bc64e203feb196195ef
6
+ metadata.gz: a4d107d264fb358f59faffc5a244b36ef5f9eab4b48e691974bb75c870a12ecc680468df4d2ec231b656da05eda86650e569a42eb107dcc8564b4ff7ef98c9eb
7
+ data.tar.gz: f12e726ffa5644405ab6d921491fea79f4141efd012f423696ac8f37be50d6ee5637cda388cf6800a0b8477b194ab3d3ea1d3db1867c7144d9de43d704470bcb
data/README.md CHANGED
@@ -12,7 +12,7 @@ See the [/help](https://github.com/homesteading/homesteading/tree/master/help) d
12
12
 
13
13
  ## Current Version
14
14
 
15
- 0.0.1
15
+ 0.0.5
16
16
 
17
17
 
18
18
  ## Requirements
data/bin/homesteading CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  require "homesteading/commands/help"
3
+ require "optparse"
3
4
 
4
5
  if ARGV.empty?
5
6
  name_space = "Help"
data/help/README.md CHANGED
@@ -4,6 +4,7 @@ Primary help topics, type "homesteading help TOPIC" for more details:
4
4
 
5
5
  * new : create a new constellation of homesteading apps
6
6
  * apps : manage constellation of apps (create, destroy, list, update)
7
+ * deploy : deploy apps to remote host (heroku, vektra, etc)
7
8
  * run : run one-off commands (console, rake)
8
9
  * server : run constellation of apps (start, stop)
9
10
 
data/help/apps-create.md CHANGED
@@ -1,3 +1,6 @@
1
1
  # TODO:
2
2
 
3
3
  Usage: homesteading apps:create
4
+
5
+ * apps:create --app HS_APP : create a new app from @homesteading on GitHub
6
+ * apps:create --url URL : create a new app from a URL
data/help/apps.md CHANGED
@@ -21,7 +21,7 @@ Example:
21
21
 
22
22
  Additional commands, type "homesteading help COMMAND" for more details:
23
23
 
24
- * apps:create --type HS_APP : create a new app from @homesteading on GitHub
24
+ * apps:create --app HS_APP : create a new app from @homesteading on GitHub
25
25
  * apps:create --url URL : create a new app from a URL
26
26
  * apps:destroy --app APP : permanently destroy an app
27
27
  * apps:info --app APP : show detailed app information (from app.json)
@@ -0,0 +1,3 @@
1
+ # TODO:
2
+
3
+ Usage: homesteading deploy:heroku
@@ -0,0 +1,3 @@
1
+ # TODO:
2
+
3
+ Usage: homesteading deploy:vektra
data/help/deploy.md ADDED
@@ -0,0 +1,18 @@
1
+ # TODO
2
+
3
+ Usage: homesteading deploy
4
+
5
+ deploy your constellation of homesteading apps to remote host
6
+
7
+ * -n, --nonpublisher : list running homesteading non-publisher apps (hub, router, etc)
8
+ * -p, --publisher : list running homesteading publisher apps (note, photo, etc)
9
+
10
+ Example:
11
+
12
+ $ homesteading deploy
13
+
14
+
15
+ Additional commands, type "homesteading help COMMAND" for more details:
16
+
17
+ * deploy:heroku : deploy a constellation of homesteading apps to heroku
18
+ * deploy:vektra : deploy a constellation of homesteading apps to vektra
data/help/new.md CHANGED
@@ -1,29 +1,38 @@
1
- # TODO:
2
-
3
1
  Usage: homesteading new /path/to/constellation [options]
4
2
 
5
3
  create a constellation of homesteading apps
6
4
 
5
+ * -p, --pretend : Run but do not make any changes
6
+ * -q, --quiet : Suppress status output
7
+
7
8
  Example:
8
9
 
9
10
  $ homesteading new sbbme
10
11
 
12
+ * Creating homesteading directory: /path/to/constellation
13
+ * Cloning homesteading app from GitHub: hub
14
+ * Cloning homesteading app from GitHub: router-rack
15
+ * Cloning homesteading app from GitHub: article
16
+ * Cloning homesteading app from GitHub: bookmark
17
+ * Cloning homesteading app from GitHub: event
18
+ * Cloning homesteading app from GitHub: note
19
+ * Cloning homesteading app from GitHub: photo
20
+ * Cloning homesteading app from GitHub: sound
21
+ * Cloning homesteading app from GitHub: video
22
+ * Cloning homesteading app from GitHub: walk
23
+ * Cloning homesteading app from GitHub: weight
11
24
 
12
25
 
13
- ---
14
26
 
15
- TODO
16
27
 
17
- -t, --type APP_NAME_FROM_GITHUB
18
- -u, --url URL_OF_HS_APP
19
- -e, --except APPS_TO_SKIP
20
- -o, --only APPS_TO_CREATE
28
+ ---
21
29
 
22
- -f, [--force] # Overwrite apps that already exist
23
- -p, [--pretend] # Run but do not make any changes
24
- -q, [--quiet] # Suppress status output
25
- -s, [--skip] # Skip apps that already exist
30
+ # TODO
26
31
 
27
- Example:
32
+ refer to this for help
33
+ https://github.com/rdoc/rdoc/blob/master/lib/rdoc/options.rb#L724-L728
34
+ * -e, --except APPS_TO_SKIP : Comma separated list of apps to not install
35
+ * -o, --only APPS_TO_CREATE
28
36
 
29
- homesteading new --app note
37
+ * -f, --force : Overwrite apps that already exist
38
+ * -s, --skip : Skip apps that already exist
data/help/server-stop.md CHANGED
@@ -1,3 +1,17 @@
1
- # TODO:
2
-
3
1
  Usage: homesteading server:stop
2
+
3
+ stop all running homesteading apps
4
+
5
+ Example:
6
+
7
+ $ homesteading server:stop
8
+ Stopping article...
9
+ ...done
10
+ Stopping bookmark...
11
+ ...done
12
+ Stopping note...
13
+ ...done
14
+ Stopping hub...
15
+ ...done
16
+ Stopping router...
17
+ ...done
data/lib/homesteading.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require "homesteading/version"
2
+ require "optparse"
2
3
 
3
4
  module Homesteading
4
5
  end
@@ -5,12 +5,47 @@ class Homesteading
5
5
  NONPUBLISHER_APPS = ["hub", "router-rack"] # TODO "syndicator"
6
6
 
7
7
  def default(options=nil)
8
- constellation_dir = options.first
9
- system("mkdir -p #{constellation_dir}")
8
+ puts
9
+
10
+ # Parse command line options
11
+ options = {}
12
+ optparse = OptionParser.new do |opts|
13
+ opts.on("-p", "--pretend", "Run but do not make any changes") do |pretend|
14
+ options[:pretend] = pretend
15
+ end
16
+
17
+ opts.on("-q", "--quiet", "Suppress status output") do |quiet|
18
+ options[:quiet] = quiet
19
+ end
20
+ end
21
+ optparse.parse!
22
+
23
+
24
+ # Install location
25
+ constellation_dir = ARGV.shift
26
+
27
+ unless options[:quiet]
28
+ puts "* Creating homesteading directory: #{constellation_dir}"
29
+ end
30
+
31
+ unless options[:pretend]
32
+ puts
33
+ system("mkdir -p #{constellation_dir}")
34
+ end
10
35
 
11
36
  [NONPUBLISHER_APPS, PUBLISHER_APPS].flatten.each do |app|
12
- system("cd #{constellation_dir} && git clone git@github.com:homesteading/homesteading-#{app}.git")
37
+ unless options[:quiet]
38
+ puts "* Cloning homesteading app from GitHub: #{app}"
39
+ end
40
+
41
+ unless options[:pretend]
42
+ puts
43
+ system("cd #{constellation_dir} && git clone git@github.com:homesteading/homesteading-#{app}.git")
44
+ puts
45
+ end
13
46
  end
47
+
48
+ puts
14
49
  end
15
50
 
16
51
  end
@@ -15,6 +15,9 @@ class Homesteading
15
15
  end
16
16
 
17
17
  def stop(options=nil)
18
+ # TEMP HACK TODO FIXME
19
+ # This is overly aggressive, but the above kill isn't working
20
+ system "killall ruby"
18
21
  end
19
22
 
20
23
  def urls(options=nil)
@@ -5,7 +5,7 @@ class Homesteading
5
5
  def default(options=nil)
6
6
  # TODO load in *actual* VERSION and CODENAME from homesteading/version
7
7
  # puts "Homesteading #{Homesteading::VERSION}, codename: #{Homesteading::CODENAME}"
8
- puts "Homesteading 0.0.3, codename: Rooftop"
8
+ puts "Homesteading 0.0.5, codename: Rooftop"
9
9
  end
10
10
 
11
11
  end
@@ -1,4 +1,4 @@
1
1
  module Homesteading
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.5"
3
3
  CODENAME = "Rooftop"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: homesteading
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane Becker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-01 00:00:00.000000000 Z
11
+ date: 2014-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -60,6 +60,9 @@ files:
60
60
  - help/apps-rename.md
61
61
  - help/apps.md
62
62
  - help/blank.md
63
+ - help/deploy-heroku.md
64
+ - help/deploy-vektra.md
65
+ - help/deploy.md
63
66
  - help/new.md
64
67
  - help/run.md
65
68
  - help/server-list.md
@@ -103,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
103
106
  version: '0'
104
107
  requirements: []
105
108
  rubyforge_project:
106
- rubygems_version: 2.2.2
109
+ rubygems_version: 2.4.4
107
110
  signing_key:
108
111
  specification_version: 4
109
112
  summary: Client library and command-line tool to deploy and manage Homesteading apps