cocina 0.1.2 → 0.1.3

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: 695c5c4d9bdcf083b1406646bee16a6d8072c069
4
- data.tar.gz: 44caf0bcfece1fd36466cac6221389969fa6dbda
3
+ metadata.gz: a635ff56f1db7bce214b644516a9928a4945526c
4
+ data.tar.gz: 5e9bd1f239c1117f61444f0a4a31c15901544379
5
5
  SHA512:
6
- metadata.gz: 1c61bec82aff227d650213c0533ed1de6b8a750565ff8f96d759214854aab9da1134408973eac8368e18a378eaadf7c9b1996783d843c0de570c857ae3e4d10a
7
- data.tar.gz: 812dd5d645829631e5fa6d85c677bb7f3220a08567962a28b0c421721ec9d3a69d6373a54109ac8cec1f15376154026ee02e874430a6af2dca1332d41aa95c6b
6
+ metadata.gz: 7d1ca609ce1fa3edfbb6e6ab4e592d948d6c5ae8e82837bac5aa667298d00b9a5a18f7978252defb052f7f955e3687616c80d160e6582b23986c611bbb9c3a52
7
+ data.tar.gz: 2b364b05fb98210bee3601fd36bb3f8e30f73a0b264d02526716303a2ae51276dda1c6f245ea95826353ca33dc71437606c8ed85a963d7ed283d8bfeadfa9915
data/.travis.yml CHANGED
@@ -3,6 +3,7 @@ addons:
3
3
  repo_token: f1a36edc54b97cf8db5a139d555d98232c8ad834bd34d44701bc975a9acd29ee
4
4
 
5
5
  language: ruby
6
+ cache: bundler
6
7
  rvm:
7
8
  - 2.1.6
8
9
 
data/cocina.gemspec CHANGED
@@ -24,7 +24,6 @@ Gem::Specification.new do |spec|
24
24
  spec.add_development_dependency 'rspec'
25
25
  spec.add_development_dependency 'pry'
26
26
 
27
- spec.add_dependency 'logify', '~> 0.2.0'
28
27
  spec.add_dependency 'berkshelf', '~> 4.0.1'
29
28
  spec.add_dependency 'test-kitchen', '~> 1.4.2'
30
29
  spec.add_dependency 'kitchen-vagrant', '~> 0.19.0'
data/example/.kitchen.yml CHANGED
@@ -10,14 +10,30 @@ platforms:
10
10
  - name: centos-7.1
11
11
 
12
12
  suites:
13
- - name: app
13
+ - name: db
14
+ driver:
15
+ network:
16
+ - ["private_network", ip: "10.11.11.10"]
14
17
  run_list:
18
+ - counter_redis::default
15
19
  attributes:
16
20
 
17
- - name: db
21
+ - name: app
22
+ driver:
23
+ network:
24
+ - ["private_network", ip: "10.11.11.11"]
18
25
  run_list:
26
+ - counter_app::default
19
27
  attributes:
28
+ counter_app:
29
+ redis_host: "10.11.11.10"
20
30
 
21
31
  - name: web
32
+ driver:
33
+ network:
34
+ - ["private_network", ip: "10.11.11.12"]
22
35
  run_list:
36
+ - counter_nginx::default
23
37
  attributes:
38
+ counter_app:
39
+ host: "10.11.11.11"
data/example/Berksfile ADDED
@@ -0,0 +1,10 @@
1
+ source 'https://supermarket.chef.io'
2
+
3
+ cookbook 'counter_app',
4
+ git: 'https://github.com/brandocorp-cookbooks/counter_app.git'
5
+
6
+ cookbook 'counter_nginx',
7
+ git: 'https://github.com/brandocorp-cookbooks/counter_nginx.git'
8
+
9
+ cookbook 'counter_redis',
10
+ git: 'https://github.com/brandocorp-cookbooks/counter_redis.git'
data/example/README.md ADDED
@@ -0,0 +1,31 @@
1
+ # Instructions
2
+
3
+ ## Install
4
+
5
+ Install the Cocina gem in your preferred ruby.
6
+
7
+ ### Example: ChefDK
8
+
9
+ ```
10
+ chef gem install cocina
11
+ ```
12
+
13
+ ### Example: RVM
14
+
15
+ ```
16
+ rvm use ruby@cocina --create
17
+ gem install cocina
18
+ ```
19
+
20
+ ## Converge
21
+
22
+ ```
23
+ cocina web-ubuntu-1404
24
+ ```
25
+
26
+ You should see output like the following:
27
+
28
+ ```
29
+ -----> Running for: web-ubuntu-1404
30
+ Dependencies: ["db-ubuntu-1404", "app-ubuntu-1404"]
31
+ ```
data/lib/cocina/cli.rb CHANGED
@@ -1,27 +1,28 @@
1
- require 'logify'
2
1
  require 'kitchen'
