cm 0.1.1 → 0.1.2

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: c3857bad332c48ef1a6eed25fdeafe27f2c52603
4
- data.tar.gz: e6038e442b7b3051107fbc87576007deefd9ba00
3
+ metadata.gz: 612408e4e1eacb4a4ab884c3933ff1560d194742
4
+ data.tar.gz: e13c7db9e033306b3b2298628f694ceb72e1c519
5
5
  SHA512:
6
- metadata.gz: 0d8618863fed948c0f71c4ef435b4bb07a44c1d113ea55017d82a2d82c6012a1c9820a46759f1dd7e67ddf106dccec84e8d7726c47ac5849007671b6d1f99322
7
- data.tar.gz: 6973e29c0e650288d0c29a3544465975e5dcc373b7630e5d73000e487191eeb8e0776e48d6b13a40238fc5e45acecf875858301f5d170faefd3556ff859c084b
6
+ metadata.gz: 314006b3132f68f9b6b1f2a2801d763ae87c8baee1f17bd0e5b41b8c205ff8f7bae9d0e338748858d9e2f3c21bd8f8f78aa8ac4d3019e82ceaa34fb050f2eea0
7
+ data.tar.gz: 4ea71fa39e3df24f944c0a6cb8ed1820d7494c669e930c91f5995fa2a0d3821e050d3042b1ae693151faa027d9c855872553e5d806aafe620592a06b0e130bf2
data/Gemfile CHANGED
@@ -3,8 +3,8 @@ source "http://rubygems.org"
3
3
  gem "nucleon", "~> 0.2"
4
4
 
5
5
  group :development do
6
- gem "bundler", "~> 1.7"
6
+ gem "bundler", "~> 1.10"
7
7
  gem "jeweler", "~> 2.0"
8
- gem "rspec", "~> 3.1"
9
- gem "rdoc", "~> 3.12"
8
+ gem "rspec", "~> 3.4"
9
+ gem "rdoc", "~> 4.2"
10
10
  end
data/Gemfile.lock CHANGED
@@ -62,30 +62,30 @@ GEM
62
62
  netrc (0.11.0)
63
63
  nokogiri (1.6.7)
64
64
  mini_portile2 (~> 2.0.0.rc2)
65
- nucleon (0.2.13)
66
- celluloid (~> 0.16)
65
+ nucleon (0.2.15)
66
+ celluloid (~> 0.17)
67
67
  childprocess (~> 0.5)
68
68
  deep_merge (~> 1.0)
69
69
  erubis (~> 2.7)
70
- highline (~> 1.6)
71
- i18n (~> 0.6)
70
+ highline (~> 1.7)
71
+ i18n (~> 0.7)
72
72
  log4r (~> 1.1)
73
- multi_json (~> 1.10)
74
- netrc (~> 0.9)
75
- octokit (~> 3.6)
76
- rugged (~> 0.21)
77
- sshkey (~> 1.6)
73
+ multi_json (~> 1.11)
74
+ netrc (~> 0.11)
75
+ octokit (~> 4.2)
76
+ rugged (~> 0.23)
77
+ sshkey (~> 1.8)
78
78
  oauth2 (1.0.0)
79
79
  faraday (>= 0.8, < 0.10)
80
80
  jwt (~> 1.0)
81
81
  multi_json (~> 1.3)
82
82
  multi_xml (~> 0.5)
83
83
  rack (~> 1.2)
84
- octokit (3.8.0)
84
+ octokit (4.2.0)
85
85
  sawyer (~> 0.6.0, >= 0.5.3)
86
86
  rack (1.6.4)
87
87
  rake (10.4.2)
88
- rdoc (3.12.2)
88
+ rdoc (4.2.0)
89
89
  json (~> 1.4)
90
90
  rspec (3.4.0)
91
91
  rspec-core (~> 3.4.0)
@@ -113,8 +113,11 @@ PLATFORMS
113
113
  ruby
114
114
 
115
115
  DEPENDENCIES
116
- bundler (~> 1.7)
116
+ bundler (~> 1.10)
117
117
  jeweler (~> 2.0)
118
118
  nucleon (~> 0.2)
