cannot run tempest against internal_url endpoint

Bug #1178083 reported by June Yi
24
This bug affects 3 people
Affects Status Importance Assigned to Milestone
tempest
Fix Released
Wishlist
Jordan Pittier

Bug Description

Sometimes, it is needed to deploy Tempest internally. (i.e. some cloud service does not open their image service endpoint to public.)

Currently, endpoint_url is hard coded as 'publicURL'. It will be better to make it configurable.

June Yi (gochist)
description: updated
Revision history for this message
Attila Fazekas (afazekas) wrote :

The default value of this option should be None, and tempest should fall back to the endpoint definitions by default.

Changed in tempest:
importance: Undecided → Low
status: New → Confirmed
Revision history for this message
Attila Fazekas (afazekas) wrote :

It looks like similar issue:
https://bugs.launchpad.net/tempest/+bug/1185887

Can it solve your issue ?

Changed in tempest:
status: Confirmed → Incomplete
Revision history for this message
June Yi (gochist) wrote :

Attila, yes it can.

Revision history for this message
Attila Fazekas (afazekas) wrote :

Please try to apply the solution for glance which specified in the bug 1185887.

Changed in tempest:
status: Incomplete → Triaged
Sean Dague (sdague)
tags: added: low-hanging-fruit
Sean Dague (sdague)
Changed in tempest:
status: Triaged → Confirmed
importance: Low → Wishlist
Changed in tempest:
assignee: nobody → Jordan Pittier (jordan-pittier)
Revision history for this message
Jordan Pittier (jordan-pittier) wrote :

I'd like to work on a patch to solve this.

A first version of the patch would be to add another flag named "endpoint_type" in tempest.conf. This flag would be read in tempest/common/rest_client.py (to set the endpoint_url variable) and in tempest/scenario/manager.py in the different _get_*_client(). The flag would be "global", used by all clients, without the possibility to use different endpoint_type for different clients.

I'll give it a try tomorrow or the day after, please tell me if I am heading in the wrong direction :)

Jordan

Revision history for this message
Jordan Pittier (jordan-pittier) wrote :

Actually, the structure of the code allows to set easily the endpoint_type on a per client (nova, heat,neutron etc.) basis. I'll do this.

Revision history for this message
Andrea Frittoli (andrea-frittoli) wrote :

Can you make it so that the parameter is honoured by both API (rest_client.py) and scenario (official clients) tests?

For nova, cinder, neutron it's adding "endpoint_type=endpoint_type" to the client creation
For glance and heat it's adding "endpoint_type=endpoint_type" to the catalog.url_for() call.

Revision history for this message
Jordan Pittier (jordan-pittier) wrote :

I will :) Thanks for the hints.

Changed in tempest:
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to tempest (master)

Reviewed: https://review.openstack.org/62887
Committed: https://git.openstack.org/cgit/openstack/tempest/commit/?id=5d29b2cd267142b5c396fdef689b55589c80a857
Submitter: Jenkins
Branch: master

commit 5d29b2cd267142b5c396fdef689b55589c80a857
Author: JordanP <email address hidden>
Date: Wed Dec 18 13:56:03 2013 +0000

    Make endpoint type configurable

    Allow to specify the endpoint type to use for each service. Not everybody will
    want to use publicURL, so let's make this configurable.

    Closes-Bug: #1178083
    Change-Id: Idb414aef7510178efef59cb48149ff1d86f11cb1

Changed in tempest:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.