AWS-CLIWrapper

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

1.06  2014-11-25
    [IMPROVEMENTS]
        - s3 OPERATION can take --include or --exclude option multiple times

1.05  2014-09-29
    [DOCUMENTATION]
        - Added LFMF details! (PR #7)

1.04  2014-08-21
    [IMPROVEMENTS]
        - Add some services (cloudsearch, cloudsearchdomain, cloudtrail, cognito_identity, cognito_sync, configure, datapipeline, emr, kinesis, logs, route53domains) with aws-cli/1.4.2

1.03  2014-02-27
    [BUG FIXES]
        - Escape all arguments before execute by IPC::Cmd
          (Suggested by: @Yuryu #4)
        - Fix bug in passing operation to s3 or s3api for compatibility old aws-cli

1.02  2014-02-25
    [DOCUMENTATION]
        - Update the POD to include a special case for the s3 OPERATION.

META.json  view on Meta::CPAN

   "no_index" : {
      "directory" : [
         "t",
         "inc"
      ]
   },
   "prereqs" : {
      "build" : {
         "requires" : {}
      },
      "configure" : {
         "requires" : {
            "ExtUtils::MakeMaker" : "6.30"
         }
      },
      "runtime" : {
         "requires" : {
            "IPC::Cmd" : "0",
            "JSON" : "2",
            "String::ShellQuote" : "0",
            "perl" : "5.008001",

META.yml  view on Meta::CPAN

---
abstract: 'Wrapper module for aws-cli'
author:
  - 'HIROSE Masaaki'
build_requires:
  Test::More: '0'
configure_requires:
  ExtUtils::MakeMaker: '6.30'
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 7.24, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: '1.4'
name: AWS-CLIWrapper
no_index:
  directory:

cpanfile  view on Meta::CPAN

# -*- mode: cperl -*-

requires 'IPC::Cmd';
requires 'JSON', '2';
requires 'String::ShellQuote';
requires 'perl', '5.005';
requires 'version';
requires 'perl', '5.008001';

on configure => sub {
    requires 'ExtUtils::MakeMaker', '6.30';
};

on test => sub {
    requires 'Test::More';
    requires 'File::Temp';
};

on develop => sub {
    requires 'Test::Dependencies';

lib/AWS/CLIWrapper.pm  view on Meta::CPAN

sub codestar           { shift->_execute('codestar', @_) }
sub codestar_connections { shift->_execute('codestar-connections', @_) }
sub codestar_notifications { shift->_execute('codestar-notifications', @_) }
sub cognito_identity   { shift->_execute('cognito-identity', @_) }
sub cognito_idp        { shift->_execute('cognito-idp', @_) }
sub cognito_sync       { shift->_execute('cognito-sync', @_) }
sub comprehend         { shift->_execute('comprehend', @_) }
sub comprehendmedical  { shift->_execute('comprehendmedical', @_) }
sub compute_optimizer  { shift->_execute('compute-optimizer', @_) }
sub configservice      { shift->_execute('configservice', @_) }
sub configure          { shift->_execute('configure', @_) }
sub connect            { shift->_execute('connect', @_) }
sub connect_contact_lens { shift->_execute('connect-contact-lens', @_) }
sub connectcampaigns   { shift->_execute('connectcampaigns', @_) }
sub connectcases       { shift->_execute('connectcases', @_) }
sub connectparticipant { shift->_execute('connectparticipant', @_) }
sub controltower       { shift->_execute('controltower', @_) }
sub cur                { shift->_execute('cur', @_) }
sub customer_profiles  { shift->_execute('customer-profiles', @_) }
sub databrew           { shift->_execute('databrew', @_) }
sub dataexchange       { shift->_execute('dataexchange', @_) }

lib/AWS/CLIWrapper.pm  view on Meta::CPAN

=item B<cognito_sync>($operation:Str, $param:HashRef, %opt:Hash)

=item B<comprehend>($operation:Str, $param:HashRef, %opt:Hash)

=item B<comprehendmedical>($operation:Str, $param:HashRef, %opt:Hash)

=item B<compute_optimizer>($operation:Str, $param:HashRef, %opt:Hash)

=item B<configservice>($operation:Str, $param:HashRef, %opt:Hash)

=item B<configure>($operation:Str, $param:HashRef, %opt:Hash)

=item B<connect>($operation:Str, $param:HashRef, %opt:Hash)

=item B<connect_contact_lens>($operation:Str, $param:HashRef, %opt:Hash)

=item B<connectcampaigns>($operation:Str, $param:HashRef, %opt:Hash)

=item B<connectcases>($operation:Str, $param:HashRef, %opt:Hash)

=item B<connectparticipant>($operation:Str, $param:HashRef, %opt:Hash)

lib/AWS/CLIWrapper.pm  view on Meta::CPAN

in some use cases `aws-cli` execution fails for a temporary reason unrelated to
both calling code and AWS::CLIWrapper, and can be safely retried after a short delay.

One of this use cases is executing `aws-cli` on AWS EC2 instances, where `aws-cli`
retrieves its configuration and credentials from the API exposed to the EC2 instance;
at certain times these credentials may be rotated and calling `aws-cli` at exactly
the right moment will cause it to fail with `Unable to locate credentials` error.

To prevent this kind of errors from failing the calling code, AWS::CLIWrapper allows
configuring an RegExp pattern and retry `aws-cli` execution if it fails with an error
matching the configured pattern.

The error catching pattern, as well as other configuration, can be defined either
as AWS::CLIWrapper options in the code, or as respective environment variables
(see L<ENVIRONMENT>).

The actual delay before retrying a failed `aws-cli` execution is computed as a
random value of seconds between catch_error_min_delay (default 3) and catch_error_max_delay
(default 10). Backoff is not supported at this moment.

=back 



( run in 1.187 second using v1.01-cache-2.11-cpan-283623ac599 )