You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@deltacloud.apache.org by ma...@redhat.com on 2012/03/09 18:42:46 UTC
[PATCH 1/4] CIMI - Adds mock data for network and network_configs for mock driver
From: marios <ma...@redhat.com>
Signed-off-by: marios <ma...@redhat.com>
---
.../drivers/mock/data/cimi/network/network1.json | 6 ++++
.../drivers/mock/data/cimi/network/network2.json | 6 ++++
.../network_configuration/network_config1.json | 15 ++++++++++++
.../network_configuration/network_config2.json | 15 ++++++++++++
server/lib/deltacloud/drivers/mock/mock_driver.rb | 25 ++++++++++++++-----
5 files changed, 60 insertions(+), 7 deletions(-)
create mode 100644 server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json
create mode 100644 server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json
diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json b/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json
index f3af747..165ef8a 100644
--- a/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json
+++ b/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json
@@ -4,6 +4,12 @@
"created": "Thu Jan 12 15:25:41 EET 2012",
"state": "STARTED",
"access": "Public",
+ "bandwidthLimit": 2,
+ "trafficPriority": 1,
+ "maxTrafficDelay": 500000,
+ "maxTrafficLoss": 100,
+ "maxTrafficJitter": 100000,
+ "routingGroup": { "href": "http://cimi.example.org/routinggroups/group1" },
"operations": [
{ "rel": "edit", "href": "http://cimi.example.org/networks/network1" },
{ "rel": "delete", "href": "http://cimi.example.org/networks/network1" }
diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json b/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json
index f6c7faf..3bd264e 100644
--- a/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json
+++ b/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json
@@ -4,6 +4,12 @@
"created": "Fri Jan 13 17:30:34 EET 2012",
"state": "STARTED",
"access": "Public",
+ "bandwidthLimit": 3,
+ "trafficPriority": 2,
+ "maxTrafficDelay": 600000,
+ "maxTrafficLoss": 100,
+ "maxTrafficJitter": 200000,
+ "routingGroup": { "href": "http://cimi.example.org/routinggroups/group1" },
"operations": [
{ "rel": "edit", "href": "http://cimi.example.org/networks/network2" },
{ "rel": "delete", "href": "http://cimi.example.org/networks/network2" }
diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json
new file mode 100644
index 0000000..f767de9
--- /dev/null
+++ b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json
@@ -0,0 +1,15 @@
+{ "uri": "http://cimi.example.org/network_configurations/network_config1",
+ "name": "network_config1",
+ "description": "a network configuration",
+ "created": "Fri Mar 9 11:57:39 EET 2012",
+ "access": "Public",
+ "bandwidthLimit": 2,
+ "trafficPriority": 1,
+ "maxTrafficDelay": 500000,
+ "maxTrafficLoss": 100,
+ "maxTrafficJitter": 100000,
+ "operations": [
+ { "rel": "edit", "href": "http://cimi.example.org/network_configurations/network_config1" },
+ { "rel": "delete", "href": "http://cimi.example.org/network_configurations/network_config1" }
+ ]
+}
diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json
new file mode 100644
index 0000000..b22d837
--- /dev/null
+++ b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json
@@ -0,0 +1,15 @@
+{ "uri": "http://cimi.example.org/network_configurations/network_config2",
+ "name": "network_config2",
+ "description": "a network configuration",
+ "created": "Fri Mar 9 12:01:53 EET 2012",
+ "access": "Public",
+ "bandwidthLimit": 3,
+ "trafficPriority": 2,
+ "maxTrafficDelay": 600000,
+ "maxTrafficLoss": 100,
+ "maxTrafficJitter": 200000,
+ "operations": [
+ { "rel": "edit", "href": "http://cimi.example.org/network_configurations/network_config2" },
+ { "rel": "delete", "href": "http://cimi.example.org/network_configurations/network_config2" }
+ ]
+}
diff --git a/server/lib/deltacloud/drivers/mock/mock_driver.rb b/server/lib/deltacloud/drivers/mock/mock_driver.rb
index 765338d..e522926 100644
--- a/server/lib/deltacloud/drivers/mock/mock_driver.rb
+++ b/server/lib/deltacloud/drivers/mock/mock_driver.rb
@@ -455,10 +455,21 @@ module Deltacloud::Drivers::Mock
check_credentials(credentials)
if opts[:id].nil?
networks = @client.load_all_cimi(:network).map{|net| CIMI::Model::Network.from_json(net)}
- networks.map{|net|convert_cimi_network(net,opts[:env])}.flatten
+ networks.map{|net|convert_cimi_mock_urls(:network, net ,opts[:env])}.flatten
else
network = CIMI::Model::Network.from_json(@client.load_cimi(:network, opts[:id]))
- convert_cimi_network(network, opts[:env])
+ convert_cimi_mock_urls(:network, network, opts[:env])
+ end
+ end
+
+ def network_configurations(credentials, opts={})
+ check_credentials(credentials)
+ if opts[:id].nil?
+ network_configs = @client.load_all_cimi(:network_configuration).map{|net_config| CIMI::Model::NetworkConfiguration.from_json(net_config)}
+ network_configs.map{|net_config|convert_cimi_mock_urls(:network_configuration, net_config, opts[:env])}.flatten
+ else
+ network_config = CIMI::Model::NetworkConfiguration.from_json(@client.load_cimi(:network_configuration, opts[:id]))
+ convert_cimi_mock_urls(:network_configuration, network_config, opts[:env])
end
end
@@ -498,11 +509,11 @@ module Deltacloud::Drivers::Mock
StorageVolume.new(volume)
end
- def convert_cimi_network(network, context)
- uri=context.network_url(network.name)
- network.uri=uri
- network.operations.each{|op| op.href=uri}
- network
+ def convert_cimi_mock_urls(model_name, cimi_object, context)
+ uri=context.send(:"#{model_name}_url", cimi_object.name)
+ cimi_object.uri=uri
+ cimi_object.operations.each{|op| op.href=uri}
+ cimi_object
end
exceptions do
--
1.7.6.5
Re: [PATCH 1/4] CIMI - Adds mock data for network and network_configs
for mock driver
Posted by "marios@redhat.com" <ma...@redhat.com>.
On 12/03/12 11:55, Michal Fojtik wrote:
> ACK.
>
> Small minor nit/suggestion below.
>
> -- Michal
>
> On Mar 9, 2012, at 6:42 PM, marios@redhat.com wrote:
>
>> From: marios <ma...@redhat.com>
>>
>>
>> Signed-off-by: marios <ma...@redhat.com>
>> ---
>> .../drivers/mock/data/cimi/network/network1.json | 6 ++++
>> .../drivers/mock/data/cimi/network/network2.json | 6 ++++
>> .../network_configuration/network_config1.json | 15 ++++++++++++
>> .../network_configuration/network_config2.json | 15 ++++++++++++
>> server/lib/deltacloud/drivers/mock/mock_driver.rb | 25 ++++++++++++++-----
>> 5 files changed, 60 insertions(+), 7 deletions(-)
{snip---8<--------------}
>> - def convert_cimi_network(network, context)
>> - uri=context.network_url(network.name)
>> - network.uri=uri
>> - network.operations.each{|op| op.href=uri}
>> - network
>> + def convert_cimi_mock_urls(model_name, cimi_object, context)
>> + uri=context.send(:"#{model_name}_url", cimi_object.name)
>
> We should wrap this ^^ construction to some method, since I know
> we use this .send on many places. Some decent helper will prevent us
> from the pain when we change this 'url_for' in future:
ok, am going to push these as is for now - since I need to send fresh
patches to deal with new 'table' views for network index/show - I'll
include fixes in new patches. But not entirely sure what you mean here
though... like you want a new definition like cimi_url_for
in server/lib/sinatra/url_for.rb?
marios
>
> def url_for(model, id) # url_for model_name, cimi_object.name
>
>
>> + cimi_object.uri=uri
>> + cimi_object.operations.each{|op| op.href=uri}
>> + cimi_object
>> end
>>
>> exceptions do
>> --
>> 1.7.6.5
>>
>
Re: [PATCH 1/4] CIMI - Adds mock data for network and network_configs for mock driver
Posted by Michal Fojtik <mi...@mifo.sk>.
ACK.
Small minor nit/suggestion below.
-- Michal
On Mar 9, 2012, at 6:42 PM, marios@redhat.com wrote:
> From: marios <ma...@redhat.com>
>
>
> Signed-off-by: marios <ma...@redhat.com>
> ---
> .../drivers/mock/data/cimi/network/network1.json | 6 ++++
> .../drivers/mock/data/cimi/network/network2.json | 6 ++++
> .../network_configuration/network_config1.json | 15 ++++++++++++
> .../network_configuration/network_config2.json | 15 ++++++++++++
> server/lib/deltacloud/drivers/mock/mock_driver.rb | 25 ++++++++++++++-----
> 5 files changed, 60 insertions(+), 7 deletions(-)
> create mode 100644 server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json
> create mode 100644 server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json
>
> diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json b/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json
> index f3af747..165ef8a 100644
> --- a/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json
> +++ b/server/lib/deltacloud/drivers/mock/data/cimi/network/network1.json
> @@ -4,6 +4,12 @@
> "created": "Thu Jan 12 15:25:41 EET 2012",
> "state": "STARTED",
> "access": "Public",
> + "bandwidthLimit": 2,
> + "trafficPriority": 1,
> + "maxTrafficDelay": 500000,
> + "maxTrafficLoss": 100,
> + "maxTrafficJitter": 100000,
> + "routingGroup": { "href": "http://cimi.example.org/routinggroups/group1" },
> "operations": [
> { "rel": "edit", "href": "http://cimi.example.org/networks/network1" },
> { "rel": "delete", "href": "http://cimi.example.org/networks/network1" }
> diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json b/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json
> index f6c7faf..3bd264e 100644
> --- a/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json
> +++ b/server/lib/deltacloud/drivers/mock/data/cimi/network/network2.json
> @@ -4,6 +4,12 @@
> "created": "Fri Jan 13 17:30:34 EET 2012",
> "state": "STARTED",
> "access": "Public",
> + "bandwidthLimit": 3,
> + "trafficPriority": 2,
> + "maxTrafficDelay": 600000,
> + "maxTrafficLoss": 100,
> + "maxTrafficJitter": 200000,
> + "routingGroup": { "href": "http://cimi.example.org/routinggroups/group1" },
> "operations": [
> { "rel": "edit", "href": "http://cimi.example.org/networks/network2" },
> { "rel": "delete", "href": "http://cimi.example.org/networks/network2" }
> diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json
> new file mode 100644
> index 0000000..f767de9
> --- /dev/null
> +++ b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config1.json
> @@ -0,0 +1,15 @@
> +{ "uri": "http://cimi.example.org/network_configurations/network_config1",
> + "name": "network_config1",
> + "description": "a network configuration",
> + "created": "Fri Mar 9 11:57:39 EET 2012",
> + "access": "Public",
> + "bandwidthLimit": 2,
> + "trafficPriority": 1,
> + "maxTrafficDelay": 500000,
> + "maxTrafficLoss": 100,
> + "maxTrafficJitter": 100000,
> + "operations": [
> + { "rel": "edit", "href": "http://cimi.example.org/network_configurations/network_config1" },
> + { "rel": "delete", "href": "http://cimi.example.org/network_configurations/network_config1" }
> + ]
> +}
> diff --git a/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json
> new file mode 100644
> index 0000000..b22d837
> --- /dev/null
> +++ b/server/lib/deltacloud/drivers/mock/data/cimi/network_configuration/network_config2.json
> @@ -0,0 +1,15 @@
> +{ "uri": "http://cimi.example.org/network_configurations/network_config2",
> + "name": "network_config2",
> + "description": "a network configuration",
> + "created": "Fri Mar 9 12:01:53 EET 2012",
> + "access": "Public",
> + "bandwidthLimit": 3,
> + "trafficPriority": 2,
> + "maxTrafficDelay": 600000,
> + "maxTrafficLoss": 100,
> + "maxTrafficJitter": 200000,
> + "operations": [
> + { "rel": "edit", "href": "http://cimi.example.org/network_configurations/network_config2" },
> + { "rel": "delete", "href": "http://cimi.example.org/network_configurations/network_config2" }
> + ]
> +}
> diff --git a/server/lib/deltacloud/drivers/mock/mock_driver.rb b/server/lib/deltacloud/drivers/mock/mock_driver.rb
> index 765338d..e522926 100644
> --- a/server/lib/deltacloud/drivers/mock/mock_driver.rb
> +++ b/server/lib/deltacloud/drivers/mock/mock_driver.rb
> @@ -455,10 +455,21 @@ module Deltacloud::Drivers::Mock
> check_credentials(credentials)
> if opts[:id].nil?
> networks = @client.load_all_cimi(:network).map{|net| CIMI::Model::Network.from_json(net)}
> - networks.map{|net|convert_cimi_network(net,opts[:env])}.flatten
> + networks.map{|net|convert_cimi_mock_urls(:network, net ,opts[:env])}.flatten
> else
> network = CIMI::Model::Network.from_json(@client.load_cimi(:network, opts[:id]))
> - convert_cimi_network(network, opts[:env])
> + convert_cimi_mock_urls(:network, network, opts[:env])
> + end
> + end
> +
> + def network_configurations(credentials, opts={})
> + check_credentials(credentials)
> + if opts[:id].nil?
> + network_configs = @client.load_all_cimi(:network_configuration).map{|net_config| CIMI::Model::NetworkConfiguration.from_json(net_config)}
> + network_configs.map{|net_config|convert_cimi_mock_urls(:network_configuration, net_config, opts[:env])}.flatten
> + else
> + network_config = CIMI::Model::NetworkConfiguration.from_json(@client.load_cimi(:network_configuration, opts[:id]))
> + convert_cimi_mock_urls(:network_configuration, network_config, opts[:env])
> end
> end
>
> @@ -498,11 +509,11 @@ module Deltacloud::Drivers::Mock
> StorageVolume.new(volume)
> end
>
> - def convert_cimi_network(network, context)
> - uri=context.network_url(network.name)
> - network.uri=uri
> - network.operations.each{|op| op.href=uri}
> - network
> + def convert_cimi_mock_urls(model_name, cimi_object, context)
> + uri=context.send(:"#{model_name}_url", cimi_object.name)
We should wrap this ^^ construction to some method, since I know
we use this .send on many places. Some decent helper will prevent us
from the pain when we change this 'url_for' in future:
def url_for(model, id) # url_for model_name, cimi_object.name
> + cimi_object.uri=uri
> + cimi_object.operations.each{|op| op.href=uri}
> + cimi_object
> end
>
> exceptions do
> --
> 1.7.6.5
>