summaryrefslogtreecommitdiff
path: root/tools/setup-centos
blob: bc5da8a75ab9ea8915c763a2286d846edcbc2f88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/bin/sh
# This file is part of cloud-init. See LICENSE file for license information.
set -fux
export LANG=C

packages="
    file
    git
    pyserial
    python-argparse
    python-cheetah
    python-configobj
    python-devel
    python-jinja2
    python-jsonpatch
    python-oauthlib
    python-pip
    python-prettytable
    python-requests
    python-six
    PyYAML
    rpm-build
"

pips="
    contextlib2
    httpretty
    mock
    nose
    pep8
    unittest2
"

error() { echo "$@" 1>&2; }
fail() { [ $# -eq 0 ] || error "$@"; exit 1; }
info() { echo "$@"; }

pips=$(for p in $pips; do echo "$p"; done | sort -u)
packages=$(for p in $packages; do echo "$p"; done | sort -u)

if ! rpm -q epel-release >/dev/null; then
    yum install --assumeyes epel-release ||
        fail "failed: yum install epel-release"
fi
yum install --assumeyes $packages ||
        fail "failed: yum install" "$packages"

pip install --upgrade $pips ||
    fail "failed: pip install $pips"