homesteading 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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