fog-openstack 0.1.17 → 0.1.18
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/examples/container_infra/basics.rb +61 -0
- data/examples/identity/basics_v3.rb +83 -0
- data/lib/fog/container_infra/openstack.rb +163 -0
- data/lib/fog/container_infra/openstack/models/base.rb +19 -0
- data/lib/fog/container_infra/openstack/models/bay.rb +56 -0
- data/lib/fog/container_infra/openstack/models/bay_model.rb +62 -0
- data/lib/fog/container_infra/openstack/models/bay_models.rb +23 -0
- data/lib/fog/container_infra/openstack/models/bays.rb +23 -0
- data/lib/fog/container_infra/openstack/models/certificate.rb +20 -0
- data/lib/fog/container_infra/openstack/models/certificates.rb +25 -0
- data/lib/fog/container_infra/openstack/models/cluster.rb +56 -0
- data/lib/fog/container_infra/openstack/models/cluster_template.rb +61 -0
- data/lib/fog/container_infra/openstack/models/cluster_templates.rb +24 -0
- data/lib/fog/container_infra/openstack/models/clusters.rb +24 -0
- data/lib/fog/container_infra/openstack/requests/create_bay.rb +27 -0
- data/lib/fog/container_infra/openstack/requests/create_bay_model.rb +56 -0
- data/lib/fog/container_infra/openstack/requests/create_certificate.rb +29 -0
- data/lib/fog/container_infra/openstack/requests/create_cluster.rb +27 -0
- data/lib/fog/container_infra/openstack/requests/create_cluster_template.rb +56 -0
- data/lib/fog/container_infra/openstack/requests/delete_bay.rb +24 -0
- data/lib/fog/container_infra/openstack/requests/delete_bay_model.rb +24 -0
- data/lib/fog/container_infra/openstack/requests/delete_cluster.rb +24 -0
- data/lib/fog/container_infra/openstack/requests/delete_cluster_template.rb +24 -0
- data/lib/fog/container_infra/openstack/requests/get_bay.rb +51 -0
- data/lib/fog/container_infra/openstack/requests/get_bay_model.rb +55 -0
- data/lib/fog/container_infra/openstack/requests/get_certificate.rb +27 -0
- data/lib/fog/container_infra/openstack/requests/get_cluster.rb +41 -0
- data/lib/fog/container_infra/openstack/requests/get_cluster_template.rb +55 -0
- data/lib/fog/container_infra/openstack/requests/list_bay_models.rb +69 -0
- data/lib/fog/container_infra/openstack/requests/list_bays.rb +55 -0
- data/lib/fog/container_infra/openstack/requests/list_cluster_templates.rb +59 -0
- data/lib/fog/container_infra/openstack/requests/list_clusters.rb +37 -0
- data/lib/fog/container_infra/openstack/requests/update_bay.rb +27 -0
- data/lib/fog/container_infra/openstack/requests/update_bay_model.rb +56 -0
- data/lib/fog/container_infra/openstack/requests/update_cluster.rb +27 -0
- data/lib/fog/container_infra/openstack/requests/update_cluster_template.rb +56 -0
- data/lib/fog/key_manager/openstack.rb +103 -0
- data/lib/fog/key_manager/openstack/models/container.rb +44 -0
- data/lib/fog/key_manager/openstack/models/containers.rb +25 -0
- data/lib/fog/key_manager/openstack/models/secret.rb +53 -0
- data/lib/fog/key_manager/openstack/models/secrets.rb +25 -0
- data/lib/fog/key_manager/openstack/requests/create_container.rb +19 -0
- data/lib/fog/key_manager/openstack/requests/create_secret.rb +19 -0
- data/lib/fog/key_manager/openstack/requests/delete_container.rb +18 -0
- data/lib/fog/key_manager/openstack/requests/delete_secret.rb +18 -0
- data/lib/fog/key_manager/openstack/requests/get_container.rb +18 -0
- data/lib/fog/key_manager/openstack/requests/get_secret.rb +18 -0
- data/lib/fog/key_manager/openstack/requests/get_secret_metadata.rb +18 -0
- data/lib/fog/key_manager/openstack/requests/get_secret_payload.rb +21 -0
- data/lib/fog/key_manager/openstack/requests/list_containers.rb +19 -0
- data/lib/fog/key_manager/openstack/requests/list_secrets.rb +19 -0
- data/lib/fog/network/openstack.rb +50 -1
- data/lib/fog/network/openstack/requests/create_lbaas_healthmonitor.rb +57 -0
- data/lib/fog/network/openstack/requests/create_lbaas_listener.rb +55 -0
- data/lib/fog/network/openstack/requests/create_lbaas_loadbalancer.rb +52 -0
- data/lib/fog/network/openstack/requests/create_lbaas_pool.rb +53 -0
- data/lib/fog/network/openstack/requests/create_lbaas_pool_member.rb +49 -0
- data/lib/fog/network/openstack/requests/delete_lbaas_healthmonitor.rb +28 -0
- data/lib/fog/network/openstack/requests/delete_lbaas_listener.rb +28 -0
- data/lib/fog/network/openstack/requests/delete_lbaas_loadbalancer.rb +28 -0
- data/lib/fog/network/openstack/requests/delete_lbaas_pool.rb +28 -0
- data/lib/fog/network/openstack/requests/delete_lbaas_pool_member.rb +28 -0
- data/lib/fog/network/openstack/requests/get_lbaas_healthmonitor.rb +28 -0
- data/lib/fog/network/openstack/requests/get_lbaas_listener.rb +28 -0
- data/lib/fog/network/openstack/requests/get_lbaas_loadbalancer.rb +28 -0
- data/lib/fog/network/openstack/requests/get_lbaas_pool.rb +28 -0
- data/lib/fog/network/openstack/requests/get_lbaas_pool_member.rb +28 -0
- data/lib/fog/network/openstack/requests/list_lbaas_healthmonitors.rb +25 -0
- data/lib/fog/network/openstack/requests/list_lbaas_listeners.rb +25 -0
- data/lib/fog/network/openstack/requests/list_lbaas_loadbalancers.rb +25 -0
- data/lib/fog/network/openstack/requests/list_lbaas_pool_members.rb +25 -0
- data/lib/fog/network/openstack/requests/list_lbaas_pools.rb +25 -0
- data/lib/fog/network/openstack/requests/update_lbaas_healthmonitor.rb +43 -0
- data/lib/fog/network/openstack/requests/update_lbaas_listener.rb +45 -0
- data/lib/fog/network/openstack/requests/update_lbaas_loadbalancer.rb +41 -0
- data/lib/fog/network/openstack/requests/update_lbaas_pool.rb +40 -0
- data/lib/fog/network/openstack/requests/update_lbaas_pool_member.rb +39 -0
- data/lib/fog/openstack.rb +10 -0
- data/lib/fog/openstack/version.rb +7 -1
- metadata +78 -2
@@ -0,0 +1,24 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def delete_bay(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [204],
|
8
|
+
:method => 'DELETE',
|
9
|
+
:path => "bays/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def delete_bay(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 204
|
18
|
+
response.body = {}
|
19
|
+
response
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def delete_bay_model(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [204],
|
8
|
+
:method => 'DELETE',
|
9
|
+
:path => "baymodels/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def delete_bay_model(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 204
|
18
|
+
response.body = {}
|
19
|
+
response
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def delete_cluster(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [204],
|
8
|
+
:method => 'DELETE',
|
9
|
+
:path => "clusters/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def delete_cluster(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 204
|
18
|
+
response.body = {}
|
19
|
+
response
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def delete_cluster_template(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [204],
|
8
|
+
:method => 'DELETE',
|
9
|
+
:path => "clustertemplates/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def delete_cluster_template(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 204
|
18
|
+
response.body = {}
|
19
|
+
response
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def get_bay(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "bays/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def get_bay(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"status" => "CREATE_COMPLETE",
|
20
|
+
"uuid" => "746e779a-751a-456b-a3e9-c883d734946f",
|
21
|
+
"stack_id" => "9c6f1169-7300-4d08-a444-d2be38758719",
|
22
|
+
"created_at" => "2016-08-29T06:51:31+00:00",
|
23
|
+
"api_address" => "https://172.24.4.6:6443",
|
24
|
+
"discovery_url" => "https://discovery.etcd.io/cbeb580da58915809d59ee69348a84f3",
|
25
|
+
"updated_at" => "2016-08-29T06:53:24+00:00",
|
26
|
+
"master_count" => 1,
|
27
|
+
"coe_version" => "v1.2.0",
|
28
|
+
"baymodel_id" => "0562d357-8641-4759-8fed-8173f02c9633",
|
29
|
+
"master_addresses" => ["172.24.4.6"],
|
30
|
+
"node_count" => 1,
|
31
|
+
"node_addresses" => ["172.24.4.13"],
|
32
|
+
"status_reason" => "Stack CREATE completed successfully",
|
33
|
+
"bay_create_timeout" => 60,
|
34
|
+
"name" => "k8s",
|
35
|
+
"links" => [
|
36
|
+
{
|
37
|
+
"href" => "http://10.164.180.104:9511/v1/bays/746e779a-751a-456b-a3e9-c883d734946f",
|
38
|
+
"rel" => "self"
|
39
|
+
},
|
40
|
+
{
|
41
|
+
"href" => "http://10.164.180.104:9511/bays/746e779a-751a-456b-a3e9-c883d734946f",
|
42
|
+
"rel" => "bookmark"
|
43
|
+
}
|
44
|
+
]
|
45
|
+
}
|
46
|
+
response
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def get_bay_model(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "baymodels/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def get_bay_model(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"insecure_registry" => nil,
|
20
|
+
"http_proxy" => "http://10.164.177.169:8080",
|
21
|
+
"updated_at" => nil,
|
22
|
+
"floating_ip_enabled" => true,
|
23
|
+
"fixed_subnet" => nil,
|
24
|
+
"master_flavor_id" => nil,
|
25
|
+
"uuid" => "085e1c4d-4f68-4bfd-8462-74b9e14e4f39",
|
26
|
+
"no_proxy" => "10.0.0.0/8,172.0.0.0/8,192.0.0.0/8,localhost",
|
27
|
+
"https_proxy" => "http://10.164.177.169:8080",
|
28
|
+
"tls_disabled" => false,
|
29
|
+
"keypair_id" => "kp",
|
30
|
+
"public" => false,
|
31
|
+
"labels" => {},
|
32
|
+
"docker_volume_size" => 3,
|
33
|
+
"server_type" => "vm",
|
34
|
+
"external_network_id" => "public",
|
35
|
+
"cluster_distro" => "fedora-atomic",
|
36
|
+
"image_id" => "fedora-atomic-latest",
|
37
|
+
"volume_driver" => "cinder",
|
38
|
+
"registry_enabled" => false,
|
39
|
+
"docker_storage_driver" => "devicemapper",
|
40
|
+
"apiserver_port" => nil,
|
41
|
+
"name" => "k8s-bm2",
|
42
|
+
"created_at" => "2016-08-29T02:08:08+00:00",
|
43
|
+
"network_driver" => "flannel",
|
44
|
+
"fixed_network" => nil,
|
45
|
+
"coe" => "kubernetes",
|
46
|
+
"flavor_id" => "m1.small",
|
47
|
+
"master_lb_enabled" => true,
|
48
|
+
"dns_nameserver" => "8.8.8.8"
|
49
|
+
}
|
50
|
+
response
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def get_certificate(bay_uuid)
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "certificates/#{cluster_uuid}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def get_certificate(_bay_uuid)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"pem" => "-----BEGIN CERTIFICATE-----\nMIICzDCCAbSgAwIBAgIQOOkVcEN7TNa9E80GoUs4xDANBgkqhkiG9w0BAQsFADAO\n-----END CERTIFICATE-----\n",
|
20
|
+
"bay_uuid" => "0b4b766f-1500-44b3-9804-5a6e12fe6df4"
|
21
|
+
}
|
22
|
+
response
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def get_cluster(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "clusters/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def get_cluster(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"status" => "CREATE_COMPLETE",
|
20
|
+
"uuid" => "746e779a-751a-456b-a3e9-c883d734946f",
|
21
|
+
"stack_id" => "9c6f1169-7300-4d08-a444-d2be38758719",
|
22
|
+
"created_at" => "2016-08-29T06:51:31+00:00",
|
23
|
+
"api_address" => "https://172.24.4.6:6443",
|
24
|
+
"discovery_url" => "https://discovery.etcd.io/cbeb580da58915809d59ee69348a84f3",
|
25
|
+
"updated_at" => "2016-08-29T06:53:24+00:00",
|
26
|
+
"master_count" => 1,
|
27
|
+
"coe_version" => "v1.2.0",
|
28
|
+
"cluster_template_id" => "0562d357-8641-4759-8fed-8173f02c9633",
|
29
|
+
"master_addresses" => ["172.24.4.6"],
|
30
|
+
"node_count" => 1,
|
31
|
+
"node_addresses" => ["172.24.4.13"],
|
32
|
+
"status_reason" => "Stack CREATE completed successfully",
|
33
|
+
"create_timeout" => 60,
|
34
|
+
"name" => "k8s"
|
35
|
+
}
|
36
|
+
response
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def get_cluster_template(uuid_or_name)
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "clustertemplates/#{uuid_or_name}"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def get_cluster_template(_uuid_or_name)
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"insecure_registry" => nil,
|
20
|
+
"http_proxy" => "http://10.164.177.169:8080",
|
21
|
+
"updated_at" => nil,
|
22
|
+
"floating_ip_enabled" => true,
|
23
|
+
"fixed_subnet" => nil,
|
24
|
+
"master_flavor_id" => nil,
|
25
|
+
"uuid" => "085e1c4d-4f68-4bfd-8462-74b9e14e4f39",
|
26
|
+
"no_proxy" => "10.0.0.0/8,172.0.0.0/8,192.0.0.0/8,localhost",
|
27
|
+
"https_proxy" => "http://10.164.177.169:8080",
|
28
|
+
"tls_disabled" => false,
|
29
|
+
"keypair_id" => "kp",
|
30
|
+
"public" => false,
|
31
|
+
"labels" => {},
|
32
|
+
"docker_volume_size" => 3,
|
33
|
+
"server_type" => "vm",
|
34
|
+
"external_network_id" => "public",
|
35
|
+
"cluster_distro" => "fedora-atomic",
|
36
|
+
"image_id" => "fedora-atomic-latest",
|
37
|
+
"volume_driver" => "cinder",
|
38
|
+
"registry_enabled" => false,
|
39
|
+
"docker_storage_driver" => "devicemapper",
|
40
|
+
"apiserver_port" => nil,
|
41
|
+
"name" => "k8s-bm2",
|
42
|
+
"created_at" => "2016-08-29T02:08:08+00:00",
|
43
|
+
"network_driver" => "flannel",
|
44
|
+
"fixed_network" => nil,
|
45
|
+
"coe" => "kubernetes",
|
46
|
+
"flavor_id" => "m1.small",
|
47
|
+
"master_lb_enabled" => true,
|
48
|
+
"dns_nameserver" => "8.8.8.8"
|
49
|
+
}
|
50
|
+
response
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def list_bay_models
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "baymodels/detail"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def list_bay_models
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"baymodels" => [
|
20
|
+
{
|
21
|
+
"insecure_registry" => nil,
|
22
|
+
"http_proxy" => "http://10.164.177.169:8080",
|
23
|
+
"updated_at" => nil,
|
24
|
+
"floating_ip_enabled" => true,
|
25
|
+
"fixed_subnet" => nil,
|
26
|
+
"master_flavor_id" => nil,
|
27
|
+
"uuid" => "085e1c4d-4f68-4bfd-8462-74b9e14e4f39",
|
28
|
+
"no_proxy" => "10.0.0.0/8,172.0.0.0/8,192.0.0.0/8,localhost",
|
29
|
+
"https_proxy" => "http://10.164.177.169:8080",
|
30
|
+
"tls_disabled" => false,
|
31
|
+
"keypair_id" => "kp",
|
32
|
+
"public" => false,
|
33
|
+
"labels" => {},
|
34
|
+
"docker_volume_size" => 3,
|
35
|
+
"server_type" => "vm",
|
36
|
+
"external_network_id" => "public",
|
37
|
+
"cluster_distro" => "fedora-atomic",
|
38
|
+
"image_id" => "fedora-atomic-latest",
|
39
|
+
"volume_driver" => "cinder",
|
40
|
+
"registry_enabled" => false,
|
41
|
+
"docker_storage_driver" => "devicemapper",
|
42
|
+
"apiserver_port" => nil,
|
43
|
+
"name" => "k8s-bm2",
|
44
|
+
"created_at" => "2016-08-29T02:08:08+00:00",
|
45
|
+
"network_driver" => "flannel",
|
46
|
+
"fixed_network" => nil,
|
47
|
+
"coe" => "kubernetes",
|
48
|
+
"flavor_id" => "m1.small",
|
49
|
+
"master_lb_enabled" => true,
|
50
|
+
"dns_nameserver" => "8.8.8.8",
|
51
|
+
"links" => [
|
52
|
+
{
|
53
|
+
"href" => "http://10.164.180.104:9511/v1/baymodels/085e1c4d-4f68-4bfd-8462-74b9e14e4f39",
|
54
|
+
"rel" => "self"
|
55
|
+
},
|
56
|
+
{
|
57
|
+
"href" => "http://10.164.180.104:9511/baymodels/085e1c4d-4f68-4bfd-8462-74b9e14e4f39",
|
58
|
+
"rel" => "bookmark"
|
59
|
+
}
|
60
|
+
]
|
61
|
+
}
|
62
|
+
]
|
63
|
+
}
|
64
|
+
response
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module Fog
|
2
|
+
module ContainerInfra
|
3
|
+
class OpenStack
|
4
|
+
class Real
|
5
|
+
def list_bays
|
6
|
+
request(
|
7
|
+
:expects => [200],
|
8
|
+
:method => 'GET',
|
9
|
+
:path => "bays/detail"
|
10
|
+
)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
class Mock
|
15
|
+
def list_bays
|
16
|
+
response = Excon::Response.new
|
17
|
+
response.status = 200
|
18
|
+
response.body = {
|
19
|
+
"bays" => [
|
20
|
+
{
|
21
|
+
"status" => "CREATE_COMPLETE",
|
22
|
+
"uuid" => "746e779a-751a-456b-a3e9-c883d734946f",
|
23
|
+
"stack_id" => "9c6f1169-7300-4d08-a444-d2be38758719",
|
24
|
+
"created_at" => "2016-08-29T06:51:31+00:00",
|
25
|
+
"api_address" => "https://172.24.4.6:6443",
|
26
|
+
"discovery_url" => "https://discovery.etcd.io/cbeb580da58915809d59ee69348a84f3",
|
27
|
+
"updated_at" => "2016-08-29T06:53:24+00:00",
|
28
|
+
"master_count" => 1,
|
29
|
+
"coe_version" => "v1.2.0",
|
30
|
+
"baymodel_id" => "0562d357-8641-4759-8fed-8173f02c9633",
|
31
|
+
"master_addresses" => ["172.24.4.6"],
|
32
|
+
"node_count" => 1,
|
33
|
+
"node_addresses" => ["172.24.4.13"],
|
34
|
+
"status_reason" => "Stack CREATE completed successfully",
|
35
|
+
"bay_create_timeout" => 60,
|
36
|
+
"name" => "k8s",
|
37
|
+
"links" => [
|
38
|
+
{
|
39
|
+
"href" => "http://10.164.180.104:9511/v1/bays/746e779a-751a-456b-a3e9-c883d734946f",
|
40
|
+
"rel" => "self"
|
41
|
+
},
|
42
|
+
{
|
43
|
+
"href" => "http://10.164.180.104:9511/bays/746e779a-751a-456b-a3e9-c883d734946f",
|
44
|
+
"rel" => "bookmark"
|
45
|
+
}
|
46
|
+
]
|
47
|
+
}
|
48
|
+
]
|
49
|
+
}
|
50
|
+
response
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|