sunzi 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -18,6 +18,7 @@ Its design goals are:
18
18
 
19
19
  ### What's new:
20
20
 
21
+ * v0.8: Added `--sudo` option to `sunzi deploy`.
21
22
  * v0.7: Added `erase_remote_folder` and `cache_remote_recipes` preferences for customized behavior.
22
23
  * v0.6: System function sunzi::silencer() added for succinct log messages.
23
24
  * v0.5: Role-based configuration supported. Reworked directory structure. **Incompatible with previous versions**.
@@ -61,10 +62,11 @@ Commands
61
62
  --------
62
63
 
63
64
  ```bash
64
- $ sunzi # Show command help
65
- $ sunzi compile # Compile Sunzi project
66
- $ sunzi create # Create a new Sunzi project
67
- $ sunzi deploy [user@host:port] [role] # Deploy Sunzi project
65
+ $ sunzi # Show command help
66
+ $ sunzi compile # Compile Sunzi project
67
+ $ sunzi create # Create a new Sunzi project
68
+ $ sunzi deploy [user@host:port] [role] [--sudo] # Deploy Sunzi project
69
+
68
70
  $ sunzi setup [linode|ec2] # Setup a new VM on the Cloud services
69
71
  $ sunzi teardown [linode|ec2] [name] # Teardown an existing VM on the Cloud services
70
72
  ```
data/lib/sunzi/cli.rb CHANGED
@@ -9,9 +9,10 @@ module Sunzi
9
9
  do_create(project)
10
10
  end
11
11
 
12
- desc "deploy [user@host:port] [role]", "Deploy sunzi project"
12
+ desc "deploy [user@host:port] [role] [--sudo]", "Deploy sunzi project"
13
+ method_options :sudo => false
13
14
  def deploy(target, role = nil)
14
- do_deploy(target, role)
15
+ do_deploy(target, role, options.sudo?)
15
16
  end
16
17
 
17
18
  desc "compile", "Compile sunzi project"
@@ -47,7 +48,8 @@ module Sunzi
47
48
  template "templates/create/roles/web.sh", "#{project}/roles/web.sh"
48
49
  end
49
50
 
50
- def do_deploy(target, role)
51
+ def do_deploy(target, role, force_sudo)
52
+ sudo = 'sudo ' if force_sudo
51
53
  user, host, port = parse_target(target)
52
54
  endpoint = "#{user}@#{host}"
53
55
 
@@ -63,7 +65,7 @@ module Sunzi
63
65
  mkdir ~/sunzi &&
64
66
  cd ~/sunzi &&
65
67
  tar xz &&
66
- bash install.sh
68
+ #{sudo}bash install.sh
67
69
  EOS
68
70
 
69
71
  remote_commands.strip! << ' && rm -rf ~/sunzi' if @config['preferences'] and @config['preferences']['erase_remote_folder']
data/lib/sunzi/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sunzi
2
- VERSION = "0.7.0"
2
+ VERSION = "0.8.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sunzi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-08 00:00:00.000000000 Z
12
+ date: 2012-03-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: thor
16
- requirement: &2156016540 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2156016540
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: rainbow
27
- requirement: &2156031920 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *2156031920
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rake
38
- requirement: &2156031000 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,7 +53,12 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *2156031000
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  description: Server provisioning utility for minimalists
48
63
  email:
49
64
  - kenn.ejima@gmail.com
@@ -97,7 +112,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
97
112
  version: '0'
98
113
  requirements: []
99
114
  rubyforge_project: sunzi
100
- rubygems_version: 1.8.17
115
+ rubygems_version: 1.8.19
101
116
  signing_key:
102
117
  specification_version: 3
103
118
  summary: Server provisioning utility for minimalists