# extra\_create\_args for rax module

**URL:** <https://forum.ansible.com/t/extra-create-args-for-rax-module/17580>\
**Category:** Ansible Project\
**Created:** [February 20, 2015, 6:46pm UTC](https://forum.ansible.com/t/extra-create-args-for-rax-module/17580 "2015-02-20T18:46:44Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Josh\_Smift1](https://avatars.discourse-cdn.com/v4/letter/j/bcef8e/32.png) [@Josh\_Smift1](https://forum.ansible.com/u/Josh_Smift1)\
**Post date:** [February 20, 2015, 6:46pm UTC](https://forum.ansible.com/t/extra-create-args-for-rax-module/17580/1 "2015-02-20T18:46:44Z")

</div>

We want to use the rax module to create instances of the "Memory" flavor,  
and are getting an error like

&nbsp;&nbsp;msg: Policy doesn't allow memory\_flavor:create:image\_backed to be performed.

when we try. [https://github.com/chef/knife-rackspace/issues/91](https://github.com/chef/knife-rackspace/issues/91) looks like  
a similar issue for Chef, where they concluded that

&nbsp;&nbsp;If you use any of the compute or memory flavors, the only available boot  
&nbsp;&nbsp;source is boot-from-volume.

and

&nbsp;&nbsp;To support these flavors, we'll need the ability to specify  
&nbsp;&nbsp;boot-from-volume from knife-rackspace.

Separately, when we opened a Rackspace ticket about this, the tech there  
said

&nbsp;&nbsp;The takeaway is that image\_id should be present but blank, and you need  
&nbsp;&nbsp;a block\_device\_mapping parameter (or boot\_image\_id if you were using a  
&nbsp;&nbsp;Ruby based tool).

Does the Ansible rax module support this, possibly with extra\_create\_args?  
If so, anyone have an example of how exactly to use it?  
[http://docs.ansible.com/rax\_module.html](http://docs.ansible.com/rax_module.html) just says "A hash of key/value  
pairs to be used when creating a new server. This is considered an  
advanced option, use it wisely and with caution. (added in Ansible 1.6)"  
and the rax module code didn't seem to have any other obvious details.

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-Josh (jbs@care.com)

This email is intended for the person(s) to whom it is addressed and may contain information that is PRIVILEGED or CONFIDENTIAL. Any unauthorized use, distribution, copying, or disclosure by any person other than the addressee(s) is strictly prohibited. If you have received this email in error, please notify the sender immediately by return email and delete the message and any attachments from your system.

---

<div class="post-metadata">

**Author:** ![sivel](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/sivel/32/1198_2.png) [@sivel](https://forum.ansible.com/u/sivel)\
**Post date:** [February 20, 2015, 8:48pm UTC](https://forum.ansible.com/t/extra-create-args-for-rax-module/17580/2 "2015-02-20T20:48:36Z")

</div>

Josh,

Ansible 1.8 does not support boot from volume for rax servers. 1.9 will however support this properly:

[https://github.com/ansible/ansible-modules-core/pull/798](https://github.com/ansible/ansible-modules-core/pull/798)  
[https://github.com/ansible/ansible/pull/10259](https://github.com/ansible/ansible/pull/10259)

extra\_create\_args unfortunately doesn’t give you full enough control over the module to boot from volume, due to variable checking and what is sent to the API previously.

In order to use this functionality now, it requires current devel of both of the above referenced repositories, or at minimum, copying all affected files from those PRs into a 1.8 install.

---

<div class="post-metadata">

**Author:** ![Josh\_Smift1](https://avatars.discourse-cdn.com/v4/letter/j/bcef8e/32.png) [@Josh\_Smift1](https://forum.ansible.com/u/Josh_Smift1)\
**Post date:** [February 25, 2015, 5:57pm UTC](https://forum.ansible.com/t/extra-create-args-for-rax-module/17580/3 "2015-02-25T17:57:44Z")

</div>

> Ansible 1.8 does not support boot from volume for rax servers. 1.9  
> will however support this properly:
> 
> [https://github.com/ansible/ansible-modules-core/pull/798](https://github.com/ansible/ansible-modules-core/pull/798)  
> [https://github.com/ansible/ansible/pull/10259](https://github.com/ansible/ansible/pull/10259)
> 
> extra\_create\_args unfortunately doesn't give you full enough control  
> over the module to boot from volume, due to variable checking and what  
> is sent to the API previously.

Aha, ok, cool. I'm playing with a clone of devel, and making some  
progress, but one thing we're having trouble with is using rax.py to get  
our inventory. I'm using the rax.py from devel, and it seems to be failing  
with a pyrax exception:

&nbsp;&nbsp;pyrax.exceptions.BadRequest: n/a (HTTP 400)

I can send along the full stack trace if need be. We have pyrax installed  
via pip, and it's version 1.6.2. Do we need a newer version?

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-Josh (jbs@care.com)

This email is intended for the person(s) to whom it is addressed and may contain information that is PRIVILEGED or CONFIDENTIAL. Any unauthorized use, distribution, copying, or disclosure by any person other than the addressee(s) is strictly prohibited. If you have received this email in error, please notify the sender immediately by return email and delete the message and any attachments from your system.

---

<div class="post-metadata">

**Author:** ![Josh\_Smift1](https://avatars.discourse-cdn.com/v4/letter/j/bcef8e/32.png) [@Josh\_Smift1](https://forum.ansible.com/u/Josh_Smift1)\
**Post date:** [February 25, 2015, 9:40pm UTC](https://forum.ansible.com/t/extra-create-args-for-rax-module/17580/4 "2015-02-25T21:40:19Z")

</div>

> I'm playing with a clone of devel, and making some progress, but one  
> thing we're having trouble with is using rax.py to get our inventory.  
> I'm using the rax.py from devel, and it seems to be failing with a  
> pyrax exception:
> 
> &nbsp;&nbsp;pyrax.exceptions.BadRequest: n/a (HTTP 400)

This appears to have been a connectivity problem, since resolved. Never mind!

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-Josh (jbs@care.com)

This email is intended for the person(s) to whom it is addressed and may contain information that is PRIVILEGED or CONFIDENTIAL. Any unauthorized use, distribution, copying, or disclosure by any person other than the addressee(s) is strictly prohibited. If you have received this email in error, please notify the sender immediately by return email and delete the message and any attachments from your system.
