<div dir="ltr"><div><div><div>Hi!<br></div>Since I don't found such scenario in our upstream repo, I assume that this is your custom plugin and I can propose you several solutions:<br><br></div>1) `nova evacuate` is allowed only for admin user, so you can use admin client in your scenario without changing roles for users. Also, `required_openstack` validator will check for you that admin client is specified for your deployment. An example:<br><pre style="background-color:rgb(255,255,255);color:rgb(0,0,0);font-family:"DejaVu Sans Mono""></pre><pre style="background-color:rgb(255,255,255);color:rgb(0,0,0);font-family:"DejaVu Sans Mono";margin-left:40px"><span style="color:rgb(0,0,128);font-weight:bold">from </span>rally.plugins.openstack <span style="color:rgb(0,0,128);font-weight:bold">import </span>scenario<br><br><br><span style="color:rgb(0,0,128);font-weight:bold">class </span>MyPlugin(scenario.OpenStackScenario):<br>    <span style="color:rgb(128,128,128);font-style:italic">"""My awesome plugin."""</span><br><span style="color:rgb(128,128,128);font-style:italic"></span><span style="color:rgb(128,128,128);font-style:italic"></span><br><span style="color:rgb(128,128,128);font-style:italic"></span><span style="color:rgb(128,128,128);font-style:italic">    </span>@<span style="color:rgb(0,0,178)">validation.required_openstack</span>(<span style="color:rgb(102,0,153)">admin</span>=<span style="color:rgb(0,0,128)">True</span>, <span style="color:rgb(102,0,153)">users</span>=<span style="color:rgb(0,0,128)">True</span>)<br>    @<span style="color:rgb(0,0,178)">scenario.configure</span>()<br>    <span style="color:rgb(0,0,128);font-weight:bold">def </span>some_scenario(<span style="color:rgb(148,85,141)">self</span>):<br>        <span style="color:rgb(128,128,128);font-style:italic"># do something with nova via simple user</span><br><span style="color:rgb(128,128,128);font-style:italic"></span><span style="color:rgb(128,128,128);font-style:italic">        </span>user_novaclient = <span style="color:rgb(148,85,141)">self</span>.clients(<span style="color:rgb(0,128,0);font-weight:bold">"nova"</span>)<br>        <span style="color:rgb(128,128,128)">server </span>= user_novaclient.servers.boot(...)<br>        <br>        <span style="color:rgb(128,128,128);font-style:italic"># do something with nova via admin user</span><br><span style="color:rgb(128,128,128);font-style:italic"></span><span style="color:rgb(128,128,128);font-style:italic">        </span>admin_novaclient = <span style="color:rgb(148,85,141)">self</span>.admin_clients(<span style="color:rgb(0,128,0);font-weight:bold">"nova"</span>)<br>        admin_novaclient.servers.evacuate(...)<br></pre><pre style="background-color:rgb(255,255,255);color:rgb(0,0,0);font-family:"DejaVu Sans Mono""></pre><br></div><div>2) Rally supports "roles" context, which can assign roles to users. If you specify your task as below, self.clients("nova") will return novaclient initialized by user with "admin" and "another_name_of_role_if_needed" roles:<br><br><pre style="background-color:rgb(255,255,255);color:rgb(0,0,0);font-family:"DejaVu Sans Mono"">---<br>  <span style="color:rgb(0,0,128);font-weight:bold"></span>MyPlugin.some_scenario:<br>    -<br>      runner:<br>        type: "constant"<br>        times: 10<br>        concurrency: 2<br>      context:<br>        users:<br>          tenants: 2<br>          users_per_tenant: 3<br>        roles:<br>          - "admin"<br>          - "another_name_of_role_if_needed"</pre><br></div><div><pre style="background-color:rgb(255,255,255);color:rgb(0,0,0);font-family:"DejaVu Sans Mono""><br></pre></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 23, 2016 at 8:20 AM, Wu, Liming <span dir="ltr"><<a href="mailto:wulm.fnst@cn.fujitsu.com" target="_blank">wulm.fnst@cn.fujitsu.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi<br>
<br>
  When I run a scenario about "nova evacuate **",  error message was<br>
  Show as follows.  How can I give the admin role to rally user.<br>
<br>
2016-02-23 09:18:25.631 6212 INFO rally.task.runner [-] Task e2ad6390-8cde-4ed7-a595-f5c36d5e2a08 | ITER: 0 END: Error Forbidden: User does not have admin privileges (HTTP 403) (Request-ID: req-45312185-56e5-46c4-a39a-68f5e346715e)<br>
2016-02-23 09:18:25.636 5995 INFO rally.plugins.openstack.context.cleanup.context [-] Task e2ad6390-8cde-4ed7-a595-f5c36d5e2a08 | Starting:  user resources cleanup<br>
<br>
Best regards<br>
wuliming<br>
<br>
<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature"><div dir="ltr">Best regards,<br>Andrey Kurilin.<br></div></div>
</div>