octopus-serverspec-extensions 0.7.2 → 0.8.0

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: 0f319052bf87a0915d5dba0833e05e2d2ded9cec
4
- data.tar.gz: 833de5abd1e2d8e60812de2d1395b25c0efa8f2b
3
+ metadata.gz: d4b7a6531d510a57eb775da9df9d35440b5d3939
4
+ data.tar.gz: 52132ac836202b8f0b595328d0335b2e58feaa5c
5
5
  SHA512:
6
- metadata.gz: 830cd23dd8bd8b5911a30d01b949b5b3097d9a0a1466e48b938ba2ecf22242253e0ee797d7530ec4dd8c1f3a86388e3e25d1ab2a6c2b5fcfa33b4b6a546560de
7
- data.tar.gz: d6a6b5ac2bd4a091a245f4ac4ccd631495dd2d5a70d9e2a5fb4a1a5c5e7623eef25fd37950325e463131472a28adaca1023d491aafe958db44123266abc4a9e4
6
+ metadata.gz: f70116f653de98b725067fa4d639784998301b2c6c4ca33ee42fb40f7849fe211ab26a2f78968706a560c907c53e82244dbc605a5bd800c3735ffbddfff87bfc
7
+ data.tar.gz: a649076b66f42438f313917140d71dcf63f75a50622e587a13c8cf2f6f2dea4c8eb5ab12c806629436781c857e7767fff208d032bd27623500cd1ce25a2de2e4
@@ -2,6 +2,7 @@ require 'octopus_serverspec_extensions/type/chocolatey_package.rb'
2
2
  require 'octopus_serverspec_extensions/type/npm_package.rb'
3
3
  require 'octopus_serverspec_extensions/type/java_property_file.rb'
4
4
  require 'octopus_serverspec_extensions/type/octopus_deploy_tentacle.rb'
5
+ require 'octopus_serverspec_extensions/type/windows_firewall.rb'
5
6
  require 'octopus_serverspec_extensions/matcher/have_version.rb'
6
7
  require 'octopus_serverspec_extensions/matcher/run_under_account.rb'
7
8
  require 'octopus_serverspec_extensions/matcher/have_windows_line_endings.rb'
@@ -50,6 +50,21 @@ module Serverspec::Type
50
50
  !@machine["EnvironmentIds"].select {|e| e == environment_id}.empty?
51
51
  end
52
52
 
53
+ def has_tenant?(tenant_name)
54
+ return false if @machine.nil?
55
+ url = "#{@serverUrl}/api/tenants/all?api-key=#{@apiKey}"
56
+ resp = Net::HTTP.get_response(URI.parse(url))
57
+ tenants = JSON.parse(resp.body)
58
+ tenant_id = tenants.select {|e| e["Name"] == tenant_name}.first["Id"]
59
+ !@machine["TenantIds"].select {|e| e == tenant_id}.empty?
60
+ end
61
+
62
+ def has_tenant_tag?(tag_set, tag)
63
+ return false if @machine.nil?
64
+ tenant_tags = @machine["TenantTags"]
65
+ !tenant_tags.select {|e| e == "#{tag_set}/#{tag}"}.empty?
66
+ end
67
+
53
68
  def has_role?(role_name)
54
69
  return false if @machine.nil?
55
70
  roles = @machine["Roles"]
@@ -0,0 +1,32 @@
1
+ require 'serverspec'
2
+ require 'serverspec/type/base'
3
+
4
+ module Serverspec::Type
5
+ class WindowsFirewall < Base
6
+
7
+ def initialize
8
+ @runner = Specinfra::Runner
9
+ end
10
+
11
+ def has_open_port?(port)
12
+ command_result = @runner.run_command("$portFilter = (Get-NetFirewallPortFilter | Where-Object { $_.LocalPort -Eq #{port} -and $_.Protocol -eq 'TCP' }); if ($null -eq $portfilter) { return $false } ; $rule = Get-NetFirewallRule -AssociatedNetFirewallPortFilter $portfilter; \"$($rule.Enabled)|$($rule.PrimaryStatus)\"")
13
+ command_result.stdout.gsub(/\n/, '') == "True|OK"
14
+ end
15
+
16
+ def enabled?
17
+ command_result = @runner.run_command("(get-service MpsSvc).Status")
18
+ command_result.stdout.gsub(/\n/, '') == "Running"
19
+ end
20
+
21
+ def to_s
22
+ "Windows Firewall"
23
+ end
24
+
25
+ end
26
+
27
+ def windows_firewall
28
+ WindowsFirewall.new
29
+ end
30
+ end
31
+
32
+ include Serverspec::Type
@@ -1,3 +1,3 @@
1
1
  module OctopusServerSpecExtensions
2
- VERSION = "0.7.2"
2
+ VERSION = "0.8.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: octopus-serverspec-extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Richardson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-02-06 00:00:00.000000000 Z
11
+ date: 2017-02-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: serverspec
@@ -161,6 +161,7 @@ files:
161
161
  - lib/octopus_serverspec_extensions/type/java_property_file.rb
162
162
  - lib/octopus_serverspec_extensions/type/npm_package.rb
163
163
  - lib/octopus_serverspec_extensions/type/octopus_deploy_tentacle.rb
164
+ - lib/octopus_serverspec_extensions/type/windows_firewall.rb
164
165
  - lib/octopus_serverspec_extensions/version.rb
165
166
  - octopus-serverspec-extensions.gemspec
166
167
  homepage: https://github.com/octopus-deploy/octopus-serverspec-extensions