119
- rdoc (~> 3.12)
120
- rspec (~> 3.1)
119
+ rdoc (~> 4.2)
120
+ rspec (~> 3.4)
121
+
122
+ BUNDLED WITH
123
+ 1.10.6
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
data/cm.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: cm 0.1.1 ruby lib
5
+ # stub: cm 0.1.2 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "cm"
9
- s.version = "0.1.1"
9
+ s.version = "0.1.2"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
@@ -29,6 +29,12 @@ Gem::Specification.new do |s|
29
29
  "lib/cm.rb",
30
30
  "lib/core/errors.rb",
31
31
  "lib/core/facade.rb",
32
+ "lib/core/mixin/action/config.rb",
33
+ "lib/core/overrides.rb",
34
+ "lib/core/plugin/cm_action.rb",
35
+ "lib/core/plugin/plan_action.rb",
36
+ "lib/nucleon/action/plan/deploy.rb",
37
+ "lib/nucleon/action/plan/destroy.rb",
32
38
  "locales/en.yml",
33
39
  "spec/spec_helper.rb"
34
40
  ]
@@ -36,7 +42,7 @@ Gem::Specification.new do |s|
36
42
  s.licenses = ["Apache License, Version 2.0"]
37
43
  s.rdoc_options = ["--title", "CM (Cloud Manager)", "--main", "README.rdoc", "--line-numbers"]
38
44
  s.required_ruby_version = Gem::Requirement.new(">= 1.9.1")
39
- s.rubygems_version = "2.4.5"
45
+ s.rubygems_version = "2.4.8"
40
46
  s.summary = "Pluggable cloud management framework that provides a simple foundation for deploying and destroying enterprise ready cloud environments and components"
41
47
 
42
48
  if s.respond_to? :specification_version then
@@ -44,23 +50,23 @@ Gem::Specification.new do |s|
44
50
 
45
51
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
46
52
  s.add_runtime_dependency(%q<nucleon>, ["~> 0.2"])
47
- s.add_development_dependency(%q<bundler>, ["~> 1.7"])
53
+ s.add_development_dependency(%q<bundler>, ["~> 1.10"])
48
54
  s.add_development_dependency(%q<jeweler>, ["~> 2.0"])
49
- s.add_development_dependency(%q<rspec>, ["~> 3.1"])
50
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
55
+ s.add_development_dependency(%q<rspec>, ["~> 3.4"])
56
+ s.add_development_dependency(%q<rdoc>, ["~> 4.2"])
51
57
  else
52
58
  s.add_dependency(%q<nucleon>, ["~> 0.2"])
53
- s.add_dependency(%q<bundler>, ["~> 1.7"])
59
+ s.add_dependency(%q<bundler>, ["~> 1.10"])
54
60
  s.add_dependency(%q<jeweler>, ["~> 2.0"])
55
- s.add_dependency(%q<rspec>, ["~> 3.1"])
56
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
61
+ s.add_dependency(%q<rspec>, ["~> 3.4"])
62
+ s.add_dependency(%q<rdoc>, ["~> 4.2"])
57
63
  end
58
64
  else
59
65
  s.add_dependency(%q<nucleon>, ["~> 0.2"])
60
- s.add_dependency(%q<bundler>, ["~> 1.7"])
66
+ s.add_dependency(%q<bundler>, ["~> 1.10"])
61
67
  s.add_dependency(%q<jeweler>, ["~> 2.0"])
62
- s.add_dependency(%q<rspec>, ["~> 3.1"])
63
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
68
+ s.add_dependency(%q<rspec>, ["~> 3.4"])
69
+ s.add_dependency(%q<rdoc>, ["~> 4.2"])
64
70
  end
65
71
  end
66
72
 
data/lib/cm.rb CHANGED
@@ -93,7 +93,7 @@ module CM
93
93
 
94
94
  #---
95
95
 
96
- reload(true, :cm) do |op, manager|
96
+ Nucleon.reload(true, :cm) do |op, manager|
97
97
  if op == :define
