If you are on a mac you can also use brew to install a CA bundle. "brew install curl-ca-bundle"
Drew On Friday, February 7, 2014 10:34:41 AM UTC-5, Eric Johnson wrote: > > Awesome! Glad to hear you've got it working. > > I'll try not to mask out those errors in my next pull-request. > > > On Fri, Feb 7, 2014 at 7:31 AM, Warren Strange > <[email protected]<javascript:> > > wrote: > >> >> >> OK - Got it working >> >> For those on Mac OS X, libcloud needs access to a CA cert chain. You can >> download one at >> http://curl.haxx.se/docs/caextract.html >> >> Then set the SSL_CERT_FILE to the path of cert.pem downloaded from above. >> >> >> >> On Friday, February 7, 2014 11:16:58 AM UTC-4, Warren Strange wrote: >>> >>> >>> Thanks Eric >>> >>> >>> After fixing up the error logging I am now seeing: >>> >>> msg: No CA Certificates were found in CA_CERTS_PATH. For information on >>> how to get required certificate files, please visit >>> https://libcloud.readthedocs.org/en/latest/other/ssl- >>> certificate-validation.html - >>> >>> So it looks I have some issue with the certificate. >>> >>> >>> >>> >>> On Thursday, February 6, 2014 6:50:50 PM UTC-4, Eric Johnson wrote: >>>> >>>> That may be related, but your openssl commands look good so I suspect >>>> there's something else wrong. Unfortunately, I'm (poorly) masking the real >>>> error but my guess is that it's related to authentication. The best bet >>>> to >>>> get to the root of the problem would be to hack up the gce module (line >>>> 191) to print out the real error message. Perhaps you're not using the >>>> correct email address to match the key or something like that. >>>> >>>> Unrelated (I think), but your playbook looks like it's missing an >>>> "instance_names" parameter to pull in the values of your "names" vars. >>>> >>>> >>>> On Thursday, February 6, 2014 7:54:59 AM UTC-8, Warren Strange wrote: >>>>> >>>>> >>>>> >>>>> As a follow up this looks like: https://github.com/ >>>>> ansible/ansible/issues/5583 >>>>> >>>>> >>>>> >>>>> This is what I used to create my .pem key >>>>> >>>>> openssl pkcs12 -in >>>>> 968bebd2b23ddd47d1dbead594f0536ee98b9670-privatekey.p12 >>>>> -passin pass:notasecret -nodes -nocerts | openssl rsa -out gce.pem >>>>> >>>>> >>>>> >>>>> >>>>> On Thursday, February 6, 2014 11:45:16 AM UTC-4, Warren Strange wrote: >>>>>> >>>>>> >>>>>> >>>>>> I am running into a problem the gce module. I suspect it has >>>>>> something to do with my environment. Any tips to further troubleshoot >>>>>> this >>>>>> would be welcome. >>>>>> >>>>>> I am running ansible from git (as of a couple of days ago), and using >>>>>> libcloud 0.14.0. I know there was an issue with the beta3 of libcloud - >>>>>> but >>>>>> I think this version is newer (and the error I get is different >>>>>> anyways...). I have followed the thread on how to set up secrets.py, set >>>>>> GCE_PARAMS, etc. I think I have that part correct - but the error shows >>>>>> up >>>>>> no matter the contents of secrets.py - making me think it doesnt even >>>>>> get >>>>>> to that point. >>>>>> >>>>>> My playbook looks like (ignore extra line breaks - that is an >>>>>> artifact of cut n paste) >>>>>> >>>>>> - name: Create a sandbox instance >>>>>> >>>>>> hosts: localhost >>>>>> >>>>>> connection: local >>>>>> >>>>>> vars: >>>>>> >>>>>> names: foo,bar >>>>>> >>>>>> machine_type: f1-micro >>>>>> >>>>>> image: centos-6-v20131120 >>>>>> >>>>>> zone: us-central1-a >>>>>> >>>>>> tasks: >>>>>> >>>>>> - name: Launch instances >>>>>> >>>>>> local_action: gce machine_type={{machine_type}} image={{image}} >>>>>> zone={{zone}} >>>>>> >>>>>> >>>>>> >>>>>> The error I get is "AttributeError: 'exceptions.ValueError' object >>>>>> has no attribute 'http_code'" >>>>>> >>>>>> >>>>>> The full output is below: >>>>>> >>>>>> >>>>>> PLAY [Create a sandbox instance] ****************************** >>>>>> **************** >>>>>> >>>>>> >>>>>> GATHERING FACTS ****************************** >>>>>> ********************************* >>>>>> >>>>>> <localhost> REMOTE_MODULE setup >>>>>> >>>>>> <127.0.0.1> REMOTE_MODULE setup >>>>>> >>>>>> <localhost> EXEC ['/bin/sh', '-c', 'mkdir -p >>>>>> $HOME/.ansible/tmp/ansible-tmp-1391701320.38-99585849597022 && chmod >>>>>> a+rx $HOME/.ansible/tmp/ansible-tmp-1391701320.38-99585849597022 && >>>>>> echo $HOME/.ansible/tmp/ansible-tmp-1391701320.38-99585849597022'] >>>>>> >>>>>> <127.0.0.1> EXEC ['/bin/sh', '-c', 'mkdir -p >>>>>> $HOME/.ansible/tmp/ansible-tmp-1391701320.39-156688493018489 && >>>>>> chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1391701320.39-156688493018489 >>>>>> && echo $HOME/.ansible/tmp/ansible-tmp-1391701320.39- >>>>>> 156688493018489'] >>>>>> >>>>>> <localhost> PUT >>>>>> /var/folders/j6/q_tyq95n1zzf_v68908mpxy40000gn/T/tmpZVDeOO >>>>>> TO /Users/warren/.ansible/tmp/ansible-tmp-1391701320.38- >>>>>> 99585849597022/setup >>>>>> >>>>>> <localhost> EXEC ['/bin/sh', '-c', '/usr/bin/python >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.38-99585849597022/setup; >>>>>> >>>>>> rm -rf >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.38-99585849597022/ >>>>>> >/dev/null 2>&1'] >>>>>> >>>>>> <127.0.0.1> PUT >>>>>> /var/folders/j6/q_tyq95n1zzf_v68908mpxy40000gn/T/tmp6yDJfN >>>>>> TO /Users/warren/.ansible/tmp/ansible-tmp-1391701320.39- >>>>>> 156688493018489/setup >>>>>> >>>>>> <127.0.0.1> EXEC ['/bin/sh', '-c', '/usr/bin/python >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.39-156688493018489/setup; >>>>>> >>>>>> rm -rf >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.39-156688493018489/ >>>>>> >/dev/null 2>&1'] >>>>>> >>>>>> ok: [127.0.0.1] >>>>>> >>>>>> ok: [localhost] >>>>>> >>>>>> >>>>>> TASK: [Launch instances] ****************************** >>>>>> ************************ >>>>>> >>>>>> <127.0.0.1> REMOTE_MODULE gce machine_type=f1-micro >>>>>> image=centos-6-v20131120 zone=us-central1-a >>>>>> >>>>>> <127.0.0.1> REMOTE_MODULE gce machine_type=f1-micro >>>>>> image=centos-6-v20131120 zone=us-central1-a >>>>>> >>>>>> <127.0.0.1> EXEC ['/bin/sh', '-c', 'mkdir -p >>>>>> $HOME/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431 && >>>>>> chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431 >>>>>> && echo $HOME/.ansible/tmp/ansible-tmp-1391701320.97- >>>>>> 214772578621431'] >>>>>> >>>>>> <127.0.0.1> EXEC ['/bin/sh', '-c', 'mkdir -p >>>>>> $HOME/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167 && >>>>>> chmod a+rx $HOME/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167 >>>>>> && echo $HOME/.ansible/tmp/ansible-tmp-1391701320.97- >>>>>> 169496415593167'] >>>>>> >>>>>> <127.0.0.1> PUT >>>>>> /var/folders/j6/q_tyq95n1zzf_v68908mpxy40000gn/T/tmpskK1WM >>>>>> TO /Users/warren/.ansible/tmp/ansible-tmp-1391701320.97- >>>>>> 169496415593167/gce >>>>>> >>>>>> <127.0.0.1> PUT >>>>>> /var/folders/j6/q_tyq95n1zzf_v68908mpxy40000gn/T/tmp1KTB82 >>>>>> TO /Users/warren/.ansible/tmp/ansible-tmp-1391701320.97- >>>>>> 214772578621431/gce >>>>>> >>>>>> <127.0.0.1> EXEC ['/bin/sh', '-c', '/usr/bin/python >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167/gce; >>>>>> >>>>>> rm -rf >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167/ >>>>>> >/dev/null 2>&1'] >>>>>> >>>>>> <127.0.0.1> EXEC ['/bin/sh', '-c', '/usr/bin/python >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431/gce; >>>>>> >>>>>> rm -rf >>>>>> /Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431/ >>>>>> >/dev/null 2>&1'] >>>>>> >>>>>> failed: [127.0.0.1] => {"failed": true, "parsed": false} >>>>>> >>>>>> invalid output was: Traceback (most recent call last): >>>>>> >>>>>> File >>>>>> "/Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431/gce", >>>>>> >>>>>> line 1462, in <module> >>>>>> >>>>>> main() >>>>>> >>>>>> File >>>>>> "/Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431/gce", >>>>>> >>>>>> line 376, in main >>>>>> >>>>>> module.fail_json(msg=unexpected_error_msg(e), changed=False) >>>>>> >>>>>> File >>>>>> "/Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-214772578621431/gce", >>>>>> >>>>>> line 191, in unexpected_error_msg >>>>>> >>>>>> error.http_code, error.code, str(error.value)) >>>>>> >>>>>> AttributeError: 'exceptions.ValueError' object has no attribute >>>>>> 'http_code' >>>>>> >>>>>> >>>>>> failed: [localhost] => {"failed": true, "parsed": false} >>>>>> >>>>>> invalid output was: Traceback (most recent call last): >>>>>> >>>>>> File >>>>>> "/Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167/gce", >>>>>> >>>>>> line 1462, in <module> >>>>>> >>>>>> main() >>>>>> >>>>>> File >>>>>> "/Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167/gce", >>>>>> >>>>>> line 376, in main >>>>>> >>>>>> module.fail_json(msg=unexpected_error_msg(e), changed=False) >>>>>> >>>>>> File >>>>>> "/Users/warren/.ansible/tmp/ansible-tmp-1391701320.97-169496415593167/gce", >>>>>> >>>>>> line 191, in unexpected_error_msg >>>>>> >>>>>> error.http_code, error.code, str(error.value)) >>>>>> >>>>>> AttributeError: 'exceptions.ValueError' object has no attribute >>>>>> 'http_code' >>>>>> >>>>>> >>>>>> FATAL: all hosts have already failed -- aborting >>>>>> >>>>>> >>>>>> -- >> 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/WTef9t1TyA0/unsubscribe >> . >> To unsubscribe from this group and all its topics, send an email to >> [email protected] <javascript:>. >> To post to this group, send email to [email protected]<javascript:> >> . >> For more options, visit https://groups.google.com/groups/opt_out. >> > > -- 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 [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/0e02e68f-17c2-408f-8f0b-c73b7b9cf7f9%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
