specinfra 0.5.3 → 0.5.4
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 +4 -4
- data/Rakefile +2 -40
- data/lib/specinfra/backend/powershell/support/list_windows_features.ps1 +31 -0
- data/lib/specinfra/command/windows.rb +9 -0
- data/lib/specinfra/version.rb +1 -1
- data/specinfra.gemspec +1 -0
- metadata +28 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3b8fdf955aacbd1a6cc6ef86114e1fcfc1fd1efb
|
4
|
+
data.tar.gz: 5af1d3b6937c9973cca6d16723eb79b9a6516863
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e9468fa01ab2c7c1792bfdc8d3fb1d550445f5a97ba13d39d7218c6ec93bfe7f0e4b05a48e340a446e1c40bda90f0943d13262e6885c8f9416e89fdc9db79dcc
|
7
|
+
data.tar.gz: 4809829241f4974e9a793fc2ca46b6c5220d881bafefa566f0d8de0eb508f40d15179c19cdc8c94ec6d20913f374b99326286cf88dd259706ee4123b22acff19
|
data/Rakefile
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
|
-
require "
|
3
|
-
require
|
2
|
+
require "rspec/core/rake_task"
|
3
|
+
require "octorelease"
|
4
4
|
|
5
5
|
task :spec => 'spec:all'
|
6
6
|
|
@@ -28,41 +28,3 @@ namespace :spec do
|
|
28
28
|
t.pattern = "spec/configuration_spec.rb"
|
29
29
|
end
|
30
30
|
end
|
31
|
-
|
32
|
-
desc 'Release gem and create a release on GitHub'
|
33
|
-
task 'create_release' => 'release' do
|
34
|
-
require 'octokit'
|
35
|
-
|
36
|
-
Octokit.configure do |c|
|
37
|
-
c.login = `git config --get github.user`.strip
|
38
|
-
c.access_token = `git config --get github.token`.strip
|
39
|
-
end
|
40
|
-
|
41
|
-
t = Bundler::GemHelper.new
|
42
|
-
|
43
|
-
current_version = "v#{t.gemspec.version.to_s}"
|
44
|
-
previous_version = ""
|
45
|
-
`git tag`.split(/\n/).each do |tag|
|
46
|
-
break if tag == current_version
|
47
|
-
previous_version = tag
|
48
|
-
end
|
49
|
-
|
50
|
-
log = `git log #{previous_version}..#{current_version} --grep=Merge`
|
51
|
-
|
52
|
-
repo = `git remote -v | grep origin`.match(/([\w-]+\/[\w-]+)\.git/)[1]
|
53
|
-
|
54
|
-
description = []
|
55
|
-
log.split(/commit/).each do |lines|
|
56
|
-
lines.match(/Merge pull request \#(\d+)/) do |m|
|
57
|
-
url = "https://github.com/#{repo}/pull/#{m[1]}"
|
58
|
-
title = Octokit.pull_request(repo, m[1]).title
|
59
|
-
description << "* [#{title}](#{url})"
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
Octokit.create_release(
|
64
|
-
repo,
|
65
|
-
current_version,
|
66
|
-
{:body => description.join("\n")}
|
67
|
-
)
|
68
|
-
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
function ListWindowsFeatures
|
2
|
+
{
|
3
|
+
try
|
4
|
+
{
|
5
|
+
$dism = DISM /Online /Get-Features /Format:List | Where-Object {$_}
|
6
|
+
|
7
|
+
if($LASTEXITCODE -ne 0)
|
8
|
+
{
|
9
|
+
Write-Error $dism
|
10
|
+
Break
|
11
|
+
}
|
12
|
+
|
13
|
+
$f = $dism[4..($dism.length-2)]
|
14
|
+
$feature = for($i=0; $i -lt $f.length;$i+=2)
|
15
|
+
{
|
16
|
+
$tmp = $f[$i],$f[$i+1] -replace '^([^:]+:\s)'
|
17
|
+
|
18
|
+
New-Object PSObject -Property @{
|
19
|
+
Name = $tmp[0]
|
20
|
+
State = $tmp[1]
|
21
|
+
}
|
22
|
+
}
|
23
|
+
|
24
|
+
return $feature
|
25
|
+
}
|
26
|
+
catch
|
27
|
+
{
|
28
|
+
Throw
|
29
|
+
}
|
30
|
+
|
31
|
+
}
|
@@ -203,6 +203,15 @@ module SpecInfra
|
|
203
203
|
end
|
204
204
|
end
|
205
205
|
|
206
|
+
def check_windows_feature_enabled(name)
|
207
|
+
|
208
|
+
Backend::PowerShell::Command.new do
|
209
|
+
using 'list_windows_features.ps1'
|
210
|
+
exec "@(ListWindowsFeatures | Where-Object {($_.name -eq '#{name}') -and ($_.State -eq 'enabled')}).count -gt 0"
|
211
|
+
end
|
212
|
+
|
213
|
+
end
|
214
|
+
|
206
215
|
private
|
207
216
|
|
208
217
|
def item_has_attribute item, attribute
|
data/lib/specinfra/version.rb
CHANGED
data/specinfra.gemspec
CHANGED
metadata
CHANGED
@@ -1,55 +1,69 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: specinfra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gosuke Miyashita
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ~>
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
20
|
type: :development
|
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: '1.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
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: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - '>='
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: octorelease
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
53
67
|
- !ruby/object:Gem::Version
|
54
68
|
version: '0'
|
55
69
|
description: Common layer for serverspec and configspec
|
@@ -59,8 +73,8 @@ executables: []
|
|
59
73
|
extensions: []
|
60
74
|
extra_rdoc_files: []
|
61
75
|
files:
|
62
|
-
-
|
63
|
-
-
|
76
|
+
- .gitignore
|
77
|
+
- .travis.yml
|
64
78
|
- Gemfile
|
65
79
|
- LICENSE.txt
|
66
80
|
- README.md
|
@@ -83,6 +97,7 @@ files:
|
|
83
97
|
- lib/specinfra/backend/powershell/support/find_usergroup.ps1
|
84
98
|
- lib/specinfra/backend/powershell/support/is_port_listening.ps1
|
85
99
|
- lib/specinfra/backend/powershell/support/is_remote_port_listening.ps1
|
100
|
+
- lib/specinfra/backend/powershell/support/list_windows_features.ps1
|
86
101
|
- lib/specinfra/backend/shellscript.rb
|
87
102
|
- lib/specinfra/backend/ssh.rb
|
88
103
|
- lib/specinfra/backend/winrm.rb
|
@@ -130,17 +145,17 @@ require_paths:
|
|
130
145
|
- lib
|
131
146
|
required_ruby_version: !ruby/object:Gem::Requirement
|
132
147
|
requirements:
|
133
|
-
- -
|
148
|
+
- - '>='
|
134
149
|
- !ruby/object:Gem::Version
|
135
150
|
version: '0'
|
136
151
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
137
152
|
requirements:
|
138
|
-
- -
|
153
|
+
- - '>='
|
139
154
|
- !ruby/object:Gem::Version
|
140
155
|
version: '0'
|
141
156
|
requirements: []
|
142
157
|
rubyforge_project:
|
143
|
-
rubygems_version: 2.
|
158
|
+
rubygems_version: 2.0.3
|
144
159
|
signing_key:
|
145
160
|
specification_version: 4
|
146
161
|
summary: Common layer for serverspec and configspec
|