Installation
You may need to install pip first. This can be accomplished through your distribution's package manager, e.g.:
aptitude install python-pip
or the manual instructions.Using pip
It's as simple as:
pip install bundlewrap
Note that you need at least Python 2.7 to run BundleWrap. Python 3 is supported as long as it's >= 3.3.
From git
This type of install will give you the very latest (and thus possibly broken) bleeding edge version of BundleWrap.
You should only use this if you know what you're doing.
The instructions below are for installing on Ubuntu Server 12.10 (Quantal), but should also work for other versions of Ubuntu/Debian. If you're on some other distro, you will obviously have to adjust the package install commands.
The instructions assume you have root privileges.
Install basic requirements:
aptitude install build-essential git python-dev python-pip
Clone the GitHub repository:
cd /opt
git clone https://github.com/bundlewrap/bundlewrap.git
Use pip install -e
to install in "development mode":
pip install -e /opt/bundlewrap
You can now try running the bw
command line utility::
bw --help
That's it.
To update your install, just pull the git repository and have setup.py` check for new dependencies:
cd /opt/bundlewrap
git pull
python setup.py develop
Requirements for managed systems
While the following list might appear long, even very minimal systems should provide everything that's needed.
apt-get
(only used with pkg_apt items)bash
cat
chmod
chown
dpkg
(only used with pkg_apt items)echo
file
grep
groupadd
groupmod
id
initctl
(only used with svc_upstart items)mkdir
mv
pacman
(only used with pkg_pacman items)rm
- sftp-enabled SSH server (your home directory must be writable)
sudo
sha1sum
stat
systemctl
(only used with svc_systemd items)useradd
usermod
Additionally, you need to pre-configure your SSH client so that it can connect to your nodes without having to type a password (including sudo
on the node, which also must not have the requiretty
option set).