def install(): arch = info.arch() if re.match('i?86', arch): arch = 'x86' pypyURL = pypyURLs.get(arch) pypyDir = pypyDirs.get(arch) if pypyURL is None or pypyDir is None: abort("Can't install pypy on unknown architecture.") sudo('/bin/mkdir -p /opt') if fails('/usr/bin/id {}'.format('pypy')): sudo('/usr/sbin/useradd --home-dir {} --gid bin ' '-M --system --shell /bin/false ' 'pypy'.format(pypyDir)) else: sudo('/usr/sbin/usermod --home {} pypy'.format(pypyDir)) with cd('/opt'): for url in pypyURL, pipURL: sudo('/usr/bin/wget -nc {}'.format(url)) sudo('/bin/tar xf {}'.format(path.basename(pypyURL))) sudo('~pypy/bin/pypy {}'.format(path.join('/opt/', path.basename(pipURL))), pty=False) sudo('~pypy/bin/pip install pyopenssl') sudo('~pypy/bin/pip install svn+svn://svn.twistedmatrix.com/svn/Twisted/trunk/')
def createService(username, base='/srv', groups=['service']): """ Create a service user. """ if fails('/usr/bin/id {}'.format(username)): if distroFamily() in ['debian', 'fedora']: if groups: groupOpt = '--group ' + ','.join(groups) else: groupOpt = '' if base is not None: baseOpt = '--base-dir {}'.format(base) else: baseOpt = '' sudo('/usr/sbin/useradd {} {} --user-group ' '--create-home --system --shell /bin/bash ' '{}'.format(baseOpt, groupOpt, username)) elif distroFamily() == 'freebsd': if groups: abort("Groups not supported") if base: abort("Basedir not supported") return sudo( '/usr/sbin/pw useradd -m -s /usr/local/bin/bash -h - -n {}'. format(username)) else: abort('Unknown distro')
def createService(username, base='/srv', groups=['service']): """ Create a service user. """ if fails('/usr/bin/id {}'.format(username)): if distroFamily() in ['debian', 'fedora']: if groups: groupOpt = '--group ' + ','.join(groups) else: groupOpt = '' if base is not None: baseOpt = '--base-dir {}'.format(base) else: baseOpt = '' sudo('/usr/sbin/useradd {} {} --user-group ' '--create-home --system --shell /bin/bash ' '{}'.format(baseOpt, groupOpt, username)) elif distroFamily() == 'freebsd': if groups: abort("Groups not supported") if base: abort("Basedir not supported") return sudo('/usr/sbin/pw useradd -m -s /usr/local/bin/bash -h - -n {}'.format(username)) else: abort('Unknown distro')
def createService(username, base='/srv', groups=['service']): """ Create a service user. """ if fails('/usr/bin/id {}'.format(username)): if groups: groupOpt = '--group ' + ','.join(groups) else: groupOpt = '' if base is not None: baseOpt = '--base-dir {}'.format(base) else: baseOpt = '' sudo('/usr/sbin/useradd {} {} --user-group ' '--create-home --system --shell /bin/bash ' '{}'.format(baseOpt, groupOpt, username))
def install(): arch = info.arch() if re.match('i?86', arch): arch = 'x86' pypyURL = pypyURLs.get(arch).format(version=pypyVersion) pypyDir = pypyDirs.get(arch).format(version=pypyVersion) if pypyURL is None or pypyDir is None: abort("Can't install pypy on unknown architecture.") sudo('/bin/mkdir -p /opt') if fails('/usr/bin/id {}'.format('pypy')): sudo('/usr/sbin/useradd --home-dir {} --gid bin ' '-M --system --shell /bin/false ' 'pypy'.format(pypyDir)) else: sudo('/usr/sbin/usermod --home {} pypy'.format(pypyDir)) with cd('/opt'): sudo('/usr/bin/wget -nc {}'.format(pypyURL)) sudo('/bin/tar xf {}'.format(path.basename(pypyURL)))