Net-FullAuto

 view release on metacpan or  search on metacpan

lib/Net/FullAuto/ISets/Amazon/Chef_is.pm  view on Meta::CPAN

END
   print $starting_chef;sleep 10;
   ($stdout,$stderr)=$lrhandle->cmd("sudo $tom_dir".
      "/bin/startup.sh",'__display__');
   $lrhandle->{_cmd_handle}->print("tail -f $tom_dir/logs/catalina.out");
   $prompt=substr($lrhandle->{_cmd_handle}->prompt(),1,-1);
   while (1) {
      my $output=Net::FullAuto::FA_Core::fetch($lrhandle);
      my $out=$output;
      $out=~s/$prompt//sg;
      print $out;
      if ($out=~/Server startup in/) {
         $lrhandle->{_cmd_handle}->print("\003");
         last;
      }
      sleep 1;
   }
   my ($hash,$json,$output,$error)=('','','','');
   my $in_id=$lr_inst->{InstanceId};
   ($hash,$output,$error)=
       run_aws_cmd("aws ec2 describe-instances ".
       "--filters Name=instance-id,Values=$in_id");
   if ($error) {
      print $error;
      cleanup();
   }
   my $lr_ip=
         $hash->{Reservations}->[0]->{Instances}->[0]->{PublicIpAddress};
   print "\n   ACCESS LIFERAY PORTAL AT:  http://$lr_ip:8080\n";

};

my $configure_apache=sub {

   my $server_type=$_[0];
   my $cnt=$_[1];
   my $selection=$_[2]||'';
   my $server_host_block=$_[3]||'';
   my $handle=$main::aws->{$server_type}->[$cnt]->[1];
   print "\n   ACCESS APACHE WEB SERVER AT:  http://\n\n";

};

my $configure_chef=sub {

   # http://ghost-parnurzeal.rhcloud.com/experimental-ha-for-opensource-chef-server/
   # http://ghost-parnurzeal.rhcloud.com/
   #    experimental-ha-for-opensource-chef-server-part-iii-loadbalancer-by-nginx/

   my $server_type=$_[0];
   my $cnt=$_[1];
   my $selection=$_[2]||'';
   my $server_host_block=$_[3]||'';
   my $handle=$main::aws->{$server_type}->[$cnt]->[1];
   my ($stdout,$stderr,$url)=(''.''.'');
   ($stdout,$stderr)=$handle->cmd(
      "sudo apt-get -y -o Dpkg::Progress=true update 2>&1",'__display__');
   ($stdout,$stderr)=$handle->cmd('sudo '.
      'apt-get -y -o Dpkg::Progress=true install gnupg2','__display__');
   ($stdout,$stderr)=$handle->cmd(
      'gpg2 --keyserver hkp://keys.gnupg.net --recv-keys '.
      '409B6B1796C275462A1703113804BB82D39DC0E3','__display__');
   ($stdout,$stderr)=$handle->cmd('sudo '.
      'sudo apt-get -y -o Dpkg::Progress=true install autoconf automake gcc '.
      'g++ libtool libyaml-dev make nasm pkg-config wget flex patch '.
      'libreadline6 libreadline6-dev zlibc zlib1g zlib1g-dev libsqlite3-dev '.
      'libffi-dev libssl-dev bzip2 libtool bison ruby-dev libxml2 git zip '.
      'rebar rabbitmq-server python-dev xsltproc libxml2-dev libxslt1-dev '.
      'build-essential libssh-dev unixodbc-dev libpq-dev',
      '__display__'); # erlang erlang-eunit
   ($stdout,$stderr)=$handle->cmd(
      'curl -sSL https://get.rvm.io | bash -s stable',300,'__display__');
   ($stdout,$stderr)=$handle->cmd_raw('source ~/.rvm/scripts/rvm');
   ($stdout,$stderr)=$handle->cmd(
      'rvm install ruby-2.0.0-p648','__display__');
print "RVM=$stdout<==\n";
   ($stdout,$stderr)=$handle->cmd(
      'rvm use 2.0.0','__display__');
print "RVM NEXT=$stdout<==\n";
   ($stdout,$stderr)=$handle->cmd_raw('source ~/.rvm/scripts/rvm');
   ($stdout,$stderr)=$handle->cmd_raw('export PATH='.
      '/home/ubuntu/.rvm/rubies/ruby-2.0.0-p648/bin:$PATH');
   ($stdout,$stderr)=$handle->cmd(
      'gem install io-console','__display__');
   ($stdout,$stderr)=$handle->cmd(
      'gem install bundler','__display__');
   ($stdout,$stderr)=$handle->cmd('gem install yard','__display__');
   ($stdout,$stderr)=$handle->cmd('yard config --gem-install-yri',
      '__display__');
   ($stdout,$stderr)=$handle->cmd(
      'wget http://www.erlang.org/download/otp_src_17.0.tar.gz');
   ($stdout,$stderr)=$handle->cmd(
      'tar xf otp_src_17.0.tar.gz');
   ($stdout,$stderr)=$handle->cwd('otp_src_17.0');
   ($stdout,$stderr)=$handle->cmd(
      './configure','__display__');
   ($stdout,$stderr)=$handle->cmd('sudo '.
      'make install','__display__');
   ($stdout,$stderr)=$handle->cwd('~');
   my $download_chef=<<'END';


   ooo.   .oPYo. o      o o    o o     .oPYo.      .oo ooo.   o o    o .oPYo.
   8  `8. 8    8 8      8 8b   8 8     8    8     .P 8 8  `8. 8 8b   8 8    8
   8   `8 8    8 8      8 8`b  8 8     8    8    .P  8 8   `8 8 8`b  8 8
   8    8 8    8 8  db  8 8 `b 8 8     8    8   oPooo8 8    8 8 8 `b 8 8   oo
   8   .P 8    8 `b.PY.d' 8  `b8 8     8    8  .P    8 8   .P 8 8  `b8 8    8
   8ooo'  `YooP'  `8  8'  8   `8 8oooo `YooP' .P     8 8ooo'  8 8   `8 `YooP8
   ..........................................................................
   ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
   ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


                           _____ _    _ ______ ______
                          / ____| |  | |  ____|  ____|
                         | |    | |__| | |__  | |__
                         | |    |  __  |  __| |  __|
                         | |____| |  | | |____| |
                          \_____|_|  |_|______|_|




( run in 0.650 second using v1.01-cache-2.11-cpan-df04353d9ac )