From e8075accc1ae9d6cd42fbda0ec00f0c394e6bf1b Mon Sep 17 00:00:00 2001 From: WarheadsSE Date: Thu, 21 Jun 2012 18:28:23 -0400 Subject: [PATCH] aur/salt to bypass the python2-msgpack bug on ARM. Using msgpack_pure from pip --- aur/salt/PKGBUILD | 56 ++++++++++++++++++++++++++++++++++++++ aur/salt/salt-master | 63 +++++++++++++++++++++++++++++++++++++++++++ aur/salt/salt-minion | 63 +++++++++++++++++++++++++++++++++++++++++++ aur/salt/salt-syndic | 63 +++++++++++++++++++++++++++++++++++++++++++ aur/salt/salt.install | 12 +++++++++ 5 files changed, 257 insertions(+) create mode 100644 aur/salt/PKGBUILD create mode 100644 aur/salt/salt-master create mode 100644 aur/salt/salt-minion create mode 100644 aur/salt/salt-syndic create mode 100644 aur/salt/salt.install diff --git a/aur/salt/PKGBUILD b/aur/salt/PKGBUILD new file mode 100644 index 000000000..00dafd683 --- /dev/null +++ b/aur/salt/PKGBUILD @@ -0,0 +1,56 @@ +# Maintainer: Christer Edwards +# Contributor: Jason Plum + +pkgname=salt +pkgver=0.10.0 +pkgrel=1 +plugrel=1 +pkgdesc="A remote execution and communication system built on zeromq" +arch=(any) +url="https://github.com/saltstack/salt" +license=("APACHE") +depends=('python2' + 'python2-pyzmq' + 'python-m2crypto' + 'python2-yaml' + 'pycrypto' + 'python2-psutil' + 'python2-jinja') +# 'python2-msgpack') + +backup=('etc/salt/master.template' + 'etc/salt/minion.template') + +makedepends=() +optdepends=() +options=() +conflicts=('salt-git') +install=salt.install + +source=("https://github.com/downloads/saltstack/salt/${pkgname}-${pkgver}.tar.gz" + "salt-master" + "salt-syndic" + "salt-minion" + "salt.install") + +md5sums=('fc99b188b599729572fc744c9fffc8c7' + '1594591acb0a266854186a694da21103' + '09683ef4966e401761f7d2db6ad4b692' + '21ab2eac231e9f61bf002ba5f16f8a3d' + 'eb0556c5b0e4e62f65a2ae459c2ec25d') + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + + python2 setup.py install --root=${pkgdir}/ --optimize=1 + + mkdir -p ${pkgdir}/etc/rc.d/ + cp ${srcdir}/salt-master ${pkgdir}/etc/rc.d/ + cp ${srcdir}/salt-minion ${pkgdir}/etc/rc.d/ + cp ${srcdir}/salt-syndic ${pkgdir}/etc/rc.d/ + chmod +x ${pkgdir}/etc/rc.d/* + + mkdir -p ${pkgdir}/etc/salt/ + cp ${srcdir}/${pkgname}-${pkgver}/conf/master.template ${pkgdir}/etc/salt/ + cp ${srcdir}/${pkgname}-${pkgver}/conf/minion.template ${pkgdir}/etc/salt/ +} diff --git a/aur/salt/salt-master b/aur/salt/salt-master new file mode 100644 index 000000000..443bef6ae --- /dev/null +++ b/aur/salt/salt-master @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name='salt-master' + +. /etc/rc.conf +. /etc/rc.d/functions +[ -f /etc/conf.d/$daemon_name ] && . /etc/conf.d/$daemon_name + +get_pid() { + ps aux | grep -v grep | grep '/usr/bin/python2 /usr/bin/salt-master' | awk '{print $2}' +} + +case "$1" in + start) + stat_busy "Starting Salt Master" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid + # RUN + /usr/bin/$daemon_name -d + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > /var/run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Salt Master" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f /var/run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 diff --git a/aur/salt/salt-minion b/aur/salt/salt-minion new file mode 100644 index 000000000..3e1fec4e4 --- /dev/null +++ b/aur/salt/salt-minion @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name='salt-minion' + +. /etc/rc.conf +. /etc/rc.d/functions +[ -f /etc/conf.d/$daemon_name ] && . /etc/conf.d/$daemon_name + +get_pid() { + ps aux | grep -v grep | grep '/usr/bin/python2 /usr/bin/salt-minion' | awk '{print $2}' +} + +case "$1" in + start) + stat_busy "Starting Salt Minion" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid + # RUN + /usr/bin/$daemon_name -d + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > /var/run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Salt Minion" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f /var/run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 diff --git a/aur/salt/salt-syndic b/aur/salt/salt-syndic new file mode 100644 index 000000000..e2688cff8 --- /dev/null +++ b/aur/salt/salt-syndic @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name='salt-syndic' + +. /etc/rc.conf +. /etc/rc.d/functions +[ -f /etc/conf.d/$daemon_name ] && . /etc/conf.d/$daemon_name + +get_pid() { + ps aux | grep -v grep | grep '/usr/bin/python2 /usr/bin/salt-syndic' | awk '{print $2}' +} + +case "$1" in + start) + stat_busy "Starting Salt Syndic" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid + # RUN + /usr/bin/$daemon_name -d + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > /var/run/$daemon_name.pid + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Salt Syndic" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f /var/run/$daemon_name.pid &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 diff --git a/aur/salt/salt.install b/aur/salt/salt.install new file mode 100644 index 000000000..23903d8eb --- /dev/null +++ b/aur/salt/salt.install @@ -0,0 +1,12 @@ +# there is a problem with python2-msgpack on ARM. +# msgpack_pure works but we'll need to just make sure it upgrades. +post_install() { + pip2 install msgpack_pure --upgrade +} + +post_upgrade() { + post_install +} + + +