mirror of
https://github.com/certbot/certbot.git
synced 2026-02-24 02:10:27 -05:00
* Setup an independant create_venv piece for certbot-auto * Debug * First implementation * Some corrections, disable python 3 * Continue work * Add hashin * Polish CLI * Fix logic * Add executable permissions * Assynchronous process * Correction * Add comments * More controls * Correct image name * Fix image * Test with 2 * Test timeout * Remove parallelization for now. To much bugs. * Add comments * Correct installation * Correct keys map view usage * Improve filtering * Correction * Improve filtering, again * Remove dependency on python 3 * Remove necessity to run from certbot root * Add constraints. Clean code. * Pure constraints * More involved base test * Update certbot-auto with calculated dependencies * Update header * Rebuild UI * Correction * Remove debug info * Ensure docker exit when process finish * Another try to stop docker * Clean stdout/stderr * Fix python-augeas * Catch stderr * Update dependencies with new constraints * Update certbot-auto * Corrections after review. * Clean endline * Silent execution * Filter editable installation of local certbot packages, strict check on package names
27 lines
792 B
Python
Executable file
27 lines
792 B
Python
Executable file
#!/usr/bin/env python
|
|
import os
|
|
import shutil
|
|
import subprocess
|
|
import sys
|
|
|
|
|
|
def create_venv(venv_path, pyver, verbose):
|
|
if os.path.exists(venv_path):
|
|
shutil.rmtree(venv_path)
|
|
|
|
stdout = sys.stdout if verbose == '1' else open(os.devnull, 'w')
|
|
|
|
if int(pyver) <= 27:
|
|
# Use virtualenv binary
|
|
environ = os.environ.copy()
|
|
environ['VIRTUALENV_NO_DOWNLOAD'] = '1'
|
|
command = ['virtualenv', '--no-site-packages', '--python', sys.executable, venv_path]
|
|
subprocess.check_call(command, stdout=stdout, env=environ)
|
|
else:
|
|
# Use embedded venv module in Python 3
|
|
command = [sys.executable, '-m', 'venv', venv_path]
|
|
subprocess.check_call(command, stdout=stdout)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
create_venv(*sys.argv[1:])
|