예제 #1
0
def test_lab(lab_src_url, version=None):
    # check out the source with version provided
        # is repo already exists? if yes, then do a git pull
        # else clone the repo
    # get the labspec from /scripts/lab_spec.json
    # get the appropriate the actions from lab_spec.json
    # run LabAction Runner
        # instantiate the object
    e = EnvSetUp.Instance()
    git = GitCommands()
    logger.info("Environment http_proxy = %s" % os.environ["http_proxy"])
    logger.info("Environment https_proxy = %s" % os.environ["https_proxy"])

    def fill_aptconf():

        try:
            http_proxy = os.environ["http_proxy"]
            https_proxy = os.environ["https_proxy"]
            http_cmd = r'echo "Acquire::http::Proxy \"%s\";"%s' % (http_proxy, '>>/etc/apt/apt.conf')
            https_cmd = r'echo "Acquire::https::Proxy \"%s\";"%s' % (https_proxy, '>>/etc/apt/apt.conf')
            (ret_code, output) = execute_command(http_cmd)
            (ret_code, output) = execute_command(https_cmd)
        except Exception, e:
            logger.error("Writing to /etc/apt/apt.conf failed with error: %s"
                         % (str(e)))
            raise e
예제 #2
0
 def __init__(self):
     self.state = State.Instance()
     self.lab_spec = {}
     self.labmgr = LabManager()
     self.vmpoolmgr = VMPoolManager()
     self.git = GitCommands()
     self.deploy_record = Record()
예제 #3
0
 def setUp(self):
     self.git = GitCommands()
     self.lab = LabManager()
     lab_src_url = "https://github.com/Virtual-Labs/computer-programming-iiith.git"
     self.lab_spec = self.lab.get_lab_reqs(lab_src_url)
     self.lab_repo_name = self.git.construct_repo_name(lab_src_url)
     self.adapter = CentOSBridgeVZAdapter()
     test_logger.debug("setUp(): lab_src_url = %s, lab_repo_name = %s" % (lab_src_url, self.lab_repo_name))
예제 #4
0
    def __init__(self):
        # check if the key_file exists, else throw an error!
        # The key file should not be checked in, but the deployer has to
        # manually copy and configure the correct location
        if not os.path.isfile(self.key_file_path):
            raise AWSKeyFileNotFound("Given key file not found!: %s" %
                                     self.key_file_path)

        # deduce the key file name from the key file path..
        # assuming the key file ends with a .pem extension - otherwise this
        # won't work!
        self.key_name = self.key_file_path.split('/')[-1].split('.pem')[0]

        self.connection = self.create_connection()
        self.env = EnvSetUp.Instance()
        self.git = GitCommands()
        self.time_before_next_retry = 5
예제 #5
0
 def __init__(self):
     self.env = EnvSetUp.Instance()
     self.git = GitCommands()
예제 #6
0
 def __init__(self):
     self.env = EnvSetUp.Instance()
     self.git = GitCommands()
     self.time_before_next_retry = 5
예제 #7
0
 def __init__(self):
     self.git = GitCommands()
     self.time_before_next_retry = 5