dtk-node-agent 0.5.17 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- YTNhMGI2MjY5NjExZmMyNmIwZjFiYWYwNzFjMWY5ZTgzOTJhNDY1Nw==
5
- data.tar.gz: !binary |-
6
- M2E5ZTVhZjM2MjE1M2JhYTA1YjVjMzhjNjdiOTZjNzQzNjI2NDg4ZA==
2
+ SHA1:
3
+ metadata.gz: 9deb49e5523865f975ea6d80b996de3db3262e81
4
+ data.tar.gz: 684d5df7570054a2542cc8587dfc17a55cc77ba6
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- YmY2MWMyZTEyNmQ3ZmIxYzE5MzQyMTFhN2JhYmI4NWRlMmVjYjFjZWE3OTE5
10
- ODg5NGZjYWQ3YjBjZTNkYjFhNmNlMWQ0YzAwZGRmMjRiMjU5YjZlYzliZGE5
11
- YWE2M2U3OWJkOGEwYmJkZTJmOWVlNGIzOTIyZDRhM2E4ZDcwZjQ=
12
- data.tar.gz: !binary |-
13
- ODI0ZGY0YjEwYWJlYjkxMGY3YjM5MmQ5MTU3YWYxOTNlMjIyZDFlMjQ4YTdh
14
- NmEzYjVlNTczZmY2ZjdiNjZhYjEzMTg0NGRmMzFhN2EwOGJiYzYyMmQyNzZi
15
- MzMzZjk4NDA3OTYxYTgzZGExOWExNTdlYzNiZmQ2ZTliNTllZWQ=
6
+ metadata.gz: 900dbd83fb0df8e84f5d3f4838145c3022fdeb5458b9397a4acd782661bbb48be00c72e94039c31587dc641df3d92bf2a2ff5fb72a75859c24cb779cc15dcc07
7
+ data.tar.gz: 51d3386fb5289ddfebb287d69b660b5fb003b4f1199128dd9c61b56298301b4cc8ce2b70f3d804ab4e91bf6ebf53f60854de659a960356d9145a65f2f4de1135
data/Gemfile.lock CHANGED
@@ -1,15 +1,54 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- dtk-node-agent (0.1.0)
4
+ dtk-node-agent (0.5.17)
5
5
  facter (~> 1.7.3)
6
- trollop (~> 2.0)
6
+ grit (~> 2.5.0)
7
+ posix-spawn (= 0.3.8)
8
+ puppet (~> 3.3.2)
9
+ serverspec (~> 1.1.0)
10
+ specinfra (~> 1.0.4)
11
+ sshkeyauth (~> 0.0.11)
12
+ stomp (~> 1.3.1)
7
13
 
8
14
  GEM
9
15
  remote: http://rubygems.org/
10
16
  specs:
11
- facter (1.7.3)
12
- trollop (2.0)
17
+ diff-lcs (1.2.5)
18
+ facter (1.7.6)
19
+ grit (2.5.0)
20
+ diff-lcs (~> 1.1)
21
+ mime-types (~> 1.15)
22
+ posix-spawn (~> 0.3.6)
23
+ hiera (1.3.4)
24
+ json_pure
25
+ highline (1.6.21)
26
+ json_pure (1.8.1)
27
+ mime-types (1.25.1)
28
+ net-ssh (2.9.1)
29
+ posix-spawn (0.3.8)
30
+ puppet (3.3.2)
31
+ facter (~> 1.6)
32
+ hiera (~> 1.0)
33
+ rgen (~> 0.6.5)
34
+ rgen (0.6.6)
35
+ rspec (2.99.0)
36
+ rspec-core (~> 2.99.0)
37
+ rspec-expectations (~> 2.99.0)
38
+ rspec-mocks (~> 2.99.0)
39
+ rspec-core (2.99.2)
40
+ rspec-expectations (2.99.2)
41
+ diff-lcs (>= 1.1.3, < 2.0)
42
+ rspec-mocks (2.99.2)
43
+ serverspec (1.1.0)
44
+ highline
45
+ net-ssh
46
+ rspec (~> 2.13)
47
+ specinfra (>= 1.0.0)
48
+ specinfra (1.0.5)
49
+ sshkeyauth (0.0.11)
50
+ net-ssh
51
+ stomp (1.3.3)
13
52
 
14
53
  PLATFORMS
15
54
  ruby
