-
Notifications
You must be signed in to change notification settings - Fork 124
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
vm list recursive - bug! #490
Comments
also, the documentation mentions "... Only name is currently displayed." This is incorrect. from the code you can see there are also IP,RAM,State knife-vsphere/lib/chef/knife/vsphere_vm_list.rb Lines 54 to 57 in 857e23a
eg. |
Hey Scott, thanks for the bug report. Is that the exact command you're running or do you also log in on the command line? What version of the Can you give a stack trace ( Just tried it here, with It might be that Let me know what you see, please. Thanks/ |
chef gem -v
3.0.3
WARNING: No knife configuration file found. See https://docs.chef.io/config_rb_knife.html for details.
ERROR: RbVmomi::Fault: InvalidLogin: Cannot complete login due to an incorrect user name or password.
root@SVR-AUSYD-SWD-HAWEB:~# knife vsphere vm list -r --vsuser [email protected] --vspass QW@#23qw --vsdc Sydney --vshost 10.4.22.53 --vsinsecure true -VV
WARNING: No knife configuration file found. See https://docs.chef.io/config_rb_knife.html for details.
DEBUG: value for config item vsphere_host: 10.4.22.53
DEBUG: value for config item vsphere_path: /sdk
DEBUG: value for config item vsphere_port: 443
DEBUG: value for config item vsphere_nossl:
DEBUG: value for config item vsphere_user:
DEBUG: value for config item vsphere_pass: xxx
DEBUG: value for config item vsphere_pass: xxx
DEBUG: value for config item vsphere_pass: xxx
DEBUG: value for config item vsphere_insecure: true
DEBUG: value for config item proxy_host:
DEBUG: value for config item proxy_port:
Traceback (most recent call last):
16: from /usr/bin/knife:359:in `<main>'
15: from /usr/bin/knife:359:in `load'
14: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/chef-15.5.16/bin/knife:24:in `<top (required)>'
13: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/chef-15.5.16/lib/chef/application/knife.rb:163:in `run'
12: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/chef-15.5.16/lib/chef/knife.rb:229:in `run'
11: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/chef-15.5.16/lib/chef/knife.rb:485:in `run_with_pretty_exceptions'
10: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/chef-15.5.16/lib/chef/local_mode.rb:42:in `with_server_connectivity'
9: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/chef-15.5.16/lib/chef/knife.rb:486:in `block in run_with_pretty_exceptions'
8: from /root/.chefdk/gem/ruby/2.6.0/gems/knife-vsphere-4.0.7/lib/chef/knife/vsphere_vm_list.rb:65:in `run'
7: from /root/.chefdk/gem/ruby/2.6.0/gems/knife-vsphere-4.0.7/lib/chef/knife/base_vsphere_command.rb:121:in `vim_connection'
6: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/vim.rb:45:in `connect'
5: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/vim.rb:45:in `tap'
4: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/vim.rb:62:in `block in connect'
3: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/basic_types.rb:76:in `block (2 levels) in init'
2: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/basic_types.rb:213:in `_call'
1: from /opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/connection.rb:92:in `call'
/opt/chef-workstation/embedded/lib/ruby/gems/2.6.0/gems/rbvmomi-2.2.0/lib/rbvmomi/connection.rb:63:in `parse_response': InvalidLogin: Cannot complete login due to an incorrect user name or password. (RbVmomi::Fault)
And this is the -VV for the working (--recursive) command
WARNING: No knife configuration file found. See https://docs.chef.io/config_rb_knife.html for details.
DEBUG: value for config item vsphere_host: 10.4.22.53
DEBUG: value for config item vsphere_path: /sdk
DEBUG: value for config item vsphere_port: 443
DEBUG: value for config item vsphere_nossl:
DEBUG: value for config item vsphere_user: [email protected]
DEBUG: value for config item vsphere_pass: xxx
DEBUG: value for config item vsphere_pass: xxx
DEBUG: value for config item vsphere_pass: xxx
DEBUG: value for config item vsphere_insecure: true
DEBUG: value for config item proxy_host:
DEBUG: value for config item proxy_port:
DEBUG: value for config item folder:
DEBUG: value for config item vsphere_dc: Sydney
DEBUG: value for config item onlyfolders:
DEBUG: value for config item recursive: true
From: Sean Walberg <[email protected]>
Sent: Tuesday, 17 December 2019 10:53 AM
To: chef/knife-vsphere <[email protected]>
Cc: Scott Williams <[email protected]>; Author <[email protected]>
Subject: Re: [chef/knife-vsphere] vm list recursive - bug! (#490)
Hey Scott, thanks for the bug report. Is that the exact command you're running or do you also log in on the command line? What version of the chef gem do you have installed?
Can you give a stack trace (-VV) for the -r case?
Just tried it here, with knife-vsphere 2.0.1 both -r and --recursive work fine. With what we have in master, --recursive works but -r gives me OptionParser::MissingArgument: missing argument: -r. If I do -r foo it works though.
It might be that -r gets used somewhere else in Chef because if I switch it to -a it works as expected.
Let me know what you see, please.
Thanks/
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_chef_knife-2Dvsphere_issues_490-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAOB3EKWW42LC54N2O4LZMPTQZA5KPA5CNFSM4J3US6KKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHA6VUQ-23issuecomment-2D566356690&d=DwMCaQ&c=mfsj4EqbbtbBjM01gds5HQ&r=vDsBiJrIPZNB_cmQTzwq-Q&m=zi4nYzekJXbVbPpunU4flkKxRePmEw8rBJXhkubAwIo&s=Oedl-xK2-oqdFvhw8ZbbCqxLcufYIplDfwQM4BhWJ4A&e=>, or unsubscribe<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AOB3EKRTXLBYXPNYANRN5ITQZA5KPANCNFSM4J3US6KA&d=DwMCaQ&c=mfsj4EqbbtbBjM01gds5HQ&r=vDsBiJrIPZNB_cmQTzwq-Q&m=zi4nYzekJXbVbPpunU4flkKxRePmEw8rBJXhkubAwIo&s=xqu4fraMfGy4vt_R2sfUJG-ulYZexf1C9Kb2rH50iSM&e=>.
|
Aha, thanks for the traces. See how you've got
but when it doesn't,
"something changed" in the parsing of that I will do some more digging later but my guess is I'll have to get rid of the short |
No worries, I have stopped using the short -r argument now.
I think the vm state command has the same issue:
```
knife vsphere vm state VMNAME
Manage power state of a virtual machine, aka turn it off and on
-s STATE, --state STATE - The power state to transition the VM into; one of on|off|suspend|reboot
-w PORT, --wait-port PORT - Wait for VM to be accessible on a port
-g, --shutdown - Guest OS shutdown (format: -s off -g)
-r, --recursive - Recurse down through sub-folders to the specified folder to find the VM
```
From: Sean Walberg <[email protected]>
Sent: Tuesday, 17 December 2019 8:47 PM
To: chef/knife-vsphere <[email protected]>
Cc: Scott Williams <[email protected]>; Author <[email protected]>
Subject: Re: [chef/knife-vsphere] vm list recursive - bug! (#490)
Aha, thanks for the traces. See how you've got -r --vsuser [email protected]<mailto:[email protected]> and when it works you get
DEBUG: value for config item vsphere_user: [email protected]<mailto:[email protected]>
but when it doesn't,
DEBUG: value for config item vsphere_user:
"something changed" in the parsing of that -r option so it's not seeing the full --vsuser after that. If you put -r at the end of the command line you'd probably get the same "missing argument" error that I got.
I will do some more digging later but my guess is I'll have to get rid of the short -r.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_chef_knife-2Dvsphere_issues_490-3Femail-5Fsource-3Dnotifications-26email-5Ftoken-3DAOB3EKSNMO237QL7K56T3JDQZDC35A5CNFSM4J3US6KKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHCII4A-23issuecomment-2D566527088&d=DwMCaQ&c=mfsj4EqbbtbBjM01gds5HQ&r=vDsBiJrIPZNB_cmQTzwq-Q&m=GCLOEHRSFtedxIvrWRM6PtkKMfbn_jSBZFE5g2WmWyU&s=MTKPPjk5pXQVnEGHD1kXu4-kldo3Hain6qExbR9HnIM&e=>, or unsubscribe<https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AOB3EKVKJIBWCSS3QV3KWBDQZDC35ANCNFSM4J3US6KA&d=DwMCaQ&c=mfsj4EqbbtbBjM01gds5HQ&r=vDsBiJrIPZNB_cmQTzwq-Q&m=GCLOEHRSFtedxIvrWRM6PtkKMfbn_jSBZFE5g2WmWyU&s=82OGh19ajLsWd98sXq9zcT0zcEf7snQ0j2Pcq0RuBSk&e=>.
|
Anything that applies to an individual VM will search recursively anyway at this point. I guess I need to remove those options! |
Version:
Chef Workstation version: 0.12.20
knife-vsphere (4.0.7)
Environment:
ubuntu server 18.04 lts
Scenario:
trying to list the vms in vcenter using the recursive option
Steps to Reproduce:
knife vsphere vm list -r
ERROR: RbVmomi::Fault: InvalidLogin: Cannot complete login due to an incorrect user name
or password.
knife vsphere vm list --recursive
(works correctly)
Expected Result:
I expected the '-r' option to work as in the documentation
"-r, --recursive - Recurse down through sub-folders to the specified folder"
Actual Result:
the error message is shown instead of vm listing
"ERROR: RbVmomi::Fault: InvalidLogin: Cannot complete login due to an incorrect user name
or password."
the exact same command works with "--recursive" instead or "-r"
The text was updated successfully, but these errors were encountered: