vcloud-walker 3.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +9 -0
- data/Gemfile +12 -0
- data/LICENSE +20 -0
- data/README.md +55 -0
- data/Rakefile +21 -0
- data/bin/vcloud-walk +41 -0
- data/docs/examples/catalogs.json +40 -0
- data/docs/examples/edgegateways.json +285 -0
- data/docs/examples/networks.json +53 -0
- data/docs/examples/vdcs.json +221 -0
- data/jenkins.sh +9 -0
- data/jenkins_integration_tests.sh +11 -0
- data/lib/vcloud/walker/fog_interface.rb +48 -0
- data/lib/vcloud/walker/resource/catalog.rb +29 -0
- data/lib/vcloud/walker/resource/catalog_item.rb +25 -0
- data/lib/vcloud/walker/resource/collection.rb +13 -0
- data/lib/vcloud/walker/resource/entity.rb +27 -0
- data/lib/vcloud/walker/resource/gateway_ipsec_vpn_service.rb +46 -0
- data/lib/vcloud/walker/resource/network.rb +38 -0
- data/lib/vcloud/walker/resource/organization.rb +45 -0
- data/lib/vcloud/walker/resource/vapp.rb +46 -0
- data/lib/vcloud/walker/resource/vdc.rb +35 -0
- data/lib/vcloud/walker/resource/vm.rb +85 -0
- data/lib/vcloud/walker/resource.rb +11 -0
- data/lib/vcloud/walker/vcloud_session.rb +13 -0
- data/lib/vcloud/walker/version.rb +5 -0
- data/lib/vcloud/walker.rb +23 -0
- data/scripts/configure_walker_ci_vse.rb +31 -0
- data/scripts/data/walker_ci/carrenza.yaml +17 -0
- data/scripts/data/walker_ci/skyscape.yaml +17 -0
- data/scripts/generate_fog_conf_file.sh +6 -0
- data/spec/fog_interface_spec.rb +93 -0
- data/spec/integration/vcloud_walker_spec.rb +74 -0
- data/spec/spec_helper.rb +45 -0
- data/spec/stubs/service_layer_stub.rb +109 -0
- data/spec/stubs/stubs.rb +46 -0
- data/spec/vcloud/walker_spec.rb +59 -0
- data/spec/walk/catalogs_spec.rb +31 -0
- data/spec/walk/entity_spec.rb +69 -0
- data/spec/walk/gateway_ipsec_vpn_service_spec.rb +157 -0
- data/spec/walk/network_spec.rb +70 -0
- data/spec/walk/organization_spec.rb +53 -0
- data/spec/walk/vapp_spec.rb +24 -0
- data/spec/walk/vdcs_spec.rb +30 -0
- data/spec/walk/vm_spec.rb +122 -0
- data/vcloud-walker.gemspec +31 -0
- metadata +274 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
gemspec
|
4
|
+
|
5
|
+
if ENV['VCLOUD_WALKER_DEV_FOG_MASTER']
|
6
|
+
gem 'fog', :git => 'git@github.com:fog/fog.git', :branch => 'master'
|
7
|
+
gem 'vcloud-core', :git => 'git@github.com:alphagov/vcloud-core.git', :branch => 'master'
|
8
|
+
elsif ENV['VCLOUD_WALKER_DEV_FOG_LOCAL']
|
9
|
+
gem 'fog', :path => '../fog'
|
10
|
+
gem 'vcloud-core', :path => '../vcloud-core'
|
11
|
+
end
|
12
|
+
|
data/LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
Copyright (c) 2013 Government Digital Service
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
6
|
+
in the Software without restriction, including without limitation the rights
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
9
|
+
furnished to do so, subject to the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be included in all
|
12
|
+
copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
17
|
+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
18
|
+
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
19
|
+
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
|
20
|
+
OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,55 @@
|
|
1
|
+
# VCloud Walker
|
2
|
+
|
3
|
+
Vcloud-walker is a command line tool, to describe different VMware vCloud Director 5.1 entities. It uses Fog under the hood.
|
4
|
+
|
5
|
+
## Usage
|
6
|
+
To find usage, run `vcloud-walk`.
|
7
|
+
|
8
|
+
You can perform following operations with walker.
|
9
|
+
|
10
|
+
#### Walk vdcs:
|
11
|
+
vcloud-walk vdcs
|
12
|
+
|
13
|
+
describes all vdcs within given organization. This includes vapp, vm and network information.
|
14
|
+
|
15
|
+
#### Walk catalogs:
|
16
|
+
vcloud-walk catalogs
|
17
|
+
|
18
|
+
describes all catalogs and catalog items within given organization.
|
19
|
+
|
20
|
+
#### Walk organization networks:
|
21
|
+
vcloud-walk networks
|
22
|
+
|
23
|
+
describes all organization networks.
|
24
|
+
|
25
|
+
#### Walk edgegateways:
|
26
|
+
vcloud-walk edgegateways
|
27
|
+
|
28
|
+
describes all edgegateway for given organization. Each edgegateway includes configuration for firewall, load balancer and nat services.
|
29
|
+
|
30
|
+
#### Walk entire organization:
|
31
|
+
vcloud-walk organization
|
32
|
+
|
33
|
+
describes the entire organization, which includes edgegateway, catalogs, networks and vdcs within an organization.
|
34
|
+
|
35
|
+
### Credentials
|
36
|
+
|
37
|
+
You will need to specify the credentials for your VMware environment. As Vcloud-walker uses fog to query the VMware api, you will need to create a `.fog` file containing these credentials.
|
38
|
+
|
39
|
+
An example of .fog file is:
|
40
|
+
````
|
41
|
+
default:
|
42
|
+
vcloud_director_username: 'user_id@org_id'
|
43
|
+
vcloud_director_password: 'password'
|
44
|
+
vcloud_director_host: 'api_endpoint'
|
45
|
+
````
|
46
|
+
|
47
|
+
To understand more about `.fog` files, visit the 'Credentials' section here => http://fog.io/about/getting_started.html.
|
48
|
+
|
49
|
+
### Output
|
50
|
+
|
51
|
+
Walker can output data in JSON or YAML format. The default output format is JSON.
|
52
|
+
You can use command line option ```--yaml``` for yaml output.
|
53
|
+
|
54
|
+
Find sample json output in docs/examples directory.
|
55
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'bundler/gem_tasks'
|
2
|
+
require 'rake/testtask'
|
3
|
+
require 'rspec/core/rake_task'
|
4
|
+
require 'vcloud/walker/version'
|
5
|
+
|
6
|
+
RSpec::Core::RakeTask.new(:spec) do |task|
|
7
|
+
ENV['COVERAGE'] = 'true'
|
8
|
+
task.pattern = FileList['spec/**/*_spec.rb'] - FileList['spec/integration/*_spec.rb']
|
9
|
+
end
|
10
|
+
|
11
|
+
RSpec::Core::RakeTask.new(:integration_test) do |task|
|
12
|
+
task.pattern = FileList['spec/integration/*_spec.rb']
|
13
|
+
end
|
14
|
+
|
15
|
+
task :default => :spec
|
16
|
+
|
17
|
+
require "gem_publisher"
|
18
|
+
task :publish_gem do |t|
|
19
|
+
gem = GemPublisher.publish_if_updated("vcloud-walker.gemspec", :rubygems)
|
20
|
+
puts "Published #{gem}" if gem
|
21
|
+
end
|
data/bin/vcloud-walk
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler/setup'
|
5
|
+
require 'methadone'
|
6
|
+
|
7
|
+
require 'json'
|
8
|
+
require 'vcloud/walker'
|
9
|
+
|
10
|
+
class App
|
11
|
+
include Methadone::Main
|
12
|
+
include Methadone::CLILogging
|
13
|
+
include Vcloud
|
14
|
+
|
15
|
+
main do |resource_to_walk|
|
16
|
+
walker_output = Vcloud::Walker.walk(resource_to_walk)
|
17
|
+
options[:yaml] ? print(walker_output.to_yaml) : print(JSON.pretty_generate walker_output)
|
18
|
+
end
|
19
|
+
|
20
|
+
on("--verbose", "Verbose output")
|
21
|
+
on("--debug", "Debugging output")
|
22
|
+
on("--yaml", "Yaml output")
|
23
|
+
|
24
|
+
arg :resource_to_walk
|
25
|
+
|
26
|
+
description '
|
27
|
+
Vcloud-walker is a command line tool, to describe different VMware vCloud Director 5.1 resources. It uses Fog under the hood.
|
28
|
+
|
29
|
+
Resources that can be walked using vcloud-walker are:
|
30
|
+
catalogs
|
31
|
+
vdcs
|
32
|
+
networks
|
33
|
+
edgegateways
|
34
|
+
organization
|
35
|
+
|
36
|
+
See https://github.com/alphagov/vcloud-walker for more info'
|
37
|
+
|
38
|
+
version Vcloud::Walker::VERSION
|
39
|
+
|
40
|
+
go!
|
41
|
+
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"id": "bf3dc47a-4138-4154-91ba-d0fde3c94f32",
|
4
|
+
"name": "walker-ci",
|
5
|
+
"description": "",
|
6
|
+
"items": [
|
7
|
+
{
|
8
|
+
"id": "13afd303-1a70-4040-a508-e56cf2d1f483",
|
9
|
+
"name": "ubuntu-precise-image-2",
|
10
|
+
"description": "",
|
11
|
+
"vapp_template_id": "vappTemplate-c390e7a9-b8d5-402b-b71f-7cbeea545621"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"id": "89946d4a-7371-4a00-9775-73569bb62299",
|
15
|
+
"name": "ubuntu-precise-201309091031",
|
16
|
+
"description": "",
|
17
|
+
"vapp_template_id": "vappTemplate-0015359d-07ca-442a-9314-fbb52536cb8a"
|
18
|
+
}
|
19
|
+
]
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"id": "9999c6c8-52f9-4460-b0ad-219c322b3964",
|
23
|
+
"name": "Windows Templates",
|
24
|
+
"description": "",
|
25
|
+
"items": [
|
26
|
+
{
|
27
|
+
"id": "11760eb3-a4a3-415d-9274-ee195ae2d587",
|
28
|
+
"name": "Windows_2008_R2_STD_50GB_LargeHighMem_v1.0.2",
|
29
|
+
"description": "Public templatePassword \"Windows#1\"\n------------------------------------------------\nSkyscape Windows 2008 R2\nLarge High Memory Machine Size - 8 vCPU 32GB RAM\n50GB HDD\nv1.0.2",
|
30
|
+
"vapp_template_id": "vappTemplate-b01c681b-e66f-46fb-b0ec-aec37fad7d9c"
|
31
|
+
},
|
32
|
+
{
|
33
|
+
"id": "19d115de-1d19-42d7-8abc-57f7f8554086",
|
34
|
+
"name": "Windows_2008_R2_ENT_50GB_Medium_v1.0.2",
|
35
|
+
"description": "Public templatePassword \"Windows#1\"\n------------------------------------------------\nSkyscape Windows 2008 R2\nMedium Machine Size - 4 vCPU 8GB RAM\n50GB HDD\nv1.0.2",
|
36
|
+
"vapp_template_id": "vappTemplate-699c8fbb-8850-4ce2-a361-006c73a5b686"
|
37
|
+
}
|
38
|
+
]
|
39
|
+
}
|
40
|
+
]
|
@@ -0,0 +1,285 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"xmlns": "http://www.vmware.com/vcloud/v1.5",
|
4
|
+
"xmlns_xsi": "http://www.w3.org/2001/XMLSchema-instance",
|
5
|
+
"status": "1",
|
6
|
+
"name": "Test Edgegateway",
|
7
|
+
"id": "urn:vcloud:gateway:c1b44ae3-7858-4c54-8fcd-fdc913d8314e",
|
8
|
+
"type": "application/vnd.vmware.admin.edgeGateway+xml",
|
9
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/edgeGateway/c1b44ae3-7858-4c54-8fcd-fdc913d8314e",
|
10
|
+
"xsi_schemaLocation": "http://www.vmware.com/vcloud/v1.5 http://api.vcd.portal.skyscapecloud.com/api/v1.5/schema/master.xsd",
|
11
|
+
"Link": [
|
12
|
+
{
|
13
|
+
"rel": "up",
|
14
|
+
"type": "application/vnd.vmware.vcloud.vdc+xml",
|
15
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/vdc/074aea1e-a5e9-4dd1-a028-40db8c98d237"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"rel": "edgeGateway:redeploy",
|
19
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/edgeGateway/c1b44ae3-7858-4c54-8fcd-fdc913d8314e/action/redeploy"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"rel": "edgeGateway:configureServices",
|
23
|
+
"type": "application/vnd.vmware.admin.edgeGatewayServiceConfiguration+xml",
|
24
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/edgeGateway/c1b44ae3-7858-4c54-8fcd-fdc913d8314e/action/configureServices"
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"rel": "edgeGateway:reapplyServices",
|
28
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/edgeGateway/c1b44ae3-7858-4c54-8fcd-fdc913d8314e/action/reapplyServices"
|
29
|
+
},
|
30
|
+
{
|
31
|
+
"rel": "edgeGateway:syncSyslogSettings",
|
32
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/edgeGateway/c1b44ae3-7858-4c54-8fcd-fdc913d8314e/action/syncSyslogServerSettings"
|
33
|
+
}
|
34
|
+
],
|
35
|
+
"Description": "",
|
36
|
+
"Configuration": {
|
37
|
+
"GatewayBackingConfig": "compact",
|
38
|
+
"GatewayInterfaces": {
|
39
|
+
"GatewayInterface": [
|
40
|
+
{
|
41
|
+
"Name": "NetworkTest2",
|
42
|
+
"DisplayName": "NetworkTest2",
|
43
|
+
"Network": {
|
44
|
+
"type": "application/vnd.vmware.admin.network+xml",
|
45
|
+
"name": "NetworkTest2",
|
46
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/network/61cf57b5-544f-4fdb-aad0-8448926f4060"
|
47
|
+
},
|
48
|
+
"InterfaceType": "internal",
|
49
|
+
"SubnetParticipation": {
|
50
|
+
"Gateway": "192.168.1.1",
|
51
|
+
"Netmask": "255.255.255.240",
|
52
|
+
"IpAddress": "192.168.1.1"
|
53
|
+
},
|
54
|
+
"ApplyRateLimit": "false",
|
55
|
+
"UseForDefaultRoute": "false"
|
56
|
+
},
|
57
|
+
{
|
58
|
+
"Name": "nft00012i2",
|
59
|
+
"DisplayName": "nft00012i2",
|
60
|
+
"Network": {
|
61
|
+
"type": "application/vnd.vmware.admin.network+xml",
|
62
|
+
"name": "nft00012i2",
|
63
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/network/44265cc3-6d63-4ea9-ac72-4905b5aa65d8"
|
64
|
+
},
|
65
|
+
"InterfaceType": "uplink",
|
66
|
+
"SubnetParticipation": {
|
67
|
+
"Gateway": "37.26.89.185",
|
68
|
+
"Netmask": "255.255.255.248",
|
69
|
+
"IpAddress": "37.26.89.99",
|
70
|
+
"IpRanges": {
|
71
|
+
"IpRange": {
|
72
|
+
"StartAddress": "37.26.89.100",
|
73
|
+
"EndAddress": "37.26.89.199"
|
74
|
+
}
|
75
|
+
}
|
76
|
+
},
|
77
|
+
"ApplyRateLimit": "false",
|
78
|
+
"InRateLimit": "100.0",
|
79
|
+
"OutRateLimit": "100.0",
|
80
|
+
"UseForDefaultRoute": "true"
|
81
|
+
},
|
82
|
+
{
|
83
|
+
"Name": "Default",
|
84
|
+
"DisplayName": "Default",
|
85
|
+
"Network": {
|
86
|
+
"type": "application/vnd.vmware.admin.network+xml",
|
87
|
+
"name": "Default",
|
88
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/network/ffa5aa5a-a5a1-4cdb-891f-1a92af7ef550"
|
89
|
+
},
|
90
|
+
"InterfaceType": "internal",
|
91
|
+
"SubnetParticipation": {
|
92
|
+
"Gateway": "192.168.2.1",
|
93
|
+
"Netmask": "255.255.255.240",
|
94
|
+
"IpAddress": "192.168.2.1"
|
95
|
+
},
|
96
|
+
"ApplyRateLimit": "false",
|
97
|
+
"UseForDefaultRoute": "false"
|
98
|
+
}
|
99
|
+
]
|
100
|
+
},
|
101
|
+
"EdgeGatewayServiceConfiguration": {
|
102
|
+
"FirewallService": {
|
103
|
+
"IsEnabled": "true",
|
104
|
+
"DefaultAction": "allow",
|
105
|
+
"LogDefaultAction": "false",
|
106
|
+
"FirewallRule": [
|
107
|
+
{
|
108
|
+
"Id": "1",
|
109
|
+
"IsEnabled": "true",
|
110
|
+
"MatchOnTranslate": "false",
|
111
|
+
"Description": "description",
|
112
|
+
"Policy": "allow",
|
113
|
+
"Protocols": {
|
114
|
+
"Tcp": "true"
|
115
|
+
},
|
116
|
+
"Port": "22",
|
117
|
+
"DestinationPortRange": "22",
|
118
|
+
"DestinationIp": "internal",
|
119
|
+
"SourcePort": "22",
|
120
|
+
"SourcePortRange": "22",
|
121
|
+
"SourceIp": "external",
|
122
|
+
"EnableLogging": "false"
|
123
|
+
}
|
124
|
+
]
|
125
|
+
},
|
126
|
+
"NatService": {
|
127
|
+
"IsEnabled": "true",
|
128
|
+
"NatRule": [
|
129
|
+
{
|
130
|
+
"RuleType": "SNAT",
|
131
|
+
"IsEnabled": "true",
|
132
|
+
"Id": "65538",
|
133
|
+
"GatewayNatRule": {
|
134
|
+
"Interface": {
|
135
|
+
"type": "application/vnd.vmware.admin.network+xml",
|
136
|
+
"name": "nft00012i2",
|
137
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/network/44265cc3-6d63-4ea9-ac72-4905b5aa65d8"
|
138
|
+
},
|
139
|
+
"OriginalIp": "192.168.2.2",
|
140
|
+
"TranslatedIp": "37.26.89.189"
|
141
|
+
}
|
142
|
+
},
|
143
|
+
{
|
144
|
+
"RuleType": "DNAT",
|
145
|
+
"IsEnabled": "true",
|
146
|
+
"Id": "65539",
|
147
|
+
"GatewayNatRule": {
|
148
|
+
"Interface": {
|
149
|
+
"type": "application/vnd.vmware.admin.network+xml",
|
150
|
+
"name": "nft00012i2",
|
151
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/network/44265cc3-6d63-4ea9-ac72-4905b5aa65d8"
|
152
|
+
},
|
153
|
+
"OriginalIp": "37.26.89.189",
|
154
|
+
"OriginalPort": "22",
|
155
|
+
"TranslatedIp": "192.168.2.2",
|
156
|
+
"TranslatedPort": "22",
|
157
|
+
"Protocol": "tcp"
|
158
|
+
}
|
159
|
+
}
|
160
|
+
]
|
161
|
+
},
|
162
|
+
"LoadBalancerService": {
|
163
|
+
"IsEnabled": "false",
|
164
|
+
"Pool": [
|
165
|
+
{
|
166
|
+
"Name": "app-pool",
|
167
|
+
"Description": "app pool 1",
|
168
|
+
"ServicePort": [
|
169
|
+
{
|
170
|
+
"IsEnabled": "true",
|
171
|
+
"Protocol": "HTTP",
|
172
|
+
"Algorithm": "ROUND_ROBIN",
|
173
|
+
"Port": "80",
|
174
|
+
"HealthCheckPort": "80",
|
175
|
+
"HealthCheck": {
|
176
|
+
"Mode": "HTTP",
|
177
|
+
"Uri": "/",
|
178
|
+
"HealthThreshold": "2",
|
179
|
+
"UnhealthThreshold": "3",
|
180
|
+
"Interval": "5",
|
181
|
+
"Timeout": "15"
|
182
|
+
}
|
183
|
+
},
|
184
|
+
{
|
185
|
+
"IsEnabled": "true",
|
186
|
+
"Protocol": "HTTPS",
|
187
|
+
"Algorithm": "ROUND_ROBIN",
|
188
|
+
"Port": "443",
|
189
|
+
"HealthCheckPort": "443",
|
190
|
+
"HealthCheck": {
|
191
|
+
"Mode": "SSL",
|
192
|
+
"HealthThreshold": "2",
|
193
|
+
"UnhealthThreshold": "3",
|
194
|
+
"Interval": "5",
|
195
|
+
"Timeout": "15"
|
196
|
+
}
|
197
|
+
},
|
198
|
+
{
|
199
|
+
"IsEnabled": "false",
|
200
|
+
"Protocol": "TCP",
|
201
|
+
"Algorithm": "ROUND_ROBIN",
|
202
|
+
"Port": "",
|
203
|
+
"HealthCheckPort": "",
|
204
|
+
"HealthCheck": {
|
205
|
+
"Mode": "TCP",
|
206
|
+
"HealthThreshold": "2",
|
207
|
+
"UnhealthThreshold": "3",
|
208
|
+
"Interval": "5",
|
209
|
+
"Timeout": "15"
|
210
|
+
}
|
211
|
+
}
|
212
|
+
],
|
213
|
+
"Member": [
|
214
|
+
{
|
215
|
+
"IpAddress": "37.26.89.100",
|
216
|
+
"Weight": "1",
|
217
|
+
"ServicePort": [
|
218
|
+
{
|
219
|
+
"Protocol": "HTTP",
|
220
|
+
"Port": "",
|
221
|
+
"HealthCheckPort": ""
|
222
|
+
},
|
223
|
+
{
|
224
|
+
"Protocol": "HTTPS",
|
225
|
+
"Port": "",
|
226
|
+
"HealthCheckPort": ""
|
227
|
+
},
|
228
|
+
{
|
229
|
+
"Protocol": "TCP",
|
230
|
+
"Port": "",
|
231
|
+
"HealthCheckPort": ""
|
232
|
+
}
|
233
|
+
]
|
234
|
+
}
|
235
|
+
],
|
236
|
+
"Operational": "false"
|
237
|
+
}
|
238
|
+
],
|
239
|
+
"VirtualServer": [
|
240
|
+
{
|
241
|
+
"IsEnabled": "true",
|
242
|
+
"Name": "web-server-1",
|
243
|
+
"Interface": {
|
244
|
+
"type": "application/vnd.vmware.vcloud.orgVdcNetwork+xml",
|
245
|
+
"name": "nft00012i2",
|
246
|
+
"href": "https://api.vcd.portal.skyscapecloud.com/api/admin/network/44265cc3-6d63-4ea9-ac72-4905b5aa65d8"
|
247
|
+
},
|
248
|
+
"IpAddress": "37.26.89.100",
|
249
|
+
"ServiceProfile": [
|
250
|
+
{
|
251
|
+
"IsEnabled": "false",
|
252
|
+
"Protocol": "HTTP",
|
253
|
+
"Port": "80",
|
254
|
+
"Persistence": {
|
255
|
+
"Method": ""
|
256
|
+
}
|
257
|
+
},
|
258
|
+
{
|
259
|
+
"IsEnabled": "true",
|
260
|
+
"Protocol": "HTTPS",
|
261
|
+
"Port": "443",
|
262
|
+
"Persistence": {
|
263
|
+
"Method": "SSL_SESSION_ID"
|
264
|
+
}
|
265
|
+
},
|
266
|
+
{
|
267
|
+
"IsEnabled": "false",
|
268
|
+
"Protocol": "TCP",
|
269
|
+
"Port": "",
|
270
|
+
"Persistence": {
|
271
|
+
"Method": ""
|
272
|
+
}
|
273
|
+
}
|
274
|
+
],
|
275
|
+
"Logging": "false",
|
276
|
+
"Pool": "app-pool"
|
277
|
+
}
|
278
|
+
]
|
279
|
+
}
|
280
|
+
},
|
281
|
+
"HaEnabled": "false",
|
282
|
+
"UseDefaultRouteForDnsRelay": "false"
|
283
|
+
}
|
284
|
+
}
|
285
|
+
]
|
@@ -0,0 +1,53 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"id": "61cf57b5-544f-4fdb-aad0-8448926f4060",
|
4
|
+
"name": "NetworkTest2",
|
5
|
+
"description": "Network Test 2",
|
6
|
+
"is_inherited": false,
|
7
|
+
"gateway": "192.168.1.1",
|
8
|
+
"netmask": "255.255.255.240",
|
9
|
+
"dns1": "8.8.8.8",
|
10
|
+
"dns2": "8.8.4.4",
|
11
|
+
"dns_suffix": "tester2.networktest",
|
12
|
+
"ip_ranges": [
|
13
|
+
{
|
14
|
+
"start_address": "192.168.1.2",
|
15
|
+
"end_address": "192.168.1.14"
|
16
|
+
}
|
17
|
+
]
|
18
|
+
},
|
19
|
+
{
|
20
|
+
"id": "a3568eee-caaa-480d-8b13-f7df33e369a6",
|
21
|
+
"name": "NetworkTest",
|
22
|
+
"description": "Test network",
|
23
|
+
"is_inherited": false,
|
24
|
+
"gateway": "192.168.0.1",
|
25
|
+
"netmask": "255.255.255.0",
|
26
|
+
"dns1": "8.8.8.8",
|
27
|
+
"dns2": "8.8.4.4",
|
28
|
+
"dns_suffix": "tester.networktest",
|
29
|
+
"ip_ranges": [
|
30
|
+
{
|
31
|
+
"start_address": "192.168.0.2",
|
32
|
+
"end_address": "192.168.0.254"
|
33
|
+
}
|
34
|
+
]
|
35
|
+
},
|
36
|
+
{
|
37
|
+
"id": "ffa5aa5a-a5a1-4cdb-891f-1a92af7ef550",
|
38
|
+
"name": "Default",
|
39
|
+
"description": "default network",
|
40
|
+
"is_inherited": false,
|
41
|
+
"gateway": "192.168.2.1",
|
42
|
+
"netmask": "255.255.255.240",
|
43
|
+
"dns1": "8.8.8.8",
|
44
|
+
"dns2": "8.8.4.4",
|
45
|
+
"dns_suffix": "tester.default",
|
46
|
+
"ip_ranges": [
|
47
|
+
{
|
48
|
+
"start_address": "192.168.2.2",
|
49
|
+
"end_address": "192.168.2.14"
|
50
|
+
}
|
51
|
+
]
|
52
|
+
}
|
53
|
+
]
|