Commit 88dfb8ea authored by Greg Williams's avatar Greg Williams
Browse files

Updated README

parent ed648233
Loading
Loading
Loading
Loading
+16 −8
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@ Kinetic C Client Library
========================
The [Github kinetic-c Git repository](https://github.com/Seagate/kinetic-c) contains code for producing Kinetic C clients for interacting with Kinetic storage object-based storage. The library uses the cross-platform Seagate Kinetic protocol for standardizing interaces between the Java simulator and Kinetic Device storage clusters.

[Code examples](https://github.com/Seagate/kinetic-c/tree/master/src/utility/examples) are included for reference as part of the [kinetic-c client library test utility (`kinetic-c-client-utility`)](https://github.com/Seagate/kinetic-c/tree/master/src/utility), which builds and links against the installed `kinetic-c-client` static library.
[Code examples](https://github.com/Seagate/kinetic-c/tree/master/src/utility/examples) are included for reference as part of the [kinetic-c client library test utility (`kinetic-c-utility`)](https://github.com/Seagate/kinetic-c/tree/master/src/utility), which builds and links against the installed `kinetic-c-client` static library.

The [project Makefile](https://github.com/Seagate/kinetic-c/blob/master/Makefile) can be used as a reference for developing a Makefile-based project for building for a custom Kinetic Storage C client driver and/or a high-level C library.

@@ -19,20 +19,29 @@ Prerequisites
Getting Started
---------------
**Clone the repo**

    > git clone --recursive https://github.com/atomicobject/kinetic-c.git
    > cd kinetic-c
    > bundle install # ensure you have all RubyGems at the proper versions

**Update to the latest version (previously cloned)**

    > git pull
    > git submodule update --init # Ensure submodules are up to date
    > bundle install # Ensure you have all RubyGems at the proper versions

**Build and install static library**

    > make
    > sudo make install

**Clean and uninstall old versions**

    > make clean
    > sudo uninstall

**Build example utility and run tests against Kinetic Device simulator**

    > make all # this is what Travis-CI build does to ensure it all keeps working

API Documentation
@@ -54,21 +63,20 @@ In order to execute a given example, after building it, you must first do:

    > cd bin

You can then execute `kinetic-c-client-util` with a valid example name, optionally preceeded with any of the optional arguments.
You can then execute `kinetic-c-util` with a valid example name, which may be preceeded by any of the options noted.

Options
-------
* `--host [HostName/IP]` or `-h [HostName/IP]` - Set the Kinetic Device host
* `--tls` - Use the TLS port to execute the specified operation(s)

Operations
----------
* `kinetic-c-client [--host|-h hostname|123.253.253.23] noop put get`
    * `kinetic-c-client-util noop`
* `kinetic-c-util [--host|-h hostname|123.253.253.23] [noop] [put] [get] [delete]`
    * `kinetic-c-util noop`
        * Execute a NoOp (ping) operation to verify the Kinetic Device is ready
    * `kinetic-c-client-util put`
    * `kinetic-c-util put`
        * Execute a Put operation to store a key/value entry
    * `kinetic-c-client-util get`
    * `kinetic-c-util get`
        * Execute a Get operation to retrieve a key/value entry
    * `kinetic-c-client-util delete`
    * `kinetic-c-util delete`
        * Execute a Delete operation to destroy a key/value entry