Beispiel #1
0
 def put_templated_file(self, local_src, remote_dest, **kwargs):
     tmp = tempfile.mktemp()
     try:
         Eutester.render_file_template(local_src, tmp, **kwargs)
         self.ssh.sftp_put(tmp, remote_dest)
     finally:
         os.remove(tmp)
Beispiel #2
0
 def put_templated_file(self, local_src, remote_dest, **kwargs):
     tmp = tempfile.mktemp()
     try:
         Eutester.render_file_template(local_src, tmp, **kwargs)
         self.ssh.sftp_put(tmp, remote_dest)
     finally:
         os.remove(tmp)
Beispiel #3
0
 def __init__(self, credpath=None, aws_access_key_id=None, aws_secret_access_key = None, username="******",region=None, ec2_ip=None, s3_ip=None, boto_debug=0):
     Eutester.__init__(self, credpath=credpath, aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key,region=region,  s3_ip=s3_ip, ec2_ip=ec2_ip, boto_debug=boto_debug)
     self.poll_count = 48
     self.username = username
     self.test_resources = {}
     self.setup_ec2_resource_trackers()
     self.key_dir = "./"
Beispiel #4
0
    def get_elapsed_seconds_since_pid_started(self, pid):
        """
        Attempts to parse ps time elapsed since process/pid has been running and return the presented time in
        elapsed number of seconds.
        :param pid: Process id to get elapsed time from
        :return: Elapsed time in seconds that pid has been running
        """
        seconds_min = 60
        seconds_hour = 3600
        seconds_day = 86400
        elapsed = 0
        try:
            if not pid:
                raise Exception(
                    'Empty pid passed to get_elapsed_seconds_since_pid_started'
                )
            cmd = "ps -eo pid,etime | grep " + str(pid) + " | awk '{print $2}'"
            self.debug('starting get pid uptime"' + str(cmd) + '"...')
            #expected format: days-HH:MM:SS
            out = self.sys(cmd, code=0)[0]
            out = out.strip()
            if re.search("-", out):
                split_out = out.split("-")
                days = int(split_out[0])
                time_string = split_out[1]
            else:
                days = 0
                time_string = out

            split_time = time_string.split(':')
            #insert a 0 if hours, and minutes are not present.
            for x in xrange(len(split_time), 3):
                split_time.insert(0, 0)

            hours = int(split_time[0] or 0)
            minutes = int(split_time[1] or 0)
            seconds = int(split_time[2] or 0)
            elapsed = seconds + (minutes * seconds_min) + (
                hours * seconds_hour) + (days * seconds_day)
        except:
            print Eutester.get_traceback()
        return int(elapsed)
Beispiel #5
0
    def get_elapsed_seconds_since_pid_started(self, pid):
        """
        Attempts to parse ps time elapsed since process/pid has been running and return the presented time in
        elapsed number of seconds.
        :param pid: Process id to get elapsed time from
        :return: Elapsed time in seconds that pid has been running
        """
        seconds_min = 60
        seconds_hour = 3600
        seconds_day = 86400
        elapsed = 0
        try:
            if not pid:
                raise Exception('Empty pid passed to get_elapsed_seconds_since_pid_started')
            cmd = "ps -eo pid,etime | grep " + str(pid) + " | awk '{print $2}'"
            self.debug('starting get pid uptime"' + str(cmd) + '"...')
            #expected format: days-HH:MM:SS
            out = self.sys(cmd,code=0)[0]
            out = out.strip()
            if re.search("-", out):
                split_out = out.split("-")
                days =  int(split_out[0])
                time_string = split_out[1]
            else:
                days = 0
                time_string = out

            split_time = time_string.split(':')
            #insert a 0 if hours, and minutes are not present.
            for x in xrange(len(split_time), 3):
                split_time.insert(0,0)

            hours = int(split_time[0] or 0)
            minutes = int(split_time[1] or 0)
            seconds = int(split_time[2] or 0)
            elapsed = seconds + (minutes*seconds_min) + (hours*seconds_hour) + (days*seconds_day)
        except:
            print Eutester.get_traceback()
        return int(elapsed)
Beispiel #6
0
#!/usr/bin/python
from eutester import Eutester
import argparse
if __name__ == "__main__":
    ## If given command line arguments, use them as test names to launch
    parser = argparse.ArgumentParser(description='Get credentials for a cloud')
    parser.add_argument('--config', default="../input/2b_tested.lst")
    parser.add_argument("--password", default='foobar')
    args = parser.parse_args()
    tester = Eutester(config_file=args.config, password=args.password)
Beispiel #7
0
#

from eutester import Eutester
import argparse

if __name__ == '__main__':
    ### Parse args
    parser = argparse.ArgumentParser(description='Test for Eucalyptus Launchpad bug-737335')
    parser.add_argument("--credpath", dest="credpath",
                      help="The path where to find eucarc (default ~/.euca)", default="~/.euca") 
    parser.add_argument("--userId", dest="userId", 
                      help="userId to use to run test", default="admin") 
    args = parser.parse_args()
    
    # create Eutester object
    tester = Eutester( credpath=args.credpath )
    
    # find images owned by the user
    emi_list = tester.sys("euca-describe-images -o self | grep emi- | head -1 | awk '{print $2}'")
    
    if emi_list == []:
        tester.fail("Did not find any images owned by self")
        tester.do_exit()
    
    # grab an emi
    emi = emi_list[0]
    
    # reset permission
    tester.sys("euca-reset-image-attribute --launch-permission " + emi)
    
    # remove all permission