3
2
  require 'kitchen/cli'
4
3
 
5
4
  module Cocina
6
5
  class CLI
7
- include Logify
8
6
 
9
7
  attr_reader :config, :instances, :collection, :dependencies
10
- attr_reader :primary_instance, :primary_dependencies
8
+ attr_reader :primary_instance, :primary_dependencies, :logger
11
9
 
12
10
  def initialize(target)
13
11
  super()
14
12
 
15
- Logify.level = :debug
16
-
17
13
  @dependencies = []
18
14
  @config = Cocina::Config.new('Cocinafile')
15
+ @logger = Kitchen::Logger.new(
16
+ stdout: STDOUT,
17
+ color: :white,
18
+ progname: 'Cocina'
19
+ )
19
20
  @primary_instance = instance(target)
20
21
  @primary_dependencies = primary_instance.dependencies
21
22
  end
22
23
 
23
24
  def run
24
- log.info "Running for Target: #{primary_instance.name}"
25
+ log_banner "Running for: #{primary_instance.name}"
25
26
 
26
27
  prepare_dependencies
27
28
  converge_dependencies
@@ -42,17 +43,17 @@ module Cocina
42
43
  end
43
44
 
44
45
  def converge_dependencies
45
- log.info "Converging all dependencies: #{dependencies}"
46
+ logger.info "Dependencies: #{dependencies}"
46
47
  dependencies.each {|dep| converge_dependency dep }
47
48
  end
48
49
 
49
50
  def converge_dependency(dep)
50
- log.info "Converging: #{dep}"
51
+ log_banner "Converging <#{dep}>"
51
52
  instance(dep).converge
52
53
  end
53
54
 
54
55
  def cleanup
55
- log.info "Cleaning up all dependencies"
56
+ log_banner "Cleaning up all dependencies"
56
57
  destroy_dependencies
57
58
  primary_instance.destroy
58
59
  nil
@@ -60,9 +61,13 @@ module Cocina
60
61
 
61
62
  def destroy_dependencies
62
63
  dependencies.each do |dep|
63
- log.info "Destroying #{dep}"
64
+ logger.info "Destroying #{dep}"
64
65
  instance(dep).destroy
65
66
  end
66
67
  end
68
+
69
+ def log_banner(msg)
70
+ logger.banner "#{msg}"
71
+ end
67
72
  end
68
73
  end
data/lib/cocina/config.rb CHANGED
@@ -2,10 +2,8 @@ require 'cocina/instance'
2
2
 
3
3
  module Cocina
4
4
  class Config
5
- include Logify
6
5
 
7
- attr_reader :cocinafile
8
- attr_reader :instances
6
+ attr_reader :cocinafile, :instances
9
7
 
10
8
  def initialize(file)
11
9
  @cocinafile = file
@@ -41,7 +39,6 @@ module Cocina
41
39
 
42
40
  def instance(id, &block)
43
41
  return true if instance?(id)
44
- log.info "Building Instance for #{id}"
45
42
  cocina_instance = Cocina::Instance.new(id)
46
43
  cocina_instance.instance_eval(&block)
47
44
  cocina_instance.runner = kitchen_instance(id)
@@ -1,3 +1,3 @@
1
1
  module Cocina
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocina
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brandon Raabe
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: logify
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: 0.2.0
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: 0.2.0
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: berkshelf
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -144,7 +130,9 @@ files:
144
130
  - bin/cocina
145
131
  - cocina.gemspec
146
132
  - example/.kitchen.yml
133
+ - example/Berksfile
147
134
  - example/Cocinafile
135
+ - example/README.md
148
136
  - lib/cocina.rb
149
137
  - lib/cocina/cli.rb
150
138
  - lib/cocina/config.rb