@@ -35,5 +35,6 @@ Gem::Specification.new do |gem|
35
35
  gem.add_dependency 'sshkeyauth', '~> 0.0.11'
36
36
  gem.add_dependency 'serverspec', '~> 1.1.0'
37
37
  gem.add_dependency 'specinfra', '~> 1.0.4'
38
+ gem.add_dependency 'posix-spawn', '0.3.8'
38
39
 
39
40
  end
@@ -1,12 +1,16 @@
1
1
  {
2
- :puppet_version => '2.7.23',
3
- :mcollective_version => 2.2,
4
- :puppetlabs_el5_rpm_repo => 'http://yum.puppetlabs.com/el/5/products/i386/puppetlabs-release-5-7.noarch.rpm',
5
- :puppetlabs_el6_rpm_repo => 'http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-7.noarch.rpm',
2
+ :puppet_version => '3.3.0',
3
+ :mcollective_version => 2.2,
4
+ :puppetlabs_el5_rpm_repo => 'http://yum.puppetlabs.com/el/5/products/i386/puppetlabs-release-5-7.noarch.rpm',
5
+ :puppetlabs_el6_rpm_repo => 'http://yum.puppetlabs.com/el/6/products/i386/puppetlabs-release-6-7.noarch.rpm',
6
6
  :rpm_forge_el5_X86_64_repo => 'http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.x86_64.rpm',
7
- :rpm_forge_el5_i686_repo => 'http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.i386.rpm',
7
+ :rpm_forge_el5_i686_repo => 'http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.5.3-1.el5.rf.i386.rpm',
8
8
  :rpm_forge_el6_X86_64_repo => 'http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm',
9
- :rpm_forge_el6_i686_repo => 'http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.i686.rpm',
10
- :puppet_omnibus_deb64 => 'http://dtk-storage.s3.amazonaws.com/puppet-omnibus_2.7.23-fpm0_amd64.deb',
11
- :puppet_omnibus_rpm64 => 'http://dtk-storage.s3.amazonaws.com/puppet-omnibus-2.7.23.fpm0-1.x86_64.rpm'
9
+ :rpm_forge_el6_i686_repo => 'http://apt.sw.be/redhat/el6/en/i386/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.i686.rpm',
10
+ :puppet_omnibus_deb64 => 'http://dtk-storage.s3.amazonaws.com/puppet-omnibus_2.7.23-fpm0_amd64.deb',
11
+ :puppet_omnibus_rpm64 => 'http://dtk-storage.s3.amazonaws.com/puppet-omnibus-2.7.23.fpm0-1.x86_64.rpm',
12
+ :upgrades => {
13
+ :redhat => ['openssl', 'bash'],
14
+ :debian => ['openssl', 'bash']
15
+ }
12
16
  }
@@ -18,10 +18,14 @@ module DTK
18
18
  exit(1)
19
19
  end
20
20
 
21
- if Facter.operatingsystem == 'Debian' || Facter.operatingsystem == 'Ubuntu'
21
+ if Facter.osfamily == 'Debian'
22
22
  # set up apt and install packages
23
23
  shell "apt-get update --fix-missing"
24
24
  shell "apt-get install -y build-essential wget curl git"
25
+ # install upgrades
26
+ Array(CONFIG[:upgrades][:debian]).each do |package|
27
+ shell "apt-get install -y #{package}"
28
+ end
25
29
  shell "wget http://apt.puppetlabs.com/puppetlabs-release-#{Facter.lsbdistcodename}.deb"
26
30
  puts "Installing Puppet Labs repository..."
27
31
  shell "dpkg -i puppetlabs-release-#{Facter.lsbdistcodename}.deb"
@@ -30,13 +34,18 @@ module DTK
30
34
  # install mcollective
31
35
  puts "Installing MCollective..."
32
36
  shell "apt-get -y install mcollective"
33
- elsif Facter.operatingsystem == 'CentOS' || Facter.operatingsystem == 'RedHat'
37
+ elsif Facter.osfamily == 'RedHat'
34
38
  shell "yum -y install yum-utils wget bind-utils"
39
+ # install upgrades
40
+ Array(CONFIG[:upgrades][:redhat]).each do |package|
41
+ shell "yum -y update #{package}"
42
+ end
35
43
  case Facter.operatingsystemmajrelease
36
44
  when "5"
