Exemplo n.º 1
0
def pip_install_editable(source, uid, gid, prefix):
    _subprocess.check_call(
        _util.sudo_args(uid, gid) + [
            "pip",
            "install",
            "--install-option=--prefix={}".format(prefix),
            "--editable",
            source,
        ],
    )
Exemplo n.º 2
0
def main():
    uid, gid = _util.get_uid_gid()
    ctx = _context.Context(_context.User(None, uid),
                           _context.Group(None, gid))

    # Run each hook.
    for hook in _hook.get_hooks():
        hook.run(ctx)

    # Become whatever `ARGS` wants us to be.
    _os.execv(
        "/usr/bin/sudo",
        _util.sudo_args(uid, gid) + _sys.argv[1:],
    )
Exemplo n.º 3
0
def test__sudo_args(monkeypatch):
    monkeypatch.setattr("os.environ", {"PATH": "/my/path",
                                       "PYTHONPATH": "/my/pythonpath"})
    result = _util.sudo_args(42, 43)
    assert result == ["sudo", "-n", "-H", "-u", "#42", "-g", "#43", "-E",
                      "PATH=/my/path", "PYTHONPATH=/my/pythonpath", "--"]