#!/bin/bash set -eu ## This script should die: https://bugs.launchpad.net/tripleo/+bug/1195046. BASE=$(dirname $0)/.. # make the local id_rsa.pub be in .ssh/authorized_keys before that is copied # into images via local-config if ! grep "$(cat ~/.ssh/id_rsa.pub)" ~/.ssh/authorized_keys >/dev/null; then cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys fi # packages os=unsupported if [ -f /etc/redhat-release ]; then if `grep -Eqs 'Red Hat Enterprise Linux Server release 6|CentOS release 6' /etc/redhat-release`; then if [ -f /etc/yum.repos.d/epel.repo ]; then echo EPEL repository is required to install python-pip for RHEL/CentOS. echo See http://fedoraproject.org/wiki/EPEL exit 1 fi fi os=redhat fi if [ -f /etc/debian_version ]; then os=debian fi if [ "$os" = "unsupported" ]; then echo This script has not been tested outside of Fedora, RHEL, and Ubuntu variants. echo Aborting. fi if [ "$os" = "debian" ]; then # packages sudo apt-get update DEBIAN_FRONTEND=noninteractive sudo apt-get install --yes python-lxml python-libvirt libvirt-bin qemu-utils qemu-system qemu-kvm git python-pip python-dev gcc python-virtualenv openvswitch-switch libssl-dev curl python-yaml sudo service libvirt-bin restart fi if [ "$os" = "redhat" ]; then # For RHEL/CentOS, python-pip is in EPEL sudo yum install -y python-lxml libvirt-python libvirt qemu-img qemu-kvm git python-pip openssl-devel python-devel gcc audit python-virtualenv openvswitch python-yaml sudo service libvirtd restart sudo service openvswitch restart fi $BASE/scripts/setup-clienttools # libvirtd group grep libvirtd /etc/group || sudo groupadd libvirtd if ! id | grep libvirtd; then echo "adding $USER to group libvirtd" sudo usermod -a -G libvirtd $USER if [ "$os" = "redhat" ]; then libvirtd_file=/etc/libvirt/libvirtd.conf if ! sudo grep "^unix_sock_group" $libvirtd_file > /dev/null; then sudo sed -i 's/^#unix_sock_group.*/unix_sock_group = "libvirtd"/g' $libvirtd_file sudo sed -i 's/^#auth_unix_rw.*/auth_unix_rw = "none"/g' $libvirtd_file sudo sed -i 's/^#unix_sock_rw_perms.*/unix_sock_rw_perms = "0770"/g' $libvirtd_file sudo service libvirtd restart fi fi exec sudo su -l $USER $0 fi echo "Check to see that you are in the libvirtd group in your current shell before going on. You can check by running:" echo echo "id | grep libvirtd" echo echo "If you are not, it's because this script added you. You can pick up the group by logging out and back in, or run:" echo echo "sudo su -l $USER"