Beispiel #1
0
    def test_should_perform_chunked_uploads(self):
        old_config = get_rpm_upload_command()
        target_file = os.path.abspath(
            os.path.join(get_temporary_directory(), 'upload.txt'))
        if os.path.exists(target_file):
            os.remove(target_file)
        cmd_file = os.path.abspath(
            os.path.join(get_temporary_directory(), 'upload.sh'))
        with open(cmd_file, 'w') as f:
            f.write(
                '#!/bin/bash\ndest=$1 ; shift ; echo "${#@} $@" >> "$dest"')

        os.chmod(cmd_file, 0755)
        cmd = '%s %s' % (cmd_file, target_file)
        configuration.set_property(get_rpm_upload_command, cmd)
        try:
            ConfigRpmMaker(None, None)._upload_rpms(['a' for x in range(25)])
        finally:
            configuration.set_property(get_rpm_upload_command, old_config)

        self.assertTrue(os.path.exists(target_file))
        with open(target_file) as f:
            self.assertEqual(
                f.read(),
                '10 a a a a a a a a a a\n10 a a a a a a a a a a\n5 a a a a a\n'
            )
 def setUp(self):
     configuration.set_property(is_no_clean_up_enabled,
                                KEEP_TEMPORARY_DIRECTORY)
     temporary_directory = get_temporary_directory()
     self.clean_up_temporary_directory(temporary_directory)
     self.temporary_directory = temporary_directory
     self.create_svn_repo()
 def __init__(self, revision, svn_service):
     self.revision = revision
     self.svn_service = svn_service
     self.temp_dir = get_temporary_directory()
     self._assure_temp_dir_if_set()
     self.logger = None
     self._create_logger()
     self.work_dir = None
Beispiel #4
0
 def __init__(self, revision, svn_service):
     self.revision = revision
     self.svn_service = svn_service
     self.temp_dir = get_temporary_directory()
     self._assure_temp_dir_if_set()
     self._create_logger()
     self.work_dir = None
     self.host_queue = Queue()
     self.failed_host_queue = Queue()
    def test_should_perform_chunked_uploads(self):
        old_config = get_rpm_upload_command()
        target_file = os.path.abspath(os.path.join(get_temporary_directory(), 'upload.txt'))
        if os.path.exists(target_file):
            os.remove(target_file)
        cmd_file = os.path.abspath(os.path.join(get_temporary_directory(), 'upload.sh'))
        with open(cmd_file, 'w') as f:
            f.write('#!/bin/bash\ndest=$1 ; shift ; echo "${#@} $@" >> "$dest"')

        os.chmod(cmd_file, 0755)
        cmd = '%s %s' % (cmd_file, target_file)
        configuration.set_property(get_rpm_upload_command, cmd)
        try:
            ConfigRpmMaker(None, None)._upload_rpms(['a' for x in range(25)])
        finally:
            configuration.set_property(get_rpm_upload_command, old_config)

        self.assertTrue(os.path.exists(target_file))
        with open(target_file) as f:
            self.assertEqual(f.read(), '10 a a a a a a a a a a\n10 a a a a a a a a a a\n5 a a a a a\n')
Beispiel #6
0
    def _create_logger(self):
        self.error_log_file = tempfile.mktemp(dir=get_temporary_directory(),
                                              prefix='yadt-config-rpm-maker.',
                                              suffix='.revision-%s.error.log' %
                                              self.revision)
        self.error_handler = FileHandler(self.error_log_file)
        formatter = Formatter(configuration.LOG_FILE_FORMAT,
                              configuration.LOG_FILE_DATE_FORMAT)
        self.error_handler.setFormatter(formatter)
        self.error_handler.setLevel(ERROR)

        self.logger = getLogger('fileLogger')
        self.logger.addHandler(self.error_handler)
        self.logger.propagate = False
    def _create_logger(self):
        self.error_log_file = tempfile.mktemp(
            dir=get_temporary_directory(),
            prefix="yadt-config-rpm-maker.",
            suffix=".revision-%s.error.log" % self.revision,
        )
        self.error_handler = FileHandler(self.error_log_file)
        formatter = Formatter(configuration.LOG_FILE_FORMAT, configuration.LOG_FILE_DATE_FORMAT)
        self.error_handler.setFormatter(formatter)
        self.error_handler.setLevel(ERROR)

        self.logger = getLogger("fileLogger")
        self.logger.addHandler(self.error_handler)
        self.logger.propagate = False
Beispiel #8
0
    def extractRpmFiles(self, path, hostname):
        extract_path = os.path.join(get_temporary_directory(), hostname + '.extract')
        os.mkdir(extract_path)

        command_with_arguments = 'rpm2cpio ' + os.path.abspath(path) + ' | cpio  -idmv'
        process = subprocess.Popen(command_with_arguments,
                                   shell=True,
                                   cwd=extract_path,
                                   stdout=subprocess.PIPE,
                                   stderr=subprocess.PIPE)
        stdout, stderr = process.communicate()

        if process.returncode != 0:
            message = EXECUTION_ERROR_MESSAGE.format(command_with_arguments=command_with_arguments,
                                                     error_code=process.returncode,
                                                     stdout=stdout or "",
                                                     stderr=stderr or "")

            raise IntegrationTestException(message)

        return extract_path
    def extractRpmFiles(self, path, hostname):
        extract_path = os.path.join(get_temporary_directory(), hostname + '.extract')
        os.mkdir(extract_path)

        command_with_arguments = 'rpm2cpio ' + os.path.abspath(path) + ' | cpio  -idmv'
        process = subprocess.Popen(command_with_arguments,
                                   shell=True,
                                   cwd=extract_path,
                                   stdout=subprocess.PIPE,
                                   stderr=subprocess.PIPE)
        stdout, stderr = process.communicate()

        if process.returncode != 0:
            message = EXECUTION_ERROR_MESSAGE.format(command_with_arguments=command_with_arguments,
                                                     error_code=process.returncode,
                                                     stdout=stdout or "",
                                                     stderr=stderr or "")

            raise IntegrationTestException(message)

        return extract_path
 def setUp(self):
     configuration.set_property(is_no_clean_up_enabled, KEEP_TEMPORARY_DIRECTORY)
     temporary_directory = get_temporary_directory()
     self.clean_up_temporary_directory(temporary_directory)
     self.temporary_directory = temporary_directory
     self.create_svn_repo()