master
sh 62 lines 2.22 KB
Raw
1 #!/usr/bin/env bash
2 # SPDX-License-Identifier: GPL-3.0-or-later
3
4 # shellcheck source=packaging/makeself/functions.sh
5 . "$(dirname "${0}")/../functions.sh" "${@}" || exit 1
6
7 # shellcheck disable=SC2015
8 [ "${GITHUB_ACTIONS}" = "true" ] && echo "::group::Preparing installation paths for archive creation" || true
9
10 run cd "${NETDATA_SOURCE_PATH}" || exit 1
11
12 # -----------------------------------------------------------------------------
13 # copy the files needed by makeself installation
14
15 run mkdir -p "${NETDATA_INSTALL_PATH}/system"
16
17 run cp \
18 packaging/makeself/post-installer.sh \
19 packaging/makeself/install-or-update.sh \
20 packaging/installer/functions.sh \
21 "${NETDATA_INSTALL_PATH}/system/"
22
23 # -----------------------------------------------------------------------------
24 # create a wrapper to start our netdata with a modified path
25
26 run mkdir -p "${NETDATA_INSTALL_PATH}/bin/srv"
27
28 run mv "${NETDATA_INSTALL_PATH}/bin/netdata" \
29 "${NETDATA_INSTALL_PATH}/bin/srv/netdata" || exit 1
30
31 cat > "${NETDATA_INSTALL_PATH}/bin/netdata" << EOF
32 #!${NETDATA_INSTALL_PATH}/bin/bash
33 export NETDATA_BASH_LOADABLES="DISABLE"
34 export PATH="${NETDATA_INSTALL_PATH}/bin:\${PATH}"
35 exec "${NETDATA_INSTALL_PATH}/bin/srv/netdata" "\${@}"
36 EOF
37 run chmod 755 "${NETDATA_INSTALL_PATH}/bin/netdata"
38
39 # -----------------------------------------------------------------------------
40 # the claiming script must be in the same directory as the netdata binary for web-based claiming to work
41
42 run ln -s "${NETDATA_INSTALL_PATH}/bin/netdata-claim.sh" \
43 "${NETDATA_INSTALL_PATH}/bin/srv/netdata-claim.sh" || exit 1
44
45 # -----------------------------------------------------------------------------
46 # remove the links to allow untaring the archive
47
48 run rm "${NETDATA_INSTALL_PATH}/sbin" \
49 "${NETDATA_INSTALL_PATH}/usr/bin" \
50 "${NETDATA_INSTALL_PATH}/usr/sbin" \
51 "${NETDATA_INSTALL_PATH}/usr/local"
52
53 # -----------------------------------------------------------------------------
54 # ensure required directories actually exist
55
56 for dir in var/lib/netdata var/cache/netdata var/log/netdata ; do
57 run mkdir -p "${NETDATA_INSTALL_PATH}/${dir}"
58 run touch "${NETDATA_INSTALL_PATH}/${dir}/.keep"
59 done
60
61 # shellcheck disable=SC2015
62 [ "${GITHUB_ACTIONS}" = "true" ] && echo "::endgroup::" || true