Author: Wylie Swanson


        # AgileCLU #

AgileCLU is a command line implementation of Limelight Networks Agile Storage cloud platform.  It is also a Python library to simplify integrating Python applications with cloud object storage.

The tools and library leverage Agile's JSON-RPC APIs and HTTP ingest and egress capabilities in an easy to use way.  To use these tools, you must have:

* An account on Limelight Network's Agile Storage cloud platform. (

## Agile Storage Locations ##

As of October 2012, the Agile Storage Cloud has storage capacity in 34 geographies around the world.

![Agile Storage Locations](

## Communication ##

Feel free to send any questions, comments, or patches using the AgileCLU Development at Github page (you'll need to join to send a message): 

* [AgileCLU Release Documentation](http:/

* [AgileCLU Development at GitHub](

* [AgileCLU at Python Package Index](

# Basic Installation #
If you already have Python and [Python Package Index]( (PyPI) installed on your machine, the installation of AgileCLU is simple and straightfoward.  Simply execute one of the following commands (sudo is usually required on Linux):

	easy_install AgileCLU


	pip install AgileCLU

If the above method worked for you, you can skip the operating system-specific installation sections and move to Configuration, as you have now completed the installation of AgileCLU.  If not, consult the relevant operating system-specific sections in the Advanced Configuration sections.

# Upgrading #

If you are upgrading from a release prior to 0.3.1, you may need to manually delete the files from your Python installation (egg and easy-install.pth) prior to invoking easy_install or pip.  For future upgrades, can force to latest version with:

	easy_install -U AgileCLU

# Configuration #

Since AgileCLU 0.4.0 the configuration of profiles has been greatly simplified.  Configuration profiles are stored in ~/.agileclu (off of active user accounts home directory).  After installing AgileCLU, use 'agileprofile create' to configure a default account.  You can create as many configuration profiles as you like, with 'agileprofile create profilename'.  To use different profiles from the command line tools, specify the -l option for any given command.  If you are using Windows, you need to include the .py extension, substituting agileprofile with

	agileprofile create

Example output: (AgileCLU 0.4.0)

	                                          Username : testcompany
	                                          Password : 
	                                 Re-enter password : 
	                            Egress protocol [http] : 
	             Egress hostname [] : 
	                                  Egress base path : /testcompany
	                           Ingest protocol [https] : 
	                                   Ingest hostname :
	Profile (test) has been saved.  Exiting.

# AgileCLU from Command Line #

The commands that are currently available are:

*agileprofile* - Generate a profile based on account credentials and ingest/egress information

*agilefetch* - Automatically download a file from any URL and place it in your storage in a specified directory

*agilemkdir* - Make a directory

*agilerm* - Remove a file

*agilels* - List a directory

*agilepost* - Upload a file

NOTE: For Windows, add a ".py" extension to the above commands.

# Advanced Installation #

The advanced installation covers installing prerequisites, like Python and Python Setuptools.  Specific Python libraries will be installed automaticaly when you run easy_install.  If you already have Python and Easysetup installed, you do not need to use the following directions.

## Installation:Linux ##

On most Linux distributions