diff --git a/lib/puppet/provider/neutron_network/neutron.rb b/lib/puppet/provider/neutron_network/neutron.rb index ed93ce28d..5ecfeb685 100644 --- a/lib/puppet/provider/neutron_network/neutron.rb +++ b/lib/puppet/provider/neutron_network/neutron.rb @@ -102,23 +102,19 @@ Puppet::Type.type(:neutron_network).provide( results = auth_neutron('net-create', '--format=shell', network_opts, resource[:name]) - if results =~ /Created a new network:/ - attrs = self.class.parse_creation_output(results) - @property_hash = { - :ensure => :present, - :name => resource[:name], - :id => attrs['id'], - :admin_state_up => attrs['admin_state_up'], - :provider_network_type => attrs['provider:network_type'], - :provider_physical_network => attrs['provider:physical_network'], - :provider_segmentation_id => attrs['provider:segmentation_id'], - :router_external => attrs['router:external'], - :shared => attrs['shared'], - :tenant_id => attrs['tenant_id'], - } - else - fail("did not get expected message on network creation, got #{results}") - end + attrs = self.class.parse_creation_output(results) + @property_hash = { + :ensure => :present, + :name => resource[:name], + :id => attrs['id'], + :admin_state_up => attrs['admin_state_up'], + :provider_network_type => attrs['provider:network_type'], + :provider_physical_network => attrs['provider:physical_network'], + :provider_segmentation_id => attrs['provider:segmentation_id'], + :router_external => attrs['router:external'], + :shared => attrs['shared'], + :tenant_id => attrs['tenant_id'], + } end def destroy diff --git a/lib/puppet/provider/neutron_port/neutron.rb b/lib/puppet/provider/neutron_port/neutron.rb index 14da7c5e8..fd32f1fb5 100644 --- a/lib/puppet/provider/neutron_port/neutron.rb +++ b/lib/puppet/provider/neutron_port/neutron.rb @@ -88,24 +88,20 @@ Puppet::Type.type(:neutron_port).provide( resource[:network_name] ) - if results =~ /Created a new port:/ - attrs = self.class.parse_creation_output(results) - @property_hash = { - :ensure => :present, - :name => resource[:name], - :id => attrs["id"], - :status => attrs["status"], - :tenant_id => attrs["tenant_id"], - :network_id => attrs["network_id"], - :admin_state_up => attrs["admin_state_up"], - :network_name => resource[:network_name], - :subnet_name => resource[:subnet_name], - :subnet_id => self.class.parse_subnet_id(attrs["fixed_ips"]), - :ip_address => self.class.parse_ip_address(attrs["fixed_ips"]) - } - else - fail("did not get expected message on port creation, got #{results}") - end + attrs = self.class.parse_creation_output(results) + @property_hash = { + :ensure => :present, + :name => resource[:name], + :id => attrs["id"], + :status => attrs["status"], + :tenant_id => attrs["tenant_id"], + :network_id => attrs["network_id"], + :admin_state_up => attrs["admin_state_up"], + :network_name => resource[:network_name], + :subnet_name => resource[:subnet_name], + :subnet_id => self.class.parse_subnet_id(attrs["fixed_ips"]), + :ip_address => self.class.parse_ip_address(attrs["fixed_ips"]) + } end def destroy diff --git a/lib/puppet/provider/neutron_router/neutron.rb b/lib/puppet/provider/neutron_router/neutron.rb index db7b898be..fdc512ea9 100644 --- a/lib/puppet/provider/neutron_router/neutron.rb +++ b/lib/puppet/provider/neutron_router/neutron.rb @@ -86,36 +86,25 @@ Puppet::Type.type(:neutron_router).provide( results = auth_neutron("router-create", '--format=shell', opts, resource[:name]) - if results =~ /Created a new router:/ - attrs = self.class.parse_creation_output(results) - @property_hash = { - :ensure => :present, - :name => resource[:name], - :id => attrs['id'], - :admin_state_up => attrs['admin_state_up'], - :external_gateway_info => attrs['external_gateway_info'], - :status => attrs['status'], - :tenant_id => attrs['tenant_id'], - } + attrs = self.class.parse_creation_output(results) + @property_hash = { + :ensure => :present, + :name => resource[:name], + :id => attrs['id'], + :admin_state_up => attrs['admin_state_up'], + :external_gateway_info => attrs['external_gateway_info'], + :status => attrs['status'], + :tenant_id => attrs['tenant_id'], + } - if @resource[:gateway_network_name] - results = auth_neutron('router-gateway-set', - @resource[:name], - @resource[:gateway_network_name]) - if results =~ /Set gateway for router/ - attrs = self.class.get_neutron_resource_attrs('router', - @resource[:name]) - @property_hash[:external_gateway_info] = \ - attrs['external_gateway_info'] - else - fail(<<-EOT -did not get expected message on setting router gateway, got #{results} -EOT - ) - end - end - else - fail("did not get expected message on router creation, got #{results}") + if @resource[:gateway_network_name] + results = auth_neutron('router-gateway-set', + @resource[:name], + @resource[:gateway_network_name]) + attrs = self.class.get_neutron_resource_attrs('router', + @resource[:name]) + @property_hash[:external_gateway_info] = \ + attrs['external_gateway_info'] end end diff --git a/lib/puppet/provider/neutron_router_interface/neutron.rb b/lib/puppet/provider/neutron_router_interface/neutron.rb index 4637846b5..e9b541ac6 100644 --- a/lib/puppet/provider/neutron_router_interface/neutron.rb +++ b/lib/puppet/provider/neutron_router_interface/neutron.rb @@ -67,14 +67,10 @@ Puppet::Type.type(:neutron_router_interface).provide( end results = auth_neutron(args) - if results =~ /Added interface.* to router/ - @property_hash = { - :ensure => :present, - :name => resource[:name], - } - else - fail("did not get expected message on interface addition, got #{results}") - end + @property_hash = { + :ensure => :present, + :name => resource[:name], + } end def router_name diff --git a/lib/puppet/provider/neutron_subnet/neutron.rb b/lib/puppet/provider/neutron_subnet/neutron.rb index d93d30fd5..01f63711d 100644 --- a/lib/puppet/provider/neutron_subnet/neutron.rb +++ b/lib/puppet/provider/neutron_subnet/neutron.rb @@ -168,27 +168,23 @@ Puppet::Type.type(:neutron_subnet).provide( results = auth_neutron('subnet-create', '--format=shell', opts, resource[:cidr]) - if results =~ /Created a new subnet:/ - attrs = self.class.parse_creation_output(results) - @property_hash = { - :ensure => :present, - :name => resource[:name], - :id => attrs['id'], - :cidr => attrs['cidr'], - :ip_version => attrs['ip_version'], - :ipv6_ra_mode => attrs['ipv6_ra_mode'], - :ipv6_address_mode => attrs['ipv6_address_mode'], - :gateway_ip => self.class.parse_gateway_ip(attrs['gateway_ip']), - :allocation_pools => self.class.parse_allocation_pool(attrs['allocation_pools']), - :host_routes => self.class.parse_host_routes(attrs['host_routes']), - :dns_nameservers => self.class.parse_dns_nameservers(attrs['dns_nameservers']), - :enable_dhcp => attrs['enable_dhcp'], - :network_id => attrs['network_id'], - :tenant_id => attrs['tenant_id'], - } - else - fail("did not get expected message on subnet creation, got #{results}") - end + attrs = self.class.parse_creation_output(results) + @property_hash = { + :ensure => :present, + :name => resource[:name], + :id => attrs['id'], + :cidr => attrs['cidr'], + :ip_version => attrs['ip_version'], + :ipv6_ra_mode => attrs['ipv6_ra_mode'], + :ipv6_address_mode => attrs['ipv6_address_mode'], + :gateway_ip => self.class.parse_gateway_ip(attrs['gateway_ip']), + :allocation_pools => self.class.parse_allocation_pool(attrs['allocation_pools']), + :host_routes => self.class.parse_host_routes(attrs['host_routes']), + :dns_nameservers => self.class.parse_dns_nameservers(attrs['dns_nameservers']), + :enable_dhcp => attrs['enable_dhcp'], + :network_id => attrs['network_id'], + :tenant_id => attrs['tenant_id'], + } end def destroy