summaryrefslogtreecommitdiff
path: root/setup.py
Commit message (Collapse)AuthorAgeFilesLines
* Do not install systemd files in setup.pyMatt Coleman2020-06-191-1/+0
| | | | | setuptools should not perform OS-specific actions such as installing systemd units. OS-specific actions should be handled by the package manager.
* setup.py: add the socket and service files to the data_files sectionMaurizio Lombardi2019-11-261-0/+1
| | | | Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
* targetclid: add daemonize component for targetcliPrasanna Kumar Kalever2019-06-111-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: ------- Overall creation time of a block using targetcli is raising linearly as the block count increase. This is because of the recurring issue involving refresh(reload) at multiple objects/places, as the LIO's configfs is deeply nested. Earlier discussion of the problem statement with stats and graphs about delays: http://bit.ly/targetcli-create-delay Solution: -------- Introduce a daemon component for targetcli[d] which will retain state of Configshell object in memory, so that any new requests can directly use it, instead of loading the storageObjects/targetObjects again. Details about "how to use it ?": ------------------------------- $ systemctl start targetclid $ systemctl status targetclid ● targetclid.service - Targetcli daemon Loaded: loaded (/usr/lib/systemd/system/targetclid.service; disabled; vendor preset: disabled) Active: active (running) since Wed 2019-04-10 12:19:51 IST; 2h 17min ago Main PID: 3950 (targetclid) Tasks: 3 (limit: 4915) CGroup: /system.slice/targetclid.service └─3950 /usr/bin/python /usr/bin/targetclid Apr 10 12:19:51 localhost.localdomain systemd[1]: Started Targetcli daemon. $ targetcli help Usage: /usr/bin/targetcli [--version|--help|CMD|--tcp] --version Print version --help Print this information CMD Run targetcli shell command and exit <nothing> Enter configuration shell --tcp CMD Pass targetcli command to targetclid --tcp <nothing> Enter multi-line command mode for targetclid See man page for more information. One line command usage: ---------------------- $ targetcli --tcp CMD Eg: $ targetcli --tcp pwd / Multiple line commands usage: ---------------------------- $ targetcli --tcp CMD1 CMD2 . . CMDN exit Eg: $ targetcli --tcp ^Tab / backstores/ iscsi/ loopback/ vhost/ xen-pvscsi/ cd clearconfig exit get help ls pwd refresh restoreconfig saveconfig set status pwd get global logfile get global auto_save_on_exit / saveconfig exit output follows: / logfile=/var/log/gluster-block/gluster-block-configshell.log auto_save_on_exit=false Configuration saved to /etc/target/saveconfig.json Stats with and without changes: ------------------------------ Running simple 'pwd' command after creating 1000 blocks on a node: Without this change: $ time targetcli pwd / real 0m8.963s user 0m7.775s sys 0m1.103s with daemonize changes: $ time targetcli --tcp "pwd" / real 0m0.126s user 0m0.099s sys 0m0.024s Thanks to Maurizio for hangingout with me for all the discussions involved. Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
* Change the URL of the GitHub repo to the open-iscsi organizationChristophe Vu-Brugier2016-08-221-1/+1
| | | | Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
* Support Python 3 with "six" instead of running `2to3`Christophe Vu-Brugier2015-06-031-1/+5
| | | | | | | | | | * Replace dict.iteritems() with six.iteritems(dict) * Use six.moves.range() to get xrange() on Python 2 and range() on Python 3 * Add classifiers to setup.py * Sort imports Signed-off-by: Christophe Vu-Brugier <cvubrugier@fastmail.fm>
* Use 2to3 in setup.py and mention that targetcli-fb is Python 3 compatibleChristophe Vu-Brugier2013-10-221-1/+2
| | | | Signed-off-by: Christophe Vu-Brugier <cvubrugier@yahoo.fr>
* Replace execfile() with exec() since it does not work with Python 3Christophe Vu-Brugier2013-10-111-1/+1
| | | | Signed-off-by: Christophe Vu-Brugier <cvubrugier@yahoo.fr>
* Revert "Put version directly in setup.py"Andy Grover2013-09-111-1/+4
| | | | | | Version is also used in scripts/targetcli. This reverts commit fedfcb6332ecd3b5d37db6212ffbf4d3ae1735b5.
* Put version directly in setup.pyv2.1.fb29Andy Grover2013-09-101-4/+1
| | | | Signed-off-by: Andy Grover <agrover@redhat.com>
* Put package information in setup.py instead of importing the targetcli moduleChristophe Vu-Brugier2013-08-291-19/+13
| | | | | | Also update the package name, version, URL and maintainer. Signed-off-by: Christophe Vu-Brugier <cvubrugier@yahoo.fr>
* targetcli: Change copyright to Apache License 2.0Nicholas Bellinger2013-07-231-10/+10
| | | | | | | | | | This patch converts rtslib code copyright from AGPL to the permissive Apache License 2.0. It also update copyright owner to Datera, Inc. Signed-off-by: Nicholas Bellinger <nab@risingtidesystems.com> Signed-off-by: Andy Grover <agrover@redhat.com>
* Now using a tarball-release based Makefile.2.0rc1Jerome Martin2011-09-221-13/+10
| | | | | | | | | | | | | | | * Removed useless obsolete targets (setup.py based) * Merged version templating in Makefile (removed bin/gen_changelog*). * Added 'release' make target that generates a dist/*.tar.gz official versionned release tarball from which one can just use setup.py, dpkg-buildpackage or rpmbuild (no Makefile in it). * Removed obsolete bin/lint as well. * Now the 'rpm' and 'deb' Makefile targets use the generated release build. * Makefile commands now use no echo mode. * Added timestamps for virtual targets. * Removed obsolete (empty) doc packages generation. The shell is self-documenting. * Cleaned up setup.py alignements.
* Changed name to targetcli at community request.Jerome Martin2011-09-201-4/+4
|
* initial rtsadmin commit1.99Nicholas Bellinger2011-05-041-0/+43
Signed-off-by: Nicholas Bellinger <nab@risingtidesystems.com>