diff --git a/runbot/container.py b/runbot/container.py index 3d98a45d..e852d046 100644 --- a/runbot/container.py +++ b/runbot/container.py @@ -32,9 +32,7 @@ DOCKERUSER = """ RUN groupadd -g %(group_id)s odoo \\ && useradd -u %(user_id)s -g odoo -G audio,video odoo \\ && mkdir /home/odoo \\ -&& chown -R odoo:odoo /home/odoo \\ -&& echo "odoo ALL= NOPASSWD: /usr/bin/pip" > /etc/sudoers.d/pip \\ -&& echo "odoo ALL= NOPASSWD: /usr/bin/pip3" >> /etc/sudoers.d/pip +&& chown -R odoo:odoo /home/odoo USER odoo ENV COVERAGE_FILE /data/build/.coverage """ % {'group_id': os.getgid(), 'user_id': os.getuid()} diff --git a/runbot/models/build.py b/runbot/models/build.py index b53311bf..551ecce0 100644 --- a/runbot/models/build.py +++ b/runbot/models/build.py @@ -966,7 +966,7 @@ class BuildResult(models.Model): if not self.params_id.skip_requirements and os.path.isfile(commit_id._source_path('requirements.txt')): repo_dir = self._docker_source_folder(commit_id) requirement_path = os.path.join(repo_dir, 'requirements.txt') - pres.append(['sudo', 'pip%s' % py_version, 'install', '--progress-bar', 'off', '-r', '%s' % requirement_path]) + pres.append([f'python{py_version}', '-m', 'pip', 'install','--user', '--progress-bar', 'off', '-r', f'{requirement_path}']) addons_paths = self._get_addons_path() (server_commit, server_file) = self._get_server_info()