cluster_chef-knife 3.0.10 → 3.0.11
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +14 -0
- data/TODO.md +8 -0
- data/VERSION +1 -1
- data/cluster_chef-knife.gemspec +2 -2
- data/lib/chef/knife/cluster_launch.rb +5 -14
- data/lib/chef/knife/cluster_proxy.rb +1 -1
- data/lib/chef/knife/cluster_sync.rb +1 -0
- data/lib/chef/knife/knife_common.rb +1 -1
- metadata +3 -3
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,17 @@
|
|
1
|
+
## v3.0.11: We Raid at Dawn
|
2
|
+
|
3
|
+
* You can now assemble raid groups in the cluster definition:
|
4
|
+
- node metadata instructing the volumes recipe to build the raid volume
|
5
|
+
- marks the component volumes as non-mountable, in the appropriate raid group, etc
|
6
|
+
* Changed the order of `cluster_role` and `facet_role` in the run list. It now goes:
|
7
|
+
- `:first` roles (cluster then facet)
|
8
|
+
- `:normal` roles (cluster then facet)
|
9
|
+
- special roles: `cluster_role` then `facet_role`
|
10
|
+
- `:last` roles (cluster then facet)
|
11
|
+
* knife cluster launch uses ClusterBootstrap, not knife's vanilla bootstrap.
|
12
|
+
* can now do group('group_that_wants').authorized_by_group('group_that_grants') so that in cluster A I can request access to cluster B without gaining its group myself.
|
13
|
+
* push the organization (if set) into the node metadata
|
14
|
+
|
1
15
|
## v3.0.10: Cloud fixes
|
2
16
|
|
3
17
|
* security groups are now created/updated in knife cluster sync. This can't help you apply then to a node afer launch though -- nothing can, the API doesn't allow it.
|
data/TODO.md
CHANGED
@@ -6,3 +6,11 @@
|
|
6
6
|
* knife cluster kick fails if service isn't running
|
7
7
|
* make clear directions for installing `cluster_chef` and its initial use.
|
8
8
|
* knife cluster launch should fail differently if you give it a facet that doesn't exist
|
9
|
+
|
10
|
+
|
11
|
+
|
12
|
+
### ssh_user, ssh_identity_file, keypair, template should be set by cluster except when they shouldn't
|
13
|
+
|
14
|
+
### Organization-specific homebase files
|
15
|
+
|
16
|
+
The current organization of the homebase needs to better scope organization-specific customizations
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.0.
|
1
|
+
3.0.11
|
data/cluster_chef-knife.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "cluster_chef-knife"
|
8
|
-
s.version = "3.0.
|
8
|
+
s.version = "3.0.11"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Infochimps"]
|
12
|
-
s.date = "2012-01-
|
12
|
+
s.date = "2012-01-24"
|
13
13
|
s.description = "cluster_chef allows you to orchestrate not just systems but clusters of machines. It includes a powerful layer on top of knife and a collection of cloud cookbooks."
|
14
14
|
s.email = "coders@infochimps.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -17,6 +17,7 @@
|
|
17
17
|
#
|
18
18
|
|
19
19
|
require File.expand_path(File.dirname(__FILE__)+"/knife_common.rb")
|
20
|
+
require File.expand_path(File.dirname(__FILE__)+"/cluster_bootstrap.rb")
|
20
21
|
|
21
22
|
class Chef
|
22
23
|
class Knife
|
@@ -26,15 +27,15 @@ class Chef
|
|
26
27
|
deps do
|
27
28
|
require 'time'
|
28
29
|
require 'socket'
|
29
|
-
|
30
|
-
Chef::Knife::Bootstrap.load_deps
|
30
|
+
Chef::Knife::ClusterBootstrap.load_deps
|
31
31
|
end
|
32
32
|
|
33
33
|
banner "knife cluster launch CLUSTER_NAME [FACET_NAME [INDEXES]] (options)"
|
34
34
|
[ :ssh_port, :ssh_password, :identity_file, :use_sudo,
|
35
|
-
:prerelease, :bootstrap_version, :template_file, :distro
|
35
|
+
:prerelease, :bootstrap_version, :template_file, :distro,
|
36
|
+
:bootstrap_runs_chef_client, :host_key_verify
|
36
37
|
].each do |name|
|
37
|
-
option name, Chef::Knife::
|
38
|
+
option name, Chef::Knife::ClusterBootstrap.options[name]
|
38
39
|
end
|
39
40
|
|
40
41
|
option :dry_run,
|
@@ -53,16 +54,6 @@ class Chef
|
|
53
54
|
:description => "Also bootstrap the launched node (default is NOT to bootstrap)",
|
54
55
|
:boolean => true,
|
55
56
|
:default => false
|
56
|
-
option :bootstrap_runs_chef_client,
|
57
|
-
:long => "--[no-]bootstrap-runs-chef-client",
|
58
|
-
:description => "If bootstrap is invoked, the bootstrap script causes an initial run of chef-client (default true).",
|
59
|
-
:boolean => true,
|
60
|
-
:default => true
|
61
|
-
option :host_key_verify,
|
62
|
-
:long => "--[no-]host-key-verify",
|
63
|
-
:description => "Verify host key, enabled by default.",
|
64
|
-
:boolean => true,
|
65
|
-
:default => true
|
66
57
|
|
67
58
|
def run
|
68
59
|
load_cluster_chef
|
@@ -97,7 +97,7 @@ class Chef
|
|
97
97
|
#
|
98
98
|
def dump_proxy_pac
|
99
99
|
pac_filename = File.expand_path(File.join('/tmp', "cluster_chef_proxy-#{ENV['USER']}.pac"))
|
100
|
-
ui.info("point your browser at PAC (automatic proxy config file)
|
100
|
+
ui.info("point your browser at PAC (automatic proxy config file) file://#{pac_filename}")
|
101
101
|
File.open(pac_filename, 'w') do |f|
|
102
102
|
f.print %Q{function FindProxyForURL(url, host) {
|
103
103
|
if ((shExpMatch(host, "*ec2*.amazonaws.com" )) ||
|
@@ -121,7 +121,7 @@ module ClusterChef
|
|
121
121
|
bootstrap.config[:distro] = config[:distro] || server.cloud.bootstrap_distro
|
122
122
|
bootstrap.config[:use_sudo] = true unless config[:use_sudo] == false
|
123
123
|
bootstrap.config[:chef_node_name] = server.fullname
|
124
|
-
bootstrap.config[:client_key] = server.client_key.body
|
124
|
+
bootstrap.config[:client_key] = server.client_key.body if server.client_key.body
|
125
125
|
|
126
126
|
bootstrap
|
127
127
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: cluster_chef-knife
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 3.0.
|
5
|
+
version: 3.0.11
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Infochimps
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2012-01-
|
13
|
+
date: 2012-01-24 00:00:00 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: chef
|
@@ -176,7 +176,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
176
176
|
requirements:
|
177
177
|
- - ">="
|
178
178
|
- !ruby/object:Gem::Version
|
179
|
-
hash:
|
179
|
+
hash: 2883280125648369733
|
180
180
|
segments:
|
181
181
|
- 0
|
182
182
|
version: "0"
|