Ejemplo n.º 1
0
 def update(self):
     cloud_connect = srvl_connect.srvlConnect()
     cloud_connect.initiate_ssh("ec2-user",
                                self.cc.settings["builder"]["private_key"],
                                self.cc.settings["builder"]["domain_name"])
     cloud_connect.upload_file_ssh(
         self.cc.settings["builder"]["lambda_handler_path"] + "/",
         "/home/ec2-user/packaging/", 'handler.py')
     cloud_connect.terminate_ssh()
Ejemplo n.º 2
0
 def package(self):
     cloud_connect = srvl_connect.srvlConnect()
     cloud_connect.initiate_ssh("ec2-user",
                                self.cc.settings["builder"]["private_key"],
                                self.cc.settings["builder"]["domain_name"])
     cloud_connect.run_ssh(
         "cd $HOME/packaging/ && zip -r9 $HOME/lambda.zip *")
     cloud_connect.run_ssh("aws s3 cp $HOME/lambda.zip s3://" +
                           self.cc.settings["aws"]["s3_bucket"] + "/" +
                           self.cc.settings["aws"]["s3_key"] +
                           "/lambda.zip")
     cloud_connect.terminate_ssh()
Ejemplo n.º 3
0
 def upload_aws(self):
     cloud_connect = srvl_connect.srvlConnect()
     cloud_connect.initiate_ssh("ec2-user",
                                self.cc.settings["builder"]["private_key"],
                                self.cc.settings["builder"]["domain_name"])
     cloud_connect.run_ssh("pip install awscli --upgrade --user")
     cloud_connect.run_ssh("mkdir ~/.aws")
     cloud_connect.run_ssh("echo \"[default]\naws_access_key_id = " +
                           cloud_connect.get_aws_access_key() + "\n" +
                           "aws_secret_access_key = " +
                           cloud_connect.get_aws_secret_key() +
                           "\" > ~/.aws/credentials")
     cloud_connect.run_ssh("echo \"[default]\nregion = " +
                           cloud_connect.get_aws_region() +
                           "\" > .aws/config")
     cloud_connect.run_ssh("sudo cp -R /home/ec2-user/.aws /root/")
     cloud_connect.terminate_ssh()
Ejemplo n.º 4
0
 def init_pvenv(self):
     cloud_connect = srvl_connect.srvlConnect()
     cloud_connect.initiate_ssh("ec2-user",
                                self.cc.settings["builder"]["private_key"],
                                self.cc.settings["builder"]["domain_name"])
     cloud_connect.run_ssh(
         "virtualenv $HOME/env && source $HOME/env/bin/activate && pip install 'rpy2<2.9.0'"
     )
     cloud_connect.run_ssh("mkdir $HOME/packaging && cd $HOME/packaging")
     cloud_connect.run_ssh("sudo rm /usr/lib64/R/lib/libRrefblas.so")
     cloud_connect.run_ssh("cp -r /usr/lib64/R/* $HOME/packaging")
     cloud_connect.run_ssh("cp /usr/lib64/libgomp.so.1 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "cp /usr/lib64/libgfortran.so.3 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "cp /usr/lib64/libquadmath.so.0 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libm.so.6 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libreadline.so.6 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /usr/lib64/libtre.so.5 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libpcre.so.0 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /usr/lib64/liblzma.so.5 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libbz2.so.1 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libz.so.1 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/librt.so.1 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libdl.so.2 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "cp /usr/lib64/libicuuc.so.50 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "cp /usr/lib64/libicui18n.so.50 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libgcc_s.so.1 $HOME/packaging/lib")
     cloud_connect.run_ssh("cp /lib64/libtinfo.so.5 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "cp /usr/lib64/libicudata.so.50 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "cp /usr/lib64/libstdc++.so.6 $HOME/packaging/lib")
     cloud_connect.run_ssh(
         "virtualenv $HOME/env && source $HOME/env/bin/activate && cp -r $VIRTUAL_ENV/lib64/python2.7/dist-packages/* $HOME/packaging"
     )
     cloud_connect.run_ssh(
         "virtualenv $HOME/env && source $HOME/env/bin/activate && cp -r $VIRTUAL_ENV/lib/python2.7/dist-packages/singledispatch* $HOME/packaging"
     )
     cloud_connect.run_ssh("cp $HOME/packaging/bin/exec/R $HOME/packaging")
     cloud_connect.terminate_ssh()
Ejemplo n.º 5
0
 def init_builder(self):
     cloud_connect = srvl_connect.srvlConnect()
     cloud_connect.initiate_ssh("ec2-user",
                                self.cc.settings["builder"]["private_key"],
                                self.cc.settings["builder"]["domain_name"])
     cloud_connect.run_ssh("sudo yum -y update")
     cloud_connect.run_ssh("sudo yum -y upgrade")
     cloud_connect.run_ssh(
         "sudo yum -y install python27-devel python27-pip gcc gcc-c++ readline-devel libgfortran.x86_64 R.x86_64"
     )
     cloud_connect.run_ssh(
         "sudo yum -y install openssl-devel libxml2-devel libcurl-devel")
     cloud_connect.run_ssh("pip install --upgrade pip")
     cloud_connect.run_ssh("echo \"[default]\naws_access_key_id = " +
                           cloud_connect.get_aws_access_key() + "\n" +
                           "aws_secret_access_key = " +
                           cloud_connect.get_aws_secret_key() +
                           "\" > ~/.aws/credentials")
     for package in self.cc.settings["builder"]["cran_r_package_names"]:
         cloud_connect.run_ssh(
             "echo \"install.packages('" + package +
             "', repos='http://cran.us.r-project.org')\">> ~/package_install.R"
         )
     if self.cc.settings["builder"]["custom_r_package_file"]:
         cloud_connect.run_ssh(
             "echo \"system('aws s3 cp s3://" +
             self.cc.settings["aws"]["s3_bucket"] + "/" +
             self.cc.settings["aws"]["s3_key"] + "/" +
             self.cc.settings["builder"]["custom_r_package_file"] + " ./" +
             self.cc.settings["builder"]["custom_r_package_file"] +
             "')\">> ~/package_install.R")
         cloud_connect.run_ssh(
             "echo \"install.packages('" +
             self.cc.settings["builder"]["custom_r_package_file"] +
             "', repos=NULL, type = 'source')\">> ~/package_install.R")
     cloud_connect.terminate_ssh()
     print("Running R Package Installs")
     cloud_connect.initiate_ssh("ec2-user",
                                self.cc.settings["builder"]["private_key"],
                                self.cc.settings["builder"]["domain_name"])
     cloud_connect.run_ssh("sudo Rscript package_install.R")
     print("Finished R Package Installs")
     cloud_connect.terminate_ssh()
Ejemplo n.º 6
0
 def sftp(self):
     cloud_connect = srvl_connect.srvlConnect()
     cloud_connect.evoke_sftp('ec2-user',
                              self.cc.settings["builder"]["domain_name"])