Skip to content

Commit

Permalink
Merge pull request #1 from julienaubert/feature/redis
Browse files Browse the repository at this point in the history
redis
  • Loading branch information
saxix committed Dec 18, 2013
2 parents 9d947b1 + 1679623 commit 964f5d5
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 3 deletions.
24 changes: 23 additions & 1 deletion bh/system.py
Expand Up @@ -2,9 +2,31 @@
from fabric.api import *
from fabric.colors import green, red
from fabric.contrib.files import upload_template, exists, sed
from bh.utils import as_bool
from bh.user import setup_env_for_user


@task
def redis():
""" compile and install redis
"""
setup_env_for_user(env.user)
version = env.REDIS
run('mkdir -p {admin_home_dir}/~build'.format(**env))
with cd(env.build):
tar_pkg = 'redis-{version}.tar.gz'.format(version=version)
if not exists('{packages_cache}/{tar_pkg}'.format(tar_pkg=tar_pkg, **env)):
with cd(env.packages_cache):
run('wget http://download.redis.io/releases/{tar_pkg}'.format(tar_pkg=tar_pkg))
run('rm -rf redis-{version}'.format(version=version))
run('tar -xzf {packages_cache}/{tar_pkg}'.format(tar_pkg=tar_pkg, **env))
with cd('redis-{version}'.format(version=version)):
run('make PREFIX={base}'.format(**env))
run('make PREFIX={base} install'.format(**env))
# check install
out = run('which redis-server')
assert out.startswith('{base}/'.format(**env))


@task
def python():
""" compile and install python
Expand Down
6 changes: 4 additions & 2 deletions setup.py
Expand Up @@ -11,6 +11,7 @@
for scheme in INSTALL_SCHEMES.values():
scheme['data'] = scheme['purelib']


def fullsplit(path, result=None):
"""
Split a pathname into components (the opposite of os.path.join) in a
Expand All @@ -26,13 +27,14 @@ def fullsplit(path, result=None):
return fullsplit(head, [tail] + result)


def scan_dir( target, _packages=None, _data_files=None):
def scan_dir(target, _packages=None, _data_files=None):
packages = _packages or []
data_files = _data_files or []
for dir_path, dir_names, file_names in os.walk(target):
# Ignore dir_names that start with '.'
for i, dir_name in enumerate(dir_names):
if dir_name.startswith('.'): del dir_names[i]
if dir_name.startswith('.'):
del dir_names[i]
if '__init__.py' in file_names:
packages.append('.'.join(fullsplit(dir_path)))
elif file_names:
Expand Down

0 comments on commit 964f5d5

Please sign in to comment.