demae 0.1.0 → 0.1.1

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: cfdd036fcd9b7d17754f8a3551ca5d3b4cb45d33
4
- data.tar.gz: 370a756770f65602945f4b7ee50bc83a5b4d7fa4
3
+ metadata.gz: b383a563857cee104ebd38a5e61902e2cbd7e7b0
4
+ data.tar.gz: 420298e15ad816f1ce00e6c8fa87154a9fc97649
5
5
  SHA512:
6
- metadata.gz: c2ff3d5edb1e17ae9e9c8db0a7f9696140b2f9f1aae7bbe538632f3801ecf40f3a6cd4d918228270070b8425b17926dd117a380ed27ec1ebbbb8ca93c947f37a
7
- data.tar.gz: 4d7551897e24146c6e054b929fbff9a09f3605a63149cd69a7240217637b547db5f25ceaf84c7b188ca82348aacda6423ab99ac14c86bb222d597b73cf8d119a
6
+ metadata.gz: 2430c1d38261367e117d73425bf6f74a300d1c7ec3e4f4debbfc8d66fbcddd3e0d70f343bf65c12a3a78c93e32c08ce7036d2f1f1eb31f484ff2a792e9a92db7
7
+ data.tar.gz: ef08a8f2b61417fa0aecb77133248fe873521db4a4b9fd8c6815d04f5e9ceeb4ff4af7678bcd387a12d66b7f54e7c3d94b547037578a95644214d714b54379ad
@@ -23,6 +23,21 @@ module Demae
23
23
 
24
24
  desc 'apply', 'apply itamae recipes to environment'
25
25
  def apply(environment)
26
+ run(environment)
27
+ end
28
+
29
+ desc 'plan', 'check an execution plan before apply cmd.'
30
+ def plan(environment)
31
+ run(environment, dry_run: true)
32
+ end
33
+
34
+ private
35
+
36
+ def config_path(environment)
37
+ "#{CONFIG_DIR}/#{environment}.yml"
38
+ end
39
+
40
+ def run(environment, dry_run: false)
26
41
  config = YAML.load_file(config_path(environment))
27
42
  config.each do |server|
28
43
  server['hosts'].each do |host|
@@ -30,21 +45,17 @@ module Demae
30
45
  host: host,
31
46
  vagrant: false,
32
47
  ask_password: false,
33
- sudo: true
48
+ sudo: true,
49
+ dry_run: dry_run
34
50
  }
35
51
  o = server.reject { |k, _| %w(hosts recipes).include? k }
36
52
  o = o.each_with_object({}) { |(k, v), memo| memo[k.to_sym] = v }
37
53
  options.merge!(o)
38
54
 
55
+ Itamae.logger.info "Target: #{host}"
39
56
  runner = Itamae::Runner.run(server['recipes'], :ssh, options)
40
57
  end
41
58
  end
42
59
  end
43
-
44
- private
45
-
46
- def config_path(environment)
47
- "#{CONFIG_DIR}/#{environment}.yml"
48
- end
49
60
  end
50
61
  end
@@ -1,3 +1,3 @@
1
1
  module Demae
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: demae
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - maruware