summaryrefslogtreecommitdiff
path: root/tools/read-dependencies
blob: 4c88aa873d01e1a21dda46732531cb65d8b2475d (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
#!/bin/sh

set -e

find_root() {
   local topd
   if [ -z "${CLOUD_INIT_TOP_D}" ]; then
      topd=$(cd "$(dirname "${0}")" && cd .. && pwd)
   else
      topd=$(cd "${CLOUD_INIT_TOP_D}" && pwd)
   fi
   [ $? -eq 0 -a -f "${topd}/setup.py" ] || return
   ROOT_DIR="$topd"
}

if ! find_root; then
    echo "Unable to locate 'setup.py' file that should" \
          "exist in the cloud-init root directory." 1>&2
    exit 1;
fi

REQUIRES="$ROOT_DIR/Requires"

if [ ! -e "$REQUIRES" ]
then
    echo "Unable to find 'Requires' file located at $REQUIRES"
    exit 1
fi

# Filter out comments and empty liens
DEPS=$(cat $REQUIRES | grep -Pv "^\s*#" | grep -Pv '^\s*$')
echo "$DEPS" | sort -d -f