Digging up an old thread (as I came across 
https://github.com/ansible/ansible/issues/7564 looking at tagging RDS 
instances).

It looks like the rds2 module is automatically generated so that it keeps 
up to date with upstream AWS capabilities, and this change broke backward 
compatibility. 
http://boto.readthedocs.org/en/latest/migrations/rds_v1_to_v2.html

Do we have a minimum supported boto version? We could rewrite the RDS 
module to use rds2, but that might affect users on earlier boto versions. 
Supporting both seems like a headache. However, I suspect we could just use 
rds2 for the features that just aren't in rds (so make a 
boto.rds2.RDSConnection if we need to do instance tagging or publicly 
available).

I'm hoping I can use the ec2_tag module to work around my problem but it's 
worth discussing in more general terms - we can deprecate old Ansible 
conventions, but when do we deprecate old boto libraries?

Will


On Thursday, June 12, 2014 9:25:32 AM UTC+10, Michael DeHaan wrote:
>
> This I don't know.
>
> Maybe so other RDS using folks would have input.
>
>
>
> On Wed, Jun 11, 2014 at 4:29 PM, iain wright <iain...@gmail.com 
> <javascript:>> wrote:
>
>> Hi Michael,
>>
>> Thanks for the reply! That makes sense, I'm still learning the 
>> ansible/correct way :)
>>
>> Do you think we should we pursue modifying the boto rds interface to 
>> support the param or should we modify the ansible rds module to use rds2 
>> (which seems to support option groups and a couple other things like 
>> publicly_accessible). 
>>
>> I don't really understand & couldn't find any history as to why boto 
>> added "rds2" instead of iterating on the existing rds interface:
>>
>> https://github.com/boto/boto/tree/develop/boto/rds
>> https://github.com/boto/boto/tree/develop/boto/rds2
>>
>> Cheers,
>> iain
>>
>>
>>
>>
>> -- 
>> Iain Wright
>> Cell: (562) 852-5916
>>
>> <http://www.labctsi.org/>
>> This email message is confidential, intended only for the recipient(s) 
>> named above and may contain information that is privileged, exempt from 
>> disclosure under applicable law. If you are not the intended recipient, do 
>> not disclose or disseminate the message to anyone except the intended 
>> recipient. If you have received this message in error, or are not the named 
>> recipient(s), please immediately notify the sender by return email, and 
>> delete all copies of this message.
>>
>>
>> On Wed, Jun 11, 2014 at 11:55 AM, Michael DeHaan <mic...@ansible.com 
>> <javascript:>> wrote:
>>
>>> It seems very non-Ansible-way to have another copy of the module that 
>>> just uses a different protocol.
>>>
>>> Couldn't this just be changed up to support the new parameter?
>>>
>>> --Michael
>>>
>>>
>>>
>>>
>>> On Tue, Jun 10, 2014 at 12:29 AM, iain wright <iain...@gmail.com 
>>> <javascript:>> wrote:
>>>
>>>> Hi folks,
>>>>
>>>> The goal was to provision an rds instance using ansible, which was easy 
>>>> enough using this module: http://docs.ansible.com/rds_module.html
>>>>
>>>> Unfortunately this module doesn't have the option to allow the RDS to 
>>>> pass in publicly_accessible and ec2 defaults making it publicly accessible 
>>>> to false. We'd like this seed our data on instance creation, proper 
>>>> security groups are used ofcourse.
>>>>
>>>> I tried modifying the module to include publicly_accessible where 
>>>> needed but it looks the boto rds doesn't support it:
>>>> <localhost> REMOTE_MODULE rds size=10 password=VALUE_HIDDEN 
>>>> publicly_accessible=true command=create instance_type=db.m1.small 
>>>> instance_name=prod-rds2 engine_version=5.6 
>>>> aws_access_key=AKIAJKMT2FVVHTPMEI6Q 
>>>> aws_secret_key=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 region=us-west-1 
>>>> vpc_security_groups=sg-905fb6f5 db_engine=MySQL subnet=prod-rds 
>>>> username=admin
>>>> <localhost> EXEC ['/bin/sh', '-c', 'mkdir -p 
>>>> $HOME/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009 && chmod a+rx 
>>>> $HOME/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009 && echo 
>>>> $HOME/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009']
>>>> <localhost> PUT /tmp/tmpDEylEv TO 
>>>> /home/iain/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009/rds
>>>> <localhost> EXEC ['/bin/sh', '-c', u'LC_CTYPE=C LANG=C /usr/bin/python 
>>>> /home/iain/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009/rds; rm 
>>>> -rf /home/iain/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009/ 
>>>> >/dev/null 2>&1']
>>>> failed: [localhost] => (item={'username': 'admin', 'subnet': 
>>>> 'prod-public-rds', 'db_engine': 'MySQL', 'name': 'prod-rds2', 
>>>> 'instance_type': 'db.m1.small', 'password': 'omitted_from_mailing_list', 
>>>> 'engine_version': 5.6, 'size': 10}) => {"failed": true, "item": 
>>>> {"db_engine": "MySQL", "engine_version": 5.6, "instance_type": 
>>>> "db.m1.small", "name": "prod-rds2", "password": 
>>>> "omitted_from_mailing_list", "size": 10, "subnet": "prod-public-rds", 
>>>> "username": "admin"}, "parsed": false}
>>>> invalid output was: Traceback (most recent call last):
>>>>   File 
>>>> "/home/iain/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009/rds", 
>>>> line 2048, in <module>
>>>>     main()
>>>>   File 
>>>> "/home/iain/.ansible/tmp/ansible-tmp-1402373676.78-265376028601009/rds", 
>>>> line 487, in main
>>>>     result = conn.create_dbinstance(instance_name, size, instance_type, 
>>>> username, password, publicly_accessible, **params)
>>>> TypeError: create_dbinstance() got an unexpected keyword argument 
>>>> 'publicly_accessible'
>>>>
>>>>
>>>> Boto does have rds2 which does seem to support this: 
>>>> https://github.com/boto/boto/blob/develop/boto/rds2/layer1.py
>>>>
>>>> Is anyone interested in creating an rds2 module in ansible for this? Is 
>>>> this the proper place to request such a module or are they generally user 
>>>> provided?
>>>>
>>>> Thank you,
>>>> iain
>>>>
>>>>  -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Ansible Project" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to ansible-proje...@googlegroups.com <javascript:>.
>>>>
>>>> To post to this group, send email to ansible...@googlegroups.com 
>>>> <javascript:>.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/ansible-project/a4dd2940-0158-474a-9ffc-d2ec73e9b77a%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/ansible-project/a4dd2940-0158-474a-9ffc-d2ec73e9b77a%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  -- 
>>> You received this message because you are subscribed to a topic in the 
>>> Google Groups "Ansible Project" group.
>>> To unsubscribe from this topic, visit 
>>> https://groups.google.com/d/topic/ansible-project/jPcfjXH0cc0/unsubscribe
>>> .
>>> To unsubscribe from this group and all its topics, send an email to 
>>> ansible-proje...@googlegroups.com <javascript:>.
>>>
>>> To post to this group, send email to ansible...@googlegroups.com 
>>> <javascript:>.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgwzaKnTxPaWEjD7N7ApQBmtfkpm1EeBSmyNFOpDt9Tdmw%40mail.gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgwzaKnTxPaWEjD7N7ApQBmtfkpm1EeBSmyNFOpDt9Tdmw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>  
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Ansible Project" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to ansible-proje...@googlegroups.com <javascript:>.
>> To post to this group, send email to ansible...@googlegroups.com 
>> <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/CAMhkWdDJRMs78uS02TWUtRtuJKRXm%2BYr6fkTO6Ck7MKMPQ8V%3DQ%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/CAMhkWdDJRMs78uS02TWUtRtuJKRXm%2BYr6fkTO6Ck7MKMPQ8V%3DQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To post to this group, send email to ansible-project@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/b0fc5833-d03b-40db-b0fc-76fb78dc0976%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to