Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /bin/sh
- set -e
- td_agent_dir=/opt/td-agent
- prevver="$2"
- add_system_user() {
- if ! getent passwd td-agent >/dev/null; then
- adduser --group --system --no-create-home td-agent
- fi
- }
- add_directories() {
- mkdir -p /var/run/td-agent
- mkdir -p /etc/td-agent
- mkdir -p /etc/td-agent/plugin
- mkdir -p /var/log/td-agent
- }
- fixperms() {
- dpkg-statoverride --list /var/run/td-agent >/dev/null || \
- dpkg-statoverride --update --add td-agent td-agent 0755 /var/run/td-agent
- dpkg-statoverride --list /etc/td-agent >/dev/null || \
- dpkg-statoverride --update --add td-agent td-agent 0755 /etc/td-agent
- dpkg-statoverride --list /var/log/td-agent >/dev/null || \
- dpkg-statoverride --update --add td-agent td-agent 0755 /var/log/td-agent
- }
- update_conffile() {
- CONFFILE="$1"
- TMPL="$2"
- if [ -e "$CONFFILE" ]; then
- md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`"
- old_md5sum="`sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $TMPL'{s/.* //;p}}\" /var/lib/dpkg/status`"
- if [ -z "$old_md5sum" ]; then
- # backward compatibility
- old_md5sum="`sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $CONFFILE'{s/.* //;p}}\" /var/lib/dpkg/status`"
- fi
- if [ "$md5sum" != "$old_md5sum" ]; then
- echo "Conffile $CONFFILE has been modified. Remain untouched."
- # do nothing
- else
- echo "Updating conffile $CONFFILE ..."
- cp -f "$TMPL" "$CONFFILE"
- fi
- else
- echo "Installing default conffile $CONFFILE ..."
- cp -f "$TMPL" "$CONFFILE"
- fi
- # 2011/11/13 Kazuki Ohta <k@treasure-data.com>
- # Before td-agent v1.1.0, fluentd has a bug of loading plugin before
- # changing to the right user. Then, these directories were created with
- # root permission. The following lines fix that problem.
- if [ -d "/var/log/td-agent/buffer/" ]; then
- chown -R td-agent:td-agent /var/log/td-agent/buffer/
- fi
- if [ -d "/tmp/td-agent/" ]; then
- chown -R td-agent:td-agent /tmp/td-agent/
- fi
- }
- case "$1" in
- configure)
- add_system_user
- add_directories
- fixperms
- update_conffile /etc/td-agent/td-agent.conf ${td_agent_dir}/etc/td-agent/td-agent.conf.tmpl
- ;;
- abort-upgrade|abort-deconfigure|abort-remove)
- :
- ;;
- *)
- echo "Called with unknown argument $1, bailing out."
- exit 1
- ;;
- esac
- cp -f ${td_agent_dir}/etc/init.d/td-agent /etc/init.d/td-agent
- cp -f ${td_agent_dir}/usr/sbin/td-agent /usr/sbin/td-agent
- chmod 755 /usr/sbin/td-agent
- cp -f ${td_agent_dir}/usr/sbin/td-agent-gem /usr/sbin/td-agent-gem
- chmod 755 /usr/sbin/td-agent-gem
- cp -f ${td_agent_dir}/usr/bin/td /usr/bin/td
- chmod 755 /usr/bin/td
- if [ ! -e "/etc/default/td-agent" ]; then
- cat > /etc/default/td-agent <<EOF
- # This file is sourced by /bin/sh from /etc/init.d/td-agent
- # Options to pass to td-agent
- DAEMON_ARGS=""
- EOF
- fi
- #DEBHELPER#
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement