Skip to content

Commit a8ec9cf

Browse files
authored
Merge pull request #3 from arp242/f
Wrap install script in function to ensure it's downloaded fully
2 parents 0a59eae + c6b2e63 commit a8ec9cf

File tree

1 file changed

+42
-38
lines changed

1 file changed

+42
-38
lines changed

install

Lines changed: 42 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -2,41 +2,45 @@
22

33
set -euo pipefail
44

5-
VERSION=1.3.2
6-
INSTALL_PATH=/var/lib
7-
AV_PATH=$INSTALL_PATH/aviary/av
8-
RELEASE_URL=https://gitlab.com/dchester/aviary.sh/-/archive/${VERSION}/aviary.sh-${VERSION}.tar.gz
9-
INVENTORY_GIT_URL=${1:-""}
10-
CONFIG_FILE=${INSTALL_PATH}/aviary/config
11-
12-
# check for git dependency
13-
if ! /usr/bin/which git > /dev/null; then
14-
echo "Please install git and try again"
15-
exit 1
16-
fi
17-
18-
if [[ -z "$INVENTORY_GIT_URL" ]]; then
19-
echo "Installing with no inventory git url; set later in $CONFIG_FILE"
20-
fi
21-
22-
if [[ -e /var/lib/aviary ]]; then
23-
echo "Found existing installation at $INSTALL_PATH; exiting"
24-
exit 1
25-
fi
26-
27-
echo Installing to ${INSTALL_PATH}...
28-
mkdir -p ${INSTALL_PATH}/aviary
29-
curl -s $RELEASE_URL | tar --strip-components=1 -C ${INSTALL_PATH}/aviary -xz
30-
ln -sf /var/lib/aviary/av /usr/bin/av
31-
mkdir -p ${INSTALL_PATH}/aviary/inventory
32-
33-
if [[ ! -z "$INVENTORY_GIT_URL" ]]; then
34-
echo "inventory_git_url=$INVENTORY_GIT_URL" >> $CONFIG_FILE
35-
fi
36-
37-
echo Adding entry to /etc/crontab...
38-
echo "$(cat /etc/crontab | grep -v $AV_PATH)" > /etc/crontab
39-
echo "* * * * * root $AV_PATH directive >> /var/log/aviary-directive.log 2>&1" >> /etc/crontab
40-
echo "$(( RANDOM % 60 )) * * * * root $AV_PATH apply >> /var/log/aviary.log 2>&1" >> /etc/crontab
41-
42-
echo Done
5+
function run() {
6+
VERSION=1.3.2
7+
INSTALL_PATH=/var/lib
8+
AV_PATH=$INSTALL_PATH/aviary/av
9+
RELEASE_URL=https://gitlab.com/dchester/aviary.sh/-/archive/${VERSION}/aviary.sh-${VERSION}.tar.gz
10+
INVENTORY_GIT_URL=${1:-""}
11+
CONFIG_FILE=${INSTALL_PATH}/aviary/config
12+
13+
# check for git dependency
14+
if ! /usr/bin/which git > /dev/null; then
15+
echo "Please install git and try again"
16+
exit 1
17+
fi
18+
19+
if [[ -z "$INVENTORY_GIT_URL" ]]; then
20+
echo "Installing with no inventory git url; set later in $CONFIG_FILE"
21+
fi
22+
23+
if [[ -e /var/lib/aviary ]]; then
24+
echo "Found existing installation at $INSTALL_PATH; exiting"
25+
exit 1
26+
fi
27+
28+
echo Installing to ${INSTALL_PATH}...
29+
mkdir -p ${INSTALL_PATH}/aviary
30+
curl -s $RELEASE_URL | tar --strip-components=1 -C ${INSTALL_PATH}/aviary -xz
31+
ln -sf /var/lib/aviary/av /usr/bin/av
32+
mkdir -p ${INSTALL_PATH}/aviary/inventory
33+
34+
if [[ ! -z "$INVENTORY_GIT_URL" ]]; then
35+
echo "inventory_git_url=$INVENTORY_GIT_URL" >> $CONFIG_FILE
36+
fi
37+
38+
echo Adding entry to /etc/crontab...
39+
echo "$(cat /etc/crontab | grep -v $AV_PATH)" > /etc/crontab
40+
echo "* * * * * root $AV_PATH directive >> /var/log/aviary-directive.log 2>&1" >> /etc/crontab
41+
echo "$(( RANDOM % 60 )) * * * * root $AV_PATH apply >> /var/log/aviary.log 2>&1" >> /etc/crontab
42+
43+
echo Done
44+
}
45+
46+
run # Wrap in function to ensure entire script is downloaded.

0 commit comments

Comments
 (0)