I downloaded the latest configshell to see if 81aec24 fixes my IPv6 issues in targetcli and it doesn't quite do it. I can now type cd [<tab> and it autocompletes where it would fail before. Since we do a lot of configuration with scripts, we can't programatically operate on IPv6 portals either in the shell or from the command line.
/iscsi/iqn.20...com.test/tpg1> portals/ delete 0.0.0.0 ip_port=3260
Deleted network portal 0.0.0.0:3260
/iscsi/iqn.20...com.test/tpg1> portals/ create ::
::0 ::1
/iscsi/iqn.20...com.test/tpg1> portals/ create ::0
Using default IP port 3260
Created network portal ::0:3260.
Tab complete work with latest config shell, even from parent directories.
/iscsi/iqn.20...com.test/tpg1> cd portals/[::0]:3260
/iscsi/iqn.20...ls/[::0]:3260> ls
o- [::0]:3260 ............................................................................................ [OK]
/iscsi/iqn.20...ls/[::0]:3260> cd ..
/iscsi/iqn.20.../tpg1/portals> cd [::0]:3260
/iscsi/iqn.20...ls/[::0]:3260> ls
o- [::0]:3260 ............................................................................................ [OK]
/iscsi/iqn.20...ls/[::0]:3260> cd ..
Even just typing in the IPv6 name without tab complete works, it didn't before.
/iscsi/iqn.20.../tpg1/portals> cd [::0]:3260
/iscsi/iqn.20...ls/[::0]:3260> ls
o- [::0]:3260 ............................................................................................ [OK]
/iscsi/iqn.20...ls/[::0]:3260> cd ..
Now try to reference the directory like we did above to delete and create the portal and list the contents. We get nothing! We can't tabcomplete when we start with '[' like we can otherwise.
/iscsi/iqn.20.../tpg1/portals> [::0]:3260/ ls
/iscsi/iqn.20.../tpg1/portals> cd ..
Let's try from a parent and use tabcompletion to help.... Still no luck! Odd thing is that we get moved into the portals directory....
/iscsi/iqn.20...com.test/tpg1> portals/[::0]:3260 ls
/iscsi/iqn.20.../tpg1/portals> cd ..
Let's just try to run the command that we are interested in...
/iscsi/iqn.20...com.test/tpg1> portals/[::0]:3260 enable_iser boolean=true
Unexpected keyword parameter 'boolean'.
/iscsi/iqn.20...com.test/tpg1> ls /
o- / .................................................................................................... [...]
o- backstores ......................................................................................... [...]
| o- block ............................................................................. [Storage Objects: 0]
| o- fileio ............................................................................ [Storage Objects: 0]
| o- pscsi ............................................................................. [Storage Objects: 0]
| o- ramdisk ........................................................................... [Storage Objects: 1]
| o- test1 ......................................................................... [(100.0GiB) activated]
o- iscsi ....................................................................................... [Targets: 1]
| o- iqn.2017-02.com.test ......................................................................... [TPGs: 1]
| o- tpg1 .......................................................................... [no-gen-acls, no-auth]
| o- acls ..................................................................................... [ACLs: 0]
| o- luns ..................................................................................... [LUNs: 1]
| | o- lun0 ............................................................................. [ramdisk/test1]
| o- portals ............................................................................... [Portals: 1]
| o- [::0]:3260 .................................................................................. [OK]
o- loopback .................................................................................... [Targets: 0]
o- srpt ........................................................................................ [Targets: 0]
Running from the command line isn't any better. This is how we normally run our scripts.
[root@localhost targetcli-fb]# PYTHONPATH=/root/configshell-fb targetcli /iscsi/iqn.2017-02.com.test/tpg1/portals/[::0]:3260 ls
[root@localhost targetcli-fb]# PYTHONPATH=/root/configshell-fb targetcli /iscsi/iqn.2017-02.com.test/tpg1/portals ls
o- portals ............................................................................................................ [Portals: 1]
o- [::0]:3260 ............................................................................................................... [OK]
[root@localhost targetcli-fb]# PYTHONPATH=/root/configshell-fb targetcli "/iscsi/iqn.2017-02.com.test/tpg1/portals/[::0]:3260" ls
[root@localhost targetcli-fb]# PYTHONPATH=/root/configshell-fb targetcli "/iscsi/iqn.2017-02.com.test/tpg1/portals/[::0]:3260 ls"
[root@localhost targetcli-fb]# PYTHONPATH=/root/configshell-fb targetcli '/iscsi/iqn.2017-02.com.test/tpg1/portals/[::0]:3260' ls
I downloaded the latest configshell to see if 81aec24 fixes my IPv6 issues in targetcli and it doesn't quite do it. I can now type
cd [<tab>and it autocompletes where it would fail before. Since we do a lot of configuration with scripts, we can't programatically operate on IPv6 portals either in the shell or from the command line.Tab complete work with latest config shell, even from parent directories.
Even just typing in the IPv6 name without tab complete works, it didn't before.
Now try to reference the directory like we did above to delete and create the portal and list the contents. We get nothing! We can't tabcomplete when we start with '[' like we can otherwise.
Let's try from a parent and use tabcompletion to help.... Still no luck! Odd thing is that we get moved into the portals directory....
Let's just try to run the command that we are interested in...
Running from the command line isn't any better. This is how we normally run our scripts.