[Piuparts-commits] [SCM] piuparts git repository branch, piatti, updated. 0.45-7-gb99b28e
Andreas Beckmann
debian at abeckmann.de
Sat Jun 23 08:18:26 UTC 2012
The following commit has been merged in the piatti branch:
commit 0574cf73ef1325fdcdb50c96cb0d5e891ee9a28e
Author: Andreas Beckmann <debian at abeckmann.de>
Date: Fri Jun 22 08:52:19 2012 +0200
update-piuparts-setup: use Makefile for installation
Simplify running piuparts from GIT: use
make install prefix=... htdocsdir=... docdir=...
to install everything into PIUPARTS_PREFIX, no more manual copying
from git checkout.
* make ~/piupart[ms]/bin links to PIUPARTS_PREFIX/share/piuparts/ROLE
* copy .forward from PIUPARTS_PREFIX/etc/piuparts/forward-ROLE
* run the crontabs from PIUPARTS_PREFIX/etc/piuparts/crontab-ROLE
NOTE: Configuration now resides in PIUPARTS_PREFIX/etc/piuparts
instead of PIUPARTS_PREFIX/etc
Update your /etc/piuparts link!
Signed-off-by: Andreas Beckmann <debian at abeckmann.de>
diff --git a/Makefile b/Makefile
index ef68c6d..3ff522b 100644
--- a/Makefile
+++ b/Makefile
@@ -58,6 +58,15 @@ install-conf:
install -d $(etcdir)/piuparts/scripts
install org/piuparts.debian.org/etc/scripts/* $(etcdir)/piuparts/scripts
+install-conf-4-running-from-git:
+ install -d $(DESTDIR)$(etcdir)/piuparts
+ install -m 0644 home/piupartsm/crontab $(DESTDIR)$(etcdir)/piuparts/crontab-master
+ install -m 0644 home/piupartss/crontab $(DESTDIR)$(etcdir)/piuparts/crontab-slave
+ install -m 0644 home/piupartsm/.forward $(DESTDIR)$(etcdir)/piuparts/forward-master
+ install -m 0644 home/piupartss/.forward $(DESTDIR)$(etcdir)/piuparts/forward-slave
+ install -m 0644 org/piuparts.debian.org/etc/piuparts.conf.* $(DESTDIR)$(etcdir)/piuparts/
+ cp -a org/piuparts.debian.org/etc/scripts* $(etcdir)/piuparts
+
build:
for file in piuparts piuparts-slave piuparts-master piuparts-report piuparts-analyze; do \
sed -e 's/__PIUPARTS_VERSION__/$(version)/g' $$file.py > $$file ; done
@@ -80,6 +89,9 @@ install:
for fl in home/piupartsm/bin/* ; do\
if [ -f $$fl ] ; then install $$fl $(sharedir)/piuparts/master ; fi ; done
+ install -d $(DESTDIR)$(sharedir)/piuparts/master/known_problems
+ install -m 0644 home/piupartsm/bin/known_problems/*.conf $(DESTDIR)$(sharedir)/piuparts/master/known_problems/
+
install -d $(sharedir)/piuparts/slave
cp -r home/piupartss/bin/* $(sharedir)/piuparts/slave
diff --git a/README_piatti.txt b/README_piatti.txt
index 7cfaced..d23fff4 100644
--- a/README_piatti.txt
+++ b/README_piatti.txt
@@ -32,7 +32,7 @@ piupartss ALL=(ALL) NOPASSWD: ALL
* you need a webserver too, if you run the master
* Copy 'http://anonscm.debian.org/gitweb/?p=piuparts/piuparts.git;hb=piatti;a=blob_plain;f=home/piupartss/bin/update-piuparts-setup' on the host and run it under the 'piupartss' user. It assumes you want to set it up in '/org/piuparts.debian.org' and does all further updates from git as well as the initial installation. It needs the piupartss and piupartsm user set up as described below, though.
* mkdir /org/piuparts.debian.org
-* sudo ln -s /org/piuparts.debian.org/etc/ /etc/piuparts
+* sudo ln -s /org/piuparts.debian.org/etc/piuparts /etc/piuparts
=== Apache configuration
diff --git a/TODO b/TODO
index e8bc8b2..e57a644 100644
--- a/TODO
+++ b/TODO
@@ -13,10 +13,6 @@ for 0.46:
org/piuparts.debian.org/htdocs/* ==> htdocs/
org/piuparts.debian.org/etc/piuparts.conf.* ==> ???
-- simplify update-piuparts-setup,
- use the Makefile,
- don't install files in user homes, just put a single bin link if needed
-
- make piuparts-master + piuparts-slave packages work out-of-the-box
- ship sane minimal sudoers in p-s.deb than can be enabled by default
diff --git a/debian/changelog b/debian/changelog
index a0cd697..de9117e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,7 +1,11 @@
piuparts (0.46) UNRELEASED; urgency=low
+ [ Holger Levsen ]
* enjoy!
+ [ Andreas Beckmann ]
+ * Simplify running piuparts from GIT.
+
-- Holger Levsen <holger at debian.org> Thu, 21 Jun 2012 22:25:57 +0200
piuparts (0.45) unstable; urgency=low
diff --git a/home/piupartss/bin/update-piuparts-setup b/home/piupartss/bin/update-piuparts-setup
index a26b95b..329a0af 100755
--- a/home/piupartss/bin/update-piuparts-setup
+++ b/home/piupartss/bin/update-piuparts-setup
@@ -39,27 +39,25 @@ fi
#
# create $PIUPARTS_PREFIX
#
-if [ ! -d $PIUPARTS_PREFIX/ ] ; then
- sudo mkdir -p $PIUPARTS_PREFIX/
- sudo chown piupartss:piuparts $PIUPARTS_PREFIX/
- sudo chmod 775 $PIUPARTS_PREFIX/
+if [ ! -d $PIUPARTS_PREFIX ] ; then
+ sudo mkdir -p $PIUPARTS_PREFIX
+ sudo chown piupartss:piuparts $PIUPARTS_PREFIX
+ sudo chmod 0775 $PIUPARTS_PREFIX
fi
#
# update source
#
-if [ ! -d $PIUPARTS_PREFIX/src/ ] ; then
- sudo mkdir -p $PIUPARTS_PREFIX/src/
- cd $PIUPARTS_PREFIX/src/
- sudo chown piupartss:piuparts $PIUPARTS_PREFIX/src
- sudo chmod 755 $PIUPARTS_PREFIX/src
+if [ ! -d $PIUPARTS_PREFIX/src ] ; then
+ mkdir -p $PIUPARTS_PREFIX/src
+ chmod 0755 $PIUPARTS_PREFIX/src
+ cd $PIUPARTS_PREFIX/src
git clone git://git.debian.org/git/piuparts/piuparts.git
cd piuparts
- git checkout piatti
+ git checkout develop
fi
cd $PIUPARTS_PREFIX/src/piuparts
pwd
-SRCDIR=$(pwd)
# git checkout branch if $1 is given
if [ ! -z "$1" ] ; then
git checkout $1
@@ -71,50 +69,58 @@ if [ ! -z "$2" ] ; then
git pull $2 $1
fi
-sudo make prefix=$PIUPARTS_PREFIX docdir=$PIUPARTS_HTDOCS/doc install install-doc
+#
+# install everything from GIT into PIUPARTS_PREFIX
+#
+make build build-doc
+sudo make prefix=$PIUPARTS_PREFIX \
+ docdir=$PIUPARTS_HTDOCS/doc \
+ htdocsdir=$PIUPARTS_HTDOCS \
+ install install-doc install-conf-4-running-from-git
+make clean
#
# create working dir
#
-sudo mkdir -p $PIUPARTS_TEMPDIR
+mkdir -p $PIUPARTS_TEMPDIR
#
-# update slave home, mostly scripts
+# update slave home
#
cd
-cp -r $SRCDIR/home/piupartss/* .
-cp -r $SRCDIR/home/piupartss/.forward .
pwd
-crontab crontab
+test ! -L bin || rm bin
+test ! -d bin || mv bin bin.old
+ln -sf $PIUPARTS_PREFIX/share/piuparts/slave bin
+cp $PIUPARTS_PREFIX/etc/piuparts/forward-slave .forward
+crontab $PIUPARTS_PREFIX/etc/piuparts/crontab-slave
#
-# update master home, that's mostly crontab to run piuparts-reports
+# update master home
#
-# this is done as piupartsm user, as else ~piupartsm needs to be writeable
-# by the group, which prevents ssh logins...
-#
-cd ~piupartsm
-
-sudo su - piupartsm -c "cp -r $SRCDIR/home/piupartsm/* . ; cp -ax $SRCDIR/home/piupartsm/.forward ."
-sudo su - piupartsm -c "crontab crontab"
-
+ssh piupartsm at localhost "
+set -e
+test ! -L bin || rm bin
+test ! -d bin || mv bin bin.old
+ln -sf $PIUPARTS_PREFIX/share/piuparts/master bin
+cp $PIUPARTS_PREFIX/etc/piuparts/forward-master .forward
+crontab $PIUPARTS_PREFIX/etc/piuparts/crontab-master
+"
#
# update $PIUPARTS_PREFIX
#
-cd $PIUPARTS_PREFIX/
+cd $PIUPARTS_PREFIX
pwd
-cp -r $SRCDIR/org/piuparts.debian.org/* .
mkdir -p master slave backup
sudo chown piupartss:piuparts slave
sudo chown piupartsm:piuparts master htdocs backup
-sudo chmod 775 master slave htdocs
-# create tango links
-sudo ln -sf /usr/share/icons/Tango/24x24/status/sunny.png htdocs/images/sunny.png
-sudo ln -sf /usr/share/icons/Tango/24x24/status/weather-severe-alert.png htdocs/images/weather-severe-alert.png
-# to support multiple host with this setup
+# to support multiple hosts with this setup
HOSTNAME=`hostname`
-cd $PIUPARTS_PREFIX/etc
+cd $PIUPARTS_PREFIX/etc/piuparts
+pwd
+sudo chown piupartss:piuparts . piuparts.conf.*
+chmod 0664 piuparts.conf.*
ln -sf piuparts.conf.$HOSTNAME piuparts.conf
-
+echo "Update finished."
--
piuparts git repository
More information about the Piuparts-commits
mailing list