<commit_before>= SHU SAN Scripts

Together these scripts define a +store+ command, used to simplify the
task of creating iSCSI targets on OpenSolaris (Solaris > 11) based
hosts. It has been tested on Nexenta NCP and Open Indiana, but with some
modification it could be made to work on FreeBSD as well. 

The user interface is deliberately as simple as possible: we assume the
user has no underlying knowledge of (Open)Solaris, ZFS and not all that
much of iSCSI. Instead the scripts aim to get iSCSI targets up and
running as quickly as possible. Much more complex set-ups are indeed
possible: see the relevant Oracle ZFS administrator's guides for more
inspiration.

== Using the Scripts

Assuming Ruby Gems has been installed

  gem install shu-san-scripts

should install everything you need. A brief summary of the commands
available can be obtained by

  store --help

once everything has been installed.

*Note:* The scripts assume they are running (or at least have access to)
the +root+ user role, as they will manipulate your ZFS volumes. You
can either install them with the appropriate privileges, or install the
+sudo+ command to make life easier. With +sudo+

  sudo store --help

should get you started. 

*Warning:* We use these scripts in a _teaching_ environment, and so we
assume the host they are running on is somewhat disposable. Your needs
may differ...

== Contributing to the SHU SAN Scripts
 
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
* Fork the project
* Start a feature/bugfix branch
* Commit and push until you are happy with your contribution
* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

== Copyright

Copyright (c) 2011 <NAME>. See LICENSE.txt for
further details.
<commit_msg>doc: Added synposis of the commands available to the README<commit_after>= SHU SAN Scripts

Together these scripts define a +store+ command, used to simplify the
task of creating iSCSI targets on OpenSolaris (Solaris > 11) based
hosts. It has been tested on Nexenta NCP and Open Indiana, but with some
modification it could be made to work on FreeBSD as well. 

The user interface is deliberately as simple as possible: we assume the
user has no underlying knowledge of (Open)Solaris, ZFS and not all that
much of iSCSI. Instead the scripts aim to get iSCSI targets up and
running as quickly as possible. Much more complex set-ups are indeed
possible: see the relevant Oracle ZFS administrator's guides for more
inspiration.

== Using the Scripts

Assuming Ruby Gems has been installed

  gem install shu-san-scripts

should install everything you need. A brief summary of the commands
available can be obtained by

  store --help

once everything has been installed.

*Note:* The scripts assume they are running (or at least have access to)
the +root+ user role, as they will manipulate your ZFS volumes. You
can either install them with the appropriate privileges, or install the
+sudo+ command to make life easier. With +sudo+

  sudo store --help

should get you started. 

*Warning:* We use these scripts in a _teaching_ environment, and so we
assume the host they are running on is somewhat disposable. Your needs
may differ...

== Synopsis

General help can be obtained by running +store --help+, or +store+ with no
arguments

  A command-line tool for managing iSCSI targets on OpenSolaris.

  Available commands:

      help                 Show help for a command
      new_vol              Create a new iSCSI volume in the SAN volume store.

  Global options:

      -h --help            show this help message and quit
      -C --no-color        disable color
      -V --verbose         make store command output more detailed
      -v --version         show version information and quit
      
Help on individual commands can then be obtained using the command as an
argument to +store help+. For instance

  # store help new_vol
  
produces

  store new_volume [--volume-store ZFS_PATH][--name GUID] [--size INTEGER]

  aliases: new add add_vol

  Create a new iSCSI volume in the SAN volume store.

      By default, this command creates a 20G ZFS volume, and marks it for sharing
      as an iSCSI target on the local network.

      Warning: By default this commands sets up the iSCSI target with NO security.
      This is fine for testing and use in the labs, but obviously is not ideal if
      you care about the data stored on this new volume...

  options:

      -n --name       the name of the new volume. This must be a valid ZFS volume name, and
                      defaults to an RFC 4122 GUID.

      -s --size       the size of the new iSCSI volume. Note that while ZFS allows you to change
                      the size of the new volume relatively easily, because the iSCSI initiator
                      sees this volume as a raw device changing the size later may be very easy or
                      very difficult depending on the initiators operating system (and the specific
                      file system being used). In other words, choose with care: by default this
                      command uses a size of 20G, which should be enough for most tasks in the
                      labs.

      -v --volume_store specifify the ZFS root of the new iSCSI volume. Defaults to "store/volumes".

== Contributing to the SHU SAN Scripts
 
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
* Fork the project
* Start a feature/bugfix branch
* Commit and push until you are happy with your contribution
* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.

== Copyright

Copyright (c) 2011 <NAME>. See LICENSE.txt for
further details.

{'fraction_non_alphanumeric': 0.04100897554936552, 'fraction_numerical': 0.0030950170225936243, 'mean_word_length': 3.1723692704970947, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '557767', 'n_tokens_mistral': 1696, 'n_tokens_neox': 1583, 'n_words': 1007}