예제 #1
0
파일: site.py 프로젝트: sri-sysad/checkmk
    def _install_test_python_modules(self):
        venv = virtualenv_path()
        bin_dir = venv / "bin"
        self._copy_python_modules_from(venv / "lib/python3.8/site-packages")

        # Some distros have a separate platfrom dependent library directory, handle it....
        platlib64 = venv / "lib64/python3.8/site-packages"
        if platlib64.exists():
            self._copy_python_modules_from(platlib64)

        for file_name in ["py.test", "pytest"]:
            assert os.system("sudo rsync -a --chown %s:%s %s %s/local/bin" %  # nosec
                             (self.id, self.id, bin_dir / file_name, self.root)) >> 8 == 0
예제 #2
0
    def _install_test_python_modules(self):
        venv = virtualenv_path()
        bin_dir = venv / "bin"
        packages_dir = venv / "lib/python2.7/site-packages"

        enforce_override = ["backports"]

        for file_name in os.listdir(str(packages_dir)):
            # Only copy modules that do not exist in regular module path
            if file_name not in enforce_override:
                if os.path.exists("%s/lib/python/%s" % (self.root, file_name)) \
                   or os.path.exists("%s/lib/python2.7/site-packages/%s" % (self.root, file_name)):
                    continue

            assert os.system(
                "sudo rsync -a --chown %s:%s %s %s/local/lib/python/"
                %  # nosec
                (self.id, self.id, packages_dir / file_name,
                 self.root)) >> 8 == 0

        for file_name in ["py.test", "pytest"]:
            assert os.system(
                "sudo rsync -a --chown %s:%s %s %s/local/bin" %  # nosec
                (self.id, self.id, bin_dir / file_name, self.root)) >> 8 == 0
예제 #3
0
def verify_virtualenv():
    if not virtualenv_path():
        raise SystemExit("ERROR: Please load virtual environment first "
                         "(Use \"pipenv shell\" or configure direnv)")