Loading DEVELOP.md 0 → 100644 +34 −0 Original line number Diff line number Diff line Prerequisites ============= * [Ruby](https://www.ruby-lang.org) (v1.9.3 or higher) scripting language * [RubyGems](http://rubygems.org) (installed w/ `bundle install) * [bundler](http://bundler.io) (v1.3.5 or higher) environment/dependency manager for Ruby projects * [CppCheck](http://cppcheck.sourceforge.net/) for static analysis of source code * [Valgrind](http://valgrind.org/) for validation of memory usage/management * [Doxygen](https://github.com/doxygen) and [GraphViz](http://www.graphviz.org/) for generating API documentation Common Developer Tasks ====================== NOTE: Prefix the following commands with `bundle exec` so that they execute in the context of the bundle environment setup via `bundle install`. * List available Rake tasks w/descriptions * `rake -T` * Run all tests and build the library and examples * `rake` * Build the library * `rake release` * Run all unit/integration/system/example tests * `rake test_all` * Analyze code * `rake cppcheck` * Generate documentation * `rake doxygen:gen` * Apply license to source files (skips already licensed files) * `rake apply_license` * Build/install Google Protocol Buffers support for the Kinetic-Protocol * `rake proto` * Enable verbose output (for current Rake run) * `rake verbose <task_A> <task_B>` README.md +19 −63 Original line number Diff line number Diff line Loading @@ -6,8 +6,12 @@ This repo contains code for producing C Kinetic clients which use the Seagate Ki [Kinetic-C build status](http://travis-ci.org/atomicobject/kinetic-c) is provided via [Travis CI](http://travis-ci.org) Prerequisites ------------- * [Open SSL](https://www.openssl.org/) for security and encryption Getting Started ================ --------------- **Clone the repo** Loading @@ -21,53 +25,18 @@ Getting Started > git submodule update --init # Ensure submodules are up to date > bundle install # Ensure you have all RubyGems at the proper versions **Build Kinetic-C and run all tests** **Build and install static library** > make > sudo make install **Build example utility and run tests against Kinetic Device simulator** > bundle exec rake > make run API Documentation ================= [Kinetic-C API](http://atomicobject.github.io/kinetic-c/) (generated with Doxygen) Dependencies ============ * [Kinetic Protocol](https://github.com/Seagate/kinetic-protocol) * [Kinetic-Protocol v2.0.4](https://github.com/Seagate/kinetic-protocol/releases/tag/2.0.4) * [Ruby](https://www.ruby-lang.org) (v1.9.3 or higher) scripting language * [RubyGems](http://rubygems.org) (installed w/ `bundle install) * [bundler](http://bundler.io) (v1.3.5 or higher) environment/dependency manager for Ruby projects * [rake](https://github.com/jimweirich/rake) (0.9.2.2 or higher) Ruby implementation of Make * [ceedling](https://github.com/ThrowTheSwitch/Ceedling) Ruby/Rake-based build/test system for C projects * Ceedling also includes the following tools for testing C code * [Unity](https://github.com/ThrowTheSwitch/Unity) lightweight assertion framework and test executor for C * [CMock](https://github.com/ThrowTheSwitch/CMock) mock/fake generator for C modules using only C header files as input (written in Ruby) * [CppCheck](http://cppcheck.sourceforge.net/) for static analysis of source code * [Valgrind](http://valgrind.org/) for validation of memory usage/management * [Doxygen](https://github.com/doxygen) and [GraphViz](http://www.graphviz.org/) for generating API documentation Common Developer Tasks ====================== NOTE: Prefix the following commands with `bundle exec` so that they execute in the context of the bundle environment setup via `bundle install`. * List available Rake tasks w/descriptions * `rake -T` * Run all tests and build the library and examples * `rake` * Build the library * `rake release` * Run all unit/integration/system/example tests * `rake test_all` * Analyze code * `rake cppcheck` * Generate documentation * `rake doxygen:gen` * Apply license to source files (skips already licensed files) * `rake apply_license` * Build/install Google Protocol Buffers support for the Kinetic-Protocol * `rake proto` * Enable verbose output (for current Rake run) * `rake verbose <task_A> <task_B>` [Kinetic-C API](http://atomicobject.github.io/kinetic-c/kinetic__api_8h.html) (generated with Doxygen) Examples ======== Loading @@ -85,23 +54,10 @@ You can then execute `kinetic-c` with a valid example name, optionally preceeded * `--tls` - Use the TLS port to execute the specified operation(s) **Operations** * `kinetic-c [--hostname|-h hostname|123.253.253.23] noop` * `kinetic-c-client [--hostname|-h hostname|123.253.253.23] noop put get` * `kinetic-c noop` * Execute the NoOp operation against default host: `localhost` * `kinetic-c noop --host my-kinetic-server.com` * Execute the NoOp operation against `my-kinetic-server.com` * `read_file_blocking` (incomplete!) * `read_file_nonblocking` (incomplete!) * `write_file_blocking` (incomplete!) * `write_file_nonblocking` (incomplete!) * `write_file_blocking_threads` (incomplete!) * `delete_file_blocking` (incomplete!) * `delete_file_nonblocking` (incomplete!) * `instant_secure_erase` (incomplete!) * `kinetic_stat` (incomplete!) * `dump_keyspace` (incomplete!) * `set_acls` (incomplete!) * `set_pin` (incomplete!) * `set_clusterversion` (incomplete!) * `update_firmware` (incomplete!) * `copy_drive` (incomplete!) * Execute a NoOp (ping) operation to verify the Kinetic Device is ready * `kinetic-c put` * Execute a Put operation to store a key/value * `kinetic-c get` * Execute a Get operation to retrieve a key/value RELEASE.md 0 → 100644 +6 −0 Original line number Diff line number Diff line v0.6.0 ------ * Added Makefile build option. * Added GET operation. * Added ByteArray type for buffer management. * Added Kinetic_KeyValue type for key/value pair handling. VERSION +1 −1 Original line number Diff line number Diff line 0.5.2 0.6.0 Loading
DEVELOP.md 0 → 100644 +34 −0 Original line number Diff line number Diff line Prerequisites ============= * [Ruby](https://www.ruby-lang.org) (v1.9.3 or higher) scripting language * [RubyGems](http://rubygems.org) (installed w/ `bundle install) * [bundler](http://bundler.io) (v1.3.5 or higher) environment/dependency manager for Ruby projects * [CppCheck](http://cppcheck.sourceforge.net/) for static analysis of source code * [Valgrind](http://valgrind.org/) for validation of memory usage/management * [Doxygen](https://github.com/doxygen) and [GraphViz](http://www.graphviz.org/) for generating API documentation Common Developer Tasks ====================== NOTE: Prefix the following commands with `bundle exec` so that they execute in the context of the bundle environment setup via `bundle install`. * List available Rake tasks w/descriptions * `rake -T` * Run all tests and build the library and examples * `rake` * Build the library * `rake release` * Run all unit/integration/system/example tests * `rake test_all` * Analyze code * `rake cppcheck` * Generate documentation * `rake doxygen:gen` * Apply license to source files (skips already licensed files) * `rake apply_license` * Build/install Google Protocol Buffers support for the Kinetic-Protocol * `rake proto` * Enable verbose output (for current Rake run) * `rake verbose <task_A> <task_B>`
README.md +19 −63 Original line number Diff line number Diff line Loading @@ -6,8 +6,12 @@ This repo contains code for producing C Kinetic clients which use the Seagate Ki [Kinetic-C build status](http://travis-ci.org/atomicobject/kinetic-c) is provided via [Travis CI](http://travis-ci.org) Prerequisites ------------- * [Open SSL](https://www.openssl.org/) for security and encryption Getting Started ================ --------------- **Clone the repo** Loading @@ -21,53 +25,18 @@ Getting Started > git submodule update --init # Ensure submodules are up to date > bundle install # Ensure you have all RubyGems at the proper versions **Build Kinetic-C and run all tests** **Build and install static library** > make > sudo make install **Build example utility and run tests against Kinetic Device simulator** > bundle exec rake > make run API Documentation ================= [Kinetic-C API](http://atomicobject.github.io/kinetic-c/) (generated with Doxygen) Dependencies ============ * [Kinetic Protocol](https://github.com/Seagate/kinetic-protocol) * [Kinetic-Protocol v2.0.4](https://github.com/Seagate/kinetic-protocol/releases/tag/2.0.4) * [Ruby](https://www.ruby-lang.org) (v1.9.3 or higher) scripting language * [RubyGems](http://rubygems.org) (installed w/ `bundle install) * [bundler](http://bundler.io) (v1.3.5 or higher) environment/dependency manager for Ruby projects * [rake](https://github.com/jimweirich/rake) (0.9.2.2 or higher) Ruby implementation of Make * [ceedling](https://github.com/ThrowTheSwitch/Ceedling) Ruby/Rake-based build/test system for C projects * Ceedling also includes the following tools for testing C code * [Unity](https://github.com/ThrowTheSwitch/Unity) lightweight assertion framework and test executor for C * [CMock](https://github.com/ThrowTheSwitch/CMock) mock/fake generator for C modules using only C header files as input (written in Ruby) * [CppCheck](http://cppcheck.sourceforge.net/) for static analysis of source code * [Valgrind](http://valgrind.org/) for validation of memory usage/management * [Doxygen](https://github.com/doxygen) and [GraphViz](http://www.graphviz.org/) for generating API documentation Common Developer Tasks ====================== NOTE: Prefix the following commands with `bundle exec` so that they execute in the context of the bundle environment setup via `bundle install`. * List available Rake tasks w/descriptions * `rake -T` * Run all tests and build the library and examples * `rake` * Build the library * `rake release` * Run all unit/integration/system/example tests * `rake test_all` * Analyze code * `rake cppcheck` * Generate documentation * `rake doxygen:gen` * Apply license to source files (skips already licensed files) * `rake apply_license` * Build/install Google Protocol Buffers support for the Kinetic-Protocol * `rake proto` * Enable verbose output (for current Rake run) * `rake verbose <task_A> <task_B>` [Kinetic-C API](http://atomicobject.github.io/kinetic-c/kinetic__api_8h.html) (generated with Doxygen) Examples ======== Loading @@ -85,23 +54,10 @@ You can then execute `kinetic-c` with a valid example name, optionally preceeded * `--tls` - Use the TLS port to execute the specified operation(s) **Operations** * `kinetic-c [--hostname|-h hostname|123.253.253.23] noop` * `kinetic-c-client [--hostname|-h hostname|123.253.253.23] noop put get` * `kinetic-c noop` * Execute the NoOp operation against default host: `localhost` * `kinetic-c noop --host my-kinetic-server.com` * Execute the NoOp operation against `my-kinetic-server.com` * `read_file_blocking` (incomplete!) * `read_file_nonblocking` (incomplete!) * `write_file_blocking` (incomplete!) * `write_file_nonblocking` (incomplete!) * `write_file_blocking_threads` (incomplete!) * `delete_file_blocking` (incomplete!) * `delete_file_nonblocking` (incomplete!) * `instant_secure_erase` (incomplete!) * `kinetic_stat` (incomplete!) * `dump_keyspace` (incomplete!) * `set_acls` (incomplete!) * `set_pin` (incomplete!) * `set_clusterversion` (incomplete!) * `update_firmware` (incomplete!) * `copy_drive` (incomplete!) * Execute a NoOp (ping) operation to verify the Kinetic Device is ready * `kinetic-c put` * Execute a Put operation to store a key/value * `kinetic-c get` * Execute a Get operation to retrieve a key/value
RELEASE.md 0 → 100644 +6 −0 Original line number Diff line number Diff line v0.6.0 ------ * Added Makefile build option. * Added GET operation. * Added ByteArray type for buffer management. * Added Kinetic_KeyValue type for key/value pair handling.