GAVIP Client

All features of the GAVIP platform can be executed using the command line via the GAVIP Client. The GAVIP Client is a command line tool built in Python which provides all GAVIP functionality, and additional utilities for AVI development. The client provides the following features

  • Commands to aid in development (e.g. AVI template downloading, etc)
  • AVI interaction commands (e.g. sending REST requests)
  • Portal interaction (e.g. login, listing AVIs from the catalogue)

As the client is developed, more commands and features will be made available. The Portal features are generated dynamically upon login to the portal using the GAVIP REST API.

Installation

Prior to public release of GAVIP, the GAVIP client can be obtained from the monthly GAVIP datapacks. It can be installed by running pip install -U <gavip client archive>

The GAVIP Client commands

The GAVIP client dynamically determines the majority of its commands. For example, if the GAVIP portal is released with a new API for managing shared data, the client will automatically build the command line API to interact with that feature. This is done once the client logs in to the portal. So if a new feature is released, you may need to logout and login again to update the client features.

Recordings of GAVIP client usage are available online at asciinema: https://asciinema.org/~daniel-vagg-ps

Development commands

In addition to the generated commands, there are a suite of commands which are intended to be used during API development. These commands are referenced in the AVI development chapter, and may be inspected using the --help command in the GAVIP client.

Note: Development commands will run docker directly (via subprocess), so it may not work on non-linux installations of Docker (as they run Docker inside a linux virtual machine). Future versions of the client will improve compatability with other Operating Systems.