Exemple #1
0
    def test_custom_pydistutils(self):
        # fixes #2166
        # make sure pydistutils.cfg is found
        if os.name == 'posix':
            user_filename = ".pydistutils.cfg"
        else:
            user_filename = "pydistutils.cfg"

        temp_dir = self.mkdtemp()
        user_filename = os.path.join(temp_dir, user_filename)
        f = open(user_filename, 'w')
        try:
            f.write('.')
        finally:
            f.close()

        try:
            dist = Distribution()

            # linux-style
            if sys.platform in ('linux', 'darwin'):
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertIn(user_filename, files)

            # win32-style
            if sys.platform == 'win32':
                # home drive should be found
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertIn(user_filename, files,
                             '%r not found in %r' % (user_filename, files))
        finally:
            os.remove(user_filename)
Exemple #2
0
    def test_custom_pydistutils(self):
        if os.name == 'posix':
            user_filename = '.pydistutils.cfg'
        else:
            user_filename = 'pydistutils.cfg'
        temp_dir = self.mkdtemp()
        user_filename = os.path.join(temp_dir, user_filename)
        f = open(user_filename, 'w')
        try:
            f.write('.')
        finally:
            f.close()

        try:
            dist = Distribution()
            if sys.platform in ('linux', 'darwin'):
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertIn(user_filename, files)
            if sys.platform == 'win32':
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertIn(user_filename, files,
                              '%r not found in %r' % (user_filename, files))
        finally:
            os.remove(user_filename)
    def test_custom_pydistutils(self):
        # fixes #2166
        # make sure pydistutils.cfg is found
        if os.name == 'posix':
            user_filename = ".pydistutils.cfg"
        else:
            user_filename = "pydistutils.cfg"

        temp_dir = self.mkdtemp()
        user_filename = os.path.join(temp_dir, user_filename)
        f = open(user_filename, 'w')
        try:
            f.write('.')
        finally:
            f.close()

        try:
            dist = Distribution()

            # linux-style
            if sys.platform in ('linux', 'darwin'):
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertTrue(user_filename in files)

            # win32-style
            if sys.platform == 'win32':
                # home drive should be found
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertTrue(user_filename in files,
                             '%r not found in %r' % (user_filename, files))
        finally:
            os.remove(user_filename)
Exemple #4
0
    def test_custom_pydistutils(self):
        if os.name == 'posix':
            user_filename = '.pydistutils.cfg'
        else:
            user_filename = 'pydistutils.cfg'
        temp_dir = self.mkdtemp()
        user_filename = os.path.join(temp_dir, user_filename)
        f = open(user_filename, 'w')
        try:
            f.write('.')
        finally:
            f.close()

        try:
            dist = Distribution()
            if sys.platform in ('linux', 'darwin'):
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertIn(user_filename, files)
            if sys.platform == 'win32':
                os.environ['HOME'] = temp_dir
                files = dist.find_config_files()
                self.assertIn(user_filename, files, '%r not found in %r' % (user_filename, files))
        finally:
            os.remove(user_filename)
    def test_custom_pydistutils(self):
        # fixes #2166
        # make sure pydistutils.cfg is found
        if os.name == "posix":
            user_filename = ".pydistutils.cfg"
        else:
            user_filename = "pydistutils.cfg"

        temp_dir = self.mkdtemp()
        user_filename = os.path.join(temp_dir, user_filename)
        f = open(user_filename, "w")
        f.write(".")
        f.close()

        try:
            dist = Distribution()

            # linux-style
            if sys.platform in ("linux", "darwin"):
                os.environ["HOME"] = temp_dir
                files = dist.find_config_files()
                self.assertTrue(user_filename in files)

            # win32-style
            if sys.platform == "win32":
                # home drive should be found
                os.environ["HOME"] = temp_dir
                files = dist.find_config_files()
                self.assertTrue(user_filename in files, "%r not found in %r" % (user_filename, files))
        finally:
            os.remove(user_filename)
