Upgrade 3.10 to 3.10.2 in place

Dump the following logic into a file called something like svnrelocate.sh and save it at the top of the quickstart.  Then

      $ bash svnrelocate.sh 3.10.2

It should repoint your local Bedework projects at the 3.10.2 repos and bring them up to date.

 

version=$1
for x in \
access bedenote bedework-carddav bedework bwannotations \
bwcalcore bwcaldav bwcalFacade bwdeployutil bwical bwinterfaces bwsysevents bwtools bwtzsvr bwwebapps bwxml \
caldav dumprestore eventreg indexer MonitorApp rpiutil selfreg synch webdav ; do  
 cd $x
 echo doing $x
 if [ $x = "bedework-carddav" ] ; then
   svn switch https://dev.bedework.org/svn/carddav/releases/bedework-$version
 elif [ $x = "bwcalFacade" ] ; then
   svn switch https://dev.bedework.org/svn/bwcalfacade/releases/bedework-$version
 elif [ $x = "MonitorApp" ] ; then
   svn switch https://dev.bedework.org/svn/monitor/releases/bedework-$version
 else
   svn switch https://dev.bedework.org/svn/$x/releases/bedework-$version
 fi
 cd ..
done

 

NOTE: if any of the svn switch commands fail because they are pointing at www instead of dev, you can fix with svn relocate.

Once that's sorted:

  1. backup your bwdeploy directory.  If the upgrade doesn't work, you can revert easily.

  2. stop bedework

  3. ./bw deploy

  4. ./bw -synch

  5. ./bw deployEs

  6. start bedework

  7. reindex

  8. update admin client -- The 3.10 admin client won't work.

  9. recreate any external subscriptions

  10. If, when you recreate the external subscriptions, you ask the system to manage locations, then you'll need to update the logic that displays the location to pull it from the x-property where it is stuffed.   In the public client, look at the logic in widgetEventList.xsl and event.xsl:   In the feeder, to fix the rss feed, edit list-rss.xsl and to fix the json feed, edit jsonEvent.xsl.

    The basic logic you'll need to incorporate (which will have to be adapted a bit, especially in jsonEvent.xsl):

     

    <xsl:choose>
      <xsl:when test="location/address = ''">
        <xsl:value-of select="xproperties/node()[name()='X-BEDEWORK-LOCATION']/values/text"/>
      </xsl:when>
      <xsl:when test="location/link=''">
        <xsl:value-of select="location/address" />
        <xsl:text> </xsl:text>
        <xsl:if test="location/subaddress!=''">
          <xsl:text> </xsl:text>
          <xsl:value-of select="location/subaddress" />
        </xsl:if>
      </xsl:when>
      <xsl:otherwise>
        <a>
          <xsl:attribute name="href"><xsl:value-of select="location/link"/></xsl:attribute>
          <xsl:value-of select="location/address"/>
          <xsl:if test="location/subaddress!=''">
            <xsl:text> </xsl:text>
            <xsl:value-of select="location/subaddress" />
          </xsl:if>
        </a>
      </xsl:otherwise>
    </xsl:choose>

     





        







Bedework Enterprise Calendar Server, version 3.10