37
45
  shell "rpm -ivh #{CONFIG[:puppetlabs_el5_rpm_repo]}"
38
46
  Facter.architecture == 'X86_64' ? (shell "rpm -ivh #{CONFIG[:rpm_forge_el5_X86_64_repo]}") : (shell "rpm -ivh #{CONFIG[:rpm_forge_el5_i686_repo]}")
39
- when "6"
47
+ when "6", "n/a"
48
+ next unless Facter.operatingsystem == "Amazon"
40
49
  shell "rpm -ivh #{CONFIG[:puppetlabs_el6_rpm_repo]}"
41
50
  Facter.architecture == 'X86_64' ? (shell "rpm -ivh #{CONFIG[:rpm_forge_el6_X86_64_repo]}") : (shell "rpm -ivh #{CONFIG[:rpm_forge_el6_i686_repo]}")
42
51
  shell "yum-config-manager --disable rpmforge-release"
@@ -57,7 +66,7 @@ module DTK
57
66
  shell "chkconfig --level 345 ec2-run-user-data on"
58
67
  end
59
68
  else
60
- echo "Unsuported OS for automatic agent installation. Exiting now..."
69
+ puts "Unsuported OS for automatic agent installation. Exiting now..."
61
70
  exit(1)
62
71
  end
63
72
 
@@ -115,32 +124,33 @@ module DTK
115
124
  end
116
125
 
117
126
  def self.install_additions
118
- # create puppet group
119
- shell "groupadd puppet" unless `grep puppet /etc/group`.include? "puppet"
120
- # create necessary dirs
121
- [ '/var/log/puppet/',
122
- '/var/lib/puppet/lib/puppet/indirector',
123
- '/etc/puppet/modules',
124
- '/usr/share/mcollective/plugins/mcollective'
125
- ].map! { |p| FileUtils.mkdir_p(p) unless File.directory?(p) }
126
- # copy puppet libs
127
- FileUtils.cp_r(Dir.glob("#{base_dir}/puppet_additions/puppet_lib_base/puppet/indirector/*"), "/var/lib/puppet/lib/puppet/indirector/")
128
- # copy r8 puppet module
129
- FileUtils.cp_r(Dir.glob("#{base_dir}/puppet_additions/modules/r8"), "/etc/puppet/modules")
130
- # copy mcollective plugins
131
- FileUtils.cp_r(Dir.glob("/usr/libexec/mcollective/mcollective/*"), "/usr/share/mcollective/plugins/mcollective") if File.directory?("/usr/libexec/mcollective/")
132
- FileUtils.cp_r(Dir.glob("#{base_dir}/mcollective_additions/plugins/v#{CONFIG[:mcollective_version]}/*"), "/usr/share/mcollective/plugins/mcollective")
133
-
134
- # copy mcollective config
135
- FileUtils.cp_r("#{base_dir}/mcollective_additions/server.cfg", "/etc/mcollective", :remove_destination => true)
136
-
137
- # copy compatible mcollective init script
138
- FileUtils.cp_r("#{base_dir}/mcollective_additions/#{Facter.osfamily.downcase}.mcollective.init", "/etc/init.d/mcollective", :remove_destination => true)
139
- end
140
-
141
- def self.base_dir
142
- File.expand_path('../..', File.dirname(__FILE__))
143
- end
127
+ # create puppet group
128
+ shell "groupadd puppet" unless `grep puppet /etc/group`.include? "puppet"
129
+ # create necessary dirs
130
+ [ '/var/log/puppet/',
131
+ '/var/lib/puppet/lib/puppet/indirector',
132
+ '/etc/puppet/modules',
133
+ '/usr/share/mcollective/plugins/mcollective'
134
+ ].map! { |p| FileUtils.mkdir_p(p) unless File.directory?(p) }
135
+ # copy puppet libs
136
+ FileUtils.cp_r(Dir.glob("#{base_dir}/puppet_additions/puppet_lib_base/puppet/indirector/*"), "/var/lib/puppet/lib/puppet/indirector/")
137
+ # copy r8 puppet module
138
+ FileUtils.cp_r(Dir.glob("#{base_dir}/puppet_additions/modules/r8"), "/etc/puppet/modules")
139
+ # copy mcollective plugins
140
+ FileUtils.cp_r(Dir.glob("/usr/libexec/mcollective/mcollective/*"), "/usr/share/mcollective/plugins/mcollective") if File.directory?("/usr/libexec/mcollective/")
141
+ FileUtils.cp_r(Dir.glob("#{base_dir}/mcollective_additions/plugins/v#{CONFIG[:mcollective_version]}/*"), "/usr/share/mcollective/plugins/mcollective")
142
+
143
+ # copy mcollective config
144
+ FileUtils.cp_r("#{base_dir}/mcollective_additions/server.cfg", "/etc/mcollective", :remove_destination => true)
145
+
146
+ # copy compatible mcollective init script
147
+ FileUtils.cp_r("#{base_dir}/mcollective_additions/#{Facter.osfamily.downcase}.mcollective.init", "/etc/init.d/mcollective", :remove_destination => true)
148
+ shell "chmod +x /etc/init.d/mcollective"
149
+ end
150
+
151
+ def self.base_dir
152
+ File.expand_path('../..', File.dirname(__FILE__))
153
+ end
144
154
 