98
98
  manager.define_types :CM, {
99
99
 
@@ -101,3 +101,8 @@ module CM
101
101
  end
102
102
  end
103
103
  end
104
+
105
+ #-------------------------------------------------------------------------------
106
+ # Load CM action overrides
107
+
108
+ nucleon_require(core_dir, :overrides)
File without changes
@@ -0,0 +1,38 @@
1
+
2
+ module Nucleon
3
+ module Action
4
+ class Extract
5
+ def self.describe
6
+ nil
7
+ end
8
+ end
9
+
10
+ module Project
11
+ class Create
12
+ def self.describe
13
+ nil
14
+ end
15
+ end
16
+ class Add
17
+ def self.describe
18
+ nil
19
+ end
20
+ end
21
+ class Remove
22
+ def self.describe
23
+ nil
24
+ end
25
+ end
26
+ class Update
27
+ def self.describe
28
+ nil
29
+ end
30
+ end
31
+ class Save
32
+ def self.describe
33
+ nil
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,53 @@
1
+
2
+ module Nucleon
3
+ module Plugin
4
+ class CmAction < Nucleon.plugin_class(:nucleon, :action)
5
+
6
+ #-----------------------------------------------------------------------------
7
+ # Constuctor / Destructor
8
+
9
+ def normalize(reload)
10
+ super do
11
+
12
+ end
13
+ end
14
+
15
+ #-----------------------------------------------------------------------------
16
+ # Property accessor / modifiers
17
+
18
+ def self.namespace
19
+ :cm
20
+ end
21
+
22
+ #---
23
+
24
+ def configure
25
+ super do
26
+ yield if block_given?
27
+ end
28
+ end
29
+
30
+ #-----------------------------------------------------------------------------
31
+ # Settings
32
+
33
+ #-----------------------------------------------------------------------------
34
+ # Operations
35
+
36
+ def validate(node = nil, network = nil)
37
+ super(node, network)
38
+ end
39
+
40
+ #---
41
+
42
+ def execute(&block)
43
+ super(false, false) do
44
+ block.call
45
+ end
46
+ end
47
+
48
+ #-----------------------------------------------------------------------------
49
+ # Utilities
50
+
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,45 @@
1
+
2
+ nucleon_require(File.dirname(__FILE__), :cm_action)
3
+
4
+ #---
5
+
6
+ module Nucleon
7
+ module Plugin
8
+ class PlanAction < Plugin::CmAction
9
+
10
+ #-----------------------------------------------------------------------------
11
+ # Constuctor / Destructor
12
+
13
+ def normalize(reload)
14
+ super do
15
+
16
+ end
17
+ end
18
+
19
+ #-----------------------------------------------------------------------------
20
+ # Property accessor / modifiers
21
+
22
+ def configure
23
+ super do
24
+ yield if block_given?
25
+ end
26
+ end
27
+
28
+ #-----------------------------------------------------------------------------
29
+ # Settings
30
+
31
+ #-----------------------------------------------------------------------------
32
+ # Operations
33
+
34
+ def execute(&block)
35
+ super do
36
+ block.call
37
+ end
38
+ end
39
+
40
+ #-----------------------------------------------------------------------------
41
+ # Utilities
42
+
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,40 @@
1
+
2
+ module Nucleon
3
+ module Action
4
+ module Plan
5
+ class Deploy < Plugin::PlanAction
6
+
7
+ #-----------------------------------------------------------------------------
8
+ # Info
9
+
10
+ def self.describe
11
+ super(:plan, :deploy, 700)
12
+ end
13
+
14
+ #-----------------------------------------------------------------------------
15
+ # Settings
16
+
17
+ def configure
18
+ super do
19
+
20
+ end
21
+ end
22
+
23
+ #---
24
+
25
+ def arguments
26
+ []
27
+ end
28
+
29
+ #-----------------------------------------------------------------------------
30
+ # Action operations
31
+
32
+ def execute
33
+ super do
34
+ info('start')
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+
2
+ module Nucleon
3
+ module Action
4
+ module Plan
5
+ class Destroy < Plugin::PlanAction
6
+
7
+ #-----------------------------------------------------------------------------
8
+ # Info
9
+
10
+ def self.describe
11
+ super(:plan, :destroy, 600)
12
+ end
13
+
14
+ #-----------------------------------------------------------------------------
15
+ # Settings
16
+
17
+ def configure
18
+ super do
19
+
20
+ end
21
+ end
22
+
23
+ #---
24
+
25
+ def arguments
26
+ []
27
+ end
28
+
29
+ #-----------------------------------------------------------------------------
30
+ # Action operations
31
+
32
+ def execute
33
+ super do
34
+ info('start')
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
data/locales/en.yml CHANGED
@@ -1 +1,20 @@
1
1
  en:
2
+ cm:
3
+ action:
4
+ plan:
5
+ deploy:
6
+ description: |-
7
+ Create or update a cloud definition
8
+ help: |-
9
+ TODO: Fill this help information in!!
10
+ info:
11
+ start: |-
12
+ Starting deployment of cloud definition
13
+ destroy:
14
+ description: |-
15
+ Destroy a cloud definition
16
+ help: |-
17
+ TODO: Fill this help information in!!
18
+ info:
19
+ start: |-
20
+ Destroying cloud environment built from cloud definition
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adrian Webb
@@ -11,75 +11,75 @@ cert_chain: []
11
11
  date: 2015-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
+ type: :runtime
14
15
  name: nucleon
16
+ prerelease: false
15
17
  requirement: !ruby/object:Gem::Requirement
16
18
  requirements:
17
19
  - - "~>"
18
20
  - !ruby/object:Gem::Version
19
21
  version: '0.2'
20
- type: :runtime
21
- prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0.2'
27
27
  - !ruby/object:Gem::Dependency
28
+ type: :development
28
29
  name: bundler
30
+ prerelease: false
29
31
  requirement: !ruby/object:Gem::Requirement
30
32
  requirements:
31
33
  - - "~>"
32
34
  - !ruby/object:Gem::Version
33
- version: '1.7'
34
- type: :development
35
- prerelease: false
35
+ version: '1.10'
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.7'
40
+ version: '1.10'
41
41
  - !ruby/object:Gem::Dependency
42
+ type: :development
42
43
  name: jeweler
44
+ prerelease: false
43
45
  requirement: !ruby/object:Gem::Requirement
44
46
  requirements:
45
47
  - - "~>"
46
48
  - !ruby/object:Gem::Version
47
49
  version: '2.0'
48
- type: :development
49
- prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
+ type: :development
56
57
  name: rspec
58
+ prerelease: false
57
59
  requirement: !ruby/object:Gem::Requirement
58
60
  requirements:
59
61
  - - "~>"
60
62
  - !ruby/object:Gem::Version
61
- version: '3.1'
62
- type: :development
63
- prerelease: false
63
+ version: '3.4'
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.1'
68
+ version: '3.4'
69
69
  - !ruby/object:Gem::Dependency
70
+ type: :development
70
71
  name: rdoc
72
+ prerelease: false
71
73
  requirement: !ruby/object:Gem::Requirement
72
74
  requirements:
73
75
  - - "~>"
74
76
  - !ruby/object:Gem::Version
75
- version: '3.12'
76
- type: :development
77
- prerelease: false
77
+ version: '4.2'
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '3.12'
82
+ version: '4.2'
83
83
  description: |2
84
84
 
85
85
  Pluggable cloud management framework that provides a simple foundation for
@@ -105,6 +105,12 @@ files:
105
105
  - lib/cm.rb
106
106
  - lib/core/errors.rb
107
107
  - lib/core/facade.rb
108
+ - lib/core/mixin/action/config.rb
109
+ - lib/core/overrides.rb
110
+ - lib/core/plugin/cm_action.rb
111
+ - lib/core/plugin/plan_action.rb
112
+ - lib/nucleon/action/plan/deploy.rb
113
+ - lib/nucleon/action/plan/destroy.rb
108
114
  - locales/en.yml
109
115
  - spec/spec_helper.rb
110
116
  homepage: http://github.com/adrianwebb/cm
@@ -132,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
138
  version: '0'
133
139
  requirements: []
134
140
  rubyforge_project:
135
- rubygems_version: 2.4.5
141
+ rubygems_version: 2.4.8
136
142
  signing_key:
137
143
  specification_version: 4
138
144
  summary: Pluggable cloud management framework that provides a simple foundation for