Mercurial > libervia-backend
diff doc/libervia-cli/list.rst @ 3573:813595f88612
merge changes from main branch
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 17 Jun 2021 13:05:58 +0200 |
parents | 267e4987b58b |
children | 524856bd7b19 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/libervia-cli/list.rst Thu Jun 17 13:05:58 2021 +0200 @@ -0,0 +1,111 @@ +================================= +list: create and manage lists +================================= + +list is a generic tools to create items with metadata and states (where state can be +``queued``, ``done``, etc). This can be used for many things, from TODO list to bugs +management. + +get +=== + +Retrieve one or more lists and display them. A project may use magic string in README to +indicate PubSub service and node to use, in which case use just need to be in the +directory of the project. + +examples +-------- + +Retrieve last 5 lists (ordered by creation) from a project using magic string in README:: + + $ li list get -m 5 -o creation + +Retrieve the list with id ``123`` on service ``pubsub.example.org``:: + + $ li list get -s pubsub.example.org -i 123 + + +set +=== + +Create/replace or update a list item. You can specify fields using the ``-f NAME [VALUES +...], --field NAME [VALUES ...]``, several values can be set. For ``text-multi`` (multiple +lines of text), each line is set in distinct value. + +The ``-U {auto,true,false}, --update {auto,true,false}`` indicates if the item must be +updated (non specified values are kept) or fully replaced (non specified values would then +be default, even if they were previously set in the item). If ``auto`` is used (this is +the default), ``--update=true`` is used when ``item_id`` is specified, otherwise a new +item is created. + +If ``-n NODE, --node NODE`` is not specified, it uses tickets default namespace. + +examples +-------- + +Modify priority of a ticket with id ``123`` to ``major`` (the ticket is updated and not +replaced due to the default ``--update auto``):: + + $ li list set -s pubsub.example.org -i 123 -f priority major + +Set ``body`` for a new item when its schemas makes it a ``text-multi``:: + + $ li list set -s pubsub.example.org -f body "line 1" "line 2" "line 3" + +delete +====== + +Delete an item from a list. The options are the same as for :ref:`li_pubsub_delete`, the +only different is that ``-n NODE, --node NODE`` defaults to tickets namespace. + +example +------- + +Delete item with id ``456`` from tickets on PubSub service ``pubsub.example.org``:: + + $ li pubsub delete -s pubsub.example.org -i 456 + +import +====== + +Import lists from an external source. This works in the same way as +:ref:`libervia-cli_blog_import`: you need to specify an importer and a data location. If you let +both positional argument empty, you'll get list of importers, if you specify importer but +not data location, you'll get a description on how the importer works. + +If you want to see a progress bar for the import, use the ``-P, --progress`` option, this +is recommended for most imports. + +Some importers may have specific option (check description for details), you can specify +them with ``o NAME VALUE, --option NAME VALUE`` + +When you import a list, the list will be created according to the schema of the PubSub +node. By default, the metadata of the original list will be put to the one of the same +name in the dest PubSub item. But of course the schema of your destination PubSub node may +differ from the original metadata. In this case, you can use ``-m IMPORTED_FIELD +DEST_FIELD, --map IMPORTED_FIELD DEST_FIELD`` to specify how the mapping mus be done +(``IMPORTED_FIELD is the name of the field in the original list, while ``DEST_FIELD`` if +the name of the field in your node schema). + + +examples +-------- + +Get list of list importers:: + + $ li list import + +Get description of list importer for Bugzilla:: + + $ li list import bugzilla + +Import lists from a Bugzilla XML export file at ``~/bugzilla_export.xml`` to the +``pubsub.example.org`` PubSub service. We use default lists node and want a progression +bar:: + + $ li list import -P -s pubsub.example.org ~/bugzilla_export.xml + +Same import, but this time we want to map the field ``assigned_to_name`` from Bugzilla to +the field ``assigned_to`` in our schema:: + + $ li list import -P -s pubsub.example.org -m assigned_to_name assigned_to ~/bugzilla_export.xml