145
155
  end
146
156
  end
@@ -1,3 +1,3 @@
1
1
  module DtkNodeAgent
2
- VERSION="0.5.17"
2
+ VERSION="0.6.0"
3
3
  end
@@ -34,6 +34,10 @@ daemonopts="--pid=${pidfile} --config=/etc/mcollective/server.cfg"
34
34
  # Source function library.
35
35
  . /lib/lsb/init-functions
36
36
 
37
+ if [ -f /etc/default/mcollective ]; then
38
+ . /etc/default/mcollective
39
+ fi
40
+
37
41
  # Check that binary exists
38
42
  if ! [ -f $mcollectived ]
39
43
  then
@@ -75,6 +79,9 @@ case "$1" in
75
79
  $0 start
76
80
  fi
77
81
  ;;
82
+ force-reload)
83
+ echo "not implemented"
84
+ ;;
78
85
  status)
79
86
  status_of_proc -p ${pidfile} ${mcollectived} ${name} && exit 0 || exit $?
80
87
  ;;
@@ -71,7 +71,7 @@ module MCollective
71
71
  pull_module(repo_dir,vc[:branch],opts)
72
72
  end
73
73
  # clean_and_clone set so if pull error then try again, this time cleaning dir and freshly cleaning
74
- clean_and_clone = pull_err.nil?
74
+ clean_and_clone = !pull_err.nil?
75
75
  end
76
76
 
77
77
  if clean_and_clone
metadata CHANGED
@@ -1,113 +1,127 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dtk-node-agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.17
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rich PELAVIN
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-19 00:00:00.000000000 Z
11
+ date: 2014-10-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: puppet
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 3.3.2
20
20
  type: :runtime
21
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: 3.3.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: facter
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: 1.7.3
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.7.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: grit
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: 2.5.0
48
48
  type: :runtime
49
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.5.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: stomp
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: 1.3.1
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: 1.3.1
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: sshkeyauth
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ~>
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: 0.0.11
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ~>
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.0.11
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: serverspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ~>
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: 1.1.0
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 1.1.0
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: specinfra
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
103
  version: 1.0.4
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: 1.0.4
111
+ - !ruby/object:Gem::Dependency
112
+ name: posix-spawn
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '='
116
+ - !ruby/object:Gem::Version
117
+ version: 0.3.8
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '='
123
+ - !ruby/object:Gem::Version
124
+ version: 0.3.8
111
125
  description: The DTK Node Agent runs on your nodes that you wish to manage using your
112
126
  DTK Server. It comes pre-installed on all nodes created/managed by hosted DTK Server
113
127
  accounts.
@@ -195,17 +209,17 @@ require_paths:
195
209
  - lib
196
210
  required_ruby_version: !ruby/object:Gem::Requirement
197
211
  requirements:
198
- - - ! '>='
212
+ - - ">="
199
213
  - !ruby/object:Gem::Version
200
214
  version: '0'
201
215
  required_rubygems_version: !ruby/object:Gem::Requirement
202
216
  requirements:
203
- - - ! '>='
217
+ - - ">="
204
218
  - !ruby/object:Gem::Version
205
219
  version: '0'
206
220
  requirements: []
207
221
  rubyforge_project:
208
- rubygems_version: 2.2.2
222
+ rubygems_version: 2.4.1
209
223
  signing_key:
210
224
  specification_version: 4
211
225
  summary: DTK Node Agent gem.