App-EC2Cssh

 view release on metacpan or  search on metacpan

META.yml  view on Meta::CPAN

meta-spec:
  url: http://module-build.sourceforge.net/META-spec-v1.4.html
  version: '1.4'
name: App-EC2Cssh
requires:
  AnyEvent: '0'
  Cwd: '0'
  File::Spec: '0'
  Getopt::Long: '0'
  IO::Pipe: '0'
  IO::Socket::SSL: '2.012'
  IPC::System::Simple: '0'
  Log::Any: '1.032'
  Net::Amazon::EC2: '0.30'
  Pod::Usage: '0'
  Safe: '0'
  Text::Template: '1.46'
resources:
  homepage: https://github.com/jeteve/ec2-cssh
  repository: https://github.com/jeteve/ec2-cssh.git
version: '0.007'

Makefile.PL  view on Meta::CPAN

    "scripts/ec2-cssh"
  ],
  "LICENSE" => "perl",
  "NAME" => "App::EC2Cssh",
  "PREREQ_PM" => {
    "AnyEvent" => 0,
    "Cwd" => 0,
    "File::Spec" => 0,
    "Getopt::Long" => 0,
    "IO::Pipe" => 0,
    "IO::Socket::SSL" => "2.012",
    "IPC::System::Simple" => 0,
    "Log::Any" => "1.032",
    "Net::Amazon::EC2" => "0.30",
    "Pod::Usage" => 0,
    "Safe" => 0,
    "Text::Template" => "1.46"
  },
  "VERSION" => "0.007",
  "test" => {
    "TESTS" => "t/*.t"
  }
);


my %FallbackPrereqs = (
  "AnyEvent" => 0,
  "Cwd" => 0,
  "File::Spec" => 0,
  "Getopt::Long" => 0,
  "IO::Pipe" => 0,
  "IO::Socket::SSL" => "2.012",
  "IPC::System::Simple" => 0,
  "Log::Any" => "1.032",
  "Net::Amazon::EC2" => "0.30",
  "Pod::Usage" => 0,
  "Safe" => 0,
  "Text::Template" => "1.46"
);


unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) {

cpanfile  view on Meta::CPAN

requires 'AnyEvent';
requires 'Cwd';
requires 'File::Spec';
requires 'Safe';
requires 'Getopt::Long';
requires 'Pod::Usage';
requires 'IO::Pipe';
requires 'IO::Socket::SSL', '>= 2.012';
requires 'Net::Amazon::EC2', '>= 0.30';
requires 'Text::Template', '>= 1.46';
requires 'Log::Any', '>= 1.032';
requires 'IPC::System::Simple';

lib/App/EC2Cssh.pm  view on Meta::CPAN


=head1 SYNOSPSIS

See L<ec2-cssh>

=cut

use autodie qw/:all/;
use Cwd;
use File::Spec;
use IO::Socket::SSL;
use Net::Amazon::EC2;
use Safe;
use Text::Template;

use IO::Pipe;
use AnyEvent;

use Log::Any qw/$log/;

# Config stuff.

lib/App/EC2Cssh.pm  view on Meta::CPAN

    unless( @files ){
        die "Cannot find any config files amongst ".join(', ' , @candidates )."\n";
    }
    return \@files;
}

sub _build_ec2{
    my ($self) = @_;

    # Hack so we never verify Amazon's host. Whilst still keeping HTTPS
    IO::Socket::SSL::set_defaults( SSL_verify_callback => sub{ return 1; } );
    my $ec2 =  Net::Amazon::EC2->new({ %{ $self->config()->{ec2_config} || die "No ec2_config in config\n" } , ssl => 1 } );
    return $ec2;
}

sub main{
    my ($self) = @_;

    my @hosts;
    my %hostnames = ();
    $log->info("Listing instances for set='".$self->set()."'");



( run in 0.277 second using v1.01-cache-2.11-cpan-fd5d4e115d8 )