Subversion Repositories HomeAutomation

Rev

Rev 1672 | Rev 1682 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1. #!/bin/bash
  2.  
  3. ATOMDIR=/tmp/atomppa
  4. SVNURL=http://svn.arune.se/svn/HomeAutomation/trunk/PcSoftware/Atom1.5
  5. SVNURLCNF=http://svn.arune.se/svn/HomeAutomation/trunk/Configuration
  6. SVNDIR=AtomSvn
  7. SVNDIRCNF=ConfigSvn
  8. CNFDIR=Configuration
  9. REVFILE=./AtomSvnRev
  10. PPA=ppa:arune/auml-atom-daily
  11. DEBUILDFLG="-S -sa -k7EA270B4"
  12. PKGNAME=atom
  13. DIST=maverick
  14. PKGMAINT="Anders Runeson <runeson@gmail.com>"
  15.  
  16. RUNDIR=`dirname $0`
  17. CHLOGDATE=`date -R`
  18.  
  19. CURRREV=`svn info $SVNURL |grep '^Revision:' | sed -e 's/^Revision: //'`
  20. VERSION=1.5.$CURRREV
  21. NOSVNDIR=atom-$VERSION
  22. ORIGTAR=atom_$VERSION.orig.tar.gz
  23. SRCCHFILE=atom_$VERSION\_source.changes
  24. DPUTFLG="auml-atom-daily $SRCCHFILE"
  25.  
  26. #echo $RUNDIR
  27. #exit 0
  28.  
  29. # Run script from cron every hour
  30. # script will check revision of Atom in SVN and if there is a new version the script will
  31. # download it and create a complete debian source package and upload to launchpad as a ppa
  32.  
  33.  
  34. #temporary during development of script
  35. rm -rf $ATOMDIR
  36. rm $REVFILE
  37.  
  38. # Check if script is already running
  39. if [ -d $ATOMDIR ]; then
  40.   echo "Error: Already running?"
  41.   exit 1
  42. fi
  43.  
  44. if [ -e $REVFILE ]; then
  45.   # If revision file exists, check current revision
  46.   OLDREV=`cat $REVFILE`
  47.   if [ "$CURRREV" -le "$OLDREV" ]; then
  48.     echo "Error: No new svn revision."
  49.     exit 1
  50.   fi
  51. fi
  52.  
  53. mkdir $ATOMDIR
  54.  
  55. # Checkout atom and configuration
  56. svn co $SVNURL $ATOMDIR/$SVNDIR
  57. svn co $SVNURLCNF $ATOMDIR/$SVNDIRCNF
  58.  
  59. # Export atom to get rid of .svn subfolders
  60. svn export $ATOMDIR/$SVNDIR $ATOMDIR/$NOSVNDIR
  61. # Copy configuration folder
  62. svn export $ATOMDIR/$SVNDIRCNF $ATOMDIR/$NOSVNDIR/$CNFDIR
  63.  
  64. # Change install-target for data.xml file in CMakeList.txt
  65. cat $ATOMDIR/$NOSVNDIR/CMakeLists.txt | sed -e 's/\/..\/..\/Configuration\/data.xml/\/Configuration\/data.xml/' > $ATOMDIR/$NOSVNDIR/CMakeLists.txt
  66.  
  67. # Create change log file
  68. #SVNLOG=`svn log -r $CURRREV $SVNURL`
  69. ###################################################################### TODO!!!
  70. echo "$PKGNAME ($VERSION) $DIST; urgency=low" > $ATOMDIR/$NOSVNDIR/debian/changelog
  71. echo "" >> $ATOMDIR/$NOSVNDIR/debian/changelog
  72. echo "  * TODO: Add this log from SVN change log" >> $ATOMDIR/$NOSVNDIR/debian/changelog
  73. echo "" >> $ATOMDIR/$NOSVNDIR/debian/changelog
  74. echo " -- $PKGMAINT  $CHLOGDATE" >> $ATOMDIR/$NOSVNDIR/debian/changelog
  75.  
  76. # Create orig tar gz
  77. tar -zcf $ATOMDIR/$ORIGTAR $ATOMDIR/$NOSVNDIR
  78.  
  79. # Create source package with debuild
  80. #cd $ATOMDIR/$NOSVNDIR
  81. #debuild $DEBUILDFLG
  82. echo cd $ATOMDIR/$NOSVNDIR
  83. echo debuild $DEBUILDFLG
  84.  
  85. # Upload to launchpad with dput
  86. #cd $ATOMDIR
  87. #dput $DPUTFLG
  88. echo cd $ATOMDIR
  89. echo dput $DPUTFLG
  90. # Requires ubuntu 9.10 or newer
  91. #dput $PPA $SRCCHFILE
  92.  
  93. #echo "the end $RUNDIR"
  94.  
  95. # Remove all temporary files
  96. #rm -rf $ATOMDIR
  97.  
  98. # Write the current svn revision to file
  99. echo -n $CURRREV > $RUNDIR/$REVFILE
  100.  
  101. cd $RUNDIR
  102.