4 # shellcheck disable=SC1091
6 # shellcheck disable=SC1091
9 # sudo apt install -y libselinux-utils
10 # if selinuxenabled ; then
11 # sudo setenforce permissive
12 # sudo sed -i "s/=enforcing/=permissive/g" /etc/selinux/config
15 # Update to latest packages first
18 # Install EPEL required by some packages
19 # if [ ! -f /etc/yum.repos.d/epel.repo ] ; then
20 # if grep -q "Red Hat Enterprise Linux" /etc/redhat-release ; then
21 # sudo yum -y install http://mirror.centos.org/centos/7/extras/x86_64/Packages/epel-release-7-11.noarch.rpm
23 # sudo yum -y install epel-release --enablerepo=extras
27 # Work around a conflict with a newer zeromq from epel
28 # if ! grep -q zeromq /etc/yum.repos.d/epel.repo; then
29 # sudo sed -i '/enabled=1/a exclude=zeromq*' /etc/yum.repos.d/epel.repo
32 # Install required packages
52 if [[ $(cat ~/.bashrc) != *PYENV_ROOT* ]]; then
53 if ! [ -d "$HOME/.pyenv" ] ; then
54 git clone git://github.com/yyuu/pyenv.git ~/.pyenv
56 # shellcheck disable=SC2016
57 # shellcheck disable=SC2129
58 echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
59 # shellcheck disable=SC2016
60 echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
61 # shellcheck disable=SC2016
62 echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bashrc
65 if [[ $PATH != *pyenv* ]]; then
66 export PYENV_ROOT="$HOME/.pyenv"
67 export PATH="$PYENV_ROOT/bin:$PATH"
68 if command -v pyenv 1>/dev/null 2>&1; then
69 eval "$(pyenv init -)"
73 pyenv install -s 2.7.5
76 # There are some packages which are newer in the tripleo repos
78 # Setup yarn and nodejs repositories
79 #sudo curl -sL https://dl.yarnpkg.com/rpm/yarn.repo -o /etc/yum.repos.d/yarn.repo
80 curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
81 #curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
82 echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
84 # Add this repository to install podman
85 sudo add-apt-repository -y ppa:projectatomic/ppa
86 # Add this repository to install Golang 1.12
87 sudo add-apt-repository -y ppa:longsleep/golang-backports
89 # Update some packages from new repos
92 # make sure additional requirments are installed
94 ##No bind-utils. It is for host, nslookop,..., no need in ubuntu
100 libvirt-bin libvirt-clients libvirt-dev \
101 python-ironicclient \
102 python-ironic-inspector-client \
110 if [[ "${CONTAINER_RUNTIME}" == "podman" ]]; then
111 sudo apt -y install podman
113 sudo apt -y install \
114 apt-transport-https \
117 software-properties-common
118 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
119 sudo add-apt-repository \
120 "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
124 sudo apt install -y docker-ce docker-ce-cli containerd.io
125 sudo systemctl start docker
128 # Install python packages not included as rpms
134 python-ironicclient \
135 python-ironic-inspector-client \
140 libvirt-python==5.7.0 \