def find_distutils_file(logger):
    """
    Returns the location of the main distutils.cfg file
    """
    import distutils.dist
    dist = distutils.dist.Distribution(None)
    files = dist.find_config_files()
    writable_files = []
    for file in files:
        if not os.path.exists(file):
            logger.info('Distutils config file %s does not exist' % file)
            continue
        if os.access(file, os.W_OK):
            logger.debug('Distutils config %s is writable' % file)
            writable_files.append(file)
        else:
            logger.notify('Distutils config %s is not writable' % file)
    if not files:
        logger.fatal(
            'Could not find any existing writable config file (tried options %s)'
            % ', '.join(files))
        raise OSError("No config files found")
    if len(files) > 1:
        logger.notify(
            "Choosing file %s among writable options %s"
            % (files[0], ', '.join(files[1:])))
    return files[0]
def find_distutils_file(logger):
    """
    Returns the location of the main distutils.cfg file
    """
    import distutils.dist
    dist = distutils.dist.Distribution(None)
    files = dist.find_config_files()
    writable_files = []
    for file in files:
        if not os.path.exists(file):
            logger.info('Distutils config file %s does not exist' % file)
            continue
        if os.access(file, os.W_OK):
            logger.debug('Distutils config %s is writable' % file)
            writable_files.append(file)
        else:
            logger.notify('Distutils config %s is not writable' % file)
    if not files:
        logger.fatal(
            'Could not find any existing writable config file (tried options %s)'
            % ', '.join(files))
        raise OSError("No config files found")
    if len(files) > 1:
        logger.notify("Choosing file %s among writable options %s" %
                      (files[0], ', '.join(files[1:])))
    return files[0]
    def test_custom_pydistutils(self):
        # fixes #2166
        # make sure pydistutils.cfg is found
        old = {}
        for env in ('HOME', 'HOMEPATH', 'HOMEDRIVE'):
            value = os.environ.get(env)
            old[env] = value
            if value is not None:
                del os.environ[env]

        if os.name == 'posix':
            user_filename = ".pydistutils.cfg"
        else:
            user_filename = "pydistutils.cfg"

        curdir = os.path.dirname(__file__)
        user_filename = os.path.join(curdir, user_filename)
        f = open(user_filename, 'w')
        f.write('.')
        f.close()

        try:
            dist = distutils.dist.Distribution()

            # linux-style
            if sys.platform in ('linux', 'darwin'):
                os.environ['HOME'] = curdir
                files = dist.find_config_files()
                self.assert_(user_filename in files)

            # win32-style
            if sys.platform == 'win32':
                # home drive should be found
                os.environ['HOME'] = curdir
                files = dist.find_config_files()
                self.assert_(user_filename in files,
                             '%r not found in %r' % (user_filename, files))
        finally:
            for key, value in old.items():
                if value is None:
                    continue
                os.environ[key] = value
            os.remove(user_filename)
Exemple #9
0
    def test_custom_pydistutils(self):
        # fixes #2166
        # make sure pydistutils.cfg is found
        old = {}
        for env in ('HOME', 'HOMEPATH', 'HOMEDRIVE'):
            value = os.environ.get(env)
            old[env] = value
            if value is not None:
                del os.environ[env]

        if os.name == 'posix':
            user_filename = ".pydistutils.cfg"
        else:
            user_filename = "pydistutils.cfg"

        curdir = os.path.dirname(__file__)
        user_filename = os.path.join(curdir, user_filename)
        f = open(user_filename, 'w')
        f.write('.')
        f.close()

        try:
            dist = distutils.dist.Distribution()

            # linux-style
            if sys.platform in ('linux', 'darwin'):
                os.environ['HOME'] = curdir
                files = dist.find_config_files()
                self.assert_(user_filename in files)

            # win32-style
            if sys.platform == 'win32':
                # home drive should be found
                os.environ['HOME'] = curdir
                files = dist.find_config_files()
                self.assert_(user_filename in files,
                             '%r not found in %r' % (user_filename, files))
        finally:
            for key, value in old.items():
                if value is None:
                    continue
                os.environ[key] = value
            os.remove(user_filename)