File:  [LON-CAPA] / doc / build / Attic / cvsupgrade.html
Revision 1.8: download - view: text, annotated - select for diffs
Tue Nov 27 23:00:01 2001 UTC (22 years, 6 months ago) by harris41
Branches: MAIN
CVS tags: version_0_6_2, version_0_6, version_0_5_1, version_0_5, version_0_4, stable_2002_spring, stable_2002_july, stable_2002_april, STABLE, HEAD
fixing header information

    1: <!-- The LearningOnline Network with CAPA -->
    2: <!-- $Id: cvsupgrade.html,v 1.8 2001/11/27 23:00:01 harris41 Exp $ -->
    3: <html>
    4: <head>
    5: <title>LON-CAPA CVS Upgrade</title>
    6: </head>
    7: <body>
    8: <h1>LON-CAPA CVS Upgrade</h1>
    9: <h3>Current CVS Upgrade Procedure</h3>
   10: <p>Scott Harrison</p>
   11: <p>$Date: 2001/11/27 23:00:01 $; $Revision: 1.8 $</p>
   12: <ul>
   13: <li><a href="#fileupgrade">CVS Upgrade</a></li>
   14: <li><a href="#rpm">RPM Upgrade</a></li>
   15: <li><a href="#status">Viewing the status of your machine</a></li>
   16: <li><a href="#setting">Setting yourself up for CVS</a></li>
   17: </ul>
   18: <a name="fileupgrade">
   19: <h3>CVS Upgrade</h3>
   20: <p>
   21: If you have not yet set yourself up for LON-CAPA CVS, please see the
   22: section <a href="#setting">"Setting yourself up for LON-CAPA CVS"</a>.
   23: </p>
   24: <p>
   25: Before you do a file upgrade, you can always enter a "make statuspost"
   26: command to see what will be changing on your system.  See the section
   27: <a href="#status">Viewing the status of your machine</a>.
   28: </p>
   29: <p>
   30: Assuming that you have set yourself up for LON-CAPA CVS, periodically
   31: upgrading your system is a simple process.
   32: </p>
   33: <table border>
   34: <tr><td><b>Steps</b></td><td><b>Commands</b></td></tr>
   35: <tr><td>Make sure you are logged in for CVS</td>
   36: <td>export CVSROOT=:pserver:USERNAME@zaphod.lite.msu.edu:/home/cvs
   37: <br />cvs login</td></tr>
   38: <tr><td>Go to your repository directory</td><td>cd loncapa</td></tr>
   39: <tr><td>Update your CVS sources</td><td>cvs update -d -r STABLE</td></tr>
   40: <tr><td>Go to the build directory</td><td>cd loncom/build</td></tr>
   41: <tr><td>Become 'root'</td><td>su</td></tr>
   42: <tr><td>Build files</td><td>make build</td></tr>
   43: <tr><td>Install/update static files</td><td>make install</td></tr>
   44: <tr><td>Restart your web server<br />Due to an apache bug, you should
   45: enter this command twice.  Restarting the web server will
   46: <ul>
   47: <li>introduce changes made to /home/httpd/lib/perl/Apache/*.pm files;</li>
   48: <li>update user and group permissions if /etc/passwd or /etc/group change.</li>
   49: </ul>
   50: </td>
   51: <td>/etc/rc.d/init.d/httpd restart
   52: <br />/etc/rc.d/init.d/httpd restart</td></tr>
   53: <tr><td>Restart the lonc/lond processes<br />Be patient (this takes several minutes).</td>
   54: <td>/etc/rc.d/init.d/loncontrol restart</td></tr>
   55: <tr><td colspan=2>After CVS logging in, you can always cut and paste this line
   56: below assuming you do everything as root :)<br />
   57: <tt>cd loncapa; cvs update -d -r STABLE; cd loncom/build; make build; 
   58: make install; /etc/rc.d/init.d/httpd restart; /etc/rc.d/init.d/httpd
   59: restart; /etc/rc.d/init.d/httpd restart; /etc/rc.d/init.d/loncontrol restart
   60: </tt></td></tr>
   61: </table>
   62: <p>
   63: It may be also advisable to test your system after an upgrade if there are
   64: critical tasks it is being used for.
   65: </p>
   66: <p>
   67: The specification file which defines the CVS:source-to-system information is
   68: CVS:doc/loncapafiles/loncapafiles.html.  Changes to this file directly
   69: translate into changes in the installation.
   70: </p>
   71: <a name="rpm">
   72: <h3>RPM Upgrade</h3>
   73: <p>
   74: BE CAREFUL.  READ THIS STUFF.
   75: </p>
   76: <p>WARNINGS:
   77: <ul>
   78: <li>Do not ever install or upgrade an LON-CAPA-base RPM.  You will
   79: lose important configuration information on your machine.  The CVS upgrade
   80: is much safer and more effective in bringing you up to date.</li>
   81: <li>Do not ever install or upgrade a LON-CAPA-setup RPM.  You will lose
   82: information from your /etc/group, /etc/passwd, and other important files.</li>
   83: <li>Be careful about installing a LON-CAPA-mysql RPM.  You need to run
   84: /home/httpd/perl/searchcat.pl after this to re-seed your metadata database.
   85: <li>Don't upgrade/install/delete your kernel RPM unless you have done
   86: it before.
   87: </li>
   88: </ul>
   89: <p>
   90: There are four things involved in an RPM upgrade:
   91: </p>
   92: <ol>
   93: <li>Gaining information about the RPMs on your system.</li>
   94: <li>Upgrade existing RPMS from a trusted source</li>
   95: <li>Remove RPMs which do not belong</li>
   96: <li>Add new RPMs</li>
   97: </ol>
   98: <p>
   99: <b>Gaining information about the RPMs on your system:</b>
  100: "make rpmstatuspost"
  101: (see <a href="#status">Viewing the status of your machine</a>)
  102: will tell you about RPMs which do not belong (are "external"
  103: to LON-CAPA).  It will also tell you if you have "out-of-date"
  104: RPMs which should maybe be upgraded.  Important specification
  105: files for RPM installation are CVS:doc/otherfiles/rpm_list.txt
  106: and CVS:doc/otherfiles/cd_rpms.txt.
  107: </p>
  108: <p>
  109: <b>Upgrade existing RPMS from a trusted source:</b>
  110: RPMs are currently available at
  111: <blockquote>
  112: http://install.lon-capa.org/3.1/latestRPMS/
  113: </blockquote>
  114: For example, to upgrade your LON-CAPA-systemperl RPM, you
  115: would enter commands like
  116: <blockquote>
  117: wget http://install.lon-capa.org/3.1/currentcdsource/RedHat/RPMS/LON-CAPA-systemperl-3.2-1.i386.rpm<br />
  118: (then as root) rpm -Uvh --force LON-CAPA-systemperl-3.1-1.i386.rpm
  119: </blockquote>
  120: </p>
  121: <p>
  122: <b>Remove RPMs which do not belong:</b>
  123: If an RPM should NOT be on your system (like apmd), then you want
  124: to remove this RPM.  Since RedHat is a little erroneous when
  125: it comes to dependencies, you may wish to use the --nodeps flag.
  126: <blockquote>
  127: rpm -e --nodeps apmd-3.0final-2.i386.rpm
  128: </blockquote>
  129: </p>
  130: <p>
  131: <b>Add new RPMs:</b>
  132: Use the same command as for upgrading.
  133: <blockquote>
  134: (as root) rpm -Uvh --force icewm-1.0.5-gnome.i386.rpm
  135: </blockquote>
  136: We often use icewm as our development machine window manager given the
  137: RedHat 6.2 bugs involving enlightenment and gnome.
  138: </p>
  139: <a name="status">
  140: <h3>Viewing the status of your machine</h3>
  141: <p>
  142: </p>
  143: <table border>
  144: <tr><td><b>Steps</b></td><td><b>Commands</b></td></tr>
  145: <tr><td>Make sure you are logged in for CVS</td>
  146: <td>export CVSROOT=:pserver:USERNAME@zaphod.lite.msu.edu:/home/cvs
  147: <br />cvs login</td></tr>
  148: <tr><td>Go to your repository directory</td><td>cd loncapa</td></tr>
  149: <tr><td>Update your CVS sources</td><td>cvs update -d -r STABLE</td></tr>
  150: <tr><td>Go to the build directory</td><td>cd loncom/build</td></tr>
  151: <tr><td>Become 'root'</td><td>su</td></tr>
  152: <tr><td>View the CVS source->install status of your machine</td><td>make statuspost
  153: <br /> then visit http://MACHINENAME/lon-status/filestatus.html</td></tr>
  154: </td></tr>
  155: <tr><td>View the RPM status of your machine
  156: </td>
  157: <td>make rpmstatuspost<br />
  158: then visit http://MACHINENAME/lon-status/rpmstatus.html</td>
  159: </table>
  160: <a name="setting">
  161: <h3>Setting yourself up for CVS</h3>
  162: <p>
  163: These instructions assume bash (as opposed to tcsh).
  164: </p>
  165: <p>
  166: You will also need an account on zaphod.lite.msu.edu.
  167: Please e-mail lon-capa@hobbes.lite.msu.edu and request that
  168: an account be created.
  169: </p>
  170: <p>
  171: The straightforward way to enable CVS is to manually configure your
  172: environment and log in:
  173: <blockquote>
  174: export CVSROOT=:pserver:USERNAME@zaphod.lite.msu.edu:/home/cvs
  175: <br />
  176: cvs login
  177: </blockquote>
  178: </p>
  179: <p>
  180: You can also modify your shell environment (.bash_profile and .bash_logout).
  181: <blockquote>
  182: The commands:<br />
  183: <b>export CVSROOT=:pserver:USERNAME@zaphod.lite.msu.edu:/home/cvs</b>
  184: <br />
  185: <b>cvs login</b>
  186: <br />
  187: can be appended to ~/.bash_profile.
  188: <br />
  189: "<b>cvs logout</b>" can be appended to ~/.bash_logout
  190: </blockquote>
  191: </p>
  192: <p>
  193: To check out LON-CAPA, go to any writeable directory and type:
  194: <blockquote>cvs co loncapa</blockquote>
  195: </p>
  196: <p>
  197: This will create a directory tree similar to:
  198: <pre>
  199: loncapa_________CAPA
  200:           |
  201:           |_____loncom
  202:           |
  203:           |_____doc
  204:           |
  205:           |_____rat
  206:           |
  207:           \_____packaging
  208: </pre>
  209: </p>
  210: <p>
  211: Useful commands are:
  212: </p>
  213: <table border=1>
  214: <tr><td>Command</td></td><td>Description</td></tr>
  215: <tr><td>info cvs</td></td><td>doc's</td></tr>
  216: <tr><td>cvs log FILENAME</td></td><td>see what's happened with a file</td></tr>
  217: <tr><td>cvs update -d -r STABLE</td></td><td>update your CVS tree from the
  218: current directory location</td></tr>
  219: </table>
  220: </body>
  221: </html>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>