netscaler 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/VERSION +1 -1
- data/lib/netscaler/service.rb +10 -5
- data/netscaler.gemspec +4 -3
- data/spec/service_spec.rb +41 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YzE4MzhhNWU3MThjODNiN2FmMTQwZWVjMjFkN2JjZWJmMzM0N2VmNQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YzM1YjJmMTg1YjY0NDQwMWYwZTY2NGNiZTU4Njc1MDkxODAwZmQwNA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
N2FiMzk2YmY5YzMyYzhiMjc3MzUxOTRkMDIyOThhYzk4MDI4ZDNlYTkyMTk2
|
10
|
+
MzgwYTk4ODRjZDFmNWRiMjc0MzEyZTJkMzFjYWNhM2U4MGQ5NWE3YjE3YjUy
|
11
|
+
NGVlMzYwMWIzNDkwNjg4MmNjN2Q5M2FjM2MxYWQzOTBhYjc0NGU=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YzE4NWY3MzM5Y2Y1MjQyNjMyMjRlZWVjYjZiZTZjNDI3OTdiNDRlODIzMjZh
|
14
|
+
N2QyZmE3NmRmNzMyYjBkNzEyYWFkOTE2MzUzZDNlODUwZWZlZDBkZGIyMTA4
|
15
|
+
ZjU1NjhjNjczNDI1OTdmNDAzODFkYTM3ZjZjZDI0NGEyMTk4OWM=
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.1
|
data/lib/netscaler/service.rb
CHANGED
@@ -30,11 +30,16 @@ module Netscaler
|
|
30
30
|
##
|
31
31
|
# :serverName is optional, if omitted it will return all services
|
32
32
|
# configured on the Netscaler.
|
33
|
-
def show(payload) # :args: :serverName => 'foo'
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
33
|
+
def show(payload={}) # :args: :serverName => 'foo'
|
34
|
+
if payload[:serviceName] != nil then
|
35
|
+
payload = Netscaler.hash_hack(payload)
|
36
|
+
validate_payload(payload, [:serviceName])
|
37
|
+
return @netscaler.adapter.get("config/service/#{payload[:serviceName]}")
|
38
|
+
elsif payload == {} then
|
39
|
+
return @netscaler.adapter.get('config/service/')
|
40
|
+
else
|
41
|
+
raise ArgumentError, 'payload supplied must have been missing :serviceName'
|
42
|
+
end
|
38
43
|
end
|
39
44
|
|
40
45
|
##
|
data/netscaler.gemspec
CHANGED
@@ -2,16 +2,16 @@
|
|
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: netscaler 0.3.
|
5
|
+
# stub: netscaler 0.3.1 ruby lib
|
6
6
|
|
7
7
|
Gem::Specification.new do |s|
|
8
8
|
s.name = "netscaler"
|
9
|
-
s.version = "0.3.
|
9
|
+
s.version = "0.3.1"
|
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"]
|
13
13
|
s.authors = ["Jeremy Custenborder", "David Andrew", "Jarrett Irons"]
|
14
|
-
s.date = "2014-
|
14
|
+
s.date = "2014-11-08"
|
15
15
|
s.description = "Netscaler api working against the Citrix Nitro api. Currently supports Nitro 9.3. Hope to add support for 10.X. Currently has support for som basics such as adding servers/services/servicegroups."
|
16
16
|
s.email = ["jeremy@scarcemedia.com", "david.andrew@webtrends.com", "jarrett.irons@gmail.com"]
|
17
17
|
s.extra_rdoc_files = [
|
@@ -50,6 +50,7 @@ Gem::Specification.new do |s|
|
|
50
50
|
"spec/netscaler_spec.rb",
|
51
51
|
"spec/policy_stringmap_spec.rb",
|
52
52
|
"spec/server_spec.rb",
|
53
|
+
"spec/service_spec.rb",
|
53
54
|
"spec/servicegroup_spec.rb",
|
54
55
|
"spec/spec_helper.rb"
|
55
56
|
]
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
require 'netscaler'
|
3
|
+
require 'netscaler/mock_adapter'
|
4
|
+
|
5
|
+
describe Netscaler::Server do
|
6
|
+
connection = Netscaler::Connection.new 'hostname'=> 'foo', 'password' => 'bar', 'username'=> 'bar'
|
7
|
+
connection.adapter = Netscaler::MockAdapter.new :body => '{ "errorcode": 0, "message": "Done" }'
|
8
|
+
|
9
|
+
context 'when adding a new service' do
|
10
|
+
it 'a name is required' do
|
11
|
+
expect {
|
12
|
+
connection.service.add(:serverName => 'foo', :serviceType => 'HTTP', :port => '80')
|
13
|
+
}.should raise_error(ArgumentError, /name/)
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'a serverName is required' do
|
17
|
+
expect {
|
18
|
+
connection.service.add(:name => 'foo_80', :serviceType => 'HTTP', :port => '80')
|
19
|
+
}.should raise_error(ArgumentError, /serverName/)
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'a serviceType is required' do
|
23
|
+
expect {
|
24
|
+
connection.service.add(:name => 'foo_80', :serverName => 'foo', :port => '80')
|
25
|
+
}.should raise_error(ArgumentError, /serviceType/)
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'a port is required' do
|
29
|
+
expect {
|
30
|
+
connection.service.add(:name => 'foo_80', :serverName => 'foo', :serviceType => 'HTTP')
|
31
|
+
}.should raise_error(ArgumentError, /port/)
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
it 'returns a Hash object if all necessary args are supplied' do
|
36
|
+
result = connection.service.add(:name => 'foo_80', :serverName => 'foo', :serviceType => 'HTTP', :port => '80')
|
37
|
+
result.should be_kind_of(Hash)
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: netscaler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeremy Custenborder
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-
|
13
|
+
date: 2014-11-08 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rest-client
|
@@ -168,6 +168,7 @@ files:
|
|
168
168
|
- spec/netscaler_spec.rb
|
169
169
|
- spec/policy_stringmap_spec.rb
|
170
170
|
- spec/server_spec.rb
|
171
|
+
- spec/service_spec.rb
|
171
172
|
- spec/servicegroup_spec.rb
|
172
173
|
- spec/spec_helper.rb
|
173
174
|
homepage: http://github.com/GravityLabs/netscaler
|