DiscoveryFailure Could not determine a suitable URL for the plugin


#1

Hi,

I am really up against the wall on this one and could use some help. Encountering an internal server error using openstack newton heat. Here is the automation.log:

[----] I, [2017-04-05T23:45:08.370356 #28716:e2ab08]  INFO -- : Q-task_id([service_template_provision_task_1000000000026]) <AEMethod provision> Starting Orchestration Provisioning
[----] E, [2017-04-05T23:45:16.348631 #28716:e2ab08] ERROR -- : Q-task_id([service_template_provision_task_1000000000026]) The following error occurred during instance method <deploy_orchestration_stack> for AR object <#<ServiceOrchestration id: 1000000000021, name: "AnsTwr2-20170405-234502", description: "AnsTwr2", guid: "65415a3a-1a7b-11e7-9c62-fa163eeb398c", type: "ServiceOrchestration", service_template_id: 1000000000007, options: {:dialog=>{"dialog_tenant_name"=>"admin", "dialog_stack_name"=>"test", "dialog_stack_onfailure"=>"ROLLBACK", "dialog_stack_timeout"=>0, "dialog_App"=>"anstwr1", "dialog_param_env"=>"Dev", "dialog_param_private_net_id"=>"test", "dialog_param_image"=>"test", "dialog_param_private_subnet_id"=>"test", "dialog_param_public_subnet_id"=>"test", "dialog_param_server_name"=>"ansbltower", "dialog_param_key_name"=>"admin", "dialog_param_flavor"=>"m1.medium", "dialog_param_security_groups"=>"[\"dev_pres_ssh_icmp\"]"}, :orchestration_stack=>{:name=>"anstwr"}, :create_options=>{:parameters=>{"private_net_id"=>"191dc33a-ccc8-4624-82d5-78da86400390", "image"=>"rhel-7.3-35.x86_64", "private_subnet_id"=>"3adbc77d-8962-4605-8e32-9fcbbc872e9e", "public_subnet_id"=>"191dc33a-ccc8-4624-82d5-78da86400390", "server_name"=>"ansbltower", "key_name"=>"admin", "flavor"=>"m1.medium", "security_groups"=>"dev_pres_ssh_icmp"}, :disable_rollback=>false, :timeout_mins=>0, :tenant_name=>"admin"}}, display: true, created_at: "2017-04-06 03:44:54", updated_at: "2017-04-06 03:45:16", evm_owner_id: 1000000000004, miq_group_id: 1000000000019, retired: nil, retires_on: nil, retirement_warn: nil, retirement_last_warn: nil, retirement_state: nil, retirement_requester: nil, tenant_id: 1000000000001, ancestry: nil>>
[----] E, [2017-04-05T23:45:16.348808 #28716:e2ab08] ERROR -- : Q-task_id([service_template_provision_task_1000000000026]) MiqAeServiceModelBase.ar_method raised: <MiqException::MiqOrchestrationProvisionError>: <Expected(201) <=> Actual(500 InternalServerError)
excon.error.response
  :body          => "{\"explanation\": \"The server has either erred or is incapable of performing the requested operation.\", \"code\": 500, \"error\": {\"message\": \"Remote error: DiscoveryFailure Could not determine a suitable URL for the plugin\\n[u'\", \"traceback\": null, \"type\": \"RemoteError\"}, \"title\": \"Internal Server Error\"}"
  :cookies       => [
  ]
  :headers       => {
    "Content-Length"         => "301"
    "Content-Type"           => "application/json; charset=UTF-8"
    "Date"                   => "Thu, 06 Apr 2017 03:45:48 GMT"
    "X-Openstack-Request-Id" => "req-c3826f9f-85ff-4ad1-917f-63e2862efd96"
  }
  :host          => "kvm2.xxx.local"
  :local_address => "10.4.0.21"
  :local_port    => 54790
  :path          => "/v1/25fe84a3a0214be18a3ea0f20404ae77/stacks"
  :port          => 8004
  :reason_phrase => "Internal Server Error"
  :remote_ip     => "10.3.1.6"
  :status        => 500
  :status_line   => "HTTP/1.1 500 Internal Server Error\r\n"
>
[----] E, [2017-04-05T23:45:16.348984 #28716:e2ab08] ERROR -- : Q-task_id([service_template_provision_task_1000000000026]) /opt/rh/cfme-gemset/gems/excon-0.55.0/lib/excon/middlewares/expects.rb:7:in `response_call'
/opt/rh/cfme-gemset/gems/excon-0.55.0/lib/excon/middlewares/response_parser.rb:9:in `response_call'
/opt/rh/cfme-gemset/gems/excon-0.55.0/lib/excon/connection.rb:388:in `response'
/opt/rh/cfme-gemset/gems/excon-0.55.0/lib/excon/connection.rb:252:in `request'
/opt/rh/cfme-gemset/gems/fog-core-1.43.0/lib/fog/core/connection.rb:81:in `request'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.19/lib/fog/openstack/core.rb:81:in `request'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.19/lib/fog/orchestration/openstack/requests/create_stack.rb:31:in `create_stack'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.19/lib/fog/orchestration/openstack/models/stacks.rb:50:in `create'
/opt/rh/cfme-gemset/gems/fog-openstack-0.1.19/lib/fog/orchestration/openstack/models/stack.rb:23:in `save'
/var/www/miq/vmdb/app/models/manageiq/providers/openstack/cloud_manager/orchestration_stack.rb:8:in `block in raw_create_stack'
/var/www/miq/vmdb/app/models/ext_management_system.rb:362:in `with_provider_connection'
/var/www/miq/vmdb/app/models/manageiq/providers/openstack/cloud_manager/orchestration_stack.rb:7:in `raw_create_stack'
/var/www/miq/vmdb/app/models/manageiq/providers/cloud_manager/orchestration_stack.rb:8:in `create_stack'
/var/www/miq/vmdb/app/models/service_orchestration.rb:29:in `deploy_orchestration_stack'
/var/www/miq/vmdb/lib/miq_automation_engine/engine/miq_ae_service_model_base.rb:270:in `public_send'
/var/www/miq/vmdb/lib/miq_automation_engine/engine/miq_ae_service_model_base.rb:270:in `block in object_send'
/var/www/miq/vmdb/lib/miq_automation_engine/engine/miq_ae_service_model_base.rb:289:in `ar_method'
/var/www/miq/vmdb/lib/miq_automation_engine/engine/miq_ae_service_model_base.rb:299:in `ar_method'
/var/www/miq/vmdb/lib/miq_automation_engine/engine/miq_ae_service_model_base.rb:268:in `object_send'
/var/www/miq/vmdb/lib/miq_automation_engine/engine/miq_ae_service_model_base.rb:123:in `block (2 levels) in expose'
/opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1624:in `perform_without_block'
/opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1584:in `perform'
/opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1657:in `block (2 levels) in main_loop'
/opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1653:in `loop'
/opt/rh/rh-ruby23/root/usr/share/ruby/drb/drb.rb:1653:in `block in main_loop'
[----] E, [2017-04-05T23:45:16.373396 #28716:5479e4c] ERROR -- : Q-task_id([service_template_provision_task_1000000000026]) <AEMethod provision> Stack anstwr creation failed. Reason: Expected(201) <=> Actual(500 InternalServerError)
excon.error.response
  :body          => "{\"explanation\": \"The server has either erred or is incapable of performing the requested operation.\", \"code\": 500, \"error\": {\"message\": \"Remote error: DiscoveryFailure Could not determine a suitable URL for the plugin\\n[u'\", \"traceback\": null, \"type\": \"RemoteError\"}, \"title\": \"Internal Server Error\"}"
  :cookies       => [
  ]
  :headers       => {
    "Content-Length"         => "301"
    "Content-Type"           => "application/json; charset=UTF-8"
    "Date"                   => "Thu, 06 Apr 2017 03:45:48 GMT"
    "X-Openstack-Request-Id" => "req-c3826f9f-85ff-4ad1-917f-63e2862efd96"
  }
  :host          => "kvm2.xxx.local"
  :local_address => "10.4.0.21"
  :local_port    => 54790
  :path          => "/v1/25fe84a3a0214be18a3ea0f20404ae77/stacks"
  :port          => 8004
  :reason_phrase => "Internal Server Error"
  :remote_ip     => "10.3.1.6"
  :status        => 500
  :status_line   => "HTTP/1.1 500 Internal Server Error\r\n"
 (MiqException::MiqOrchestrationProvisionError)
[----] I, [2017-04-05T23:45:16.392049 #28716:e2d13c]  INFO -- : Q-task_id([service_template_provision_task_1000000000026]) <AEMethod [/ManageIQ/Cloud/Orchestration/Provisioning/StateMachines/Methods/provision]> Ending
[----] I, [2017-04-05T23:45:16.392177 #28716:e2d13c]  INFO -- : Q-task_id([service_template_provision_task_1000000000026]) Method exited with rc=MIQ_OK
[----] I, [2017-04-05T23:45:16.392520 #28716:e2d13c]  INFO -- : Q-task_id([service_template_provision_task_1000000000026]) Followed  Relationship [miqaedb:/Cloud/Orchestration/Provisioning/StateMachines/Methods/Provision#create]
[----] I, [2017-04-05T23:45:16.392671 #28716:e2d13c]  INFO -- : Q-task_id([service_template_provision_task_1000000000026]) Processed  State=[provision] with Result=[error]
[----] W, [2017-04-05T23:45:16.392829 #28716:e2d13c]  WARN -- : Q-task_id([service_template_provision_task_1000000000026]) Error in State=[provision]
[----] I, [2017-04-05T23:45:16.393096 #28716:e2d13c]  INFO -- : Q-task_id([service_template_provision_task_1000000000026]) In State=[provision], invoking [on_error] method=[update_serviceprovision_status(status => 'Expected(201) <=> Actual(500 InternalServerError)
excon.error.response
  :body          => "{\"explanation\": \"The server has either erred or is incapable of performing the requested operation.\", \"code\": 500, \"error\": {\"message\": \"Remote error: DiscoveryFailure Could not determine a suitable URL for the plugin\\n[u'\", \"traceback\": null, \"type\": \"RemoteError\"}, \"title\": \"Internal Server Error\"}"
  :cookies       => [
  ]
  :headers       => {
    "Content-Length"         => "301"
    "Content-Type"           => "application/json; charset=UTF-8"
    "Date"                   => "Thu, 06 Apr 2017 03:45:48 GMT"
    "X-Openstack-Request-Id" => "req-c3826f9f-85ff-4ad1-917f-63e2862efd96"
  }
  :host          => "kvm2.xxx.local"
  :local_address => "10.4.0.21"
  :local_port    => 54790
  :path          => "/v1/25fe84a3a0214be18a3ea0f20404ae77/stacks"
  :port          => 8004
  :reason_phrase => "Internal Server Error"
  :remote_ip     => "10.3.1.6"
  :status        => 500
  :status_line   => "HTTP/1.1 500 Internal Server Error\r\n"
 (MiqException::MiqOrchestrationProvisionError)')]

Thanks,
SN


#2

testing through a irb session works:

require "fog/openstack"
service = Fog::Orchestration::OpenStack.new({
:openstack_username  => "admin",
:openstack_project_name  =>  "admin",
:openstack_api_key   => "secret",
:openstack_auth_url  => "http://10.3.1.6:35357/v3/auth/tokens",
:openstack_domain_id  => "default"
})