Index: openacs-4/packages/acs-core-docs/www/acs-admin.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/acs-admin.html,v diff -u -r1.30 -r1.31 --- openacs-4/packages/acs-core-docs/www/acs-admin.html 5 May 2004 12:36:02 -0000 1.30 +++ openacs-4/packages/acs-core-docs/www/acs-admin.html 11 Jun 2004 10:17:35 -0000 1.31 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�II.�Administrator's Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="release-notes.html" title="OpenACS Release Notes"><link rel="next" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="release-notes.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="install-overview.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="acs-admin"></a>Administrator's Guide</h1></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="install-overview.html">2. Installation Overview</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-steps.html">Basic Steps</a></span></dt><dt><span class="sect1"><a href="individual-programs.html">Prerequisite Software</a></span></dt></dl></dd><dt><span class="chapter"><a href="complete-install.html">3. Complete Installation</a></span></dt><dd><dl><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.2.0d1</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></dd><dt><span class="chapter"><a href="configuring-new-site.html">4. Configuring a new OpenACS Site</a></span></dt><dd><dl><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></dd><dt><span class="chapter"><a href="upgrade.html">5. Upgrading</a></span></dt><dd><dl><dt><span class="sect1"><a href="upgrade-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot.html">Upgrading 5.0.0 to 5.0.x</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files.html">Upgrading the OpenACS files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting.html">Upgrading Platform components</a></span></dt></dl></dd><dt><span class="chapter"><a href="maintenance-web.html">6. Production Environments</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-openacs-keepalive.html">Starting and Stopping an OpenACS instance.</a></span></dt><dt><span class="sect1"><a href="install-openacs-inittab.html">AOLserver keepalive with inittab</a></span></dt><dt><span class="sect1"><a href="install-next-add-server.html">Running multiple services on one machine</a></span></dt><dt><span class="sect1"><a href="high-avail.html">High Availability/High Performance Configurations</a></span></dt><dt><span class="sect1"><a href="maintenance-deploy.html">Staged Deployment for Production Networks</a></span></dt><dt><span class="sect1"><a href="install-ssl.html">Installing SSL Support for an OpenACS service</a></span></dt><dt><span class="sect1"><a href="analog-setup.html">Set up Log Analysis Reports</a></span></dt><dt><span class="sect1"><a href="uptime.html">External uptime validation</a></span></dt><dt><span class="sect1"><a href="maint-performance.html">Diagnosing Performance Problems</a></span></dt></dl></dd><dt><span class="chapter"><a href="database-management.html">7. Database Management</a></span></dt><dd><dl><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></dd><dt><span class="chapter"><a href="backup-recovery.html">8. Backup and Recovery</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></dd><dt><span class="appendix"><a href="install-redhat.html">A. Install Red Hat 8/9</a></span></dt><dt><span class="appendix"><a href="install-more-software.html">B. Install additional supporting software</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-unpack.html">Unpack the OpenACS tarball</a></span></dt><dt><span class="sect1"><a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-qmail.html">Install qmail (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="analog-install.html">Install Analog web file analyzer</a></span></dt><dt><span class="sect1"><a href="install-nspam.html">Install nspam</a></span></dt><dt><span class="sect1"><a href="install-full-text-search.html">Install Full Text Search</a></span></dt><dt><span class="sect1"><a href="install-nsopenssl.html">Install nsopenssl</a></span></dt><dt><span class="sect1"><a href="install-tclwebtest.html">Install tclwebtest.</a></span></dt><dt><span class="sect1"><a href="install-php.html">Install PHP for use in AOLserver</a></span></dt><dt><span class="sect1"><a href="install-squirrelmail.html">Install Squirrelmail for use as a webmail system for OpenACS</a></span></dt><dt><span class="sect1"><a href="aolserver.html">Install AOLserver 3.3oacs1</a></span></dt></dl></dd><dt><span class="appendix"><a href="credits.html">A. Credits</a></span></dt><dd><dl><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="release-notes.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-overview.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Release Notes </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�2.�Installation Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-admin.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�II.�Administrator's Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="release-notes.html" title="OpenACS Release Notes"><link rel="next" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="release-notes.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="install-overview.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="acs-admin"></a>Administrator's Guide</h1></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="install-overview.html">2. Installation Overview</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-steps.html">Basic Steps</a></span></dt><dt><span class="sect1"><a href="individual-programs.html">Prerequisite Software</a></span></dt></dl></dd><dt><span class="chapter"><a href="complete-install.html">3. Complete Installation</a></span></dt><dd><dl><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.2.0d1</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></dd><dt><span class="chapter"><a href="configuring-new-site.html">4. Configuring a new OpenACS Site</a></span></dt><dd><dl><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></dd><dt><span class="chapter"><a href="upgrade.html">5. Upgrading</a></span></dt><dd><dl><dt><span class="sect1"><a href="upgrade-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot.html">Upgrading 5.0.0 to 5.0.x</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files.html">Upgrading the OpenACS files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting.html">Upgrading Platform components</a></span></dt></dl></dd><dt><span class="chapter"><a href="maintenance-web.html">6. Production Environments</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-openacs-keepalive.html">Starting and Stopping an OpenACS instance.</a></span></dt><dt><span class="sect1"><a href="install-openacs-inittab.html">AOLserver keepalive with inittab</a></span></dt><dt><span class="sect1"><a href="install-next-add-server.html">Running multiple services on one machine</a></span></dt><dt><span class="sect1"><a href="high-avail.html">High Availability/High Performance Configurations</a></span></dt><dt><span class="sect1"><a href="maintenance-deploy.html">Staged Deployment for Production Networks</a></span></dt><dt><span class="sect1"><a href="install-ssl.html">Installing SSL Support for an OpenACS service</a></span></dt><dt><span class="sect1"><a href="analog-setup.html">Set up Log Analysis Reports</a></span></dt><dt><span class="sect1"><a href="uptime.html">External uptime validation</a></span></dt><dt><span class="sect1"><a href="maint-performance.html">Diagnosing Performance Problems</a></span></dt></dl></dd><dt><span class="chapter"><a href="database-management.html">7. Database Management</a></span></dt><dd><dl><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></dd><dt><span class="chapter"><a href="backup-recovery.html">8. Backup and Recovery</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></dd><dt><span class="appendix"><a href="install-redhat.html">A. Install Red Hat 8/9</a></span></dt><dt><span class="appendix"><a href="install-more-software.html">B. Install additional supporting software</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-unpack.html">Unpack the OpenACS tarball</a></span></dt><dt><span class="sect1"><a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-qmail.html">Install qmail (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="analog-install.html">Install Analog web file analyzer</a></span></dt><dt><span class="sect1"><a href="install-nspam.html">Install nspam</a></span></dt><dt><span class="sect1"><a href="install-full-text-search.html">Install Full Text Search</a></span></dt><dt><span class="sect1"><a href="install-nsopenssl.html">Install nsopenssl</a></span></dt><dt><span class="sect1"><a href="install-tclwebtest.html">Install tclwebtest.</a></span></dt><dt><span class="sect1"><a href="install-php.html">Install PHP for use in AOLserver</a></span></dt><dt><span class="sect1"><a href="install-squirrelmail.html">Install Squirrelmail for use as a webmail system for OpenACS</a></span></dt><dt><span class="sect1"><a href="aolserver.html">Install AOLserver 3.3oacs1</a></span></dt></dl></dd><dt><span class="appendix"><a href="credits.html">A. Credits</a></span></dt><dd><dl><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="release-notes.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-overview.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Release Notes </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�2.�Installation Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-admin.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/acs-package-dev.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/acs-package-dev.html,v diff -u -r1.18 -r1.19 --- openacs-4/packages/acs-core-docs/www/acs-package-dev.html 5 May 2004 12:36:03 -0000 1.18 +++ openacs-4/packages/acs-core-docs/www/acs-package-dev.html 11 Jun 2004 10:17:35 -0000 1.19 @@ -1,2 +1,2 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�III.�For OpenACS Package Developers</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="install-resources.html" title="Resources"><link rel="next" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-resources.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="tutorial.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="acs-package-dev"></a>For OpenACS Package Developers</h1></div></div><div></div></div><div class="partintro" lang="en"><div><div></div><div></div></div><p>Tutorials and reference material for creating new OpenACS packages. - </p><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="tutorial.html">9. Development Tutorial</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-newpackage.html">Creating an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database.html">Setting Up Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages.html">Creating Web Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug.html">Debugging and Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="tutorial-advanced.html">10. Advanced Topics</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-specs.html">Write the Requirements and Design Specs</a></span></dt><dt><span class="sect1"><a href="tutorial-cvs.html">Add the new package to CVS</a></span></dt><dt><span class="sect1"><a href="tutorial-comments.html">Adding Comments</a></span></dt><dt><span class="sect1"><a href="tutorial-admin-pages.html">Admin Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-categories.html">Categories</a></span></dt><dt><span class="sect1"><a href="ch10s06.html">Categories</a></span></dt><dt><span class="sect1"><a href="profile-code.html">Profile your code</a></span></dt><dt><span class="sect1"><a href="tutorial-distribute.html">Prepare the package for distribution.</a></span></dt><dt><span class="sect1"><a href="tutorial-notifications.html">Notifications</a></span></dt><dt><span class="sect1"><a href="ch10s10.html">Hierarchical data</a></span></dt><dt><span class="sect1"><a href="tutorial-vuh.html">Using .vuh files for pretty urls</a></span></dt><dt><span class="sect1"><a href="tutorial-future-topics.html">Future Topics</a></span></dt></dl></dd><dt><span class="chapter"><a href="dev-guide.html">11. Development Reference</a></span></dt><dd><dl><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using HTML Forms</a></span></dt></dl></dd><dt><span class="chapter"><a href="eng-standards.html">12. Engineering Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="style-guide.html">OpenACS Style Guide</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning.html">Release Version Numbering</a></span></dt><dt><span class="sect1"><a href="eng-standards-constraint-naming.html">Constraint naming standard</a></span></dt><dt><span class="sect1"><a href="eng-standards-filenaming.html">ACS File Naming and Formatting Standards</a></span></dt><dt><span class="sect1"><a href="eng-standards-plsql.html">PL/SQL Standards</a></span></dt><dt><span class="sect1"><a href="variables.html">Variables</a></span></dt><dt><span class="sect1"><a href="automated-testing-best-practices.html">Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="doc-standards.html">13. Documentation Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></dd><dt><span class="chapter"><a href="i18n.html">14. Internationalization</a></span></dt><dd><dl><dt><span class="sect1"><a href="i18n-overview.html"></a></span></dt><dt><span class="sect1"><a href="i18n-introduction.html">How Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert.html">How to Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design.html">Design Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators.html">Translator's Guide</a></span></dt></dl></dd><dt><span class="appendix"><a href="cvs-tips.html">D. Using CVS with an OpenACS Site</a></span></dt></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-resources.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial.html">Next</a></td></tr><tr><td width="40%" align="left">Resources </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�9.�Development Tutorial</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-package-dev.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�III.�For OpenACS Package Developers</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="install-resources.html" title="Resources"><link rel="next" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-resources.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="tutorial.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="acs-package-dev"></a>For OpenACS Package Developers</h1></div></div><div></div></div><div class="partintro" lang="en"><div><div></div><div></div></div><p>Tutorials and reference material for creating new OpenACS packages. + </p><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="tutorial.html">9. Development Tutorial</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-newpackage.html">Creating an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database.html">Setting Up Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages.html">Creating Web Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug.html">Debugging and Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="tutorial-advanced.html">10. Advanced Topics</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-specs.html">Write the Requirements and Design Specs</a></span></dt><dt><span class="sect1"><a href="tutorial-cvs.html">Add the new package to CVS</a></span></dt><dt><span class="sect1"><a href="tutorial-comments.html">Adding Comments</a></span></dt><dt><span class="sect1"><a href="tutorial-admin-pages.html">Admin Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-categories.html">Categories</a></span></dt><dt><span class="sect1"><a href="profile-code.html">Profile your code</a></span></dt><dt><span class="sect1"><a href="tutorial-distribute.html">Prepare the package for distribution.</a></span></dt><dt><span class="sect1"><a href="tutorial-notifications.html">Notifications</a></span></dt><dt><span class="sect1"><a href="tutorial-hierarchical.html">Hierarchical data</a></span></dt><dt><span class="sect1"><a href="tutorial-vuh.html">Using .vuh files for pretty urls</a></span></dt><dt><span class="sect1"><a href="tutorial-future-topics.html">Future Topics</a></span></dt></dl></dd><dt><span class="chapter"><a href="dev-guide.html">11. Development Reference</a></span></dt><dd><dl><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using HTML Forms</a></span></dt></dl></dd><dt><span class="chapter"><a href="eng-standards.html">12. Engineering Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="style-guide.html">OpenACS Style Guide</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning.html">Release Version Numbering</a></span></dt><dt><span class="sect1"><a href="eng-standards-constraint-naming.html">Constraint naming standard</a></span></dt><dt><span class="sect1"><a href="eng-standards-filenaming.html">ACS File Naming and Formatting Standards</a></span></dt><dt><span class="sect1"><a href="eng-standards-plsql.html">PL/SQL Standards</a></span></dt><dt><span class="sect1"><a href="variables.html">Variables</a></span></dt><dt><span class="sect1"><a href="automated-testing-best-practices.html">Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="doc-standards.html">13. Documentation Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></dd><dt><span class="chapter"><a href="i18n.html">14. Internationalization</a></span></dt><dd><dl><dt><span class="sect1"><a href="i18n-overview.html">Internationalization and Localization</a></span></dt><dt><span class="sect1"><a href="i18n-introduction.html">How Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert.html">How to Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design.html">Design Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators.html">Translator's Guide</a></span></dt></dl></dd><dt><span class="appendix"><a href="cvs-tips.html">D. Using CVS with an OpenACS Site</a></span></dt></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-resources.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial.html">Next</a></td></tr><tr><td width="40%" align="left">Resources </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�9.�Development Tutorial</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-package-dev.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/acs-plat-dev.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/acs-plat-dev.html,v diff -u -r1.19 -r1.20 --- openacs-4/packages/acs-core-docs/www/acs-plat-dev.html 5 May 2004 12:36:03 -0000 1.19 +++ openacs-4/packages/acs-core-docs/www/acs-plat-dev.html 11 Jun 2004 10:17:35 -0000 1.20 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�IV.�For OpenACS Platform Developers</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="cvs-tips.html" title="Appendix�D.�Using CVS with an OpenACS Site"><link rel="next" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="acs-plat-dev"></a>For OpenACS Platform Developers</h1></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="kernel-doc.html">15. Kernel Documentation</a></span></dt><dd><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></dd><dt><span class="chapter"><a href="releasing-openacs.html">16. Releasing OpenACS</a></span></dt><dd><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr><tr><td width="40%" align="left">Appendix�D.�Using CVS with an OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�15.�Kernel Documentation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-plat-dev.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�IV.�For OpenACS Platform Developers</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="cvs-tips.html" title="Appendix�D.�Using CVS with an OpenACS Site"><link rel="next" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="acs-plat-dev"></a>For OpenACS Platform Developers</h1></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="kernel-doc.html">15. Kernel Documentation</a></span></dt><dd><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></dd><dt><span class="chapter"><a href="releasing-openacs.html">16. Releasing OpenACS</a></span></dt><dd><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr><tr><td width="40%" align="left">Appendix�D.�Using CVS with an OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�15.�Kernel Documentation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-plat-dev.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/analog-install.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/analog-install.html,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/analog-install.html 5 May 2004 12:36:03 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/analog-install.html 11 Jun 2004 10:17:36 -0000 1.13 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Analog web file analyzer</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-qmail.html" title="Install qmail (OPTIONAL)"><link rel="next" href="install-nspam.html" title="Install nspam"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-qmail.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-nspam.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-install"></a>Install Analog web file analyzer</h2></div></div><div></div></div><p>Download the Analog <a href="individual-programs.html#analog-download">source tarball</a> in +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Analog web file analyzer</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-qmail.html" title="Install qmail (OPTIONAL)"><link rel="next" href="install-nspam.html" title="Install nspam"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-qmail.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-nspam.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-install"></a>Install Analog web file analyzer</h2></div></div><div></div></div><p>Download the Analog <a href="individual-programs.html#analog-download">source tarball</a> in <tt class="computeroutput">/tmp</tt>. Unpack, compile, and install analog.</p><pre class="screen">[root aolserver]# <b class="userinput"><tt>cd /usr/local/src</tt></b> [root src]# <b class="userinput"><tt>tar xzf /tmp/analog-5.32.tar.gz</tt></b> [root src]# <b class="userinput"><tt>cd analog-5.32</tt></b> Index: openacs-4/packages/acs-core-docs/www/analog-setup.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/analog-setup.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/analog-setup.html 5 May 2004 12:36:03 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/analog-setup.html 11 Jun 2004 10:17:36 -0000 1.5 @@ -1,32 +1,32 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Set up Log Analysis Reports</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-ssl.html" title="Installing SSL Support for an OpenACS service"><link rel="next" href="uptime.html" title="External uptime validation"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-setup"></a>Set up Log Analysis Reports</h2></div></div><div></div></div><p>Analog is a program with processes webserver access logs, +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Set up Log Analysis Reports</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-ssl.html" title="Installing SSL Support for an OpenACS service"><link rel="next" href="uptime.html" title="External uptime validation"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-setup"></a>Set up Log Analysis Reports</h2></div></div><div></div></div><p>Analog is a program with processes webserver access logs, performs DNS lookup, and outputs HTML reports. Analog should <a href="analog-install.html" title="Install Analog web file analyzer">already be installed.</a> A modified configuration file is included in - the OpenACS tarball.</p><div class="orderedlist"><ol type="1"><li><pre class="screen">[root src]# <b class="userinput"><tt>su - service0</tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/service0</tt></b> -[service0 service0]$ <b class="userinput"><tt>cp /var/lib/aolserver/service0/packages/acs-core-docs/www/files/analog.cfg.txt etc/analog.cfg</tt></b> -[service0 service0]$ <b class="userinput"><tt>mkdir www/log</tt></b> -[service0 service0]$ <b class="userinput"><tt>cp -r /usr/share/analog-5.31/images www/log/</tt></b> -[service0 service0]$ <span class="action"><span class="action"> -su - service0 -cd /var/lib/aolserver/service0 -cp /var/lib/aolserver/service0/packages/acs-core-docs/www/files/analog.cfg.txt etc/analog.cfg + the OpenACS tarball.</p><div class="orderedlist"><ol type="1"><li><pre class="screen">[root src]# <b class="userinput"><tt>su - $OPENACS_SERVICE_NAME</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/$OPENACS_SERVICE_NAME</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cp /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/acs-core-docs/www/files/analog.cfg.txt etc/analog.cfg</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>mkdir www/log</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cp -r /usr/share/analog-5.31/images www/log/</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <span class="action"><span class="action"> +su - $OPENACS_SERVICE_NAME +cd /var/lib/aolserver/$OPENACS_SERVICE_NAME +cp /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/acs-core-docs/www/files/analog.cfg.txt etc/analog.cfg mkdir www/log cp -r /usr/share/analog-5.31/images www/log/</span></span></pre><p>Edit -<tt class="computeroutput">/var/lib/aolserver/service0/etc/analog.cfg</tt> and change the variable in <tt class="computeroutput">HOSTNAME "[my +<tt class="computeroutput">/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/analog.cfg</tt> and change the variable in <tt class="computeroutput">HOSTNAME "[my organisation]"</tt> to reflect your website title. If you don't want the traffic log to be publicly visible, change -<tt class="computeroutput">OUTFILE /var/lib/aolserver/service0/www/log/traffic.html</tt> to use a private -directory.</p></li><li><p>Run it.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>/usr/share/analog-5.31/analog -G -g/var/lib/aolserver/service0/etc/analog.cfg</tt></b> +<tt class="computeroutput">OUTFILE /var/lib/aolserver/$OPENACS_SERVICE_NAME/www/log/traffic.html</tt> to use a private +directory.</p></li><li><p>Run it.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>/usr/share/analog-5.31/analog -G -g/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/analog.cfg</tt></b> /usr/share/analog-5.31/analog: analog version 5.31/Unix /usr/share/analog-5.31/analog: Warning F: Failed to open DNS input file - /home/service0/dnscache: ignoring it + /home/$OPENACS_SERVICE_NAME/dnscache: ignoring it (For help on all errors and warnings, see docs/errors.html) /usr/share/analog-5.31/analog: Warning R: Turning off empty Search Word Report -[service0 service0]$</pre><p>Verify that it works by browing to <tt class="computeroutput">http://yourserver.test:8000/log/traffic.html</tt></p></li><li><p>Automate this by creating a file in - <tt class="computeroutput">/etc/cron.daily</tt>.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>exit</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$</pre><p>Verify that it works by browing to <tt class="computeroutput">http://yourserver.test:8000/log/traffic.html</tt></p></li><li><p>Automate this by creating a file in + <tt class="computeroutput">/etc/cron.daily</tt>.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> logout [root root]# <b class="userinput"><tt>emacs /etc/cron.daily/analog</tt></b></pre><p>Put this into the file:</p><pre class="programlisting">#!/bin/sh -/usr/share/analog-5.31/analog -G -g/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/analog.cfg</pre><pre class="screen">[root root]# <b class="userinput"><tt>chmod 755 /etc/cron.daily/analog</tt></b></pre><p>Test it by running the script.</p><pre class="screen">[root root]# <b class="userinput"><tt>sh /etc/cron.daily/analog</tt></b></pre><p>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>/log/traffic.html</tt></p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr><tr><td width="40%" align="left">Installing SSL Support for an OpenACS service </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> External uptime validation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/analog-setup.html#comments">View comments on this page at openacs.org</a></center></body></html> +/usr/share/analog-5.31/analog -G -g/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/analog.cfg</pre><pre class="screen">[root root]# <b class="userinput"><tt>chmod 755 /etc/cron.daily/analog</tt></b></pre><p>Test it by running the script.</p><pre class="screen">[root root]# <b class="userinput"><tt>sh /etc/cron.daily/analog</tt></b></pre><p>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>/log/traffic.html</tt></p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr><tr><td width="40%" align="left">Installing SSL Support for an OpenACS service </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> External uptime validation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/analog-setup.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/aolserver.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/aolserver.html,v diff -u -r1.36 -r1.37 --- openacs-4/packages/acs-core-docs/www/aolserver.html 5 May 2004 12:36:03 -0000 1.36 +++ openacs-4/packages/acs-core-docs/www/aolserver.html 11 Jun 2004 10:17:36 -0000 1.37 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install AOLserver 3.3oacs1</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-squirrelmail.html" title="Install Squirrelmail for use as a webmail system for OpenACS"><link rel="next" href="credits.html" title="Appendix�C.�Credits"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-squirrelmail.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="credits.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="aolserver"></a>Install AOLserver 3.3oacs1</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install AOLserver 3.3oacs1</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-squirrelmail.html" title="Install Squirrelmail for use as a webmail system for OpenACS"><link rel="next" href="credits.html" title="Appendix�C.�Credits"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-squirrelmail.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="credits.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="aolserver"></a>Install AOLserver 3.3oacs1</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>We recommend the use of <a href="aolserver4.html" title="Install AOLserver 4">AOLserver 4.0.1</a> or later. These instructions are retained as a resource.</p><p> Index: openacs-4/packages/acs-core-docs/www/aolserver4.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/aolserver4.html,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/aolserver4.html 5 May 2004 12:36:03 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/aolserver4.html 11 Jun 2004 10:17:37 -0000 1.13 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install AOLserver 4</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="postgres.html" title="Install PostgreSQL"><link rel="next" href="openacs.html" title="Install OpenACS 5.2.0d1"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="postgres.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="openacs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="aolserver4"></a>Install AOLserver 4</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:sussdorff@sussdorff.de" target="_top">Malte Sussdorff</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install AOLserver 4</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="postgres.html" title="Install PostgreSQL"><link rel="next" href="openacs.html" title="Install OpenACS 5.2.0d1"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="postgres.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="openacs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="aolserver4"></a>Install AOLserver 4</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:sussdorff@sussdorff.de" target="_top">Malte Sussdorff</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="orderedlist"><ol type="1"><li><a name="tcl-download"></a><p><b>Retrieve TCL 8.4 (or higher).�</b>Download and install TCL 8.4</p><p>If you have not installed TCL already, download the latest TCL version from Sourceforge</p><p>Remember that you have to be root if you want to follow these instructions. On Mac OS X type <b class="userinput"><tt>sudo su -</tt></b> to become root.</p><p>Alternatively use <b class="userinput"><tt>curl -L -O</tt></b> instead of <b class="userinput"><tt>wget</tt></b> (especially on Mac OS X.</p><pre class="screen">[root root]# <b class="userinput"><tt>cd /usr/local/src</tt></b> @@ -59,7 +59,7 @@ <span class="bold"><b>//</b></span> typedef unsigned char u_int8_t;</pre><p>Now install nssha1:</p><pre class="screen">[root nssha1]# <b class="userinput"><tt>make install</tt></b></pre></li><li><p><a name="aolserver4-tdom-install"></a>Install tDOM</p><pre class="screen">[root nssha1]# <b class="userinput"><tt>cd ../tDOM-0.7.8/unix</tt></b></pre><p>Edit the <tt class="computeroutput">CONFIG</tt> file. Uncomment the instructions meant for AOLserver 4, but edit it to look like this:</p><pre class="screen">../configure --enable-threads --disable-tdomalloc --prefix=/usr/local/aolserver40r2 --with-tcl=/usr/local/lib</pre><p>Now you can compile and configure tDOM</p><pre class="screen">[root unix]# <b class="userinput"><tt>sh CONFIG</tt></b> [root unix]# <b class="userinput"><tt>make install</tt></b></pre></li></ol></div><p> - </p></li><li><a name="aolserver-db-wrapper"></a><p><b>Add a database-specific wrapper script.�</b>This script + </p></li><li><a name="aolserver4-db-wrapper"></a><p><b>Add a database-specific wrapper script.�</b>This script sets database environment variables before starting AOLserver; this allows the AOLserver instance can communicate with the database. There is one script each for @@ -77,4 +77,4 @@ <span class="action"><span class="action">cd /usr/local/aolserver40r2/bin cp /tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres chmod 755 nsd-postgres</span></span></pre></li></ul></div><p>You may need to edit these scripts if you are not using - /usr/local/aolserver as the directory of Aolserver4.</p></li><li><p><b>Change startup script (optional).�</b>If you want to run AOLserver on a port below 1024 (normally, for a webserver you will use 80), you will have to change the <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools/run</tt> script according to the documentation found there (namely: Add the -b <span class="replaceable"><span class="replaceable">yourip:yourport</span></span> switch)</p></li><li><p><a href="aolserver.html#install-aolserver-permissions">Test AOLserver</a>.</p></li></ol></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="postgres.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="openacs.html">Next</a></td></tr><tr><td width="40%" align="left">Install PostgreSQL </td><td width="20%" align="center"><a accesskey="u" href="complete-install.html">Up</a></td><td width="40%" align="right"> Install OpenACS 5.2.0d1</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/aolserver4.html#comments">View comments on this page at openacs.org</a></center></body></html> + /usr/local/aolserver as the directory of Aolserver4.</p></li><li><p><b>Change startup script (optional).�</b>If you want to run AOLserver on a port below 1024 (normally, for a webserver you will use 80), you will have to change the <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools/run</tt> script according to the documentation found there (namely: Add the -b <span class="replaceable"><span class="replaceable">yourip:yourport</span></span> switch)</p></li><li><p><a href="aolserver.html#install-aolserver-permissions">Test AOLserver</a>.</p></li></ol></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="postgres.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="openacs.html">Next</a></td></tr><tr><td width="40%" align="left">Install PostgreSQL </td><td width="20%" align="center"><a accesskey="u" href="complete-install.html">Up</a></td><td width="40%" align="right"> Install OpenACS 5.2.0d1</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/aolserver4.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/apm-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/apm-design.html,v diff -u -r1.28 -r1.29 --- openacs-4/packages/acs-core-docs/www/apm-design.html 5 May 2004 12:36:03 -0000 1.28 +++ openacs-4/packages/acs-core-docs/www/apm-design.html 11 Jun 2004 10:17:37 -0000 1.29 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Package Manager Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="apm-requirements.html" title="Package Manager Requirements"><link rel="next" href="db-api-detailed.html" title="Database Access API"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="apm-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="db-api-detailed.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apm-design"></a>Package Manager Design</h2></div></div><div></div></div><div class="authorblurb"><p>By Bryan Quinn</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Package Manager Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="apm-requirements.html" title="Package Manager Requirements"><link rel="next" href="db-api-detailed.html" title="Database Access API"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="apm-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="db-api-detailed.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apm-design"></a>Package Manager Design</h2></div></div><div></div></div><div class="authorblurb"><p>By Bryan Quinn</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="apm-design-essentials"></a>Essentials</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a href="/acs-admin/apm" target="_top">OpenACS Administrator directory</a></p></li><li><p><a href="apm-requirements.html">Package Manager Requirements</a></p></li><li><p><a href="packages.html">Packages</a></p></li><li><p><a href="images/apm.pdf" target="_top">ER diagram</a></p></li><li><p>Tcl API </p><div class="itemizedlist"><ul type="circle"><li><p><a href="/api-doc/procs-file-view?path=packages%2facs%2dtcl%2ftcl%2fapm%2dprocs%2etcl" target="_top"> Index: openacs-4/packages/acs-core-docs/www/apm-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/apm-requirements.html,v diff -u -r1.23 -r1.24 --- openacs-4/packages/acs-core-docs/www/apm-requirements.html 5 May 2004 12:36:03 -0000 1.23 +++ openacs-4/packages/acs-core-docs/www/apm-requirements.html 11 Jun 2004 10:17:37 -0000 1.24 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Package Manager Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="subsites-design.html" title="Subsites Design Document"><link rel="next" href="apm-design.html" title="Package Manager Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="apm-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apm-requirements"></a>Package Manager Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By Bryan Quinn and Todd Nightingale</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Package Manager Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="subsites-design.html" title="Subsites Design Document"><link rel="next" href="apm-design.html" title="Package Manager Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="apm-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apm-requirements"></a>Package Manager Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By Bryan Quinn and Todd Nightingale</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-intro"></a>Introduction</h3></div></div><div></div></div><p>The following is a requirements document for the OpenACS Package Manager Index: openacs-4/packages/acs-core-docs/www/automated-backup.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/automated-backup.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/automated-backup.html 5 May 2004 12:36:03 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/automated-backup.html 11 Jun 2004 10:17:37 -0000 1.4 @@ -1,3 +1,3 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Automated Backup</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="snapshot-backup.html" title="Manual backup and recovery"><link rel="next" href="backups-with-cvs.html" title="Using CVS for backup-recovery"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-backup"></a>Automated Backup</h2></div></div><div></div></div><p>The recommended backup strategy for a production sit is to use an automated script which first backs up the database to a file in <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup</tt> and then backs up all of <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt> to a single zip file, and then copies that zip file to another computer.</p><div class="orderedlist"><ol type="1"><li><p>Make sure that the manual backup process described above works.</p></li><li><p>Customize the default backup script. Edit <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/backup.sh</tt> with your specific parameters.</p></li><li><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Automated Backup</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="snapshot-backup.html" title="Manual backup and recovery"><link rel="next" href="backups-with-cvs.html" title="Using CVS for backup-recovery"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-backup"></a>Automated Backup</h2></div></div><div></div></div><p>The recommended backup strategy for a production sit is to use an automated script which first backs up the database to a file in <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup</tt> and then backs up all of <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> to a single zip file, and then copies that zip file to another computer.</p><div class="orderedlist"><ol type="1"><li><p>Make sure that the manual backup process described above works.</p></li><li><p>Customize the default backup script. Edit <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh</tt> with your specific parameters.</p></li><li><p> Make sure the file is executable:</p><pre class="programlisting">chmod +x backup.sh</pre></li><li><p> - Set this file to run automatically by adding a line to root's crontab. (Typically, with <tt class="computeroutput">export EDITOR=emacs; crontab -e</tt>.) This example runs the backup script at 1:30 am every day.</p><pre class="programlisting">30 1 * * * * sh /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/backup.sh</pre></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr><tr><td width="40%" align="left">Manual backup and recovery </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Using CVS for backup-recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/automated-backup.html#comments">View comments on this page at openacs.org</a></center></body></html> + Set this file to run automatically by adding a line to root's crontab. (Typically, with <tt class="computeroutput">export EDITOR=emacs; crontab -e</tt>.) This example runs the backup script at 1:30 am every day.</p><pre class="programlisting">30 1 * * * * sh /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh</pre></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr><tr><td width="40%" align="left">Manual backup and recovery </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Using CVS for backup-recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/automated-backup.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/automated-testing-best-practices.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/automated-testing-best-practices.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/automated-testing-best-practices.html 5 May 2004 12:36:03 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/automated-testing-best-practices.html 11 Jun 2004 10:17:37 -0000 1.15 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Automated Testing</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="variables.html" title="Variables"><link rel="next" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="variables.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="doc-standards.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-testing-best-practices"></a>Automated Testing</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:davis@xarg.net" target="_top">Jeff Davis</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Automated Testing</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="variables.html" title="Variables"><link rel="next" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="variables.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="doc-standards.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-testing-best-practices"></a>Automated Testing</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:davis@xarg.net" target="_top">Jeff Davis</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>Best practices in writing OpenACS automated tests</p><div class="itemizedlist"><ul type="disc"><li><p><b>Special characters in Tcl.�</b> Index: openacs-4/packages/acs-core-docs/www/backup-recovery.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/backup-recovery.html,v diff -u -r1.29 -r1.30 --- openacs-4/packages/acs-core-docs/www/backup-recovery.html 5 May 2004 12:36:03 -0000 1.29 +++ openacs-4/packages/acs-core-docs/www/backup-recovery.html 11 Jun 2004 10:17:37 -0000 1.30 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�8.�Backup and Recovery</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly"><link rel="next" href="install-next-backups.html" title="Backup Strategy"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="backup-recovery"></a>Chapter�8.�Backup and Recovery</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:dhogaza@pacifier.com" target="_top">Don Baccus</a> with additions +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�8.�Backup and Recovery</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly"><link rel="next" href="install-next-backups.html" title="Backup Strategy"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="backup-recovery"></a>Chapter�8.�Backup and Recovery</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:dhogaza@pacifier.com" target="_top">Don Baccus</a> with additions by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -7,4 +7,4 @@ probably need to create your own backup strategies (in particular full dumps from oracle, while easy to set up, are far from the best solution). </p><p>There are three basic things which need to be backed up, the database data, the server - source tree, and the acs-content-repository (which is in the server source tree).</p><div class="figure"><a name="id2500857"></a><p class="title"><b>Figure�8.1.�Backup and Recovery Strategy</b></p><div class="mediaobject" align="center"><img src="images/backup.png" align="middle" alt="Backup and Recovery Strategy"></div></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr><tr><td width="40%" align="left">Vacuum Postgres nightly </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Backup Strategy</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/backup-recovery.html#comments">View comments on this page at openacs.org</a></center></body></html> + source tree, and the acs-content-repository (which is in the server source tree).</p><div class="figure"><a name="id2450167"></a><p class="title"><b>Figure�8.1.�Backup and Recovery Strategy</b></p><div class="mediaobject" align="center"><img src="images/backup.png" align="middle" alt="Backup and Recovery Strategy"></div></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr><tr><td width="40%" align="left">Vacuum Postgres nightly </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Backup Strategy</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/backup-recovery.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/backups-with-cvs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/backups-with-cvs.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/backups-with-cvs.html 5 May 2004 12:36:03 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/backups-with-cvs.html 11 Jun 2004 10:17:37 -0000 1.4 @@ -1,30 +1,30 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using CVS for backup-recovery</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="automated-backup.html" title="Automated Backup"><link rel="next" href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="backups-with-cvs"></a>Using CVS for backup-recovery</h2></div></div><div></div></div><p>CVS-only backup is often appropriate for development sites. If you are already using CVS and your data is not important, you probably don't +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using CVS for backup-recovery</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="automated-backup.html" title="Automated Backup"><link rel="next" href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="backups-with-cvs"></a>Using CVS for backup-recovery</h2></div></div><div></div></div><p>CVS-only backup is often appropriate for development sites. If you are already using CVS and your data is not important, you probably don't need to do anything to back up your files. Just make sure that your current work is checked into the system. You can then roll back based on date - note the current system time, down to the minute. For maximum safety, you can apply a tag to your current - files. You will still need to back up your database.</p><p> Note that, if you did the CVS options in this document, the <tt class="filename">/var/lib/aolserver/service0/etc</tt> directory is not included in cvs and you may want to add it.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - service0</tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cvs commit -m "last-minute commits before upgrade to 4.6"</tt></b> + files. You will still need to back up your database.</p><p> Note that, if you did the CVS options in this document, the <tt class="filename">/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc</tt> directory is not included in cvs and you may want to add it.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - $OPENACS_SERVICE_NAME</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs commit -m "last-minute commits before upgrade to 4.6"</tt></b> cvs commit: Examining . cvs commit: Examining bin <span class="emphasis"><em>(many lines omitted)</em></span> -[service0 service0]$ <b class="userinput"><tt>cvs tag before_upgrade_to_4_6</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs tag before_upgrade_to_4_6</tt></b> cvs server: Tagging bin T bin/acs-4-0-publish.sh T bin/ad-context-server.pl (many lines omitted) -[service0 service0]$ <b class="userinput"><tt>exit</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> [root root]# -<span class="action"><span class="action">su - service0 -cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> +<span class="action"><span class="action">su - $OPENACS_SERVICE_NAME +cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> cvs commit -m "last-minute commits before upgrade to 4.6" cvs tag before_upgrade_to_4_6 -exit</span></span></pre><p>To restore files from a cvs tag such as the one used above:</p><pre class="screen">[root root]# <b class="userinput"><tt>su - service0</tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cvs up -r current</tt></b> -[service0 service0]$ <b class="userinput"><tt>exit</tt></b> -<span class="action"><span class="action">su - service0 -cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> +exit</span></span></pre><p>To restore files from a cvs tag such as the one used above:</p><pre class="screen">[root root]# <b class="userinput"><tt>su - $OPENACS_SERVICE_NAME</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs up -r current</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> +<span class="action"><span class="action">su - $OPENACS_SERVICE_NAME +cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> cvs up -r current</span></span></pre></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Backup </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Appendix�A.�Install Red Hat 8/9</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/backups-with-cvs.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/bootstrap-acs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/bootstrap-acs.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/bootstrap-acs.html 5 May 2004 12:36:03 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/bootstrap-acs.html 11 Jun 2004 10:17:37 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Bootstrapping OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="tcl-doc.html" title="Documenting Tcl Files: Page Contracts and Libraries"><link rel="next" href="ext-auth-requirements.html" title="External Authentication Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tcl-doc.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="ext-auth-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="bootstrap-acs"></a>Bootstrapping OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a> </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Bootstrapping OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="tcl-doc.html" title="Documenting Tcl Files: Page Contracts and Libraries"><link rel="next" href="ext-auth-requirements.html" title="External Authentication Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tcl-doc.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="ext-auth-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="bootstrap-acs"></a>Bootstrapping OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a> </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="itemizedlist"><ul type="disc"><li><p>Tcl code: /tcl/0-acs-init.tcl and /packages/acs-kernel/bootstrap.tcl</p></li></ul></div><p>This document describes the startup (bootstrapping) process for an AOLserver Fisheye: Tag 1.2 refers to a dead (removed) revision in file `openacs-4/packages/acs-core-docs/www/ch08s06.html'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag 1.10 refers to a dead (removed) revision in file `openacs-4/packages/acs-core-docs/www/ch10s06.html'. Fisheye: No comparison available. Pass `N' to diff? Index: openacs-4/packages/acs-core-docs/www/complete-install.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/complete-install.html,v diff -u -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/complete-install.html 5 May 2004 12:36:03 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/complete-install.html 11 Jun 2004 10:17:37 -0000 1.14 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�3.�Complete Installation</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="individual-programs.html" title="Prerequisite Software"><link rel="next" href="unix-installation.html" title="Install a Unix-like system and supporting software"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="complete-install"></a>Chapter�3.�Complete Installation</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.2.0d1</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr><tr><td width="40%" align="left">Prerequisite Software </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Install a Unix-like system and supporting software</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/complete-install.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�3.�Complete Installation</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="individual-programs.html" title="Prerequisite Software"><link rel="next" href="unix-installation.html" title="Install a Unix-like system and supporting software"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="complete-install"></a>Chapter�3.�Complete Installation</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.2.0d1</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr><tr><td width="40%" align="left">Prerequisite Software </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Install a Unix-like system and supporting software</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/complete-install.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/configuring-new-site.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/configuring-new-site.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/configuring-new-site.html 5 May 2004 12:36:03 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/configuring-new-site.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�4.�Configuring a new OpenACS Site</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="mac-installation.html" title="OpenACS Installation Guide for Mac OS X"><link rel="next" href="how-do-I.html" title="How Do I?"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="configuring-new-site"></a>Chapter�4.�Configuring a new OpenACS Site</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�4.�Configuring a new OpenACS Site</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="mac-installation.html" title="OpenACS Installation Guide for Mac OS X"><link rel="next" href="how-do-I.html" title="How Do I?"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="configuring-new-site"></a>Chapter�4.�Configuring a new OpenACS Site</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>In this chapter, <span class="strong">Configuring</span> refers to making changes to a new OpenACS site through the web interface. In crude terms, these changes happen in the database, and are upgrade-safe. <span class="strong">Customizing</span> refers to changes that touch the file system, and require some planning if easy upgradability is to be maintained.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Installation Guide for Mac OS X </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> How Do I?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/configuring-new-site.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/credits.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/credits.html,v diff -u -r1.34 -r1.35 --- openacs-4/packages/acs-core-docs/www/credits.html 5 May 2004 12:36:03 -0000 1.34 +++ openacs-4/packages/acs-core-docs/www/credits.html 11 Jun 2004 10:17:37 -0000 1.35 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�C.�Credits</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="aolserver.html" title="Install AOLserver 3.3oacs1"><link rel="next" href="install-origins.html" title="Where did this document come from?"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="aolserver.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-origins.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="credits"></a>Appendix�C.�Credits</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�C.�Credits</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="aolserver.html" title="Install AOLserver 3.3oacs1"><link rel="next" href="install-origins.html" title="Where did this document come from?"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="aolserver.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-origins.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="credits"></a>Appendix�C.�Credits</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p><a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a> put Index: openacs-4/packages/acs-core-docs/www/cvs-tips.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/cvs-tips.html,v diff -u -r1.19 -r1.20 --- openacs-4/packages/acs-core-docs/www/cvs-tips.html 5 May 2004 12:36:03 -0000 1.19 +++ openacs-4/packages/acs-core-docs/www/cvs-tips.html 11 Jun 2004 10:17:37 -0000 1.20 @@ -1,62 +1,62 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�D.�Using CVS with an OpenACS Site</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="i18n-translators.html" title="Translator's Guide"><link rel="next" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="cvs-tips"></a>Appendix�D.�Using CVS with an OpenACS Site</h2></div></div><div></div></div><div class="authorblurb"><p> By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�D.�Using CVS with an OpenACS Site</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="i18n-translators.html" title="Translator's Guide"><link rel="next" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="cvs-tips"></a>Appendix�D.�Using CVS with an OpenACS Site</h2></div></div><div></div></div><div class="authorblurb"><p> By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><p><a name="cvs-service-import"></a><b>Add the Service to CVS - OPTIONAL.�</b><a class="indexterm" name="id2491334"></a>These steps take an existing OpenACS directory and add + </div><p><a name="cvs-service-import"></a><b>Add the Service to CVS - OPTIONAL.�</b><a class="indexterm" name="id2479935"></a>These steps take an existing OpenACS directory and add it to a <a href="install-cvs.html" title="Initialize CVS (OPTIONAL)">CVS - repository</a>.</p><div class="orderedlist"><ol type="1"><li><p>Create and set permissions on a subdirectory in the local cvs repository.</p><pre class="screen">[root root]# <b class="userinput"><tt>mkdir /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[root root]#<b class="userinput"><tt> chown <span class="replaceable"><span class="replaceable">service0.service0</span></span> /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> + repository</a>.</p><div class="orderedlist"><ol type="1"><li><p>Create and set permissions on a subdirectory in the local cvs repository.</p><pre class="screen">[root root]# <b class="userinput"><tt>mkdir /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[root root]#<b class="userinput"><tt> chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME</span></span> /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> [root root]# -<span class="action"><span class="action">mkdir /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span> -chown <span class="replaceable"><span class="replaceable">service0.service0</span></span> /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span></span></span></pre></li><li><p>Add the repository location to the user environment. On some systems, you may get better results with .bash_profile instead of .bashrc.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$<b class="userinput"><tt> emacs .bashrc</tt></b></pre><p>Put this string into <tt class="computeroutput">/home/<span class="replaceable"><span class="replaceable">service0</span></span>/.bashrc</tt>:</p><pre class="programlisting">export CVSROOT=/cvsroot</pre><pre class="screen">[service0 service0]$ <b class="userinput"><tt>exit</tt></b> +<span class="action"><span class="action">mkdir /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME</span></span> /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></span></span></pre></li><li><p>Add the repository location to the user environment. On some systems, you may get better results with .bash_profile instead of .bashrc.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$<b class="userinput"><tt> emacs .bashrc</tt></b></pre><p>Put this string into <tt class="computeroutput">/home/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/.bashrc</tt>:</p><pre class="programlisting">export CVSROOT=/cvsroot</pre><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> logout [root root]#</pre></li><li><p>Import all files into cvs. In order to work on files with source control, the files must be checked out from cvs. So we will import, move aside, and then check out all of the files. In the cvs import command, - <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0</span></span></tt> + <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> refers to the cvs repository to use; it uses the CVSROOT plus this string, i.e. - <tt class="computeroutput">/cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span></tt>. + <tt class="computeroutput">/cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt>. "OpenACS" is the vendor tag, and "HEAD" is the release tag. These tags will be useful in upgrading and - branching. -m sets the version comment.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cvs import -m "initial install" <span class="replaceable"><span class="replaceable">service0</span></span> OpenACS HEAD</tt></b> -N <span class="replaceable"><span class="replaceable">service0</span></span>/license.txt -N <span class="replaceable"><span class="replaceable">service0</span></span>/readme.txt + branching. -m sets the version comment.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS HEAD</tt></b> +N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/license.txt +N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/readme.txt <span class="emphasis"><em>(many lines omitted)</em></span> -N <span class="replaceable"><span class="replaceable">service0</span></span>/www/SYSTEM/flush-memoized-statement.tcl +N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www/SYSTEM/flush-memoized-statement.tcl No conflicts created by this import -[service0 service0]$ exit +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ exit [root root]# -<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">service0</span></span> -cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> -cvs import -m "initial install" <span class="replaceable"><span class="replaceable">service0</span></span> OpenACS HEAD -exit</span></span></pre><p>Move the original directory to a temporary location, and check out the cvs repository in its place.</p><pre class="screen">[root root]# <b class="userinput"><tt>mv /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> /var/tmp</tt></b> -[root root]# <b class="userinput"><tt>mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[root root]# <b class="userinput"><tt>chown <span class="replaceable"><span class="replaceable">service0</span></span>.<span class="replaceable"><span class="replaceable">service0</span></span> /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cvs checkout <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -cvs checkout: Updating <span class="replaceable"><span class="replaceable">service0</span></span> -U <span class="replaceable"><span class="replaceable">service0</span></span>/license.txt +<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS HEAD +exit</span></span></pre><p>Move the original directory to a temporary location, and check out the cvs repository in its place.</p><pre class="screen">[root root]# <b class="userinput"><tt>mv /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /var/tmp</tt></b> +[root root]# <b class="userinput"><tt>mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[root root]# <b class="userinput"><tt>chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>.<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cvs checkout <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +cvs checkout: Updating <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +U <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/license.txt <span class="emphasis"><em>(many lines omitted)</em></span> -U <span class="replaceable"><span class="replaceable">service0</span></span>/www/SYSTEM/dbtest.tcl -U <span class="replaceable"><span class="replaceable">service0</span></span>/www/SYSTEM/flush-memoized-statement.tcl -[service0 aolserver]$ <b class="userinput"><tt>exit</tt></b> +U <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www/SYSTEM/dbtest.tcl +U <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www/SYSTEM/flush-memoized-statement.tcl +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>exit</tt></b> logout [root root]# -<span class="action"><span class="action">mv /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> /var/tmp -mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> -chown <span class="replaceable"><span class="replaceable">service0</span></span>.<span class="replaceable"><span class="replaceable">service0</span></span> /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span> -su - <span class="replaceable"><span class="replaceable">service0</span></span> +<span class="action"><span class="action">mv /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /var/tmp +mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>.<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> cd /var/lib/aolserver -cvs checkout <span class="replaceable"><span class="replaceable">service0</span></span> +cvs checkout <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> exit</span></span></pre></li><li><p> If the service starts correctly, come back and remove the temporary copy of the uploaded files.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr><tr><td width="40%" align="left">Translator's Guide </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> Part�IV.�For OpenACS Platform Developers</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/cvs-tips.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/database-management.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/database-management.html,v diff -u -r1.20 -r1.21 --- openacs-4/packages/acs-core-docs/www/database-management.html 5 May 2004 12:36:03 -0000 1.20 +++ openacs-4/packages/acs-core-docs/www/database-management.html 11 Jun 2004 10:17:37 -0000 1.21 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�7.�Database Management</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="maint-performance.html" title="Diagnosing Performance Problems"><link rel="next" href="remote-postgres.html" title="Running a PostgreSQL database on another server"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="database-management"></a>Chapter�7.�Database Management</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�7.�Database Management</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="maint-performance.html" title="Diagnosing Performance Problems"><link rel="next" href="remote-postgres.html" title="Running a PostgreSQL database on another server"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="database-management"></a>Chapter�7.�Database Management</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr><tr><td width="40%" align="left">Diagnosing Performance Problems </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Running a PostgreSQL database on another server</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/database-management.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/db-api-detailed.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/db-api-detailed.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/db-api-detailed.html 5 May 2004 12:36:03 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/db-api-detailed.html 11 Jun 2004 10:17:37 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Database Access API</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="apm-design.html" title="Package Manager Design"><link rel="next" href="i18n-requirements.html" title="OpenACS Internationalization Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="apm-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="i18n-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api-detailed"></a>Database Access API</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a>. Revised and expanded by Roberto Mello (rmello at fslc dot usu dot edu), July 2002. </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Database Access API</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="apm-design.html" title="Package Manager Design"><link rel="next" href="i18n-requirements.html" title="OpenACS Internationalization Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="apm-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="i18n-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api-detailed"></a>Database Access API</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a>. Revised and expanded by Roberto Mello (rmello at fslc dot usu dot edu), July 2002. </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="itemizedlist"><ul type="disc"><li><p>Tcl procedures: /packages/acs-kernel/10-database-procs.tcl</p></li><li><p>Tcl initialization: /packages/acs-kernel/database-init.tcl</p></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="db-api-detailed-bigpicture"></a>The Big Picture</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/db-api.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/db-api.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/db-api.html 5 May 2004 12:36:03 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/db-api.html 11 Jun 2004 10:17:37 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>The OpenACS Database Access API</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="request-processor.html" title="The Request Processor"><link rel="next" href="templates.html" title="Using Templates in OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="request-processor.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="templates.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api"></a>The OpenACS Database Access API</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>The OpenACS Database Access API</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="request-processor.html" title="The Request Processor"><link rel="next" href="templates.html" title="Using Templates in OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="request-processor.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="templates.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api"></a>The OpenACS Database Access API</h2></div></div><div></div></div><p> By Pete Su and Jon Salz. Modified by Roberto Mello. </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="db-api-overview"></a>Overview</h3></div></div><div></div></div><p> One of OpenACS's great strengths is that code written for it is Index: openacs-4/packages/acs-core-docs/www/dev-guide.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/dev-guide.html,v diff -u -r1.24 -r1.25 --- openacs-4/packages/acs-core-docs/www/dev-guide.html 5 May 2004 12:36:03 -0000 1.24 +++ openacs-4/packages/acs-core-docs/www/dev-guide.html 11 Jun 2004 10:17:37 -0000 1.25 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�11.�Development Reference</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="tutorial-future-topics.html" title="Future Topics"><link rel="next" href="packages.html" title="OpenACS Packages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="dev-guide"></a>Chapter�11.�Development Reference</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using HTML Forms</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr><tr><td width="40%" align="left">Future Topics </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/dev-guide.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�11.�Development Reference</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="tutorial-future-topics.html" title="Future Topics"><link rel="next" href="packages.html" title="OpenACS Packages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="dev-guide"></a>Chapter�11.�Development Reference</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using HTML Forms</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr><tr><td width="40%" align="left">Future Topics </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/dev-guide.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/doc-standards.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/doc-standards.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/doc-standards.html 5 May 2004 12:36:03 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/doc-standards.html 11 Jun 2004 10:17:37 -0000 1.7 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�13.�Documentation Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="automated-testing-best-practices.html" title="Automated Testing"><link rel="next" href="docbook-primer.html" title="OpenACS Documentation Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="doc-standards"></a>Chapter�13.�Documentation Standards</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Testing </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Documentation Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/doc-standards.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�13.�Documentation Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="automated-testing-best-practices.html" title="Automated Testing"><link rel="next" href="docbook-primer.html" title="OpenACS Documentation Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="doc-standards"></a>Chapter�13.�Documentation Standards</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Testing </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Documentation Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/doc-standards.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/docbook-primer.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/docbook-primer.html,v diff -u -r1.36 -r1.37 --- openacs-4/packages/acs-core-docs/www/docbook-primer.html 5 May 2004 12:36:03 -0000 1.36 +++ openacs-4/packages/acs-core-docs/www/docbook-primer.html 11 Jun 2004 10:17:37 -0000 1.37 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Documentation Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="next" href="psgml-mode.html" title="Using PSGML mode in Emacs"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="doc-standards.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="psgml-mode.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="docbook-primer"></a>OpenACS Documentation Guide</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Documentation Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="next" href="psgml-mode.html" title="Using PSGML mode in Emacs"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="doc-standards.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="psgml-mode.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="docbook-primer"></a>OpenACS Documentation Guide</h2></div></div><div></div></div><p> By Claus Rasmussen, with additions by <a href="mailto:rmello@cc.usu.edu" target="_top">Roberto Mello</a> and the OpenACS Community </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-overview"></a>Overview of OpenACS Documentation</h3></div></div><div></div></div><p> @@ -36,7 +36,7 @@ In order to separate content and presentation, all OpenACS documentation will be marked up to conform to the <a href="http://docbook.org/xml/index.html" target="_top">DocBook XML DTD</a> - <a class="indexterm" name="id2558957"></a> + <a class="indexterm" name="id2527213"></a> This enables us to publish in a variety of formats and relieves each contributor of the burden of presentation, freeing him to focus on content and sharing knowledge. @@ -57,7 +57,7 @@ list of elements</a> and use more exotic features in your documents. The list is made up of SGML-elements but basically the same elements are valid in the XML DTD <span class="strong">as long as you remember to</span>: - <a class="indexterm" name="id2559006"></a> + <a class="indexterm" name="id2527262"></a> </p><div class="itemizedlist"><ul type="disc"><li><p> Always close your tags with corresponding end-tags and to <span class="strong">not use other tag minimization</span> @@ -106,7 +106,7 @@ The documentation for each package will make up a little "book" that is structured like this - examples are <span class="emphasis"><em>emphasized</em></span>: - <a class="indexterm" name="id2532565"></a> + <a class="indexterm" name="id2584339"></a> </p><pre class="programlisting"> book : <span class="strong">Docs for one package</span> - <span class="emphasis"><em>templating</em></span> @@ -130,20 +130,20 @@ <a href="http://openacs.org/cvs/openacs-4/packages/acs-core-docs/www/xml/engineering-standards" target="_top">sources of these DocBook documents</a> to get an idea of how they are tied together. </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-sections"></a>Headlines, Sections</h3></div></div><div></div></div><p> - <a class="indexterm" name="id2570356"></a> + <a class="indexterm" name="id2584432"></a> Given that your job starts at the <tt class="computeroutput">sect1</tt>-level, all your documents should open with a <a href="http://docbook.org/tdg/en/html/sect1.html" target="_top"><tt class="computeroutput"><sect1></tt></a>-tag and end with the corresponding <tt class="computeroutput"></sect1></tt>. </p><p> - <a class="indexterm" name="id2570379"></a> + <a class="indexterm" name="id2463033"></a> You need to feed every <tt class="computeroutput"><sect1></tt> two attributes. The first attribute, <tt class="computeroutput">id</tt>, is standard and can be used with all elements. It comes in very handy when interlinking between documents (more about this when talking about links in <a href="docbook-primer.html#dbprimer-links" title="Links">the section called “Links”</a>). The value of <tt class="computeroutput">id</tt> has to be unique throughout the book you're making since the <tt class="computeroutput">id</tt>'s in your <tt class="computeroutput">sect1</tt>'s will turn into filenames when the book is parsed into HTML. </p><p> - <a class="indexterm" name="id2570413"></a> + <a class="indexterm" name="id2579080"></a> The other attribute is <tt class="computeroutput">xreflabel</tt>. The value of this is the text that will appear as the link when referring to this <tt class="computeroutput">sect1</tt>. </p><p> @@ -158,7 +158,7 @@ </sect1> </pre><p> - <a class="indexterm" name="id2570444"></a> + <a class="indexterm" name="id2579108"></a> Inside this container your document will be split up into <a href="http://docbook.org/tdg/en/html/sect2.html" target="_top"><tt class="computeroutput"><sect2></tt></a>'s, each with the same requirements - <tt class="computeroutput">id</tt> and <tt class="computeroutput">xreflabel</tt> @@ -167,7 +167,7 @@ When it comes to naming your <tt class="computeroutput">sect2</tt>'s and below, prefix them with some abbreviation of the <tt class="computeroutput">id</tt> in the <tt class="computeroutput">sect1</tt> such as <tt class="computeroutput">requirements-overview</tt>. </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-code"></a>Code</h3></div></div><div></div></div><p> - <a class="indexterm" name="id2570499"></a> + <a class="indexterm" name="id2579164"></a> For displaying a snippet of code, a filename or anything else you just want to appear as a part of a sentence, we will use the tag <a href="http://docbook.org/tdg/en/html/computeroutput.html" target="_top"><tt class="computeroutput"><computeroutput></tt></a>. @@ -177,12 +177,12 @@ <a href="http://docbook.org/tdg/en/html/programlisting.html" target="_top"><tt class="computeroutput"><programlisting></tt></a> is used. Just wrap your code block in it; mono-spacing, indents and all that stuff is taken care of automatically. </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-links"></a>Links</h3></div></div><div></div></div><p> - <a class="indexterm" name="id2572280"></a> + <a class="indexterm" name="id2579210"></a> Linking falls into two different categories: inside the book you're making and outside: </p><div class="variablelist"><dl><dt><span class="term"><span class="strong">1. Inside linking, cross-referencing other parts of your book</span></span></dt><dd><p> By having unique <tt class="computeroutput">id</tt>'s you can cross-reference any part of your book with a simple tag, regardless of where that part is. - </p><p><a class="indexterm" name="id2572309"></a>Check out how I link to a subsection of the Developer's Guide:</p><p>Put this in your XML:</p><pre class="programlisting"> + </p><p><a class="indexterm" name="id2579240"></a>Check out how I link to a subsection of the Developer's Guide:</p><p>Put this in your XML:</p><pre class="programlisting"> - Find information about creating a package in <xref linkend="packages-making-a-package"></xref>. </pre><p>And the output is:</p><pre class="programlisting"> @@ -206,7 +206,7 @@ <tt class="computeroutput">packages-looks</tt>, the parser will try its best to explain where the link takes you. </p></dd><dt><span class="term"><span class="strong">2. Linking outside the documentation</span></span></dt><dd><p> - <a class="indexterm" name="id2572418"></a> + <a class="indexterm" name="id2532793"></a> If you're hyper-linking out of the documentation, it works almost the same way as HTML - the tag is just a little different @@ -227,7 +227,7 @@ do it, so if you want to start converting your documents right away, start out with the ones without graphics ;) </em></span> </p><p> - <a class="indexterm" name="id2542616"></a> + <a class="indexterm" name="id2532869"></a> To insert a graphic we use the elements <a href="http://docbook.org/tdg/en/html/mediaobject.html" target="_top"><tt class="computeroutput"><mediaobject></tt></a>, <a href="http://docbook.org/tdg/en/html/imageobject.html" target="_top"><tt class="computeroutput"><imageobject></tt></a>, @@ -253,7 +253,7 @@ Put your graphics in a separate directory ("images") and link to them only with relative paths. </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-lists"></a>Lists</h3></div></div><div></div></div><p> - <a class="indexterm" name="id2542683"></a> + <a class="indexterm" name="id2532936"></a> Here's how you make the DocBook equivalent of the three usual HTML-lists: </p><div class="variablelist"><dl><dt><span class="term"><span class="strong">1. How to make an <ul></span></span></dt><dd><p> Making an unordered list is pretty much like doing the same thing in HTML - if you close your <tt class="computeroutput"><li></tt>, that is. The only differences are that each list item has to be wrapped in something more, such as @@ -298,7 +298,7 @@ </variablelist> </pre></dd></dl></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-tables"></a>Tables</h3></div></div><div></div></div><p> - <a class="indexterm" name="id2574971"></a> + <a class="indexterm" name="id2548011"></a> DocBook supports several types of tables, but in most cases, the <a href="http://docbook.org/tdg/en/html/informaltable.html" target="_top"><tt class="computeroutput"><informaltable></tt></a> is enough: @@ -335,7 +335,7 @@ <a href="http://docbook.org/tdg/en/html/table.html" target="_top"><tt class="computeroutput"><table></tt></a> for an example. </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="dbprimer-emphasis"></a>Emphasis</h3></div></div><div></div></div><p> - <a class="indexterm" name="id2575077"></a> + <a class="indexterm" name="id2548116"></a> Our documentation uses two flavors of emphasis - italics and bold type. DocBook uses one - <a href="http://docbook.org/tdg/en/html/emphasis.html" target="_top"><tt class="computeroutput"><emphasis></tt></a>. </p><p> Index: openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html,v diff -u -r1.34 -r1.35 --- openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html 5 May 2004 12:36:03 -0000 1.34 +++ openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html 11 Jun 2004 10:17:37 -0000 1.35 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Constraint naming standard</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-versioning.html" title="Release Version Numbering"><link rel="next" href="eng-standards-filenaming.html" title="ACS File Naming and Formatting Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-versioning.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-filenaming.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-constraint-naming"></a>Constraint naming standard</h2></div></div><div></div></div><div class="authorblurb"><p>By Michael Bryzek</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Constraint naming standard</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-versioning.html" title="Release Version Numbering"><link rel="next" href="eng-standards-filenaming.html" title="ACS File Naming and Formatting Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-versioning.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-filenaming.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-constraint-naming"></a>Constraint naming standard</h2></div></div><div></div></div><div class="authorblurb"><p>By Michael Bryzek</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="eng-standards-constraint-naming-big-picture"></a>The Big Picture</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html,v diff -u -r1.34 -r1.35 --- openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html 5 May 2004 12:36:03 -0000 1.34 +++ openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html 11 Jun 2004 10:17:37 -0000 1.35 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>ACS File Naming and Formatting Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-constraint-naming.html" title="Constraint naming standard"><link rel="next" href="eng-standards-plsql.html" title="PL/SQL Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-constraint-naming.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-plsql.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-filenaming"></a>ACS File Naming and Formatting Standards</h2></div></div><div></div></div><div class="authorblurb"><p>By Michael Yoon and Aurelius Prochazka</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>ACS File Naming and Formatting Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-constraint-naming.html" title="Constraint naming standard"><link rel="next" href="eng-standards-plsql.html" title="PL/SQL Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-constraint-naming.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-plsql.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-filenaming"></a>ACS File Naming and Formatting Standards</h2></div></div><div></div></div><div class="authorblurb"><p>By Michael Yoon and Aurelius Prochazka</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p> Index: openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html 5 May 2004 12:36:03 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html 11 Jun 2004 10:17:37 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>PL/SQL Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-filenaming.html" title="ACS File Naming and Formatting Standards"><link rel="next" href="variables.html" title="Variables"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-filenaming.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="variables.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-plsql"></a>PL/SQL Standards</h2></div></div><div></div></div><div class="authorblurb"><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>PL/SQL Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-filenaming.html" title="ACS File Naming and Formatting Standards"><link rel="next" href="variables.html" title="Variables"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-filenaming.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="variables.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-plsql"></a>PL/SQL Standards</h2></div></div><div></div></div><div class="authorblurb"><p> By Richard Li and Yon Feldman </p> OpenACS docs are written by the named authors, and may be edited Index: openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html 5 May 2004 12:36:03 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html 11 Jun 2004 10:17:37 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Release Version Numbering</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="style-guide.html" title="OpenACS Style Guide"><link rel="next" href="eng-standards-constraint-naming.html" title="Constraint naming standard"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="style-guide.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-constraint-naming.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-versioning"></a>Release Version Numbering</h2></div></div><div></div></div><div class="authorblurb"><p>By Ron Henderson</p><p>Revised by Joel Aufrecht</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Release Version Numbering</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="style-guide.html" title="OpenACS Style Guide"><link rel="next" href="eng-standards-constraint-naming.html" title="Constraint naming standard"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="style-guide.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-constraint-naming.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-versioning"></a>Release Version Numbering</h2></div></div><div></div></div><div class="authorblurb"><p>By Ron Henderson</p><p>Revised by Joel Aufrecht</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p> Index: openacs-4/packages/acs-core-docs/www/eng-standards.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards.html,v diff -u -r1.20 -r1.21 --- openacs-4/packages/acs-core-docs/www/eng-standards.html 5 May 2004 12:36:03 -0000 1.20 +++ openacs-4/packages/acs-core-docs/www/eng-standards.html 11 Jun 2004 10:17:37 -0000 1.21 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�12.�Engineering Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="form-builder.html" title="Using HTML Forms"><link rel="next" href="style-guide.html" title="OpenACS Style Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="form-builder.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="style-guide.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="eng-standards"></a>Chapter�12.�Engineering Standards</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="style-guide.html">OpenACS Style Guide</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning.html">Release Version Numbering</a></span></dt><dt><span class="sect1"><a href="eng-standards-constraint-naming.html">Constraint naming standard</a></span></dt><dt><span class="sect1"><a href="eng-standards-filenaming.html">ACS File Naming and Formatting Standards</a></span></dt><dt><span class="sect1"><a href="eng-standards-plsql.html">PL/SQL Standards</a></span></dt><dt><span class="sect1"><a href="variables.html">Variables</a></span></dt><dt><span class="sect1"><a href="automated-testing-best-practices.html">Automated Testing</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="form-builder.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="style-guide.html">Next</a></td></tr><tr><td width="40%" align="left">Using HTML Forms </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Style Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/eng-standards.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�12.�Engineering Standards</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="form-builder.html" title="Using HTML Forms"><link rel="next" href="style-guide.html" title="OpenACS Style Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="form-builder.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="style-guide.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="eng-standards"></a>Chapter�12.�Engineering Standards</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="style-guide.html">OpenACS Style Guide</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning.html">Release Version Numbering</a></span></dt><dt><span class="sect1"><a href="eng-standards-constraint-naming.html">Constraint naming standard</a></span></dt><dt><span class="sect1"><a href="eng-standards-filenaming.html">ACS File Naming and Formatting Standards</a></span></dt><dt><span class="sect1"><a href="eng-standards-plsql.html">PL/SQL Standards</a></span></dt><dt><span class="sect1"><a href="variables.html">Variables</a></span></dt><dt><span class="sect1"><a href="automated-testing-best-practices.html">Automated Testing</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="form-builder.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="style-guide.html">Next</a></td></tr><tr><td width="40%" align="left">Using HTML Forms </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Style Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/eng-standards.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html,v diff -u -r1.24 -r1.25 --- openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html 5 May 2004 12:36:03 -0000 1.24 +++ openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html 11 Jun 2004 10:17:37 -0000 1.25 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>External Authentication Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="bootstrap-acs.html" title="Bootstrapping OpenACS"><link rel="next" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="bootstrap-acs.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="releasing-openacs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="ext-auth-requirements"></a>External Authentication Requirements</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2486515"></a>Vision</h3></div></div><div></div></div><p>People have plenty of usernames and passwords already, we +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>External Authentication Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="bootstrap-acs.html" title="Bootstrapping OpenACS"><link rel="next" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="bootstrap-acs.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="releasing-openacs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="ext-auth-requirements"></a>External Authentication Requirements</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2585742"></a>Vision</h3></div></div><div></div></div><p>People have plenty of usernames and passwords already, we don't want them to have yet another. We want people to be able to log in to OpenACS with the same password they use to log in to any other system.</p><p>Besides, administrators have better things to do than create @@ -44,7 +44,7 @@ only one implementation of the authentication API, namly the one included in OpenACS Core.</p></li><li><p>Authentication Driver API: The service contract which authentication drivers implement.</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="Diagram"></a>Conceptual Pictures</h3></div></div><div></div></div><p>Authentication:</p><p><span class="inlinemediaobject"><img src="images/ext-auth.png"></span> -</p><p>Account Management (NO PICTURE YET)</p><p>Batch Synchronization (NO PICTURE YET)</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="Requirements"></a>Requirements</h3></div></div><div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2524979"></a>New API</h4></div></div><div></div></div><div class="segmentedlist"><table border="1" cellpadding="3" cellspacing="0" width="90%"><tr><th width="15%">Feature</th><th width="8%">Status</th><th width="77%">Description</th></tr><thead><tr></tr></thead><tbody><tr><td>EXT-AUTH-01</td><td>A</td><td>Extend Authentication/Acct Status API</td></tr><tr><td>EXT-AUTH-03</td><td>A</td><td>Account Creation API</td></tr><tr><td>EXT-AUTH-05</td><td>A</td><td>Password Management API</td></tr><tr><td>EXT-AUTH-30</td><td>A</td><td>Authority Management API</td></tr></tbody></table></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="Login"></a>Login</h4></div></div><div></div></div><div class="segmentedlist"><table border="1" cellpadding="3" cellspacing="0" width="90%"><tr><th width="15%">Feature</th><th width="8%">Status</th><th width="77%">Description</th></tr><thead><tr></tr></thead><tbody><tr><td>EXT-AUTH-04</td><td>A</td><td>Rewrite login, register, and admin pages to use APIs</td></tr><tr><td>EXT-AUTH-38</td><td>A</td><td>ad_form complain feature</td></tr><tr><td>EXT-AUTH-19</td><td>A</td><td>Rewrite password recovery to use API</td></tr><tr><td>EXT-AUTH-21</td><td>A</td><td>Rewrite email verification with API</td></tr><tr><td>EXT-AUTH-28</td><td>A</td><td>Username is email switch</td></tr></tbody></table></div><p>Users will log in using a username, a authority, and a +</p><p>Account Management (NO PICTURE YET)</p><p>Batch Synchronization (NO PICTURE YET)</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="Requirements"></a>Requirements</h3></div></div><div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2537715"></a>New API</h4></div></div><div></div></div><div class="segmentedlist"><table border="1" cellpadding="3" cellspacing="0" width="90%"><tr><th width="15%">Feature</th><th width="8%">Status</th><th width="77%">Description</th></tr><thead><tr></tr></thead><tbody><tr><td>EXT-AUTH-01</td><td>A</td><td>Extend Authentication/Acct Status API</td></tr><tr><td>EXT-AUTH-03</td><td>A</td><td>Account Creation API</td></tr><tr><td>EXT-AUTH-05</td><td>A</td><td>Password Management API</td></tr><tr><td>EXT-AUTH-30</td><td>A</td><td>Authority Management API</td></tr></tbody></table></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="Login"></a>Login</h4></div></div><div></div></div><div class="segmentedlist"><table border="1" cellpadding="3" cellspacing="0" width="90%"><tr><th width="15%">Feature</th><th width="8%">Status</th><th width="77%">Description</th></tr><thead><tr></tr></thead><tbody><tr><td>EXT-AUTH-04</td><td>A</td><td>Rewrite login, register, and admin pages to use APIs</td></tr><tr><td>EXT-AUTH-38</td><td>A</td><td>ad_form complain feature</td></tr><tr><td>EXT-AUTH-19</td><td>A</td><td>Rewrite password recovery to use API</td></tr><tr><td>EXT-AUTH-21</td><td>A</td><td>Rewrite email verification with API</td></tr><tr><td>EXT-AUTH-28</td><td>A</td><td>Username is email switch</td></tr></tbody></table></div><p>Users will log in using a username, a authority, and a password. The authority is the source for user/password verification. OpenACS can be an authority itself. </p><p>Each user in OpenACS will belong to exactly one authority, which can either be the "local" OpenACS users table, in which case the Index: openacs-4/packages/acs-core-docs/www/filename.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/filename.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/filename.html 5 May 2004 12:36:03 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/filename.html 11 Jun 2004 10:17:37 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Detailed Design Documentation Template</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="nxml-mode.html" title="Using nXML mode in Emacs"><link rel="next" href="requirements-template.html" title="System/Application Requirements Template"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="nxml-mode.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="requirements-template.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="filename"></a>Detailed Design Documentation Template</h2></div></div><div></div></div><p>By <a href="mailto:youremail@example.com" target="_top">You</a></p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="yourpackage-design-start-note"></a>Start Note</h3></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Detailed Design Documentation Template</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="nxml-mode.html" title="Using nXML mode in Emacs"><link rel="next" href="requirements-template.html" title="System/Application Requirements Template"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="nxml-mode.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="requirements-template.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="filename"></a>Detailed Design Documentation Template</h2></div></div><div></div></div><p>By <a href="mailto:youremail@example.com" target="_top">You</a></p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="yourpackage-design-start-note"></a>Start Note</h3></div></div><div></div></div><p> <span class="emphasis"><em>NOTE: Some of the sections of this template may not apply to your package, e.g. there may be no user-visible UI elements for a component of the OpenACS Core. Furthermore, it may be easier in some circumstances Index: openacs-4/packages/acs-core-docs/www/for-everyone.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/for-everyone.html,v diff -u -r1.17 -r1.18 --- openacs-4/packages/acs-core-docs/www/for-everyone.html 5 May 2004 12:36:03 -0000 1.17 +++ openacs-4/packages/acs-core-docs/www/for-everyone.html 11 Jun 2004 10:17:37 -0000 1.18 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�I.�OpenACS For Everyone</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="index.html" title="OpenACS Core Documentation"><link rel="next" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="general-documents.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="for-everyone"></a>OpenACS For Everyone</h1></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="general-documents.html">1. High level information: What is OpenACS?</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes.html">OpenACS Release Notes</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="general-documents.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Core Documentation </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�1.�High level information: What is OpenACS?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/for-everyone.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Part�I.�OpenACS For Everyone</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="index.html" title="OpenACS Core Documentation"><link rel="next" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="general-documents.html">Next</a></td></tr></table><hr></div><div class="part" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="for-everyone"></a>OpenACS For Everyone</h1></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="general-documents.html">1. High level information: What is OpenACS?</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes.html">OpenACS Release Notes</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="general-documents.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Core Documentation </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter�1.�High level information: What is OpenACS?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/for-everyone.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/form-builder.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/form-builder.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/form-builder.html 5 May 2004 12:36:03 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/form-builder.html 11 Jun 2004 10:17:37 -0000 1.15 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using HTML Forms</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="programming-with-aolserver.html" title="Programming with AOLserver"><link rel="next" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="programming-with-aolserver.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="form-builder"></a>Using HTML Forms</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="ad-form-overview"></a>Overview</h3></div></div><div></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="multi-part-elements"></a>Multi-part Elements</h3></div></div><div></div></div><p>Some elements have more than one choice, or can submit more than one value.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2504933"></a>SELECT elements</h4></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p><b>Creating the form element.�</b>Populate a list of lists with values for the option list.</p><pre class="programlisting">set foo_options [db_list_of_lists foo_option_list " +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using HTML Forms</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="programming-with-aolserver.html" title="Programming with AOLserver"><link rel="next" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="programming-with-aolserver.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="form-builder"></a>Using HTML Forms</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="ad-form-overview"></a>Overview</h3></div></div><div></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="multi-part-elements"></a>Multi-part Elements</h3></div></div><div></div></div><p>Some elements have more than one choice, or can submit more than one value.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2456310"></a>SELECT elements</h4></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p><b>Creating the form element.�</b>Populate a list of lists with values for the option list.</p><pre class="programlisting">set foo_options [db_list_of_lists foo_option_list " select foo, foo_id from foos @@ -9,6 +9,39 @@ {options $foo_options} }</pre><p>This will result in a single name/value pair coming back in the submitted form. Handle this within the same ad_form structure, in the <tt class="computeroutput">-new_data</tt> and <tt class="computeroutput">-edit_data</tt>. In the example, it is available as <tt class="computeroutput">$foo</tt></p></li></ol></div><p>See also the <a href="http://www.w3.org/TR/html401/interact/forms.html#h-17.6" target="_top">W3C spec for "The SELECT, OPTGROUP, and OPTION elements"</a>. - </p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="errors"></a>Common Errors</h3></div></div><div></div></div><p>Here are some common errors and what to do when you - encounter them:</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2525837"></a>Error when selecting values</h4></div></div><div></div></div><p>This generally happens when there is an error in your + </p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="refreshing"></a>Using refreshes to pull additional information from the + database</h3></div></div><div></div></div><p>A situation you may run into often is where you want to pull + in form items from a sub-category when the first category is + selected. Ad_form makes this fairly easy to do. In the definition + of your form element, include an html section</p><pre class="programlisting"> {pm_task_id:integer(select),optional + {label "Subject"} + {options {$task_options}} + {html {onChange "document.form_name.__refreshing_p.value='1';submit()"}} + {value $pm_task_id} + } + </pre><p>What this will do is set the value for pm_task_id and all the + other form elements, and resubmit the form. If you then include a + block that extends the form, you'll have the opportunity to add in + subcategories: + </p><pre class="programlisting"> if {[exists_and_not_null pm_task_id]} { + db_1row get_task_values { } + ad_form -extend -name form_name -form { ... } + </pre><p>Note that you will get strange results when you try to set + the values for the form. You'll need to set them explicitly in an + -on_refresh section of your ad_form. In that section, you'll get + the values from the database, and set the values as so:</p><pre class="programlisting"> db_1row get_task_values { } + template::element set_value form_name estimated_hours_work $estimated_hours_work + </pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="form-troubleshooting"></a>Troubleshooting</h3></div></div><div></div></div><p>A good way to troubleshoot when you're using ad_form is to + add the following code at the top of the .tcl page (thanks Jerry + Asher):</p><pre class="programlisting"> +ns_log notice it's my page! +set mypage [ns_getform] +if {[string equal "" $mypage]} { + ns_log notice no form was submitted on my page +} else { + ns_log notice the following form was submitted on my page + ns_set print $mypage +} + </pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="errors"></a>Common Errors</h3></div></div><div></div></div><p>Here are some common errors and what to do when you + encounter them:</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2585945"></a>Error when selecting values</h4></div></div><div></div></div><p>This generally happens when there is an error in your query.</p></div></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="programming-with-aolserver.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="eng-standards.html">Next</a></td></tr><tr><td width="40%" align="left">Programming with AOLserver </td><td width="20%" align="center"><a accesskey="u" href="dev-guide.html">Up</a></td><td width="40%" align="right"> Chapter�12.�Engineering Standards</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/form-builder.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/general-documents.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/general-documents.html,v diff -u -r1.17 -r1.18 --- openacs-4/packages/acs-core-docs/www/general-documents.html 5 May 2004 12:36:03 -0000 1.17 +++ openacs-4/packages/acs-core-docs/www/general-documents.html 11 Jun 2004 10:17:37 -0000 1.18 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�1.�High level information: What is OpenACS?</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="for-everyone.html" title="Part�I.�OpenACS For Everyone"><link rel="previous" href="for-everyone.html" title="Part�I.�OpenACS For Everyone"><link rel="next" href="openacs-overview.html" title="Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="for-everyone.html">Prev</a> </td><th width="60%" align="center">Part�I.�OpenACS For Everyone</th><td width="20%" align="right"> <a accesskey="n" href="openacs-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="general-documents"></a>Chapter�1.�High level information: What is OpenACS?</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="openacs-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes.html">OpenACS Release Notes</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="for-everyone.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="openacs-overview.html">Next</a></td></tr><tr><td width="40%" align="left">Part�I.�OpenACS For Everyone </td><td width="20%" align="center"><a accesskey="u" href="for-everyone.html">Up</a></td><td width="40%" align="right"> Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/general-documents.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�1.�High level information: What is OpenACS?</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="for-everyone.html" title="Part�I.�OpenACS For Everyone"><link rel="previous" href="for-everyone.html" title="Part�I.�OpenACS For Everyone"><link rel="next" href="openacs-overview.html" title="Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="for-everyone.html">Prev</a> </td><th width="60%" align="center">Part�I.�OpenACS For Everyone</th><td width="20%" align="right"> <a accesskey="n" href="openacs-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="general-documents"></a>Chapter�1.�High level information: What is OpenACS?</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="openacs-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes.html">OpenACS Release Notes</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="for-everyone.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="openacs-overview.html">Next</a></td></tr><tr><td width="40%" align="left">Part�I.�OpenACS For Everyone </td><td width="20%" align="center"><a accesskey="u" href="for-everyone.html">Up</a></td><td width="40%" align="right"> Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/general-documents.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/groups-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/groups-design.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/groups-design.html 5 May 2004 12:36:03 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/groups-design.html 11 Jun 2004 10:17:37 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Groups Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="groups-requirements.html" title="Groups Requirements"><link rel="next" href="subsites-requirements.html" title="Subsites Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="groups-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="subsites-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="groups-design"></a>Groups Design</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> and Mark Thomas</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Groups Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="groups-requirements.html" title="Groups Requirements"><link rel="next" href="subsites-requirements.html" title="Subsites Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="groups-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="subsites-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="groups-design"></a>Groups Design</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> and Mark Thomas</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="groups-design-essentials"></a>Essentials</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>User directory</p></li><li><p>Sitewide administrator directory</p></li><li><p>Subsite administrator directory</p></li><li><p>TCL script directory</p></li><li><p><a href="groups-requirements.html">OpenACS 4 Groups Requirements</a></p></li><li><p>Data model</p></li><li><p>PL/SQL file </p><div class="itemizedlist"><ul type="circle"><li><p><a href="/doc/sql/display-sql?url=community-core-create.sql&package_key=acs-kernel" target="_top"> Index: openacs-4/packages/acs-core-docs/www/groups-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/groups-requirements.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/groups-requirements.html 5 May 2004 12:36:03 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/groups-requirements.html 11 Jun 2004 10:17:37 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Groups Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="permissions-design.html" title="Permissions Design"><link rel="next" href="groups-design.html" title="Groups Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="groups-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="groups-requirements"></a>Groups Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a>, Mark Thomas</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Groups Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="permissions-design.html" title="Permissions Design"><link rel="next" href="groups-design.html" title="Groups Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="groups-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="groups-requirements"></a>Groups Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a>, Mark Thomas</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="groups-requirements-intro"></a>Introduction</h3></div></div><div></div></div><p>Almost all database-backed websites have users, and need to model the Index: openacs-4/packages/acs-core-docs/www/high-avail.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/high-avail.html,v diff -u -r1.9 -r1.10 --- openacs-4/packages/acs-core-docs/www/high-avail.html 5 May 2004 12:36:03 -0000 1.9 +++ openacs-4/packages/acs-core-docs/www/high-avail.html 11 Jun 2004 10:17:37 -0000 1.10 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>High Availability/High Performance Configurations</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-next-add-server.html" title="Running multiple services on one machine"><link rel="next" href="maintenance-deploy.html" title="Staged Deployment for Production Networks"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-add-server.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="maintenance-deploy.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="high-avail"></a>High Availability/High Performance Configurations</h2></div></div><div></div></div><p>See also <a href="remote-postgres.html" title="Running a PostgreSQL database on another server">the section called “Running a PostgreSQL database on another server”</a>.</p><div class="figure"><a name="id2520162"></a><p class="title"><b>Figure�6.1.�Multiple-server configuration</b></p><div class="mediaobject" align="center"><img src="images/hpha.png" align="middle" alt="Multiple-server configuration"></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-add-server.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="maintenance-deploy.html">Next</a></td></tr><tr><td width="40%" align="left">Running multiple services on one machine </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Staged Deployment for Production Networks</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/high-avail.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>High Availability/High Performance Configurations</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-next-add-server.html" title="Running multiple services on one machine"><link rel="next" href="maintenance-deploy.html" title="Staged Deployment for Production Networks"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-add-server.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="maintenance-deploy.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="high-avail"></a>High Availability/High Performance Configurations</h2></div></div><div></div></div><p>See also <a href="remote-postgres.html" title="Running a PostgreSQL database on another server">the section called “Running a PostgreSQL database on another server”</a>.</p><div class="figure"><a name="id2517082"></a><p class="title"><b>Figure�6.1.�Multiple-server configuration</b></p><div class="mediaobject" align="center"><img src="images/hpha.png" align="middle" alt="Multiple-server configuration"></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-add-server.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="maintenance-deploy.html">Next</a></td></tr><tr><td width="40%" align="left">Running multiple services on one machine </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Staged Deployment for Production Networks</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/high-avail.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/how-do-I.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/how-do-I.html,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/how-do-I.html 5 May 2004 12:36:03 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/how-do-I.html 11 Jun 2004 10:17:37 -0000 1.13 @@ -1,8 +1,6 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How Do I?</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter�4.�Configuring a new OpenACS Site"><link rel="previous" href="configuring-new-site.html" title="Chapter�4.�Configuring a new OpenACS Site"><link rel="next" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><th width="60%" align="center">Chapter�4.�Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="upgrade.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="how-do-I"></a>How Do I?</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2469856"></a>How do I edit the front page of a new site through a web interface?</h3></div></div><div></div></div><p>The easiest way is to install the Edit-This-Page package.</p><div class="orderedlist"><ol type="1"><li><p>Log in to the web site as an administrator.</p></li><li><p>Click on Admin > Install Software > Install from OpenACS Repository / Install new application</p></li><li> - Choose Edit This Page and install - </li><li><p>Follow the instructions within <a href="/doc/edit-this-page/install" target="_top">Edit This Page</a> (the link will only work after Edit This Page is installed).</p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2454205"></a>How do I let anybody who registers post to a weblog?</h3></div></div><div></div></div><p>Go to <tt class="computeroutput"><a href="/admin/permissions" target="_top">/admin/permissions</a></tt> and grant Create to Registered Users</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2483834"></a>How do I replace the front page of a new site with the front page of an application on that site</h3></div></div><div></div></div><p>Suppose you install a new site and install Weblogger, and you want all visitors to see weblogger automatically.</p><div class="orderedlist"><ol type="1"><li><p>On the front page, click the <tt class="computeroutput"><a href="/admin" target="_top">Admin</a></tt> button.</p></li><li><p>On the administration page, click <tt class="computeroutput">Parameters</tt> link.</p></li><li><p>Change the parameter <tt class="computeroutput">IndexRedirectUrl</tt> to be the URI of the desired application. For a default weblogger installation, this would be <tt class="computeroutput"><b class="userinput"><tt>weblogger/</tt></b></tt>. Note the trailing slash.</p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2518520"></a>How do I put custom functionality on front page of a new site?</h3></div></div><div></div></div><p>Every page within an OpenACS site is part of a <span class="strong">subsite</span> <a href="/doc/acs-subsite" target="_top">More information)</a>. The home page of the entire site is the front page is a special, default instance of a subsite, served from <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/www</tt>. If an index page is not found there, the default index page for all subsites is used. To customize the code on the front page, copy the default index page from the Subsite package to the Main site and edit it:</p><div class="orderedlist"><ol type="1"><li><pre class="screen"><b class="userinput"><tt>cp <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-subsite/www/index*</tt> <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/www</tt></tt></b></pre></li><li><p>Edit the new <tt class="computeroutput">index.adp</tt> to change the text; you shouldn't need to edit <tt class="computeroutput">index.tcl</tt> unless you are adding new functionality.</p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2518587"></a>How do I change the site-wide style?</h3></div></div><div></div></div><p>Almost all pages on an OpenACS site use <a href="/doc/acs-templating" target="_top">ACS Templating</a>, and so their appearance is driven by a layer of different files. Let's examine how this works:</p><div class="itemizedlist"><ul type="disc"><li><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How Do I?</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter�4.�Configuring a new OpenACS Site"><link rel="previous" href="configuring-new-site.html" title="Chapter�4.�Configuring a new OpenACS Site"><link rel="next" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><th width="60%" align="center">Chapter�4.�Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="upgrade.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="how-do-I"></a>How Do I?</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2502985"></a>How do I edit the front page of a new site through a web interface?</h3></div></div><div></div></div><p>The easiest way is to install the Edit-This-Page package.</p><div class="orderedlist"><ol type="1"><li><p>Log in to the web site as an administrator.</p></li><li><p>Click on Admin > Install Software > Install from OpenACS Repository / Install new application</p></li><li><p>Choose Edit This Page and install</p></li><li><p>Follow the instructions within <a href="/doc/edit-this-page/install" target="_top">Edit This Page</a> (the link will only work after Edit This Page is installed).</p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2515681"></a>How do I let anybody who registers post to a weblog?</h3></div></div><div></div></div><p>Go to <tt class="computeroutput"><a href="/admin/permissions" target="_top">/admin/permissions</a></tt> and grant Create to Registered Users</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2515697"></a>How do I replace the front page of a new site with the front page of an application on that site</h3></div></div><div></div></div><p>Suppose you install a new site and install Weblogger, and you want all visitors to see weblogger automatically.</p><div class="orderedlist"><ol type="1"><li><p>On the front page, click the <tt class="computeroutput"><a href="/admin" target="_top">Admin</a></tt> button.</p></li><li><p>On the administration page, click <tt class="computeroutput">Parameters</tt> link.</p></li><li><p>Change the parameter <tt class="computeroutput">IndexRedirectUrl</tt> to be the URI of the desired application. For a default weblogger installation, this would be <tt class="computeroutput"><b class="userinput"><tt>weblogger/</tt></b></tt>. Note the trailing slash.</p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2467106"></a>How do I put custom functionality on front page of a new site?</h3></div></div><div></div></div><p>Every page within an OpenACS site is part of a <span class="strong">subsite</span> <a href="/doc/acs-subsite" target="_top">More information)</a>. The home page of the entire site is the front page is a special, default instance of a subsite, served from <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www</tt>. If an index page is not found there, the default index page for all subsites is used. To customize the code on the front page, copy the default index page from the Subsite package to the Main site and edit it:</p><div class="orderedlist"><ol type="1"><li><pre class="screen"><b class="userinput"><tt>cp <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-subsite/www/index*</tt> <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www</tt></tt></b></pre></li><li><p>Edit the new <tt class="computeroutput">index.adp</tt> to change the text; you shouldn't need to edit <tt class="computeroutput">index.tcl</tt> unless you are adding new functionality.</p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2514101"></a>How do I change the site-wide style?</h3></div></div><div></div></div><p>Almost all pages on an OpenACS site use <a href="/doc/acs-templating" target="_top">ACS Templating</a>, and so their appearance is driven by a layer of different files. Let's examine how this works:</p><div class="itemizedlist"><ul type="disc"><li><p> A templated page uses an ADP/TCL pair. The first line in the ADP file is usually: - </p><pre class="programlisting"><master></pre><p>If it appears exactly like this, without any arguments, the template processer uses <tt class="computeroutput">default-master</tt> for that subsite. For pages in <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/www</tt>, this is <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/www/default-master.adp</tt> and the associated .tcl file. - </p></li><li><p>The <tt class="computeroutput">default-master</tt> is itself a normal ADP page. It draws the subsite navigation elements and invokes <tt class="computeroutput">site-master</tt> (<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/www/site-master.adp</tt> and .tcl)</p></li><li><p>The <tt class="computeroutput">site-master</tt> draws site-wide navigation elements and invokes <tt class="computeroutput">blank-master</tt> (<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/www/blank-master.adp</tt> and .tcl). </p></li><li><p><tt class="computeroutput">Blank-master</tt> does HTML housekeeping and provides a framework for special sitewide navigation "meta" elements such as Translator widgets and Admin widgets.</p></li></ul></div><div class="figure"><a name="id2516343"></a><p class="title"><b>Figure�4.1.�Site Templates</b></p><div class="mediaobject"><img src="images/site-templates.png" alt="Site Templates"></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2516361"></a>How do I diagnose a permissions problem?</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Steps to Reproduce.�</b>The events package does not allow users to register for new events.</p><div class="orderedlist"><ol type="1"><li><p>Go to the http://yourserver.net/events as a visitor (ie, log out and, if necessary, clear cookies). This in on a 4.6.3 site with events version 0.1d3.</p></li><li><p>Select an available event</p></li><li><p>A link such as <tt class="computeroutput">Registration: Deadline is 03/15/2004 10:00am. + </p><pre class="programlisting"><master></pre><p>If it appears exactly like this, without any arguments, the template processer uses <tt class="computeroutput">default-master</tt> for that subsite. For pages in <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www</tt>, this is <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www/default-master.adp</tt> and the associated .tcl file. + </p></li><li><p>The <tt class="computeroutput">default-master</tt> is itself a normal ADP page. It draws the subsite navigation elements and invokes <tt class="computeroutput">site-master</tt> (<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www/site-master.adp</tt> and .tcl)</p></li><li><p>The <tt class="computeroutput">site-master</tt> draws site-wide navigation elements and invokes <tt class="computeroutput">blank-master</tt> (<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/www/blank-master.adp</tt> and .tcl). </p></li><li><p><tt class="computeroutput">Blank-master</tt> does HTML housekeeping and provides a framework for special sitewide navigation "meta" elements such as Translator widgets and Admin widgets.</p></li></ul></div><div class="figure"><a name="id2514202"></a><p class="title"><b>Figure�4.1.�Site Templates</b></p><div class="mediaobject"><img src="images/site-templates.png" alt="Site Templates"></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2514220"></a>How do I diagnose a permissions problem?</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Steps to Reproduce.�</b>The events package does not allow users to register for new events.</p><div class="orderedlist"><ol type="1"><li><p>Go to the http://yourserver.net/events as a visitor (ie, log out and, if necessary, clear cookies). This in on a 4.6.3 site with events version 0.1d3.</p></li><li><p>Select an available event</p></li><li><p>A link such as <tt class="computeroutput">Registration: Deadline is 03/15/2004 10:00am. � Login or sign up to register for this event.</tt> is visible. Click on "Login or sign up" - </p></li><li><p>Complete a new registration. Afterwards, you should be redirected back to the same page.</p></li></ol></div><p>Actual Results: The page says <tt class="computeroutput">"You do not have permission to register for this event."</tt></p><p>Expected results: A link or form to sign up for the event is shown.</p></li><li><p><b>Finding the problem.�</b>We start with the page that has the error. In the URL it's <tt class="computeroutput">http://myserver.net/events/event-info.tcl</tt>, so open the file <tt class="computeroutput">/var/lib/aolserver/service0/packages/events/www/event-info.tcl</tt>. It contains this line:</p><pre class="programlisting">set can_register_p [events::security::can_register_for_event_p -event_id $event_id]</pre><p>We need to know what that procedure does, so go to <a href="/api-doc" target="_top">/api-doc</a>, paste events::security::can_register_for_event_p into the ACS Tcl API Search box, and click Feeling Lucky. The next pages shows the proc, and we click "show source" to see more information. The body of the proc is simply</p><pre class="programlisting">return [permission::permission_p -party_id $user_id -object_id $event_id -privilege write]</pre><p>This means that a given user must have the write privilige on the event in order to register. Let's assume that the priviliges inherit, so that if a user has the write privilige on the whole package, they will have the write privilege on the event.</p></li><li><p><b>Setting Permissions.�</b>A permission has three parts: the privilige, the object of the privilige, and the subject being granted the privilige. In this case the privilige is "write," the object is the Events package, and the subject is all Registered Users.</p><div class="orderedlist"><ol type="1"><li><p>To grant permissions on a package, start at the <a href="/admin/site-map" target="_top">site map</a>. Find the event package and click "Set permissions". </p></li><li><p>Click "Grant Permission"</p></li><li><p>Grant the write permission to Registered Users.</p><div class="figure"><a name="id2517838"></a><p class="title"><b>Figure�4.2.�Granting Permissions</b></p><div class="mediaobject"><img src="images/grant-perm-463.png" alt="Granting Permissions"></div></div></li></ol></div><p>OpenACS 5.0 offers a prettier version at <a href="/admin/applications" target="_top">/admin/applications</a>.</p><div class="figure"><a name="id2517865"></a><p class="title"><b>Figure�4.3.�Granting Permissions in 5.0</b></p><div class="mediaobject"><img src="images/grant-perm-50.png" alt="Granting Permissions in 5.0"></div></div></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�4.�Configuring a new OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Chapter�5.�Upgrading</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/how-do-I.html#comments">View comments on this page at openacs.org</a></center></body></html> + </p></li><li><p>Complete a new registration. Afterwards, you should be redirected back to the same page.</p></li></ol></div><p>Actual Results: The page says <tt class="computeroutput">"You do not have permission to register for this event."</tt></p><p>Expected results: A link or form to sign up for the event is shown.</p></li><li><p><b>Finding the problem.�</b>We start with the page that has the error. In the URL it's <tt class="computeroutput">http://myserver.net/events/event-info.tcl</tt>, so open the file <tt class="computeroutput">/var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/events/www/event-info.tcl</tt>. It contains this line:</p><pre class="programlisting">set can_register_p [events::security::can_register_for_event_p -event_id $event_id]</pre><p>We need to know what that procedure does, so go to <a href="/api-doc" target="_top">/api-doc</a>, paste events::security::can_register_for_event_p into the ACS Tcl API Search box, and click Feeling Lucky. The next pages shows the proc, and we click "show source" to see more information. The body of the proc is simply</p><pre class="programlisting">return [permission::permission_p -party_id $user_id -object_id $event_id -privilege write]</pre><p>This means that a given user must have the write privilige on the event in order to register. Let's assume that the priviliges inherit, so that if a user has the write privilige on the whole package, they will have the write privilege on the event.</p></li><li><p><b>Setting Permissions.�</b>A permission has three parts: the privilige, the object of the privilige, and the subject being granted the privilige. In this case the privilige is "write," the object is the Events package, and the subject is all Registered Users.</p><div class="orderedlist"><ol type="1"><li><p>To grant permissions on a package, start at the <a href="/admin/site-map" target="_top">site map</a>. Find the event package and click "Set permissions". </p></li><li><p>Click "Grant Permission"</p></li><li><p>Grant the write permission to Registered Users.</p><div class="figure"><a name="id2514404"></a><p class="title"><b>Figure�4.2.�Granting Permissions</b></p><div class="mediaobject"><img src="images/grant-perm-463.png" alt="Granting Permissions"></div></div></li></ol></div><p>OpenACS 5.0 offers a prettier version at <a href="/admin/applications" target="_top">/admin/applications</a>.</p><div class="figure"><a name="id2514431"></a><p class="title"><b>Figure�4.3.�Granting Permissions in 5.0</b></p><div class="mediaobject"><img src="images/grant-perm-50.png" alt="Granting Permissions in 5.0"></div></div></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�4.�Configuring a new OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Chapter�5.�Upgrading</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/how-do-I.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/i18n-convert.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-convert.html,v diff -u -r1.10 -r1.11 --- openacs-4/packages/acs-core-docs/www/i18n-convert.html 5 May 2004 12:36:03 -0000 1.10 +++ openacs-4/packages/acs-core-docs/www/i18n-convert.html 11 Jun 2004 10:17:37 -0000 1.11 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to Internationalize a Package</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-introduction.html" title="How Internationalization/Localization works in OpenACS"><link rel="next" href="i18n-design.html" title="Design Notes"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-introduction.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-convert"></a>How to Internationalize a Package</h2></div></div><div></div></div><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to Internationalize a Package</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-introduction.html" title="How Internationalization/Localization works in OpenACS"><link rel="next" href="i18n-design.html" title="Design Notes"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-introduction.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-convert"></a>How to Internationalize a Package</h2></div></div><div></div></div><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p> For multilingual websites we recommend using the UTF8 charset. In order for AOLserver to use utf8 you need to set the config parameters OutputCharset and @@ -63,14 +63,15 @@ are always is done with one of the valid lookups described above. The script further assumes that you have perl installed and in your path. Run the script like this: - </p><tt class="computeroutput"> - acs-lang/bin/check-catalog.sh package_key - </tt><p> + <tt class="computeroutput"> + acs-lang/bin/check-catalog.sh package_key + </tt> + </p><p> where package_key is the key of the package that you want to test. If you don't provide the package_key argument then all packages with catalog files will be checked. The script will run its checks primarily on en_US xml catalog files. - </p></li></ol></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2586186"></a>Avoiding common i18n mistakes</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Replace complicated keys with longer, simpler keys.�</b>When writing in one language, it is possible to create clever code to make correct text. In English, for example, you can put an <tt class="computeroutput">if</tt> command at the end of a word which adds "s" if a count is anything but 1. This pluralizes nouns correctly based on the data. However, it is confusing to read and, when internationalized, may result in message keys that are both confusing and impossible to set correctly in some languages. While internationalizing, watch out that the automate converter does not create such keys. Also, refactor compound text as you encounter it.</p><p>The automated system can easily get confused by tags within message texts, so that it tries to create two or three message keys for one long string with a tag in the middle. In these cases, uncheck those keys during the conversion and then edit the files directly. For example, this code:</p><pre class="programlisting"> <p class="form-help-text"><b>Invitations</b> are sent, + </p></li></ol></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2579966"></a>Avoiding common i18n mistakes</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Replace complicated keys with longer, simpler keys.�</b>When writing in one language, it is possible to create clever code to make correct text. In English, for example, you can put an <tt class="computeroutput">if</tt> command at the end of a word which adds "s" if a count is anything but 1. This pluralizes nouns correctly based on the data. However, it is confusing to read and, when internationalized, may result in message keys that are both confusing and impossible to set correctly in some languages. While internationalizing, watch out that the automate converter does not create such keys. Also, refactor compound text as you encounter it.</p><p>The automated system can easily get confused by tags within message texts, so that it tries to create two or three message keys for one long string with a tag in the middle. In these cases, uncheck those keys during the conversion and then edit the files directly. For example, this code:</p><pre class="programlisting"> <p class="form-help-text"><b>Invitations</b> are sent, when this wizard is completed and casting begins.</p></pre><p>has a bold tag which confuses the converter into thinking there are two message keys for the text beginning "Invitations ..." where there should be one:</p><div class="mediaobject" align="center"><img src="images/i18n-3.png" align="middle"></div><p>Instead, we cancel those keys, edit the file manually, and put in a single temporary message tag:</p><pre class="programlisting"> <p class="form-help-text"> <#Invitations_are_sent <b>Invitations</b> are sent, when this wizard is completed and casting begins.#> </p></pre><p>Complex if statements may produce convoluted message keys that are very hard to localize. Rewrite these if statements. For example:</p><pre class="programlisting">Select which case <if @simulation.casting_type@ eq "open">and @@ -155,6 +156,6 @@ <msg key="Fix_1">for</msg> <msg key="Fix_2">for Bugs</msg></pre><p>Another example: <tt class="computeroutput">Bug-tracker component maintainer"</tt> was converted to <tt class="computeroutput">"[_ bug-tracker.Bug-tracker]"</tt>. Instead, it should be <tt class="computeroutput">bug_tracker_component_maintainer</tt>.</p></li><li><p><b>Translations in Avoid "clever" message reuse.�</b>Translations may need to differ depending on the context in which the message appears. -</p></li><li><p><b>Quoting in the message catalog for tcl.�</b>Watch out for quoting and escaping when editing text that is also code. For example, the original string </p><pre class="programlisting">set title "Patch \"$patch_summary\" is nice."</pre><p>breaks if the message text retains all of the escaping that was in the tcl command:</p><pre class="programlisting"><msg>Patch \"$patch_summary\" is nice.</msg></pre><p>When it becomes a key, it should be:</p><pre class="programlisting"><msg>Patch "$patch_summary" is nice.</msg></pre><p>Also, some keys had %var;noquote%, which is not needed since those +</p></li><li><p><b>Avoid plurals.�</b>Different languages create plurals differently. Try to avoid keys which will change based on the value of a number. OpenACS does not currently support internationalization of plurals. If you use two different keys, a plural and a singular form, your application will not localize properly for locales which use different rules or have more than two forms of plurals.</p></li><li><p><b>Quoting in the message catalog for tcl.�</b>Watch out for quoting and escaping when editing text that is also code. For example, the original string </p><pre class="programlisting">set title "Patch \"$patch_summary\" is nice."</pre><p>breaks if the message text retains all of the escaping that was in the tcl command:</p><pre class="programlisting"><msg>Patch \"$patch_summary\" is nice.</msg></pre><p>When it becomes a key, it should be:</p><pre class="programlisting"><msg>Patch "$patch_summary" is nice.</msg></pre><p>Also, some keys had %var;noquote%, which is not needed since those variables are not quoted (and in fact the variable won't even be recognized so you get the literal %var;noquote% in the output).</p></li><li><p><b>Be careful with curly brackets.�</b>Code within curly brackets isn't evaluated. TCL uses curly brackets as an alternative way to build lists. But TCL also uses curly brackets as an alternative to quotation marks for quoting text. So this original code</p><pre class="programlisting">array set names { key "Pretty" ...} </pre><p>... if converted to </p><pre class="programlisting">array set names { key "[_bug-tracker.Pretty]" ...} </pre><p>... won't work since the _ func will not be called. Instead, it should be </p><pre class="programlisting">array set names [list key [_bug-tracker.Pretty] ...]</pre></li></ul></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-introduction.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-design.html">Next</a></td></tr><tr><td width="40%" align="left">How Internationalization/Localization works in OpenACS </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> Design Notes</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-convert.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/i18n-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-design.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/i18n-design.html 5 May 2004 12:36:03 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/i18n-design.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1,2 +1,2 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Design Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-convert.html" title="How to Internationalize a Package"><link rel="next" href="i18n-translators.html" title="Translator's Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-convert.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-translators.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-design"></a>Design Notes</h2></div></div><div></div></div><p>User locale is a property of ad_conn, <tt class="computeroutput">ad_conn locale</tt>. The request processor sets this by calling <tt class="computeroutput">lang::conn::locale</tt>, which looks for the following in order of precedence:</p><div class="orderedlist"><ol type="1"><li><p>Use user preference for this package (stored in ad_locale_user_prefs)</p></li><li><p>Use system preference for the package (stored in apm_packages)</p></li><li><p>Use user's general preference (stored in user_preferences)</p></li><li><p>Use Browser header (<tt class="computeroutput">Accept-Language</tt> HTTP header)</p></li><li><p>Use system locale (an APM parameter for acs_lang)</p></li><li><p>default to en_US</p></li></ol></div><p>For ADP pages, message key lookup occurs in the templating engine. For TCL pages, message key lookup happens with the <tt class="computeroutput">_</tt> function. In both cases, if the requested locale is not found but a locale which is the default for the language which matches your locale's language is +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Design Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-convert.html" title="How to Internationalize a Package"><link rel="next" href="i18n-translators.html" title="Translator's Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-convert.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-translators.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-design"></a>Design Notes</h2></div></div><div></div></div><p>User locale is a property of ad_conn, <tt class="computeroutput">ad_conn locale</tt>. The request processor sets this by calling <tt class="computeroutput">lang::conn::locale</tt>, which looks for the following in order of precedence:</p><div class="orderedlist"><ol type="1"><li><p>Use user preference for this package (stored in ad_locale_user_prefs)</p></li><li><p>Use system preference for the package (stored in apm_packages)</p></li><li><p>Use user's general preference (stored in user_preferences)</p></li><li><p>Use Browser header (<tt class="computeroutput">Accept-Language</tt> HTTP header)</p></li><li><p>Use system locale (an APM parameter for acs_lang)</p></li><li><p>default to en_US</p></li></ol></div><p>For ADP pages, message key lookup occurs in the templating engine. For TCL pages, message key lookup happens with the <tt class="computeroutput">_</tt> function. In both cases, if the requested locale is not found but a locale which is the default for the language which matches your locale's language is found, then that locale is offered instead.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-convert.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-translators.html">Next</a></td></tr><tr><td width="40%" align="left">How to Internationalize a Package </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> Translator's Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-design.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/i18n-introduction.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-introduction.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/i18n-introduction.html 5 May 2004 12:36:03 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/i18n-introduction.html 11 Jun 2004 10:17:37 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How Internationalization/Localization works in OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-overview.html" title=""><link rel="next" href="i18n-convert.html" title="How to Internationalize a Package"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-convert.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-introduction"></a>How Internationalization/Localization works in OpenACS</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How Internationalization/Localization works in OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-overview.html" title="Internationalization and Localization"><link rel="next" href="i18n-convert.html" title="How to Internationalize a Package"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-convert.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-introduction"></a>How Internationalization/Localization works in OpenACS</h2></div></div><div></div></div><p> This document describes how to develop internationalized OpenACS packages, including writing new packages with internationalization and converting old packages. Text that @@ -22,7 +22,7 @@ database must use internationalized functions. All displayed dates must use internationalized functions. All displayed numbers must use internationalized functions. - </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="i18n-content"></a>User Content</h3></div></div><div></div></div><p>OpenACS does not have a general system for supporting multiple, localized versions of user-input content. This document currently refers only to internationalizing the text in the package user interface.</p></div><p> + </p><p> Localizable text must be handled in ADP files, in TCL files, and in APM Parameters. OpenACS provides two approaches, message keys and localized ADP files. For ADP pages which are mostly @@ -32,7 +32,7 @@ which are static and mostly text, it may be easier to create a new ADP page for each language. In this case, the pages are distinguished by a file naming convention. - </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="i18n-locale-templates"></a>Separate Templates for each Locale</h3></div></div><div></div></div><p>If the request processor finds a file named <tt class="computeroutput">filename.locale.adp</tt>, where locale matches the user's locale, it will process that file instead of <tt class="computeroutput">filename.adp</tt>. For example, for a user with locale <tt class="computeroutput">tl_PH</tt>, the file <tt class="computeroutput">index.tl_PH.adp</tt>, if found, will be used instead of <tt class="computeroutput">index.adp</tt>. The locale-specific file should thus contain text in the language appropriate for that locale. The code in the page, however, should still be in English. Message keys are processed normally.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="i18n-message-catalog"></a>Message Catalogs</h3></div></div><div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="i18n-message-catalog-adps"></a>Message Keys in Template Files (ADP Files)</h4></div></div><div></div></div><p> + </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="i18n-content"></a>User Content</h3></div></div><div></div></div><p>OpenACS does not have a general system for supporting multiple, localized versions of user-input content. This document currently refers only to internationalizing the text in the package user interface.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="i18n-locale-templates"></a>Separate Templates for each Locale</h3></div></div><div></div></div><p>If the request processor finds a file named <tt class="computeroutput">filename.locale.adp</tt>, where locale matches the user's locale, it will process that file instead of <tt class="computeroutput">filename.adp</tt>. For example, for a user with locale <tt class="computeroutput">tl_PH</tt>, the file <tt class="computeroutput">index.tl_PH.adp</tt>, if found, will be used instead of <tt class="computeroutput">index.adp</tt>. The locale-specific file should thus contain text in the language appropriate for that locale. The code in the page, however, should still be in English. Message keys are processed normally.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="i18n-message-catalog"></a>Message Catalogs</h3></div></div><div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="i18n-message-catalog-adps"></a>Message Keys in Template Files (ADP Files)</h4></div></div><div></div></div><p> Internationalizing templates is about replacing human readable text in a certain language with internal message keys, which can then be dynamically replaced with real human language in @@ -90,13 +90,14 @@ </p><div class="itemizedlist"><ul type="disc"><li><p>Typical static key lookup: <tt class="computeroutput">[_ package_key.message_key]</tt> - The message key and package key used here must be string literals, they can't result from variable evaluation.</p></li><li><p> Static key lookup with non-default locale: <tt class="computeroutput">[lang::message::lookup $locale package_key.message_key]</tt> - The message key and package key used here must be string literals, they can't result from variable evaluation.</p></li><li><p> Dynamic key lookup: <tt class="computeroutput">[lang::util::localize $var_with_embedded_message_keys]</tt> - In this case the message keys in the variable <tt class="computeroutput">var_with_embedded_message_keys</tt> must appear as string literals <tt class="computeroutput">\#package_key.message_key\#</tt> somewhere in the code. Here is an example of a dynamic lookup: - </p><tt class="computeroutput">set message_key_array { + <tt class="computeroutput">set message_key_array { dynamic_key_1 \#package_key.message_key1\# dynamic_key_2 \#package_key.message_key2\# } set my_text [lang::util::localize $message_key_array([get_dynamic_key])] - </tt></li></ul></div><p> + </tt> + </p></li></ul></div><p> </p><p> Translatable texts in page TCL scripts are often found in page titles, context bars, and form labels and options. Many times the texts are @@ -122,24 +123,26 @@ variables and or procedure calls in it you should in most cases try to turn the whole text into one message in the catalog (remember that translators is made easier the longer the phrases to translate are). In those cases, follow these steps: - </p><div class="itemizedlist"><ul type="disc"><li>For each message call in the text, decide on a variable name and replace + </p><div class="itemizedlist"><ul type="disc"><li><p> + For each message call in the text, decide on a variable name and replace the procedure call with a variable lookup on the syntax %var_name%. Remember - to initialize a tcl variable with the same name on some line above the text.</li><li>If the text is in a tcl file you must replace variable lookups - (occurences of $var_name or ${var_name}) with %var_name%</li><li>You are now ready to follow the normal procedure and mark up the text using a + to initialize a tcl variable with the same name on some line above the text.</p></li><li><p>If the text is in a tcl file you must replace variable lookups + (occurences of $var_name or ${var_name}) with %var_name%</p></li><li><p>You are now ready to follow the normal procedure and mark up the text using a tempoarary message tag (<#_ text_with_percentage_vars#>) and run the action - replace tags with keys in the APM.</li></ul></div><p> + replace tags with keys in the APM.</p></li></ul></div><p> The variable values in the message are usually fetched with upvar, here is an example from dotlrn: - </p><tt class="computeroutput"> + <tt class="computeroutput"> ad_return_complaint 1 "Error: A [parameter::get -parameter classes_pretty_name] must have <em>no</em>[parameter::get -parameter class_instances_pretty_plural] to be deleted" - </tt><p> + </tt> was replaced by: - </p><tt class="computeroutput"> + <tt class="computeroutput"> set subject [parameter::get -localize -parameter classes_pretty_name] set class_instances [parameter::get -localize -parameter class_instances_pretty_plural] ad_return_complaint 1 [_ dotlrn.class_may_not_be_deleted] - </tt><p> + </tt> + </p><p> This kind of interpolation also works in adp files where adp variable values will be inserted into the message. </p><p> Alternatively, you may pass in an array list of the variable values to be interpolated into the message so that @@ -206,4 +209,4 @@ </p><p> Developers are responsible for creating the keys in the message catalog, which is available at <tt class="computeroutput">/acs-lang/admin/</tt> - </p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-overview.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-convert.html">Next</a></td></tr><tr><td width="40%" align="left"> </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> How to Internationalize a Package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-introduction.html#comments">View comments on this page at openacs.org</a></center></body></html> + </p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-overview.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-convert.html">Next</a></td></tr><tr><td width="40%" align="left">Internationalization and Localization </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> How to Internationalize a Package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-introduction.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/i18n-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-overview.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/i18n-overview.html 5 May 2004 12:36:04 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/i18n-overview.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title></title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="next" href="i18n-introduction.html" title="How Internationalization/Localization works in OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-introduction.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div></div><div></div></div><div class="table"><a name="i18n-l10n-process"></a><p class="title"><b>Table�14.1.�Internationalization and Localization</b></p><table summary="Internationalization and Localization" cellspacing="0" border="1"><colgroup><col></colgroup><thead><tr><th>Stage</th><th>Task</th><th>Who</th></tr></thead><tbody><tr><td>Internationalization</td><td>Package Developer uses the acs-lang tools to replace all visible text in a package with <span class="emphasis"><em>message keys</em></span>. (<a href="i18n-introduction.html" title="How Internationalization/Localization works in OpenACS">More information</a>)</td><td>Package Developer</td></tr><tr><td rowspan="2">Release Management</td><td>The newly internationalized package is released.</td><td>Package Developer</td></tr><tr><td>The translation server is updated with the new package.</td><td>Translation server maintainers</td></tr><tr><td>Localization</td><td>Translators work in their respective locales to write text for each message key. (<a href="i18n-translators.html" title="Translator's Guide">More information</a>)</td><td>Translators</td></tr><tr><td rowspan="3">Release Management</td><td>The translated text in the database of the translation server is compared to the current translations in the OpenACS code base, conflicts are resolved, and the new text is written to catalog files on the translation server.</td><td>Translation server maintainers</td></tr><tr><td>The catalog files are committed to the OpenACS code base.</td><td>Translation server maintainers</td></tr><tr><td>A new version of OpenACS core and/or affected packages is released and published in the OpenACS.org repository.</td><td>Release Manager</td></tr><tr><td rowspan="2">Upgrading</td><td>Site Administrators upgrade their OpenACS sites, either via the automatic upgrade from the Repository or via tarball or CVS </td><td>Site Administrators</td></tr><tr><td>Site Administrators import the new translations. Existing local translations, if they exist, are not overwritten.</td><td>Site Administrators</td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-introduction.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�14.�Internationalization </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> How Internationalization/Localization works in OpenACS</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-overview.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Internationalization and Localization</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="next" href="i18n-introduction.html" title="How Internationalization/Localization works in OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="i18n-introduction.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-overview"></a>Internationalization and Localization</h2></div></div><div></div></div><div class="table"><a name="i18n-l10n-process"></a><p class="title"><b>Table�14.1.�Internationalization and Localization</b></p><table summary="Internationalization and Localization" cellspacing="0" border="1"><colgroup><col></colgroup><thead><tr><th>Stage</th><th>Task</th><th>Who</th></tr></thead><tbody><tr><td>Internationalization</td><td>Package Developer uses the acs-lang tools to replace all visible text in a package with <span class="emphasis"><em>message keys</em></span>. (<a href="i18n-introduction.html" title="How Internationalization/Localization works in OpenACS">More information</a>)</td><td>Package Developer</td></tr><tr><td rowspan="2">Release Management</td><td>The newly internationalized package is released.</td><td>Package Developer</td></tr><tr><td>The translation server is updated with the new package.</td><td>Translation server maintainers</td></tr><tr><td>Localization</td><td>Translators work in their respective locales to write text for each message key. (<a href="i18n-translators.html" title="Translator's Guide">More information</a>)</td><td>Translators</td></tr><tr><td rowspan="3">Release Management</td><td>The translated text in the database of the translation server is compared to the current translations in the OpenACS code base, conflicts are resolved, and the new text is written to catalog files on the translation server.</td><td>Translation server maintainers</td></tr><tr><td>The catalog files are committed to the OpenACS code base.</td><td>Translation server maintainers</td></tr><tr><td>A new version of OpenACS core and/or affected packages is released and published in the OpenACS.org repository.</td><td>Release Manager</td></tr><tr><td rowspan="2">Upgrading</td><td>Site Administrators upgrade their OpenACS sites, either via the automatic upgrade from the Repository or via tarball or CVS </td><td>Site Administrators</td></tr><tr><td>Site Administrators import the new translations. Existing local translations, if they exist, are not overwritten.</td><td>Site Administrators</td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-introduction.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�14.�Internationalization </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> How Internationalization/Localization works in OpenACS</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-overview.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/i18n-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-requirements.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/i18n-requirements.html 5 May 2004 12:36:04 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/i18n-requirements.html 11 Jun 2004 10:17:37 -0000 1.15 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Internationalization Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="db-api-detailed.html" title="Database Access API"><link rel="next" href="security-requirements.html" title="Security Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="db-api-detailed.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="security-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-requirements"></a>OpenACS Internationalization Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>by Henry Minsky, +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Internationalization Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="db-api-detailed.html" title="Database Access API"><link rel="next" href="security-requirements.html" title="Security Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="db-api-detailed.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="security-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-requirements"></a>OpenACS Internationalization Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>by Henry Minsky, <a href="mailto:yon@openforce.net" target="_top">Yon Feldman</a>, <a href="mailto:lars@collaboraid.biz" target="_top">Lars Pind</a>, <a href="mailto:peter@collaboraid.biz" target="_top">Peter Marklund</a>, Index: openacs-4/packages/acs-core-docs/www/i18n-translators.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-translators.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/i18n-translators.html 5 May 2004 12:36:04 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/i18n-translators.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Translator's Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-design.html" title="Design Notes"><link rel="next" href="cvs-tips.html" title="Appendix�D.�Using CVS with an OpenACS Site"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-design.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="cvs-tips.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-translators"></a>Translator's Guide</h2></div></div><div></div></div><p>Most translators use the <a href="http://translate.openacs.org" target="_top">OpenACS Public Translation Server</a>, because the process of getting new message keys onto the server and getting new translations back into the distribution are handled by the maintainers of that machine. You can also do translation work on your own OpenACS site; this makes your own translations more readily available to you but also means that your work will not be shared with other users unless you take extra steps (contacting an OpenACS core developer or submitting a patch) to get your work back to the OpenACS core.</p><p>The basic steps for translators:</p><div class="itemizedlist"><ul type="disc"><li><p>Go to the <a href="/acs-lang" target="_top">Localization</a> page and choose the locale that you are translating to. If the locale is not present you need to visit <a href="/acs-lang/admin" target="_top">Administration of Localization</a> and create the locale.</p></li><li><p><b>Translating with Translator Mode.�</b>To translate messages in the pages they appear, <a href="http://localhost:8008/acs-lang/admin/translator-mode-toggle" target="_top">Toggle Translator Mode</a> and then browse to the page you want to translate. Untranslated messages will have a yellow background and a red star that you click to translate the message. Translated messages have a green star next to them that is a hyperlink to editing your translation. There is a history mechanism that allows you to see previous translations in case you would want to revert a translation.</p><div class="mediaobject" align="center"><img src="images/translator-mode.png" align="middle"></div><p>While in Translator mode, a list of all message keys appears at the bottom of each page.</p><div class="mediaobject" align="center"><img src="images/translations.png" align="middle"></div></li><li><p><b>Batch translation.�</b>To translate many messages at once, go to <a href="/acs-lang/admin" target="_top">Administration of Localization</a>, click on the locale to translate, then click on a package, and then click <tt class="computeroutput">Batch edit these messages</tt>.</p><div class="mediaobject" align="center"><img src="images/translation-batch-edit.png" align="middle"></div></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-design.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="cvs-tips.html">Next</a></td></tr><tr><td width="40%" align="left">Design Notes </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> Appendix�D.�Using CVS with an OpenACS Site</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-translators.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Translator's Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="previous" href="i18n-design.html" title="Design Notes"><link rel="next" href="cvs-tips.html" title="Appendix�D.�Using CVS with an OpenACS Site"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-design.html">Prev</a> </td><th width="60%" align="center">Chapter�14.�Internationalization</th><td width="20%" align="right"> <a accesskey="n" href="cvs-tips.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="i18n-translators"></a>Translator's Guide</h2></div></div><div></div></div><p>Most translators use the <a href="http://translate.openacs.org" target="_top">OpenACS Public Translation Server</a>, because the process of getting new message keys onto the server and getting new translations back into the distribution are handled by the maintainers of that machine. You can also do translation work on your own OpenACS site; this makes your own translations more readily available to you but also means that your work will not be shared with other users unless you take extra steps (contacting an OpenACS core developer or submitting a patch) to get your work back to the OpenACS core.</p><p>The basic steps for translators:</p><div class="itemizedlist"><ul type="disc"><li><p>Go to the <a href="/acs-lang" target="_top">Localization</a> page and choose the locale that you are translating to. If the locale is not present you need to visit <a href="/acs-lang/admin" target="_top">Administration of Localization</a> and create the locale.</p></li><li><p><b>Translating with Translator Mode.�</b>To translate messages in the pages they appear, <a href="http://localhost:8008/acs-lang/admin/translator-mode-toggle" target="_top">Toggle Translator Mode</a> and then browse to the page you want to translate. Untranslated messages will have a yellow background and a red star that you click to translate the message. Translated messages have a green star next to them that is a hyperlink to editing your translation. There is a history mechanism that allows you to see previous translations in case you would want to revert a translation.</p><div class="mediaobject" align="center"><img src="images/translator-mode.png" align="middle"></div><p>While in Translator mode, a list of all message keys appears at the bottom of each page.</p><div class="mediaobject" align="center"><img src="images/translations.png" align="middle"></div></li><li><p><b>Batch translation.�</b>To translate many messages at once, go to <a href="/acs-lang/admin" target="_top">Administration of Localization</a>, click on the locale to translate, then click on a package, and then click <tt class="computeroutput">Batch edit these messages</tt>.</p><div class="mediaobject" align="center"><img src="images/translation-batch-edit.png" align="middle"></div></li></ul></div><p>When creating a new locale based on an existing one, such as creating the Guatamalan version of Spanish, you can copy the existing locale's catalog files using the script <tt class="computeroutput">/packages/acs-core-docs/www/files/create-new-catalog.sh</tt>.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-design.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="cvs-tips.html">Next</a></td></tr><tr><td width="40%" align="left">Design Notes </td><td width="20%" align="center"><a accesskey="u" href="i18n.html">Up</a></td><td width="40%" align="right"> Appendix�D.�Using CVS with an OpenACS Site</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n-translators.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/i18n.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/i18n.html 5 May 2004 12:36:04 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/i18n.html 11 Jun 2004 10:17:37 -0000 1.23 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�14.�Internationalization</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="requirements-template.html" title="System/Application Requirements Template"><link rel="next" href="i18n-overview.html" title=""><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="requirements-template.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="i18n-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="i18n"></a>Chapter�14.�Internationalization</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="i18n-overview.html"></a></span></dt><dt><span class="sect1"><a href="i18n-introduction.html">How Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert.html">How to Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design.html">Design Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators.html">Translator's Guide</a></span></dt></dl></div><div class="authorblurb"><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�14.�Internationalization</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="requirements-template.html" title="System/Application Requirements Template"><link rel="next" href="i18n-overview.html" title="Internationalization and Localization"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="requirements-template.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="i18n-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="i18n"></a>Chapter�14.�Internationalization</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="i18n-overview.html">Internationalization and Localization</a></span></dt><dt><span class="sect1"><a href="i18n-introduction.html">How Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert.html">How to Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design.html">Design Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators.html">Translator's Guide</a></span></dt></dl></div><div class="authorblurb"><p> By <a href="http://www.petermarklund.com/" target="_top">Peter Marklund</a> and <a href="http://www.pinds.com/" target="_top">Lars Pind</a> </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="requirements-template.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-overview.html">Next</a></td></tr><tr><td width="40%" align="left">System/Application Requirements Template </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> </td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n.html#comments">View comments on this page at openacs.org</a></center></body></html> + </div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="requirements-template.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-overview.html">Next</a></td></tr><tr><td width="40%" align="left">System/Application Requirements Template </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> Internationalization and Localization</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/i18n.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/index.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/index.html,v diff -u -r1.37 -r1.38 --- openacs-4/packages/acs-core-docs/www/index.html 5 May 2004 12:36:04 -0000 1.37 +++ openacs-4/packages/acs-core-docs/www/index.html 11 Jun 2004 10:17:37 -0000 1.38 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Core Documentation</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="next" href="for-everyone.html" title="Part�I.�OpenACS For Everyone"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="for-everyone.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="id2393628"></a>OpenACS Core Documentation</h1></div></div><div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="part"><a href="for-everyone.html">I. OpenACS For Everyone</a></span></dt><dd><dl><dt><span class="chapter"><a href="general-documents.html">1. High level information: What is OpenACS?</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes.html">OpenACS Release Notes</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="acs-admin.html">II. Administrator's Guide</a></span></dt><dd><dl><dt><span class="chapter"><a href="install-overview.html">2. Installation Overview</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-steps.html">Basic Steps</a></span></dt><dt><span class="sect1"><a href="individual-programs.html">Prerequisite Software</a></span></dt></dl></dd><dt><span class="chapter"><a href="complete-install.html">3. Complete Installation</a></span></dt><dd><dl><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.2.0d1</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></dd><dt><span class="chapter"><a href="configuring-new-site.html">4. Configuring a new OpenACS Site</a></span></dt><dd><dl><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></dd><dt><span class="chapter"><a href="upgrade.html">5. Upgrading</a></span></dt><dd><dl><dt><span class="sect1"><a href="upgrade-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot.html">Upgrading 5.0.0 to 5.0.x</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files.html">Upgrading the OpenACS files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting.html">Upgrading Platform components</a></span></dt></dl></dd><dt><span class="chapter"><a href="maintenance-web.html">6. Production Environments</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-openacs-keepalive.html">Starting and Stopping an OpenACS instance.</a></span></dt><dt><span class="sect1"><a href="install-openacs-inittab.html">AOLserver keepalive with inittab</a></span></dt><dt><span class="sect1"><a href="install-next-add-server.html">Running multiple services on one machine</a></span></dt><dt><span class="sect1"><a href="high-avail.html">High Availability/High Performance Configurations</a></span></dt><dt><span class="sect1"><a href="maintenance-deploy.html">Staged Deployment for Production Networks</a></span></dt><dt><span class="sect1"><a href="install-ssl.html">Installing SSL Support for an OpenACS service</a></span></dt><dt><span class="sect1"><a href="analog-setup.html">Set up Log Analysis Reports</a></span></dt><dt><span class="sect1"><a href="uptime.html">External uptime validation</a></span></dt><dt><span class="sect1"><a href="maint-performance.html">Diagnosing Performance Problems</a></span></dt></dl></dd><dt><span class="chapter"><a href="database-management.html">7. Database Management</a></span></dt><dd><dl><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></dd><dt><span class="chapter"><a href="backup-recovery.html">8. Backup and Recovery</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></dd><dt><span class="appendix"><a href="install-redhat.html">A. Install Red Hat 8/9</a></span></dt><dt><span class="appendix"><a href="install-more-software.html">B. Install additional supporting software</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-unpack.html">Unpack the OpenACS tarball</a></span></dt><dt><span class="sect1"><a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-qmail.html">Install qmail (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="analog-install.html">Install Analog web file analyzer</a></span></dt><dt><span class="sect1"><a href="install-nspam.html">Install nspam</a></span></dt><dt><span class="sect1"><a href="install-full-text-search.html">Install Full Text Search</a></span></dt><dt><span class="sect1"><a href="install-nsopenssl.html">Install nsopenssl</a></span></dt><dt><span class="sect1"><a href="install-tclwebtest.html">Install tclwebtest.</a></span></dt><dt><span class="sect1"><a href="install-php.html">Install PHP for use in AOLserver</a></span></dt><dt><span class="sect1"><a href="install-squirrelmail.html">Install Squirrelmail for use as a webmail system for OpenACS</a></span></dt><dt><span class="sect1"><a href="aolserver.html">Install AOLserver 3.3oacs1</a></span></dt></dl></dd><dt><span class="appendix"><a href="credits.html">A. Credits</a></span></dt><dd><dl><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="acs-package-dev.html">III. For OpenACS Package Developers</a></span></dt><dd><dl><dt><span class="chapter"><a href="tutorial.html">1. Development Tutorial</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-newpackage.html">Creating an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database.html">Setting Up Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages.html">Creating Web Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug.html">Debugging and Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="tutorial-advanced.html">2. Advanced Topics</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-specs.html">Write the Requirements and Design Specs</a></span></dt><dt><span class="sect1"><a href="tutorial-cvs.html">Add the new package to CVS</a></span></dt><dt><span class="sect1"><a href="tutorial-comments.html">Adding Comments</a></span></dt><dt><span class="sect1"><a href="tutorial-admin-pages.html">Admin Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-categories.html">Categories</a></span></dt><dt><span class="sect1"><a href="ch02s06.html">Categories</a></span></dt><dt><span class="sect1"><a href="profile-code.html">Profile your code</a></span></dt><dt><span class="sect1"><a href="tutorial-distribute.html">Prepare the package for distribution.</a></span></dt><dt><span class="sect1"><a href="tutorial-notifications.html">Notifications</a></span></dt><dt><span class="sect1"><a href="ch02s10.html">Hierarchical data</a></span></dt><dt><span class="sect1"><a href="tutorial-vuh.html">Using .vuh files for pretty urls</a></span></dt><dt><span class="sect1"><a href="tutorial-future-topics.html">Future Topics</a></span></dt></dl></dd><dt><span class="chapter"><a href="dev-guide.html">3. Development Reference</a></span></dt><dd><dl><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using HTML Forms</a></span></dt></dl></dd><dt><span class="chapter"><a href="eng-standards.html">4. Engineering Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="style-guide.html">OpenACS Style Guide</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning.html">Release Version Numbering</a></span></dt><dt><span class="sect1"><a href="eng-standards-constraint-naming.html">Constraint naming standard</a></span></dt><dt><span class="sect1"><a href="eng-standards-filenaming.html">ACS File Naming and Formatting Standards</a></span></dt><dt><span class="sect1"><a href="eng-standards-plsql.html">PL/SQL Standards</a></span></dt><dt><span class="sect1"><a href="variables.html">Variables</a></span></dt><dt><span class="sect1"><a href="automated-testing-best-practices.html">Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="doc-standards.html">5. Documentation Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></dd><dt><span class="chapter"><a href="i18n.html">6. Internationalization</a></span></dt><dd><dl><dt><span class="sect1"><a href="i18n-overview.html"></a></span></dt><dt><span class="sect1"><a href="i18n-introduction.html">How Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert.html">How to Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design.html">Design Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators.html">Translator's Guide</a></span></dt></dl></dd><dt><span class="appendix"><a href="cvs-tips.html">B. Using CVS with an OpenACS Site</a></span></dt></dl></dd><dt><span class="part"><a href="acs-plat-dev.html">IV. For OpenACS Platform Developers</a></span></dt><dd><dl><dt><span class="chapter"><a href="kernel-doc.html">7. Kernel Documentation</a></span></dt><dd><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></dd><dt><span class="chapter"><a href="releasing-openacs.html">8. Releasing OpenACS</a></span></dt><dd><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></dd></dl></dd><dt><span class="index"><a href="ix01.html">Index</a></span></dt></dl></div><div class="list-of-figures"><p><b>List of Figures</b></p><dl><dt>4.1. <a href="how-do-I.html#id2516343">Site Templates</a></dt><dt>4.2. <a href="how-do-I.html#id2517838">Granting Permissions</a></dt><dt>4.3. <a href="how-do-I.html#id2517865">Granting Permissions in 5.0</a></dt><dt>5.1. <a href="upgrade-overview.html#id2497071">Upgrading with the APM</a></dt><dt>5.2. <a href="upgrade-openacs-files.html#id2523611">Upgrading a local CVS repository</a></dt><dt>6.1. <a href="high-avail.html#id2520162">Multiple-server configuration</a></dt><dt>6.2. <a href="maintenance-deploy.html#id2520302">Simple A/B Deployment - Step 1</a></dt><dt>6.3. <a href="maintenance-deploy.html#id2520323">Simple A/B Deployment - Step 2</a></dt><dt>6.4. <a href="maintenance-deploy.html#id2520344">Simple A/B Deployment - Step 3</a></dt><dt>6.5. <a href="maintenance-deploy.html#id2520371">Complex A/B Deployment - Step 1</a></dt><dt>6.6. <a href="maintenance-deploy.html#id2526002">Complex A/B Deployment - Step 2</a></dt><dt>6.7. <a href="maintenance-deploy.html#id2526023">Complex A/B Deployment - Step 3</a></dt><dt>6.8. <a href="maint-performance.html#id2526535">Query Analysis example</a></dt><dt>8.1. <a href="backup-recovery.html#id2500857">Backup and Recovery Strategy</a></dt><dt>1.1. <a href="tutorial-newpackage.html#id2455565">Assumptions in this section</a></dt><dt>1.2. <a href="tutorial-database.html#id2481062">Tutorial Data Model</a></dt><dt>1.3. <a href="tutorial-database.html#id2542322">The Database Creation Script</a></dt><dt>1.4. <a href="tutorial-database.html#id2542960">Database Deletion Script</a></dt><dt>1.5. <a href="tutorial-pages.html#id2460404">Page Map</a></dt><dt>2.1. <a href="tutorial-cvs.html#id2563018">Upgrading a local CVS repository</a></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>2.1. <a href="install-steps.html#id2493271">Default directories for a standard install</a></dt><dt>2.2. <a href="individual-programs.html#compatibility-matrix">Version Compatibility Matrix</a></dt><dt>5.1. <a href="upgrade-overview.html#id2483838">Assumptions in this section</a></dt><dt>6.1. <a href="install-openacs-keepalive.html#id2521552">How it Works</a></dt><dt>3.1. <a href="permissions-tediously-explained.html#id2552613">Context Hierarchy Example</a></dt><dt>3.2. <a href="permissions-tediously-explained.html#id2563312">acs_objects example data</a></dt><dt>6.1. <a href="i18n-overview.html#i18n-l10n-process">Internationalization and Localization</a></dt></dl></div><div class="list-of-examples"><p><b>List of Examples</b></p><dl><dt>4.1. <a href="variables.html#id2485878">Getting datetime from the database ANSI-style</a></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"></td><td width="40%" align="right"> <a accesskey="n" href="for-everyone.html">Next</a></td></tr><tr><td width="40%" align="left"> </td><td width="20%" align="center"></td><td width="40%" align="right"> Part�I.�OpenACS For Everyone</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/index.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Core Documentation</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="next" href="for-everyone.html" title="Part�I.�OpenACS For Everyone"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="for-everyone.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="id2391137"></a>OpenACS Core Documentation</h1></div></div><div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="part"><a href="for-everyone.html">I. OpenACS For Everyone</a></span></dt><dd><dl><dt><span class="chapter"><a href="general-documents.html">1. High level information: What is OpenACS?</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes.html">OpenACS Release Notes</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="acs-admin.html">II. Administrator's Guide</a></span></dt><dd><dl><dt><span class="chapter"><a href="install-overview.html">2. Installation Overview</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-steps.html">Basic Steps</a></span></dt><dt><span class="sect1"><a href="individual-programs.html">Prerequisite Software</a></span></dt></dl></dd><dt><span class="chapter"><a href="complete-install.html">3. Complete Installation</a></span></dt><dd><dl><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.2.0d1</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></dd><dt><span class="chapter"><a href="configuring-new-site.html">4. Configuring a new OpenACS Site</a></span></dt><dd><dl><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></dd><dt><span class="chapter"><a href="upgrade.html">5. Upgrading</a></span></dt><dd><dl><dt><span class="sect1"><a href="upgrade-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot.html">Upgrading 5.0.0 to 5.0.x</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files.html">Upgrading the OpenACS files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting.html">Upgrading Platform components</a></span></dt></dl></dd><dt><span class="chapter"><a href="maintenance-web.html">6. Production Environments</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-openacs-keepalive.html">Starting and Stopping an OpenACS instance.</a></span></dt><dt><span class="sect1"><a href="install-openacs-inittab.html">AOLserver keepalive with inittab</a></span></dt><dt><span class="sect1"><a href="install-next-add-server.html">Running multiple services on one machine</a></span></dt><dt><span class="sect1"><a href="high-avail.html">High Availability/High Performance Configurations</a></span></dt><dt><span class="sect1"><a href="maintenance-deploy.html">Staged Deployment for Production Networks</a></span></dt><dt><span class="sect1"><a href="install-ssl.html">Installing SSL Support for an OpenACS service</a></span></dt><dt><span class="sect1"><a href="analog-setup.html">Set up Log Analysis Reports</a></span></dt><dt><span class="sect1"><a href="uptime.html">External uptime validation</a></span></dt><dt><span class="sect1"><a href="maint-performance.html">Diagnosing Performance Problems</a></span></dt></dl></dd><dt><span class="chapter"><a href="database-management.html">7. Database Management</a></span></dt><dd><dl><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></dd><dt><span class="chapter"><a href="backup-recovery.html">8. Backup and Recovery</a></span></dt><dd><dl><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></dd><dt><span class="appendix"><a href="install-redhat.html">A. Install Red Hat 8/9</a></span></dt><dt><span class="appendix"><a href="install-more-software.html">B. Install additional supporting software</a></span></dt><dd><dl><dt><span class="sect1"><a href="openacs-unpack.html">Unpack the OpenACS tarball</a></span></dt><dt><span class="sect1"><a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-qmail.html">Install qmail (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="analog-install.html">Install Analog web file analyzer</a></span></dt><dt><span class="sect1"><a href="install-nspam.html">Install nspam</a></span></dt><dt><span class="sect1"><a href="install-full-text-search.html">Install Full Text Search</a></span></dt><dt><span class="sect1"><a href="install-nsopenssl.html">Install nsopenssl</a></span></dt><dt><span class="sect1"><a href="install-tclwebtest.html">Install tclwebtest.</a></span></dt><dt><span class="sect1"><a href="install-php.html">Install PHP for use in AOLserver</a></span></dt><dt><span class="sect1"><a href="install-squirrelmail.html">Install Squirrelmail for use as a webmail system for OpenACS</a></span></dt><dt><span class="sect1"><a href="aolserver.html">Install AOLserver 3.3oacs1</a></span></dt></dl></dd><dt><span class="appendix"><a href="credits.html">A. Credits</a></span></dt><dd><dl><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></dd></dl></dd><dt><span class="part"><a href="acs-package-dev.html">III. For OpenACS Package Developers</a></span></dt><dd><dl><dt><span class="chapter"><a href="tutorial.html">1. Development Tutorial</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-newpackage.html">Creating an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database.html">Setting Up Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages.html">Creating Web Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug.html">Debugging and Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="tutorial-advanced.html">2. Advanced Topics</a></span></dt><dd><dl><dt><span class="sect1"><a href="tutorial-specs.html">Write the Requirements and Design Specs</a></span></dt><dt><span class="sect1"><a href="tutorial-cvs.html">Add the new package to CVS</a></span></dt><dt><span class="sect1"><a href="tutorial-comments.html">Adding Comments</a></span></dt><dt><span class="sect1"><a href="tutorial-admin-pages.html">Admin Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-categories.html">Categories</a></span></dt><dt><span class="sect1"><a href="profile-code.html">Profile your code</a></span></dt><dt><span class="sect1"><a href="tutorial-distribute.html">Prepare the package for distribution.</a></span></dt><dt><span class="sect1"><a href="tutorial-notifications.html">Notifications</a></span></dt><dt><span class="sect1"><a href="tutorial-hierarchical.html">Hierarchical data</a></span></dt><dt><span class="sect1"><a href="tutorial-vuh.html">Using .vuh files for pretty urls</a></span></dt><dt><span class="sect1"><a href="tutorial-future-topics.html">Future Topics</a></span></dt></dl></dd><dt><span class="chapter"><a href="dev-guide.html">3. Development Reference</a></span></dt><dd><dl><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using HTML Forms</a></span></dt></dl></dd><dt><span class="chapter"><a href="eng-standards.html">4. Engineering Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="style-guide.html">OpenACS Style Guide</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning.html">Release Version Numbering</a></span></dt><dt><span class="sect1"><a href="eng-standards-constraint-naming.html">Constraint naming standard</a></span></dt><dt><span class="sect1"><a href="eng-standards-filenaming.html">ACS File Naming and Formatting Standards</a></span></dt><dt><span class="sect1"><a href="eng-standards-plsql.html">PL/SQL Standards</a></span></dt><dt><span class="sect1"><a href="variables.html">Variables</a></span></dt><dt><span class="sect1"><a href="automated-testing-best-practices.html">Automated Testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="doc-standards.html">5. Documentation Standards</a></span></dt><dd><dl><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></dd><dt><span class="chapter"><a href="i18n.html">6. Internationalization</a></span></dt><dd><dl><dt><span class="sect1"><a href="i18n-overview.html">Internationalization and Localization</a></span></dt><dt><span class="sect1"><a href="i18n-introduction.html">How Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert.html">How to Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design.html">Design Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators.html">Translator's Guide</a></span></dt></dl></dd><dt><span class="appendix"><a href="cvs-tips.html">B. Using CVS with an OpenACS Site</a></span></dt></dl></dd><dt><span class="part"><a href="acs-plat-dev.html">IV. For OpenACS Platform Developers</a></span></dt><dd><dl><dt><span class="chapter"><a href="kernel-doc.html">7. Kernel Documentation</a></span></dt><dd><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></dd><dt><span class="chapter"><a href="releasing-openacs.html">8. Releasing OpenACS</a></span></dt><dd><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></dd></dl></dd><dt><span class="index"><a href="ix01.html">Index</a></span></dt></dl></div><div class="list-of-figures"><p><b>List of Figures</b></p><dl><dt>4.1. <a href="how-do-I.html#id2514202">Site Templates</a></dt><dt>4.2. <a href="how-do-I.html#id2514404">Granting Permissions</a></dt><dt>4.3. <a href="how-do-I.html#id2514431">Granting Permissions in 5.0</a></dt><dt>5.1. <a href="upgrade-overview.html#id2484949">Upgrading with the APM</a></dt><dt>5.2. <a href="upgrade-openacs-files.html#id2515360">Upgrading a local CVS repository</a></dt><dt>6.1. <a href="high-avail.html#id2517082">Multiple-server configuration</a></dt><dt>6.2. <a href="maintenance-deploy.html#id2519108">Simple A/B Deployment - Step 1</a></dt><dt>6.3. <a href="maintenance-deploy.html#id2519129">Simple A/B Deployment - Step 2</a></dt><dt>6.4. <a href="maintenance-deploy.html#id2519150">Simple A/B Deployment - Step 3</a></dt><dt>6.5. <a href="maintenance-deploy.html#id2519178">Complex A/B Deployment - Step 1</a></dt><dt>6.6. <a href="maintenance-deploy.html#id2519199">Complex A/B Deployment - Step 2</a></dt><dt>6.7. <a href="maintenance-deploy.html#id2519220">Complex A/B Deployment - Step 3</a></dt><dt>6.8. <a href="maint-performance.html#id2521841">Query Analysis example</a></dt><dt>8.1. <a href="backup-recovery.html#id2450167">Backup and Recovery Strategy</a></dt><dt>1.1. <a href="tutorial-newpackage.html#id2568679">Assumptions in this section</a></dt><dt>1.2. <a href="tutorial-database.html#id2462754">Tutorial Data Model</a></dt><dt>1.3. <a href="tutorial-database.html#id2566675">The Database Creation Script</a></dt><dt>1.4. <a href="tutorial-database.html#id2565601">Database Deletion Script</a></dt><dt>1.5. <a href="tutorial-pages.html#id2485500">Page Map</a></dt><dt>2.1. <a href="tutorial-cvs.html#id2544665">Upgrading a local CVS repository</a></dt></dl></div><div class="list-of-tables"><p><b>List of Tables</b></p><dl><dt>2.1. <a href="install-steps.html#id2447655">Default directories for a standard install</a></dt><dt>2.2. <a href="individual-programs.html#compatibility-matrix">Version Compatibility Matrix</a></dt><dt>5.1. <a href="upgrade-overview.html#id2494480">Assumptions in this section</a></dt><dt>6.1. <a href="install-openacs-keepalive.html#id2522834">How it Works</a></dt><dt>3.1. <a href="permissions-tediously-explained.html#id2541961">Context Hierarchy Example</a></dt><dt>3.2. <a href="permissions-tediously-explained.html#id2542112">acs_objects example data</a></dt><dt>6.1. <a href="i18n-overview.html#i18n-l10n-process">Internationalization and Localization</a></dt></dl></div><div class="list-of-examples"><p><b>List of Examples</b></p><dl><dt>4.1. <a href="variables.html#id2449027">Getting datetime from the database ANSI-style</a></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"></td><td width="40%" align="right"> <a accesskey="n" href="for-everyone.html">Next</a></td></tr><tr><td width="40%" align="left"> </td><td width="20%" align="center"></td><td width="40%" align="right"> Part�I.�OpenACS For Everyone</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/index.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/individual-programs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/individual-programs.html,v diff -u -r1.21 -r1.22 --- openacs-4/packages/acs-core-docs/www/individual-programs.html 5 May 2004 12:36:04 -0000 1.21 +++ openacs-4/packages/acs-core-docs/www/individual-programs.html 11 Jun 2004 10:17:37 -0000 1.22 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Prerequisite Software</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="previous" href="install-steps.html" title="Basic Steps"><link rel="next" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-steps.html">Prev</a> </td><th width="60%" align="center">Chapter�2.�Installation Overview</th><td width="20%" align="right"> <a accesskey="n" href="complete-install.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="individual-programs"></a>Prerequisite Software</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Prerequisite Software</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="previous" href="install-steps.html" title="Basic Steps"><link rel="next" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-steps.html">Prev</a> </td><th width="60%" align="center">Chapter�2.�Installation Overview</th><td width="20%" align="right"> <a accesskey="n" href="complete-install.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="individual-programs"></a>Prerequisite Software</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p> Index: openacs-4/packages/acs-core-docs/www/install-cvs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-cvs.html,v diff -u -r1.25 -r1.26 --- openacs-4/packages/acs-core-docs/www/install-cvs.html 5 May 2004 12:36:04 -0000 1.25 +++ openacs-4/packages/acs-core-docs/www/install-cvs.html 11 Jun 2004 10:17:37 -0000 1.26 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Initialize CVS (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="openacs-unpack.html" title="Unpack the OpenACS tarball"><link rel="next" href="psgml-for-emacs.html" title="Add PSGML commands to emacs init file (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="openacs-unpack.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="psgml-for-emacs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-cvs"></a>Initialize CVS (OPTIONAL)</h2></div></div><div></div></div><a class="indexterm" name="id2533376"></a><p>CVS is a source control system. Create and initialize a +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Initialize CVS (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="openacs-unpack.html" title="Unpack the OpenACS tarball"><link rel="next" href="psgml-for-emacs.html" title="Add PSGML commands to emacs init file (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="openacs-unpack.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="psgml-for-emacs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-cvs"></a>Initialize CVS (OPTIONAL)</h2></div></div><div></div></div><a class="indexterm" name="id2532660"></a><p>CVS is a source control system. Create and initialize a directory for a local cvs repository.</p><pre class="screen">[root tmp]# <b class="userinput"><tt>mkdir /cvsroot</tt></b> [root tmp]#<b class="userinput"><tt> cvs -d /cvsroot init</tt></b> [root tmp]# Index: openacs-4/packages/acs-core-docs/www/install-daemontools.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-daemontools.html,v diff -u -r1.26 -r1.27 --- openacs-4/packages/acs-core-docs/www/install-daemontools.html 5 May 2004 12:36:04 -0000 1.26 +++ openacs-4/packages/acs-core-docs/www/install-daemontools.html 11 Jun 2004 10:17:37 -0000 1.27 @@ -1,9 +1,9 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Daemontools (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="psgml-for-emacs.html" title="Add PSGML commands to emacs init file (OPTIONAL)"><link rel="next" href="install-qmail.html" title="Install qmail (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="psgml-for-emacs.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-qmail.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-daemontools"></a>Install Daemontools (OPTIONAL)</h2></div></div><div></div></div><p>Daemontools is a collection of programs for controlling +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Daemontools (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="psgml-for-emacs.html" title="Add PSGML commands to emacs init file (OPTIONAL)"><link rel="next" href="install-qmail.html" title="Install qmail (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="psgml-for-emacs.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-qmail.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-daemontools"></a>Install Daemontools (OPTIONAL)</h2></div></div><div></div></div><p>Daemontools is a collection of programs for controlling other processes. We use daemontools to run and monitor AOLserver. It is installed in /package. These commands install daemontools and svgroup. svgroup is a script for granting permissions, to allow users other than root to use daemontools for specific - services.</p><div class="orderedlist"><ol type="1"><li><p>Install Daemontools</p><a class="indexterm" name="id2527677"></a><p><a href="individual-programs.html#daemontools-download">download daemontools</a> and install it.</p><div class="itemizedlist"><ul type="disc"><li><p>Red Hat 8</p><pre class="screen">[root root]# <b class="userinput"><tt>mkdir -p /package</tt></b> + services.</p><div class="orderedlist"><ol type="1"><li><p>Install Daemontools</p><a class="indexterm" name="id2532498"></a><p><a href="individual-programs.html#daemontools-download">download daemontools</a> and install it.</p><div class="itemizedlist"><ul type="disc"><li><p>Red Hat 8</p><pre class="screen">[root root]# <b class="userinput"><tt>mkdir -p /package</tt></b> [root root]# <b class="userinput"><tt>chmod 1755 /package/</tt></b> [root root]# <b class="userinput"><tt>cd /package/</tt></b> [root package]# <b class="userinput"><tt>tar xzf /tmp/daemontools-0.76.tar.gz</tt></b> Index: openacs-4/packages/acs-core-docs/www/install-full-text-search.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/install-full-text-search.html,v diff -u -r1.24 -r1.25 --- openacs-4/packages/acs-core-docs/www/install-full-text-search.html 5 May 2004 12:36:04 -0000 1.24 +++ openacs-4/packages/acs-core-docs/www/install-full-text-search.html 11 Jun 2004 10:17:37 -0000 1.25 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Full Text Search</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-nspam.html" title="Install nspam"><link rel="next" href="install-nsopenssl.html" title="Install nsopenssl"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-nspam.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-nsopenssl.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-full-text-search"></a>Install Full Text Search</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a> and <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Full Text Search</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-nspam.html" title="Install nspam"><link rel="next" href="install-nsopenssl.html" title="Install nsopenssl"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-nspam.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-nsopenssl.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-full-text-search"></a>Install Full Text Search</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a> and <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openfts"></a>Install OpenFTS module</h3></div></div><div></div></div><a class="indexterm" name="id2580753"></a><p>If you want full text search, and you are running PostgreSQL, install this module to support FTS. Do this step after you have installed both PostgreSQL and + </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openfts"></a>Install OpenFTS module</h3></div></div><div></div></div><a class="indexterm" name="id2573315"></a><p>If you want full text search, and you are running PostgreSQL, install this module to support FTS. Do this step after you have installed both PostgreSQL and AOLserver. You will need the <a href="individual-programs.html#openfts-download">openfts tarball</a> in <tt class="computeroutput">/tmp</tt>.</p><div class="orderedlist"><ol type="1"><li><p>Install Tsearch. This is a PostgreSQL module that OpenFTS requires.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - postgres</tt></b> @@ -76,24 +76,30 @@ make su postgres make install -exit</span></span></pre></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openfts-postgres"></a>Install OpenFTS prerequisites in PostgreSQL instance</h3></div></div><div></div></div><a class="indexterm" name="id2580270"></a><p>If you are installing Full Text Search, add required +exit</span></span></pre></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openfts-postgres"></a>Install OpenFTS prerequisites in PostgreSQL instance</h3></div></div><div></div></div><a class="indexterm" name="id2532563"></a><p>If you are installing Full Text Search, add required packages to the new database. (In order for full text search to work, you must also <a href="install-full-text-search.html#install-openfts" title="Install OpenFTS module">install</a> the PostgreSQL - OpenFTS module and prerequisites.)</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/tsearch/tsearch.sql</tt></b> + OpenFTS module and prerequisites.)</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/tsearch/tsearch.sql</tt></b> BEGIN CREATE <span class="emphasis"><em>(many lines omitted)</em></span> INSERT 0 1 COMMIT -[service0 service0]$ <b class="userinput"><tt>/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts/openfts.sql</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts/openfts.sql</tt></b> CREATE CREATE -[service0 service0]$ -<span class="action"><span class="action">/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/tsearch/tsearch.sql -/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts/openfts.sql</span></span></pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="enable-openfts"></a>Enable OpenFTS in config.tcl</h3></div></div><div></div></div><p>If you have <a href="install-full-text-search.html#install-openfts" title="Install OpenFTS module">installed OpenFTS</a>, you can enable it for this service. Uncomment this line from <tt class="computeroutput">config.tcl</tt>. (To uncomment a line in a tcl file, remove the <tt class="computeroutput">#</tt> at the beginning of the line.)</p><pre class="programlisting">#ns_param nsfts ${bindir}/nsfts.so</pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-fts-engine"></a>Install Full Text Search Engine</h3></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Admin</span></span></tt> on the top of the default home page. If prompted, log in with the account and password you entered during install.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ +<span class="action"><span class="action">/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/tsearch/tsearch.sql +/usr/local/pgsql/bin/psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/src/postgresql-7.3.4/contrib/pgsql_contrib_openfts/openfts.sql</span></span></pre><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p> + If you get the error + <tt class="computeroutput">ERROR: could not access file "$libdir/tsearch": no such file or directory</tt> + It is probably because PostgreSQL's libdir configuration variable points to a diffent directory than where tsearch is. + You can find out where PostgreSQL expects to find tsearch via + </p><pre class="screen"><b class="userinput"><tt>pg_config --pkglibdir</tt></b></pre><p> + </p></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="enable-openfts"></a>Enable OpenFTS in config.tcl</h3></div></div><div></div></div><p>If you have <a href="install-full-text-search.html#install-openfts" title="Install OpenFTS module">installed OpenFTS</a>, you can enable it for this service. Uncomment this line from <tt class="computeroutput">config.tcl</tt>. (To uncomment a line in a tcl file, remove the <tt class="computeroutput">#</tt> at the beginning of the line.)</p><pre class="programlisting">#ns_param nsfts ${bindir}/nsfts.so</pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-fts-engine"></a>Install Full Text Search Engine</h3></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Admin</span></span></tt> on the top of the default home page. If prompted, log in with the account and password you entered during install.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install software</span></span></tt> link.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install -new service</span></span></tt> link.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install</span></span></tt> link next to OpenFTS Driver.</p></li><li><p>Restart the service.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$</pre></li><li><p>Wait a minute, then browse back to the home page.</p></li><li><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Admin</span></span></tt> on the top of the screen.</p></li><li><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Main Site Administration</span></span></tt> in the "Subsite Administration" section.</p></li><li><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Site Map</span></span></tt> in the "Advanced Features" section.</p></li><li><p>Mount the OpenFTS Full Text Search Engine in the site map.</p><div class="orderedlist"><ol type="a"><li><p>Click the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">new sub folder</span></span></tt> link on the "/" line, the first line under Main Site:/.</p></li><li><p>Type <b class="userinput"><tt>openfts</tt></b> +new service</span></span></tt> link.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install</span></span></tt> link next to OpenFTS Driver.</p></li><li><p>Restart the service.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$</pre></li><li><p>Wait a minute, then browse back to the home page.</p></li><li><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Admin</span></span></tt> on the top of the screen.</p></li><li><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Main Site Administration</span></span></tt> in the "Subsite Administration" section.</p></li><li><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Site Map</span></span></tt> in the "Advanced Features" section.</p></li><li><p>Mount the OpenFTS Full Text Search Engine in the site map.</p><div class="orderedlist"><ol type="a"><li><p>Click the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">new sub folder</span></span></tt> link on the "/" line, the first line under Main Site:/.</p></li><li><p>Type <b class="userinput"><tt>openfts</tt></b> and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">New</span></span></tt>.</p></li><li><p>On the new <tt class="computeroutput"><span class="guilabel"><span class="guilabel">openfts</span></span></tt> line, click the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">mount</span></span></tt> link.</p></li><li><p>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">OpenFTS Driver</span></span></tt>.</p></li><li><p>On the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">openfts</span></span></tt> line, click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">set parameters</span></span></tt>.</p></li><li><p>Change <tt class="computeroutput"><span class="guilabel"><span class="guilabel">openfts_tcl_src_path</span></span></tt> to <b class="userinput"><tt>/usr/local/src/Search-OpenFTS-tcl-0.3.2/</tt></b> and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Set Parameters</span></span></tt> </p></li></ol></div></li><li><p>Mount the Search interface in the site map.</p><div class="orderedlist"><ol type="a"><li><p>Click the @@ -107,17 +113,17 @@ <tt class="computeroutput"><span class="guilabel"><span class="guilabel">search</span></span></tt> from the drop-down list, and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">New</span></span></tt>. -</p></li></ol></div></li><li><p>Restart the service.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$</pre></li><li><p>Wait a minute, then click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Main Site</span></span></tt> at the top of the page.</p></li><li><p>Initialize the OpenFTS Engine. This creates a set of tables in the database to support FTS.</p><p>Near the bottom of the page, click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">OpenFTS Driver</span></span></tt> link. Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration</span></span></tt>. +</p></li></ol></div></li><li><p>Restart the service.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$</pre></li><li><p>Wait a minute, then click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Main Site</span></span></tt> at the top of the page.</p></li><li><p>Initialize the OpenFTS Engine. This creates a set of tables in the database to support FTS.</p><p>Near the bottom of the page, click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">OpenFTS Driver</span></span></tt> link. Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration</span></span></tt>. Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Initialize OpenFTS Engine</span></span></tt>. Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Initialize OpenFTS Engine</span></span></tt>. </p></li><li><p>Add the FTS Engine service contract</p><div class="orderedlist"><ol type="a"><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">DevAdmin</span></span></tt>. </p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Service Contract</span></span></tt> link. </p></li><li><p>On the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">FtsEngineDriver</span></span></tt> line, click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install</span></span></tt>. -</p></li></ol></div></li><li><p>Restart the service.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$</pre></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-fts-content-provider"></a>Enable Full Text Search in packages</h3></div></div><div></div></div><p>Enabling Full Text Search in packages at the moment is not trivial. It involves a couple of steps, which I will illustrate taking lars-blogger as an example package</p><div class="orderedlist"><ol type="1"><li><p>Install the package. +</p></li></ol></div></li><li><p>Restart the service.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$</pre></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-fts-content-provider"></a>Enable Full Text Search in packages</h3></div></div><div></div></div><p>Enabling Full Text Search in packages at the moment is not trivial. It involves a couple of steps, which I will illustrate taking lars-blogger as an example package</p><div class="orderedlist"><ol type="1"><li><p>Install the package. </p><div class="orderedlist"><ol type="a"><li><p>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Admin</span></span></tt> on the top of the default home page. If prompted, log in with the account and password you entered during install.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install software</span></span></tt> link.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install new application</span></span></tt> link.</p></li><li><p>Click on the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install</span></span></tt> link next to Weblogger.</p></li><li><p>Install all required packages as well (always say okay until you shall restart the server)</p></li></ol></div><p> - </p></li><li><p>Load the service contracts datamodell and enable the service contract</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>cd packages/lars-blogger/sql/postgresql</tt></b> -[service0 postgresql]$ psql <span class="replaceable"><span class="replaceable">service0</span></span> -f lars-blogger-sc-create.sql</pre><p>Note: Usually this script is called <span class="replaceable"><span class="replaceable">package_name</span></span>-sc-create.sql</p></li><li><p>Restart the service.</p><pre class="screen">[service0 postgresql]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> - [service0 postgresl]$</pre></li></ol></div><p>If you are lucky, Full Text Search is enabled now, if not consult <a href="http://openacs.org/forums/message-view?message_id=154759" target="_top">http://openacs.org/forums/message-view?message_id=154759</a>. This link also contains some hints on how to make sure it is enabled.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-nspam.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-nsopenssl.html">Next</a></td></tr><tr><td width="40%" align="left">Install nspam </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install nsopenssl</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-full-text-search.html#comments">View comments on this page at openacs.org</a></center></body></html> + </p></li><li><p>Load the service contracts datamodell and enable the service contract</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd packages/lars-blogger/sql/postgresql</tt></b> +[$OPENACS_SERVICE_NAME postgresql]$ psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f lars-blogger-sc-create.sql</pre><p>Note: Usually this script is called <span class="replaceable"><span class="replaceable">package_name</span></span>-sc-create.sql</p></li><li><p>Restart the service.</p><pre class="screen">[$OPENACS_SERVICE_NAME postgresql]$ <b class="userinput"><tt>svc -t /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> + [$OPENACS_SERVICE_NAME postgresl]$</pre></li></ol></div><p>If you are lucky, Full Text Search is enabled now, if not consult <a href="http://openacs.org/forums/message-view?message_id=154759" target="_top">http://openacs.org/forums/message-view?message_id=154759</a>. This link also contains some hints on how to make sure it is enabled.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-nspam.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-nsopenssl.html">Next</a></td></tr><tr><td width="40%" align="left">Install nspam </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install nsopenssl</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-full-text-search.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-more-software.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-more-software.html,v diff -u -r1.11 -r1.12 --- openacs-4/packages/acs-core-docs/www/install-more-software.html 5 May 2004 12:36:04 -0000 1.11 +++ openacs-4/packages/acs-core-docs/www/install-more-software.html 11 Jun 2004 10:17:37 -0000 1.12 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�B.�Install additional supporting software</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9"><link rel="next" href="openacs-unpack.html" title="Unpack the OpenACS tarball"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-redhat.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="openacs-unpack.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="install-more-software"></a>Appendix�B.�Install additional supporting software</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="openacs-unpack.html">Unpack the OpenACS tarball</a></span></dt><dt><span class="sect1"><a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-qmail.html">Install qmail (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="analog-install.html">Install Analog web file analyzer</a></span></dt><dt><span class="sect1"><a href="install-nspam.html">Install nspam</a></span></dt><dt><span class="sect1"><a href="install-full-text-search.html">Install Full Text Search</a></span></dt><dt><span class="sect1"><a href="install-nsopenssl.html">Install nsopenssl</a></span></dt><dt><span class="sect1"><a href="install-tclwebtest.html">Install tclwebtest.</a></span></dt><dt><span class="sect1"><a href="install-php.html">Install PHP for use in AOLserver</a></span></dt><dt><span class="sect1"><a href="install-squirrelmail.html">Install Squirrelmail for use as a webmail system for OpenACS</a></span></dt><dt><span class="sect1"><a href="aolserver.html">Install AOLserver 3.3oacs1</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�B.�Install additional supporting software</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9"><link rel="next" href="openacs-unpack.html" title="Unpack the OpenACS tarball"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-redhat.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="openacs-unpack.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="install-more-software"></a>Appendix�B.�Install additional supporting software</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="openacs-unpack.html">Unpack the OpenACS tarball</a></span></dt><dt><span class="sect1"><a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="install-qmail.html">Install qmail (OPTIONAL)</a></span></dt><dt><span class="sect1"><a href="analog-install.html">Install Analog web file analyzer</a></span></dt><dt><span class="sect1"><a href="install-nspam.html">Install nspam</a></span></dt><dt><span class="sect1"><a href="install-full-text-search.html">Install Full Text Search</a></span></dt><dt><span class="sect1"><a href="install-nsopenssl.html">Install nsopenssl</a></span></dt><dt><span class="sect1"><a href="install-tclwebtest.html">Install tclwebtest.</a></span></dt><dt><span class="sect1"><a href="install-php.html">Install PHP for use in AOLserver</a></span></dt><dt><span class="sect1"><a href="install-squirrelmail.html">Install Squirrelmail for use as a webmail system for OpenACS</a></span></dt><dt><span class="sect1"><a href="aolserver.html">Install AOLserver 3.3oacs1</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>This section assumes that the source tarballs for supporting Index: openacs-4/packages/acs-core-docs/www/install-next-add-server.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-next-add-server.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/install-next-add-server.html 5 May 2004 12:36:04 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/install-next-add-server.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1,6 +1,6 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Running multiple services on one machine</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-openacs-inittab.html" title="AOLserver keepalive with inittab"><link rel="next" href="high-avail.html" title="High Availability/High Performance Configurations"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-openacs-inittab.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="high-avail.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-next-add-server"></a>Running multiple services on one machine</h2></div></div><div></div></div><p><b>Services on different ports.�</b>To run a different service on another port but the same +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Running multiple services on one machine</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-openacs-inittab.html" title="AOLserver keepalive with inittab"><link rel="next" href="high-avail.html" title="High Availability/High Performance Configurations"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-openacs-inittab.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="high-avail.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-next-add-server"></a>Running multiple services on one machine</h2></div></div><div></div></div><p><b>Services on different ports.�</b>To run a different service on another port but the same ip, simply repeat <a href="openacs.html">Install OpenACS 5.2.0d1</a> replacing - <span class="replaceable"><span class="replaceable">service0</span></span>, and change the + <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>, and change the </p><pre class="programlisting">set httpport 8000 set httpsport 8443 </pre><p> to different values.</p><p><b>Services on different host names.�</b>For example, suppose you want to support Index: openacs-4/packages/acs-core-docs/www/install-next-backups.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-next-backups.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/install-next-backups.html 5 May 2004 12:36:04 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/install-next-backups.html 11 Jun 2004 10:17:37 -0000 1.3 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Backup Strategy</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="next" href="snapshot-backup.html" title="Manual backup and recovery"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="backup-recovery.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="snapshot-backup.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-next-backups"></a>Backup Strategy</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Backup Strategy</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="next" href="snapshot-backup.html" title="Manual backup and recovery"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="backup-recovery.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="snapshot-backup.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-next-backups"></a>Backup Strategy</h2></div></div><div></div></div><p> The purpose of backup is to enable recovery. Backup and recovery are always risky; here are some steps that minimize the chance recovery is necessary: @@ -27,9 +27,9 @@ OpenACS installations comprise files and database contents. If you follow the reference install and put all files, including configuration files, in - <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/</tt>, + <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/</tt>, and back up the database nightly to a file in - <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup</tt>, + <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup</tt>, then you can apply standard file-based backup strategies to - <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt> + <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="backup-recovery.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="snapshot-backup.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�8.�Backup and Recovery </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Manual backup and recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-next-backups.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-next-nightly-vacuum.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-next-nightly-vacuum.html,v diff -u -r1.9 -r1.10 --- openacs-4/packages/acs-core-docs/www/install-next-nightly-vacuum.html 5 May 2004 12:36:04 -0000 1.9 +++ openacs-4/packages/acs-core-docs/www/install-next-nightly-vacuum.html 11 Jun 2004 10:17:37 -0000 1.10 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Vacuum Postgres nightly</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="database-management.html" title="Chapter�7.�Database Management"><link rel="previous" href="install-openacs-delete-tablespace.html" title="Deleting a tablespace"><link rel="next" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-openacs-delete-tablespace.html">Prev</a> </td><th width="60%" align="center">Chapter�7.�Database Management</th><td width="20%" align="right"> <a accesskey="n" href="backup-recovery.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-next-nightly-vacuum"></a>Vacuum Postgres nightly</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Vacuum Postgres nightly</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="database-management.html" title="Chapter�7.�Database Management"><link rel="previous" href="install-openacs-delete-tablespace.html" title="Deleting a tablespace"><link rel="next" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-openacs-delete-tablespace.html">Prev</a> </td><th width="60%" align="center">Chapter�7.�Database Management</th><td width="20%" align="right"> <a accesskey="n" href="backup-recovery.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-next-nightly-vacuum"></a>Vacuum Postgres nightly</h2></div></div><div></div></div><p> The "vacuum" command must be run periodically to reclaim space in versions of PostgreSQL before 7.4. The "vacuum analyze" form additionally collects statistics on the @@ -15,4 +15,4 @@ step. </p><p>Edit your crontab:</p><pre class="programlisting">[joeuser ~]$ <b class="userinput"><tt>crontab -e</tt></b></pre><p>We'll set vacuum up to run nightly at 1 AM. Add the following line:</p><pre class="programlisting"> -0 1 * * * /usr/local/pgsql/bin/vacuumdb <span class="replaceable"><span class="replaceable">service0</span></span></pre><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-openacs-delete-tablespace.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="backup-recovery.html">Next</a></td></tr><tr><td width="40%" align="left">Deleting a tablespace </td><td width="20%" align="center"><a accesskey="u" href="database-management.html">Up</a></td><td width="40%" align="right"> Chapter�8.�Backup and Recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-next-nightly-vacuum.html#comments">View comments on this page at openacs.org</a></center></body></html> +0 1 * * * /usr/local/pgsql/bin/vacuumdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></pre><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-openacs-delete-tablespace.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="backup-recovery.html">Next</a></td></tr><tr><td width="40%" align="left">Deleting a tablespace </td><td width="20%" align="center"><a accesskey="u" href="database-management.html">Up</a></td><td width="40%" align="right"> Chapter�8.�Backup and Recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-next-nightly-vacuum.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-nsopenssl.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-nsopenssl.html,v diff -u -r1.15 -r1.16 --- openacs-4/packages/acs-core-docs/www/install-nsopenssl.html 5 May 2004 12:36:04 -0000 1.15 +++ openacs-4/packages/acs-core-docs/www/install-nsopenssl.html 11 Jun 2004 10:17:37 -0000 1.16 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install nsopenssl</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-full-text-search.html" title="Install Full Text Search"><link rel="next" href="install-tclwebtest.html" title="Install tclwebtest."><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-full-text-search.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-tclwebtest.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-nsopenssl"></a>Install nsopenssl</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a> and <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install nsopenssl</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-full-text-search.html" title="Install Full Text Search"><link rel="next" href="install-tclwebtest.html" title="Install tclwebtest."><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-full-text-search.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-tclwebtest.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-nsopenssl"></a>Install nsopenssl</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a> and <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>This AOLserver module is required if you want people to connect to your site via Index: openacs-4/packages/acs-core-docs/www/install-nspam.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-nspam.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/install-nspam.html 5 May 2004 12:36:04 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/install-nspam.html 11 Jun 2004 10:17:37 -0000 1.7 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install nspam</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="analog-install.html" title="Install Analog web file analyzer"><link rel="next" href="install-full-text-search.html" title="Install Full Text Search"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="analog-install.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-full-text-search.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-nspam"></a>Install nspam</h2></div></div><div></div></div><p><a href="/doc/acs-authentication/ext-auth-install.html" target="_top">/doc/acs-authentication/ext-auth-install.html</a></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="analog-install.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-full-text-search.html">Next</a></td></tr><tr><td width="40%" align="left">Install Analog web file analyzer </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install Full Text Search</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-nspam.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install nspam</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="analog-install.html" title="Install Analog web file analyzer"><link rel="next" href="install-full-text-search.html" title="Install Full Text Search"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="analog-install.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-full-text-search.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-nspam"></a>Install nspam</h2></div></div><div></div></div><p><a href="/doc/acs-authentication/ext-auth-install.html" target="_top">/doc/acs-authentication/ext-auth-install.html</a></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="analog-install.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-full-text-search.html">Next</a></td></tr><tr><td width="40%" align="left">Install Analog web file analyzer </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install Full Text Search</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-nspam.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-openacs-delete-tablespace.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-openacs-delete-tablespace.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/install-openacs-delete-tablespace.html 5 May 2004 12:36:04 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/install-openacs-delete-tablespace.html 11 Jun 2004 10:17:37 -0000 1.3 @@ -1,24 +1,24 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Deleting a tablespace</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="database-management.html" title="Chapter�7.�Database Management"><link rel="previous" href="remote-postgres.html" title="Running a PostgreSQL database on another server"><link rel="next" href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="remote-postgres.html">Prev</a> </td><th width="60%" align="center">Chapter�7.�Database Management</th><td width="20%" align="right"> <a accesskey="n" href="install-next-nightly-vacuum.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-openacs-delete-tablespace"></a>Deleting a tablespace</h2></div></div><div></div></div><p>Skip down for instructions on <a href="install-openacs-delete-tablespace.html#install-openacs-delete-postgres-tablespace">Deleting a PostgreSQL tablespace</a>. +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Deleting a tablespace</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="database-management.html" title="Chapter�7.�Database Management"><link rel="previous" href="remote-postgres.html" title="Running a PostgreSQL database on another server"><link rel="next" href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="remote-postgres.html">Prev</a> </td><th width="60%" align="center">Chapter�7.�Database Management</th><td width="20%" align="right"> <a accesskey="n" href="install-next-nightly-vacuum.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-openacs-delete-tablespace"></a>Deleting a tablespace</h2></div></div><div></div></div><p>Skip down for instructions on <a href="install-openacs-delete-tablespace.html#install-openacs-delete-postgres-tablespace">Deleting a PostgreSQL tablespace</a>. </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openacs-delete-oracle-tablespace"></a>Deleting an Oracle tablespace</h3></div></div><div></div></div><p> Should it become necessary to rebuild a tablespace from scratch, you can use the <tt class="computeroutput">drop user</tt> command in SVRMGRL with the <tt class="computeroutput">cascade</tt> option. This command will drop the user and every database object - the user owns.</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>drop user <span class="replaceable"><span class="replaceable">service0</span></span> cascade;</tt></b></pre><p> + the user owns.</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>drop user <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> cascade;</tt></b></pre><p> If this does not work because svrmgrl "cannot drop a user that is currently connected", make sure to kill the AOLserver using - this user. If it still does not work, do:</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>select username, sid, serial# from v$session where lower(username)='<span class="replaceable"><span class="replaceable">service0</span></span>';</tt></b></pre><p>and then</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>alter system kill session '<span class="replaceable"><span class="replaceable">sid, serial#</span></span>';</tt></b></pre><p> + this user. If it still does not work, do:</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>select username, sid, serial# from v$session where lower(username)='<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>';</tt></b></pre><p>and then</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>alter system kill session '<span class="replaceable"><span class="replaceable">sid, serial#</span></span>';</tt></b></pre><p> where <span class="emphasis"><em>sid</em></span> and <span class="emphasis"><em>serial#</em></span> are replaced with the corresponding values for the open session.</p><p><span class="strong">Use with caution!</span></p><p> If you feel the need to delete <span class="emphasis"><em>everything</em></span> - related to the service, you can also issue the following:</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>drop tablespace <span class="replaceable"><span class="replaceable">service0</span></span> including contents cascade constraints;</tt></b></pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openacs-delete-postgres-tablespace"></a>Deleting a PostgreSQL tablespace</h3></div></div><div></div></div><p> + related to the service, you can also issue the following:</p><pre class="programlisting">SVRMGR> <b class="userinput"><tt>drop tablespace <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> including contents cascade constraints;</tt></b></pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-openacs-delete-postgres-tablespace"></a>Deleting a PostgreSQL tablespace</h3></div></div><div></div></div><p> Dropping a PostgreSQL tablespace is easy. You have to stop any AOLserver instances that are using the database that you wish to drop. If you're using daemontools, this is simple, just use the 'down' flag (-d). If you're using inittab, you have to comment out your server in <tt class="computeroutput">/etc/inittab</tt>, reread the inittab with <tt class="computeroutput">/sbin/init q</tt>, and then <tt class="computeroutput">restart-aolserver - <span class="replaceable"><span class="replaceable">service0</span></span></tt>.</p><p>Then, to drop the db, just do:</p><pre class="programlisting"> -[service0 ~]$ <b class="userinput"><tt>dropdb <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> + <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt>.</p><p>Then, to drop the db, just do:</p><pre class="programlisting"> +[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>dropdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> DROP DATABASE</pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="remote-postgres.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-next-nightly-vacuum.html">Next</a></td></tr><tr><td width="40%" align="left">Running a PostgreSQL database on another server </td><td width="20%" align="center"><a accesskey="u" href="database-management.html">Up</a></td><td width="40%" align="right"> Vacuum Postgres nightly</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-openacs-delete-tablespace.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-openacs-inittab.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-openacs-inittab.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/install-openacs-inittab.html 5 May 2004 12:36:04 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/install-openacs-inittab.html 11 Jun 2004 10:17:37 -0000 1.3 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>AOLserver keepalive with inittab</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-openacs-keepalive.html" title="Starting and Stopping an OpenACS instance."><link rel="next" href="install-next-add-server.html" title="Running multiple services on one machine"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-openacs-keepalive.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="install-next-add-server.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-openacs-inittab"></a>AOLserver keepalive with inittab</h2></div></div><div></div></div><p>This is an alternative method for keeping the AOLserver +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>AOLserver keepalive with inittab</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="install-openacs-keepalive.html" title="Starting and Stopping an OpenACS instance."><link rel="next" href="install-next-add-server.html" title="Running multiple services on one machine"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-openacs-keepalive.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="install-next-add-server.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-openacs-inittab"></a>AOLserver keepalive with inittab</h2></div></div><div></div></div><p>This is an alternative method for keeping the AOLserver process running. The recommended method is to <a href="install-openacs-keepalive.html" title="Starting and Stopping an OpenACS instance.">run AOLserver supervised</a>.</p><p> This step should be completed as root. This can break every service Index: openacs-4/packages/acs-core-docs/www/install-openacs-keepalive.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-openacs-keepalive.html,v diff -u -r1.9 -r1.10 --- openacs-4/packages/acs-core-docs/www/install-openacs-keepalive.html 5 May 2004 12:36:04 -0000 1.9 +++ openacs-4/packages/acs-core-docs/www/install-openacs-keepalive.html 11 Jun 2004 10:17:37 -0000 1.10 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Starting and Stopping an OpenACS instance.</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="next" href="install-openacs-inittab.html" title="AOLserver keepalive with inittab"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maintenance-web.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="install-openacs-inittab.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-openacs-keepalive"></a>Starting and Stopping an OpenACS instance.</h2></div></div><div></div></div><p>The simplest way to start and stop and OpenACS site is to run the startup shell script provided, <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools/run</tt>. This runs as a regular task, and logs to the logfile. To stop the site, kill the script.</p><p>A more stable way to run OpenACS is with a "keepalive" mechanism of some sort, so that whenever the server halts or is stopped for a reset, it restarts automatically. This is recommended for development and production servers.</p><p>The Reference Platform uses Daemontools to control AOLserver. A simpler method, using <tt class="computeroutput">init</tt>, is <a href="install-openacs-inittab.html" title="AOLserver keepalive with inittab">here</a>.</p><div class="orderedlist"><ol type="1"><li><p>Daemontools must already be installed. If not, <a href="install-daemontools.html" title="Install Daemontools (OPTIONAL)">install it</a>.</p></li><li><p>Each service controlled by daemontools must have a +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Starting and Stopping an OpenACS instance.</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="next" href="install-openacs-inittab.html" title="AOLserver keepalive with inittab"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maintenance-web.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="install-openacs-inittab.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-openacs-keepalive"></a>Starting and Stopping an OpenACS instance.</h2></div></div><div></div></div><p>The simplest way to start and stop and OpenACS site is to run the startup shell script provided, <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools/run</tt>. This runs as a regular task, and logs to the logfile. To stop the site, kill the script.</p><p>A more stable way to run OpenACS is with a "keepalive" mechanism of some sort, so that whenever the server halts or is stopped for a reset, it restarts automatically. This is recommended for development and production servers.</p><p>The Reference Platform uses Daemontools to control AOLserver. A simpler method, using <tt class="computeroutput">init</tt>, is <a href="install-openacs-inittab.html" title="AOLserver keepalive with inittab">here</a>.</p><div class="orderedlist"><ol type="1"><li><p>Daemontools must already be installed. If not, <a href="install-daemontools.html" title="Install Daemontools (OPTIONAL)">install it</a>.</p></li><li><p>Each service controlled by daemontools must have a directory in <tt class="computeroutput">/service</tt>. That directory must have a file called <tt class="computeroutput">run</tt>. It works like this:</p><div class="itemizedlist"><ul type="disc"><li><p>The <tt class="computeroutput">init</tt> program starts every @@ -11,58 +11,58 @@ looks for a file in the subdirectory called <tt class="computeroutput">run</tt>. If it finds a run file, it creates a <tt class="computeroutput">supervise</tt> process</p></li><li><p><tt class="computeroutput">supervise </tt> executes the run script. Whenever the run script stops, <tt class="computeroutput">supervise</tt> executes it again. It also creates additional control files in the same directory. </p></li></ul></div><p>Hence, the AOLserver instance for your development server is started by the file - <tt class="computeroutput">/service/service0/run</tt>. + <tt class="computeroutput">/service/$OPENACS_SERVICE_NAME/run</tt>. But we use a symlink to make it easier to add and remove stuff from the <tt class="computeroutput">/service</tt>, so the actual location is - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>etc/daemontools/run</tt>.</p><p>Daemontools creates additional files and directories to track status and + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>etc/daemontools/run</tt>.</p><p>Daemontools creates additional files and directories to track status and log. A daemontools directory is included in the OpenACS tarball at - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools</tt>. To use it, first ill any existing AOLserver instances. As root, link the <tt class="computeroutput">daemontools</tt> directory into the <tt class="computeroutput">/service</tt> directory. Daemontools' <tt class="computeroutput">svscan</tt> process checks this directory every five seconds, and will quickly execute <tt class="computeroutput">run</tt>.</p><pre class="screen">[service0 etc]$ <b class="userinput"><tt>killall nsd</tt></b> + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools</tt>. To use it, first ill any existing AOLserver instances. As root, link the <tt class="computeroutput">daemontools</tt> directory into the <tt class="computeroutput">/service</tt> directory. Daemontools' <tt class="computeroutput">svscan</tt> process checks this directory every five seconds, and will quickly execute <tt class="computeroutput">run</tt>.</p><pre class="screen">[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>killall nsd</tt></b> nsd: no process killed -[service0 etc]$ <b class="userinput"><tt>emacs /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools/run</tt></b> -[service0 etc]$ <b class="userinput"><tt>exit</tt></b> +[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>emacs /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools/run</tt></b> +[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>exit</tt></b> -[root root]# <b class="userinput"><tt>ln -s /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools/ /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre><p>Verify that AOLserver is running.</p><pre class="screen">[root root]#<b class="userinput"><tt> ps -auxw | grep nsd</tt></b> -<span class="replaceable"><span class="replaceable">service0</span></span> 5562 14.2 6.2 22436 15952 ? S 11:55 0:04 /usr/local/aolserver/bin/nsd -it /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/config.tcl -u serve +[root root]# <b class="userinput"><tt>ln -s /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools/ /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre><p>Verify that AOLserver is running.</p><pre class="screen">[root root]#<b class="userinput"><tt> ps -auxw | grep nsd</tt></b> +<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> 5562 14.2 6.2 22436 15952 ? S 11:55 0:04 /usr/local/aolserver/bin/nsd -it /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/config.tcl -u serve root 5582 0.0 0.2 3276 628 pts/0 S 11:55 0:00 grep nsd -[root root]#</pre></li><li><p>The user <span class="replaceable"><span class="replaceable">service0</span></span> can now control the service <span class="replaceable"><span class="replaceable">service0</span></span> with these commands:</p><div class="itemizedlist"><ul type="disc"><li><p> +[root root]#</pre></li><li><p>The user <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> can now control the service <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> with these commands:</p><div class="itemizedlist"><ul type="disc"><li><p> - <tt class="computeroutput">svc -d /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt> - + <tt class="computeroutput">svc -d /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> - Bring the server down </p></li><li><p> - <tt class="computeroutput">svc -u /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt> - + <tt class="computeroutput">svc -u /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> - Start the server up and leave it in keepalive mode. </p></li><li><p> - <tt class="computeroutput">svc -o /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt> - + <tt class="computeroutput">svc -o /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> - Start the server up once. Do not restart it if it stops. </p></li><li><p> - <tt class="computeroutput">svc -t /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt> - + <tt class="computeroutput">svc -t /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> - Stop and immediately restart the server. </p></li><li><p> - <tt class="computeroutput">svc -k /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt> - + <tt class="computeroutput">svc -k /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> - Sends the server a KILL signal. This is like KILL -9. AOLserver exits immediately. If svc -t fails to fully kill AOLserver, use this option. This does not take the server out of keepalive mode, so it should still bounce back up immediately. </p></li></ul></div></li><li><p>Install a script to automate the stopping and starting - of AOLserver services via daemontools. You can then restart a service via <tt class="computeroutput">restart-aolserver <span class="replaceable"><span class="replaceable">service0</span></span></tt></p><pre class="screen">[root root]# <b class="userinput"><tt>cp /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-core-docs/www/files/restart-aolserver-daemontools.txt /usr/local/bin/restart-aolserver</tt></b> + of AOLserver services via daemontools. You can then restart a service via <tt class="computeroutput">restart-aolserver <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></p><pre class="screen">[root root]# <b class="userinput"><tt>cp /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-core-docs/www/files/restart-aolserver-daemontools.txt /usr/local/bin/restart-aolserver</tt></b> [root root]# <b class="userinput"><tt>chmod 755 /usr/local/bin/restart-aolserver</tt></b> [root root]#</pre></li><li><p> At this point, these commands will work only for the - <tt class="computeroutput">root</tt> user. Grant permission for the <tt class="computeroutput">web</tt> group to use <tt class="computeroutput">svc</tt> commands on the <span class="emphasis"><em><span class="replaceable"><span class="replaceable">service0</span></span></em></span> server.</p><pre class="screen">[root root]# <b class="userinput"><tt>svgroup web /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[root root]#</pre></li><li><p>Verify that the controls work. You may want to <tt class="computeroutput">tail -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/log/<span class="replaceable"><span class="replaceable">service0</span></span>-error.log</tt> in another window, so you can see what happens when you type these commands. + <tt class="computeroutput">root</tt> user. Grant permission for the <tt class="computeroutput">web</tt> group to use <tt class="computeroutput">svc</tt> commands on the <span class="emphasis"><em><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></em></span> server.</p><pre class="screen">[root root]# <b class="userinput"><tt>svgroup web /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[root root]#</pre></li><li><p>Verify that the controls work. You may want to <tt class="computeroutput">tail -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/log/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-error.log</tt> in another window, so you can see what happens when you type these commands. </p><p> Most of this information comes from Tom Jackson's <a href="http://zmbh.com/daemontools-aolserver/aolserver+daemontools.html" target="_top">AOLserver+Daemontools Mini-HOWTO</a>. -</p></li></ol></div><div class="table"><a name="id2521552"></a><p class="title"><b>Table�6.1.�How it Works</b></p><table summary="How it Works" cellspacing="0" border="1"><colgroup><col><col><col><col><col><col></colgroup><thead><tr><th align="top">Program</th><th align="top">Invoked by this program ...</th><th align="top">... using this file</th><th align="top">Where to find errors</th><th align="top">Log goes to</th><th align="top">Use these commands to control it</th></tr></thead><tbody><tr><td align="top">svscanboot - </td><td align="top">init</td><td align="top">/etc/inittab</td><td align="top">ps -auxw | grep readproctitle</td><td align="top">n/a</td><td align="top">�</td></tr><tr><td align="top">aolserver</td><td align="top"><tt class="computeroutput"></tt>supervise -(a child of svscanboot)</td><td align="top">/service/<span class="replaceable"><span class="replaceable">service0</span></span>/run</td><td align="top">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/log/error.log</td><td align="top">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/log/service0.log</td><td align="top">svc -k /service/<span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td align="top">postgresql</td><td align="top">Redhat init scripts during boot</td><td align="top">/etc/init.d/postgresql</td><td align="top">/usr/local/pgsql/data/server.log</td><td align="top">�</td><td align="top">service postgresql start (Red Hat), /etc/init.d/postgresql start (Debian)</td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="maintenance-web.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-openacs-inittab.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�6.�Production Environments </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> AOLserver keepalive with inittab</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-openacs-keepalive.html#comments">View comments on this page at openacs.org</a></center></body></html> +</p></li></ol></div><div class="table"><a name="id2522834"></a><p class="title"><b>Table�6.1.�How it Works</b></p><table summary="How it Works" cellspacing="0" border="1"><colgroup><col><col><col><col><col><col></colgroup><thead><tr><th align="center">Program</th><th align="center">Invoked by this program ...</th><th align="center">... using this file</th><th align="center">Where to find errors</th><th align="center">Log goes to</th><th align="center">Use these commands to control it</th></tr></thead><tbody><tr><td align="center">svscanboot + </td><td align="center">init</td><td align="center">/etc/inittab</td><td align="center">ps -auxw | grep readproctitle</td><td align="center">n/a</td><td align="center">�</td></tr><tr><td align="center">aolserver</td><td align="center"><tt class="computeroutput"></tt>supervise +(a child of svscanboot)</td><td align="center">/service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/run</td><td align="center">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/log/error.log</td><td align="center">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/log/$OPENACS_SERVICE_NAME.log</td><td align="center">svc -k /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td align="center">postgresql</td><td align="center">Redhat init scripts during boot</td><td align="center">/etc/init.d/postgresql</td><td align="center">/usr/local/pgsql/data/server.log</td><td align="center">�</td><td align="center">service postgresql start (Red Hat), /etc/init.d/postgresql start (Debian)</td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="maintenance-web.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-openacs-inittab.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�6.�Production Environments </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> AOLserver keepalive with inittab</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-openacs-keepalive.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-origins.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-origins.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/install-origins.html 5 May 2004 12:36:04 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/install-origins.html 11 Jun 2004 10:17:37 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Where did this document come from?</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="credits.html" title="Appendix�C.�Credits"><link rel="next" href="os-install.html" title="Linux Install Guides"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="credits.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="os-install.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-origins"></a>Where did this document come from?</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Where did this document come from?</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="credits.html" title="Appendix�C.�Credits"><link rel="next" href="os-install.html" title="Linux Install Guides"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="credits.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="os-install.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-origins"></a>Where did this document come from?</h2></div></div><div></div></div><p> This document was created by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a>, but it's really just plagiarism from a number of documents that came before it. If I've used something that you've written without proper credit, let me Index: openacs-4/packages/acs-core-docs/www/install-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-overview.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/install-overview.html 5 May 2004 12:36:04 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/install-overview.html 11 Jun 2004 10:17:37 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�2.�Installation Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="next" href="install-steps.html" title="Basic Steps"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="acs-admin.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-steps.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="install-overview"></a>Chapter�2.�Installation Overview</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="install-steps.html">Basic Steps</a></span></dt><dt><span class="sect1"><a href="individual-programs.html">Prerequisite Software</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�2.�Installation Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="next" href="install-steps.html" title="Basic Steps"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="acs-admin.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-steps.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="install-overview"></a>Chapter�2.�Installation Overview</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="install-steps.html">Basic Steps</a></span></dt><dt><span class="sect1"><a href="individual-programs.html">Prerequisite Software</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acs-admin.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-steps.html">Next</a></td></tr><tr><td width="40%" align="left">Part�II.�Administrator's Guide </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Basic Steps</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-overview.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-php.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-php.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/install-php.html 5 May 2004 12:36:04 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/install-php.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install PHP for use in AOLserver</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-tclwebtest.html" title="Install tclwebtest."><link rel="next" href="install-squirrelmail.html" title="Install Squirrelmail for use as a webmail system for OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-tclwebtest.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-squirrelmail.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-php"></a>Install PHP for use in AOLserver</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install PHP for use in AOLserver</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-tclwebtest.html" title="Install tclwebtest."><link rel="next" href="install-squirrelmail.html" title="Install Squirrelmail for use as a webmail system for OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-tclwebtest.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-squirrelmail.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-php"></a>Install PHP for use in AOLserver</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>To be able to use PHP software with AOLserver (and OpenACS), you have to install PHP with AOLserver support. Get the latest version from <a href="http://www.php.net" target="_top">www.php.net</a>. For convenience we get version 4.3.4 from a mirror</p><pre class="screen">[root root]# <b class="userinput"><tt>cd /usr/local/src</tt></b> Index: openacs-4/packages/acs-core-docs/www/install-qmail.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-qmail.html,v diff -u -r1.26 -r1.27 --- openacs-4/packages/acs-core-docs/www/install-qmail.html 5 May 2004 12:36:04 -0000 1.26 +++ openacs-4/packages/acs-core-docs/www/install-qmail.html 11 Jun 2004 10:17:37 -0000 1.27 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install qmail (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-daemontools.html" title="Install Daemontools (OPTIONAL)"><link rel="next" href="analog-install.html" title="Install Analog web file analyzer"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-daemontools.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="analog-install.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-qmail"></a>Install qmail (OPTIONAL)</h2></div></div><div></div></div><p>Qmail is a Mail Transfer Agent. It handles incoming and +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install qmail (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-daemontools.html" title="Install Daemontools (OPTIONAL)"><link rel="next" href="analog-install.html" title="Install Analog web file analyzer"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-daemontools.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="analog-install.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-qmail"></a>Install qmail (OPTIONAL)</h2></div></div><div></div></div><p>Qmail is a Mail Transfer Agent. It handles incoming and outgoing mail. Install qmail if you want your OpenACS server to send and receive mail, and you don't want to use an alternate MTA.</p><p>Red Hat 9: all djb tools (qmail, daemontools, ucspi) will @@ -29,7 +29,7 @@ tcpserver: usage: tcpserver [ -1UXpPhHrRoOdDqQv ] [ -c limit ] [ -x rules.cdb ] [ -B banner ] [ -g gid ] [ -u uid ] [ -b backlog ] [ -l localname ] [ -t timeout ] host port program [root ucspi-tcp-0.88]# -</pre><p><a class="indexterm" name="id2532011"></a> +</pre><p><a class="indexterm" name="id2532133"></a> (I'm not sure if this next step is 100% necessary, but when I skip it I get problems. If you get the error <tt class="computeroutput">553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)</tt> then you need to do this.) AOLserver sends outgoing mail via the ns_sendmail command, which pipes a command to the sendmail executable. Or, in our @@ -43,7 +43,7 @@ send outgoing mail.</p><pre class="screen">[root ucspi-tcp-0.88]# <b class="userinput"><tt>cp /tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp</tt></b> [root ucspi-tcp-0.88]# <b class="userinput"><tt>tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp</tt></b> <span class="action"><span class="action">cp /tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp -tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp </span></span></pre></li><li><p><b>Install Qmail.�</b><a class="indexterm" name="id2500927"></a></p><p><a href="individual-programs.html#ucspi-download">Download qmail</a>, +tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp </span></span></pre></li><li><p><b>Install Qmail.�</b><a class="indexterm" name="id2558493"></a></p><p><a href="individual-programs.html#ucspi-download">Download qmail</a>, set up the standard supporting users and build the binaries:</p><pre class="screen">[root root]# <b class="userinput"><tt>cd /usr/local/src</tt></b> [root src]# <b class="userinput"><tt>wget http://www.qmail.org/netqmail-1.04.tar.gz</tt></b> [root src]# <b class="userinput"><tt>tar xzf netqmail-1.04.tar.gz</tt></b> @@ -102,7 +102,7 @@ cd netqmail-1.04 ./collate.sh cd netqmail-1.04 -make setup check</span></span></pre><p>Replace sendmail with qmail's wrapper.</p><a class="indexterm" name="id2469390"></a><pre class="screen">[root qmail-1.03]# <b class="userinput"><tt>rm -f /usr/bin/sendmail /usr/sbin/sendmail</tt></b> +make setup check</span></span></pre><p>Replace sendmail with qmail's wrapper.</p><a class="indexterm" name="id2450990"></a><pre class="screen">[root qmail-1.03]# <b class="userinput"><tt>rm -f /usr/bin/sendmail /usr/sbin/sendmail</tt></b> [root qmail-1.03]# <b class="userinput"><tt>ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail</tt></b> [root qmail-1.03]# <span class="action"><span class="action">rm -f /usr/bin/sendmail /usr/sbin/sendmail @@ -124,7 +124,7 @@ <span class="action"><span class="action">cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root chmod 644 ~alias/.qmail* /var/qmail/bin/maildirmake ~alias/Maildir/ -chown -R alias.nofiles /var/qmail/alias/Maildir</span></span></pre><a class="indexterm" name="id2542100"></a><p>Configure qmail to use the Maildir delivery format +chown -R alias.nofiles /var/qmail/alias/Maildir</span></span></pre><a class="indexterm" name="id2579501"></a><p>Configure qmail to use the Maildir delivery format (instead of mbox), and install a version of the qmail startup script modified to use Maildir.</p><pre class="screen">[root alias]# <b class="userinput"><tt>echo "./Maildir" > /var/qmail/bin/.qmail</tt></b> [root alias]# <b class="userinput"><tt>cp /tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc</tt></b> [root alias]# <b class="userinput"><tt>chmod 755 /var/qmail/rc</tt></b> Index: openacs-4/packages/acs-core-docs/www/install-redhat.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-redhat.html,v diff -u -r1.26 -r1.27 --- openacs-4/packages/acs-core-docs/www/install-redhat.html 5 May 2004 12:36:04 -0000 1.26 +++ openacs-4/packages/acs-core-docs/www/install-redhat.html 11 Jun 2004 10:17:37 -0000 1.27 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�A.�Install Red Hat 8/9</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="backups-with-cvs.html" title="Using CVS for backup-recovery"><link rel="next" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="backups-with-cvs.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-more-software.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="install-redhat"></a>Appendix�A.�Install Red Hat 8/9</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Appendix�A.�Install Red Hat 8/9</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="backups-with-cvs.html" title="Using CVS for backup-recovery"><link rel="next" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="backups-with-cvs.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-more-software.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="install-redhat"></a>Appendix�A.�Install Red Hat 8/9</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>This section takes a blank PC and sets up some supporting @@ -26,7 +26,7 @@ </p><div class="orderedlist"><ol type="1"><li><p><a name="install-first-step"></a>Unplug the network cable from your computer. We don't want to connect to the network until we're sure the computer is secure. - <a class="indexterm" name="id2519705"></a> + <a class="indexterm" name="id2527053"></a> (Wherever you see the word secure, you should always read it as, "secure enough for our purposes, given the amount of work we're @@ -54,7 +54,7 @@ <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Re<u><span class="accel">v</span></u>iew (and modify if needed) the partitions created</span></span></tt> and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt></p></li><li><p>On the pop-up window asking "Are you sure you want to do this?" click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">Y</span></u>es</span></span></tt> - IF YOU ARE WIPING YOUR HARD DRIVE.</p></li><li><p>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt> on the boot loader screen</p></li></ol></div></li><li><p>Configure Networking. <a class="indexterm" name="id2527830"></a> + IF YOU ARE WIPING YOUR HARD DRIVE.</p></li><li><p>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt> on the boot loader screen</p></li></ol></div></li><li><p>Configure Networking. <a class="indexterm" name="id2524379"></a> Again, if you know what you're doing, do this step yourself, being sure to note the firewall holes. Otherwise, follow the instructions in this step to set up a computer directly connected to the internet with a dedicated IP address.</p><div class="orderedlist"><ol type="a"><li><p>DHCP is a system by which a computer that @@ -75,7 +75,7 @@ <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Mail (SMTP)</span></span></tt>. In the <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Other <u><span class="accel">p</span></u>orts</span></span></tt> box, enter <b class="userinput"><tt>443, 8000, 8443</tt></b>. Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt>. -Port 443 is for https (http over ssl), and 8000 and 8443 are http and https access to the development server we'll be setting up.</p></li></ol></div></li><li><p><a class="indexterm" name="id2527942"></a>Select any additional languages you want the +Port 443 is for https (http over ssl), and 8000 and 8443 are http and https access to the development server we'll be setting up.</p></li></ol></div></li><li><p><a class="indexterm" name="id2524490"></a>Select any additional languages you want the computer to support and then click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt></p></li><li><p>Choose your time zone and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt>.</p></li><li><p>Type in a root password, twice.</p></li><li><p>On the Package selection page, we're going to @@ -87,13 +87,13 @@ risk that's still screened by the firewall, or a resource hog. Just don't install a database or web server, because that would conflict with the database and web server we'll install later. -</p><table class="simplelist" border="0" summary="Simple list"><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Editors</span></span></tt> (this installs emacs<a class="indexterm" name="id2527997"></a>),</td></tr><tr><td>click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Details</span></span></tt> next to <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Text-based Internet</span></span></tt>, check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">lynx</span></span></tt>, and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">O</span></u>K</span></span></tt>;</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Authoring and Publishing</span></span></tt> (<a class="indexterm" name="id2528033"></a>this installs docbook),</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Server Configuration Tools</span></span></tt>,</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Web Server</span></span></tt>,</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Windows File Server</span></span></tt>,</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">SQL Database Server</span></span></tt> (this installs PostgreSQL),</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Development Tools</span></span></tt> (this installs gmake and other build tools),</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration Tools</span></span></tt>, and</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Printing Support</span></span></tt>.</td></tr></table><p>At the bottom, check <tt class="computeroutput"><span class="guilabel"><span class="guilabel"><u><span class="accel">S</span></u>elect Individual Packages</span></span></tt> and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt></p></li><li><p>We need to fine-tune the exact list of packages. +</p><table class="simplelist" border="0" summary="Simple list"><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Editors</span></span></tt> (this installs emacs<a class="indexterm" name="id2524545"></a>),</td></tr><tr><td>click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Details</span></span></tt> next to <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Text-based Internet</span></span></tt>, check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">lynx</span></span></tt>, and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">O</span></u>K</span></span></tt>;</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Authoring and Publishing</span></span></tt> (<a class="indexterm" name="id2524581"></a>this installs docbook),</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Server Configuration Tools</span></span></tt>,</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Web Server</span></span></tt>,</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Windows File Server</span></span></tt>,</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">SQL Database Server</span></span></tt> (this installs PostgreSQL),</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Development Tools</span></span></tt> (this installs gmake and other build tools),</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration Tools</span></span></tt>, and</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Printing Support</span></span></tt>.</td></tr></table><p>At the bottom, check <tt class="computeroutput"><span class="guilabel"><span class="guilabel"><u><span class="accel">S</span></u>elect Individual Packages</span></span></tt> and click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt></p></li><li><p>We need to fine-tune the exact list of packages. The same rules apply as in the last step - you can add more stuff, but you shouldn't remove anything the guide adds. We're going to go through all the packages in one big list, so select <tt class="computeroutput"><span class="guilabel"><span class="guilabel"><u><span class="accel">F</span></u>lat View</span></span></tt> and wait. In a minute, a -list of packages will appear.</p><table class="simplelist" border="0" summary="Simple list"><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">apmd</span></span></tt> (monitors power, not very useful for servers), </td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">ImageMagick</span></span></tt> (required for the <a class="indexterm" name="id2520827"></a>photo-album packages, </td></tr><tr><td>uncheck<tt class="computeroutput"><span class="guilabel"><span class="guilabel">isdn4k-utils</span></span></tt> (unless you are using isdn, this installs a useless daemon), </td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">mutt</span></span></tt> (a mail program that reads Maildir),</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">nfs-utils</span></span></tt> (nfs is a major security risk), </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">pam-devel</span></span></tt> (I don't remember why, but we don't want this), </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">portmap</span></span></tt>, </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">postfix</span></span></tt> (this is an MTA, but we're going to install qmail later), </td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">postgresql-devel</span></span></tt>,</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">rsh</span></span></tt> (rsh is a security hole), </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">sendmail</span></span></tt> (sendmail is an insecure MTA; we're going to install qmail instead later),</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">tcl</span></span></tt> (we need tcl), and </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">xinetd</span></span></tt> (xinetd handles incoming tcp connections. We'll install a different, more secure program, ucspi-tcp).</td></tr><tr><td>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt></td></tr></table></li><li><p>Red Hat isn't completely happy with the combination +list of packages will appear.</p><table class="simplelist" border="0" summary="Simple list"><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">apmd</span></span></tt> (monitors power, not very useful for servers), </td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">ImageMagick</span></span></tt> (required for the <a class="indexterm" name="id2520647"></a>photo-album packages, </td></tr><tr><td>uncheck<tt class="computeroutput"><span class="guilabel"><span class="guilabel">isdn4k-utils</span></span></tt> (unless you are using isdn, this installs a useless daemon), </td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">mutt</span></span></tt> (a mail program that reads Maildir),</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">nfs-utils</span></span></tt> (nfs is a major security risk), </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">pam-devel</span></span></tt> (I don't remember why, but we don't want this), </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">portmap</span></span></tt>, </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">postfix</span></span></tt> (this is an MTA, but we're going to install qmail later), </td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">postgresql-devel</span></span></tt>,</td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">rsh</span></span></tt> (rsh is a security hole), </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">sendmail</span></span></tt> (sendmail is an insecure MTA; we're going to install qmail instead later),</td></tr><tr><td>check <tt class="computeroutput"><span class="guilabel"><span class="guilabel">tcl</span></span></tt> (we need tcl), and </td></tr><tr><td>uncheck <tt class="computeroutput"><span class="guilabel"><span class="guilabel">xinetd</span></span></tt> (xinetd handles incoming tcp connections. We'll install a different, more secure program, ucspi-tcp).</td></tr><tr><td>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton"><u><span class="accel">N</span></u>ext</span></span></tt></td></tr></table></li><li><p>Red Hat isn't completely happy with the combination of packages we've selected, and wants to satisfy some dependencies. Don't let it. On the next screen, choose <tt class="computeroutput"><span class="guilabel"><span class="guilabel">I<u><span class="accel">g</span></u>nore Package @@ -119,7 +119,7 @@ upgrading all of that. Since you are upgrading the kernel, reboot after this step. </p></li><li><p>Lock down SSH</p><div class="orderedlist"><ol type="a"><li><p> - <a class="indexterm" name="id2528910"></a> + <a class="indexterm" name="id2525144"></a> SSH is the protocol we use to connect securely to the computer (replacing telnet, which is insecure). sshd is the daemon that listens for incoming Index: openacs-4/packages/acs-core-docs/www/install-resources.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-resources.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/install-resources.html 5 May 2004 12:36:04 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/install-resources.html 11 Jun 2004 10:17:37 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Resources</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="os-security.html" title="Security Information"><link rel="next" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="os-security.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="acs-package-dev.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-resources"></a>Resources</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Resources</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="os-security.html" title="Security Information"><link rel="next" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="os-security.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="acs-package-dev.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-resources"></a>Resources</h2></div></div><div></div></div><p> Here are some resources that OpenACS users have found useful. </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-resources-books"></a>Books</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p> Index: openacs-4/packages/acs-core-docs/www/install-squirrelmail.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-squirrelmail.html,v diff -u -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/install-squirrelmail.html 5 May 2004 12:36:04 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/install-squirrelmail.html 11 Jun 2004 10:17:37 -0000 1.6 @@ -1,10 +1,10 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Squirrelmail for use as a webmail system for OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-php.html" title="Install PHP for use in AOLserver"><link rel="next" href="aolserver.html" title="Install AOLserver 3.3oacs1"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-php.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="aolserver.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-squirrelmail"></a>Install Squirrelmail for use as a webmail system for OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Squirrelmail for use as a webmail system for OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-php.html" title="Install PHP for use in AOLserver"><link rel="next" href="aolserver.html" title="Install AOLserver 3.3oacs1"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-php.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="aolserver.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-squirrelmail"></a>Install Squirrelmail for use as a webmail system for OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:openacs@sussdorff.de" target="_top">Malte Sussdorff</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><p>This section is work in progress. It will detail how you can install Squirrelmail as a webmail frontend for OpenACS, thereby neglecting the need to have a seperate webmail package within OpenACS</p><pre class="screen">[service0 service0]# <b class="userinput"><tt>cd www</tt></b> -[service0 www]# <b class="userinput"><tt>wget http://cesnet.dl.sourceforge.net/sourceforge/squirrelmail/squirrelmail-1.4.2.tar.gz</tt></b> -[service0 www]# <b class="userinput"><tt>tar xfz squirrelmail-1.4.2.tar.gz</tt></b> -[service0 www]# <b class="userinput"><tt>mv squirrelmail-1.4.2 mail</tt></b> -[service0 www]# <b class="userinput"><tt>cd mail/config</tt></b> -[service0 www]# <b class="userinput"><tt>./conf.pl</tt></b> + </div><p>This section is work in progress. It will detail how you can install Squirrelmail as a webmail frontend for OpenACS, thereby neglecting the need to have a seperate webmail package within OpenACS</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]# <b class="userinput"><tt>cd www</tt></b> +[$OPENACS_SERVICE_NAME www]# <b class="userinput"><tt>wget http://cesnet.dl.sourceforge.net/sourceforge/squirrelmail/squirrelmail-1.4.2.tar.gz</tt></b> +[$OPENACS_SERVICE_NAME www]# <b class="userinput"><tt>tar xfz squirrelmail-1.4.2.tar.gz</tt></b> +[$OPENACS_SERVICE_NAME www]# <b class="userinput"><tt>mv squirrelmail-1.4.2 mail</tt></b> +[$OPENACS_SERVICE_NAME www]# <b class="userinput"><tt>cd mail/config</tt></b> +[$OPENACS_SERVICE_NAME www]# <b class="userinput"><tt>./conf.pl</tt></b> </pre><p>Now you are about to configure Squirrelmail. The configuration heavily depends on your setup, so no instructions are given here.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-php.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="aolserver.html">Next</a></td></tr><tr><td width="40%" align="left">Install PHP for use in AOLserver </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install AOLserver 3.3oacs1</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/install-squirrelmail.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/install-ssl.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-ssl.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/install-ssl.html 5 May 2004 12:36:04 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/install-ssl.html 11 Jun 2004 10:17:37 -0000 1.5 @@ -1,21 +1,21 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Installing SSL Support for an OpenACS service</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="maintenance-deploy.html" title="Staged Deployment for Production Networks"><link rel="next" href="analog-setup.html" title="Set up Log Analysis Reports"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maintenance-deploy.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="analog-setup.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-ssl"></a>Installing SSL Support for an OpenACS service</h2></div></div><div></div></div><p>Debian Users: <tt class="computeroutput">apt-get install openssl</tt> before proceeding.</p><div class="orderedlist"><ol type="1"><li><p>Make sure nsopenssl.so is <a href="install-nsopenssl.html" title="Install nsopenssl">installed</a> for AOLserver.</p></li><li><p>Uncomment this line from <tt class="computeroutput">config.tcl</tt>.</p><pre class="programlisting">#ns_param nsopenssl ${bindir}/nsopenssl.so -</pre></li><li><p><a name="ssl-certificates"></a>Prepare a certificate directory for the service.</p><pre class="screen">[service0 etc]$ <b class="userinput"><tt>mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/certs</tt></b> -[service0 etc]$ <b class="userinput"><tt>chmod 700 /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/certs</tt></b> -[service0 etc]$ -<span class="action"><span class="action">mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/certs -chmod 700 /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/certs</span></span></pre></li><li><p>It takes two files to support an SSL connection. The certificate is the public half of the key pair - the server sends the certificate to browser requesting ssl. The key is the private half of the key pair. In addition, the certificate must be signed by Certificate Authority or browsers will protest. Each web browser ships with a built-in list of acceptable Certificate Authorities (CAs) and their keys. Only a site certificate signed by a known and approved CA will work smoothly. Any other certificate will cause browsers to produce some messages or block the site. Unfortunately, getting a site certificate signed by a CA costs money. In this section, we'll generate an unsigned certificate which will work in most browsers, albeit with pop-up messages.</p><p>Use an OpenSSL perl script to generate a certificate and key.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/service0/etc/certs</tt></b> -[service0 certs]$ <b class="userinput"><tt>perl /usr/share/ssl/misc/CA -newcert</tt></b> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Installing SSL Support for an OpenACS service</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="maintenance-deploy.html" title="Staged Deployment for Production Networks"><link rel="next" href="analog-setup.html" title="Set up Log Analysis Reports"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maintenance-deploy.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="analog-setup.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-ssl"></a>Installing SSL Support for an OpenACS service</h2></div></div><div></div></div><p>Debian Users: <tt class="computeroutput">apt-get install openssl</tt> before proceeding.</p><div class="orderedlist"><ol type="1"><li><p>Make sure nsopenssl.so is <a href="install-nsopenssl.html" title="Install nsopenssl">installed</a> for AOLserver.</p></li><li><p>Uncomment this line from <tt class="computeroutput">config.tcl</tt>.</p><pre class="programlisting">#ns_param nsopenssl ${bindir}/nsopenssl.so +</pre></li><li><p><a name="ssl-certificates"></a>Prepare a certificate directory for the service.</p><pre class="screen">[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/certs</tt></b> +[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>chmod 700 /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/certs</tt></b> +[$OPENACS_SERVICE_NAME etc]$ +<span class="action"><span class="action">mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/certs +chmod 700 /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/certs</span></span></pre></li><li><p>It takes two files to support an SSL connection. The certificate is the public half of the key pair - the server sends the certificate to browser requesting ssl. The key is the private half of the key pair. In addition, the certificate must be signed by Certificate Authority or browsers will protest. Each web browser ships with a built-in list of acceptable Certificate Authorities (CAs) and their keys. Only a site certificate signed by a known and approved CA will work smoothly. Any other certificate will cause browsers to produce some messages or block the site. Unfortunately, getting a site certificate signed by a CA costs money. In this section, we'll generate an unsigned certificate which will work in most browsers, albeit with pop-up messages.</p><p>Use an OpenSSL perl script to generate a certificate and key.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/certs</tt></b> +[$OPENACS_SERVICE_NAME certs]$ <b class="userinput"><tt>perl /usr/share/ssl/misc/CA -newcert</tt></b> Using configuration from /usr/share/ssl/openssl.cnf Generating a 1024 bit RSA private key ...++++++ .......++++++ writing new private key to 'newreq.pem' Enter PEM pass phrase:</pre><p>Enter a pass phrase for the CA certificate. Then, answer the rest of the questions. At the end you should see this:</p><pre class="screen">Certificate (and private key) is in newreq.pem -[service0 certs]$</pre><p><tt class="computeroutput">newreq.pem</tt> contains our certificate and private key. The key is protected by a passphrase, which means that we'll have to enter the pass phrase each time the server starts. This is impractical and unnecessary, so we create an unprotected version of the key. <span class="emphasis"><em>Security implication</em></span>: if anyone gets access to the file keyfile.pem, they effectively own the key as much as you do. Mitigation: don't use this key/cert combo for anything besides providing ssl for the web site.</p><pre class="screen">[root misc]# <b class="userinput"><tt>openssl rsa -in newreq.pem -out keyfile.pem</tt></b> +[$OPENACS_SERVICE_NAME certs]$</pre><p><tt class="computeroutput">newreq.pem</tt> contains our certificate and private key. The key is protected by a passphrase, which means that we'll have to enter the pass phrase each time the server starts. This is impractical and unnecessary, so we create an unprotected version of the key. <span class="emphasis"><em>Security implication</em></span>: if anyone gets access to the file keyfile.pem, they effectively own the key as much as you do. Mitigation: don't use this key/cert combo for anything besides providing ssl for the web site.</p><pre class="screen">[root misc]# <b class="userinput"><tt>openssl rsa -in newreq.pem -out keyfile.pem</tt></b> read RSA key Enter PEM pass phrase: writing RSA key -[service0 certs]$ </pre><p>To create the certificate file, we take the combined file, copy it, and strip out the key.</p><pre class="screen">[service0 certs]$ <b class="userinput"><tt>cp newreq.pem certfile.pem</tt></b> +[$OPENACS_SERVICE_NAME certs]$ </pre><p>To create the certificate file, we take the combined file, copy it, and strip out the key.</p><pre class="screen">[$OPENACS_SERVICE_NAME certs]$ <b class="userinput"><tt>cp newreq.pem certfile.pem</tt></b> [root misc]# <b class="userinput"><tt>emacs certfile.pem</tt></b></pre><p>Strip out the section that looks like</p><pre class="programlisting">-----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,F3EDE7CA1B404997 Index: openacs-4/packages/acs-core-docs/www/install-steps.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-steps.html,v diff -u -r1.19 -r1.20 --- openacs-4/packages/acs-core-docs/www/install-steps.html 5 May 2004 12:36:04 -0000 1.19 +++ openacs-4/packages/acs-core-docs/www/install-steps.html 11 Jun 2004 10:17:37 -0000 1.20 @@ -1,6 +1,6 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Basic Steps</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="previous" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="next" href="individual-programs.html" title="Prerequisite Software"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�2.�Installation Overview</th><td width="20%" align="right"> <a accesskey="n" href="individual-programs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-steps"></a>Basic Steps</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Basic Steps</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="previous" href="install-overview.html" title="Chapter�2.�Installation Overview"><link rel="next" href="individual-programs.html" title="Prerequisite Software"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�2.�Installation Overview</th><td width="20%" align="right"> <a accesskey="n" href="individual-programs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-steps"></a>Basic Steps</h2></div></div><div></div></div><p> The basic steps for getting OpenACS installed are: - </p><div class="orderedlist"><ol type="1"><li><p>Install an OS and supporting software (see <a href="unix-installation.html">Install a Unix-like OS</a> or <a href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9">Appendix�A, <i>Install Red Hat 8/9</i></a> for more details). See the <a href="individual-programs.html#compatibility-matrix" title="Table�2.2.�Version Compatibility Matrix">Table�2.2, “Version Compatibility Matrix”</a>.</p></li><li><p>Install a database (see <a href="oracle.html">Install Oracle</a> or + </p><div class="orderedlist"><ol type="1"><li><p>Install an OS and supporting software (see <a href="unix-installation.html">Install a Unix-like OS</a> or <a href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9">Appendix�A, <i>Install Red Hat 8/9</i></a> for more details). See the <a href="individual-programs.html#compatibility-matrix" title="Table�2.2.�Version Compatibility Matrix">Table�2.2, “Version Compatibility Matrix”</a>.</p></li><li><p>Install a database (see <a href="oracle.html" title="Install Oracle 8.1.7">the section called “Install Oracle 8.1.7”</a> or <a href="postgres.html">Install PostgreSQL</a>).</p></li><li><p> Install AOLserver (<a href="aolserver4.html">Install AOLserver 4</a>) .</p></li><li><p>Create a unique database and system user. Install the OpenACS tarball, start and AOLserver instance, and use the OpenACS web pages to complete installation @@ -27,19 +27,19 @@ }</pre></li><li><p>This is text that you will <tt class="computeroutput">see</tt> and <b class="userinput"><tt>type</tt></b> in a command shell, including <span class="replaceable"><span class="replaceable">text you may have to change</span></span>. It is followed by a list of just the commands, - which you can copy and paste. The command prompt varies by system; in the examples we use the form<tt class="computeroutput">[service0 aolserver]$</tt>, where <tt class="computeroutput">service0</tt> is the current user and <tt class="computeroutput">aolserver</tt> is the current directory. The root prompt is shown ending in # and all other prompts in $.</p><pre class="screen"> -[root root]# <b class="userinput"><tt>su - service0</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>svc -d /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>dropdb <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> + which you can copy and paste. The command prompt varies by system; in the examples we use the form<tt class="computeroutput">[$OPENACS_SERVICE_NAME aolserver]$</tt>, where <tt class="computeroutput">$OPENACS_SERVICE_NAME</tt> is the current user and <tt class="computeroutput">aolserver</tt> is the current directory. The root prompt is shown ending in # and all other prompts in $.</p><pre class="screen"> +[root root]# <b class="userinput"><tt>su - $OPENACS_SERVICE_NAME</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>svc -d /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>dropdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> DROP DATABASE -[service0 aolserver]$ <b class="userinput"><tt>createdb <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>createdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> CREATE DATABASE -<span class="action"><span class="action">su - service0 -svc -d /service/<span class="replaceable"><span class="replaceable">service0</span></span> -dropdb <span class="replaceable"><span class="replaceable">service0</span></span> -createdb <span class="replaceable"><span class="replaceable">service0</span></span></span></span></pre></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2493266"></a>Paths and Users</h3></div></div><div></div></div><div class="table"><a name="id2493271"></a><p class="title"><b>Table�2.1.�Default directories for a standard install</b></p><table summary="Default directories for a standard install" cellspacing="0" width="100%" border="1"><colgroup><col><col></colgroup><tbody><tr><td>Fully qualified domain name of your server</td><td><span class="replaceable"><span class="replaceable">yourserver.test</span></span></td></tr><tr><td>name of administrative access account</td><td>remadmin</td></tr><tr><td>OpenACS service</td><td><a class="indexterm" name="id2493310"></a><span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td>OpenACS service account</td><td><span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td>OpenACS database name</td><td><span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td>Root of OpenACS service file tree (SERVERROOT)</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/service0</span></span></td></tr><tr><td>Location of source code tarballs for new software</td><td>/tmp</td></tr><tr><td>The OpenACS tarball contains some files which +<span class="action"><span class="action">su - $OPENACS_SERVICE_NAME +svc -d /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +dropdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +createdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></span></span></pre><p><a name="cut-and-paste-name-var"></a><b>Setting a global shell variable for cut and paste.�</b>In order to cut and paste the instructions into your shell, you must set the environment variable $OPENACS_SERVICE_NAME. In order to set it globally so that it works for any new users or special service users you may create, edit the file <tt class="computeroutput">/etc/profile</tt> and add this line:</p><pre class="programlisting">export OPENACS_SERVICE_NAME=<span class="replaceable"><span class="replaceable">service0</span></span></pre></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2447650"></a>Paths and Users</h3></div></div><div></div></div><div class="table"><a name="id2447655"></a><p class="title"><b>Table�2.1.�Default directories for a standard install</b></p><table summary="Default directories for a standard install" cellspacing="0" width="100%" border="1"><colgroup><col><col></colgroup><tbody><tr><td>Fully qualified domain name of your server</td><td><span class="replaceable"><span class="replaceable">yourserver.test</span></span></td></tr><tr><td>name of administrative access account</td><td>remadmin</td></tr><tr><td>OpenACS service</td><td><a class="indexterm" name="id2493258"></a><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> (set to service0 in default install)</td></tr><tr><td>OpenACS service account</td><td><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>OpenACS database name</td><td><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>Root of OpenACS service file tree (SERVERROOT)</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>Location of source code tarballs for new software</td><td>/tmp</td></tr><tr><td>The OpenACS tarball contains some files which are useful while setting up other software. Those - files are located at:</td><td>/tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files</td></tr><tr><td>Database backup directory</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/service0/database-backup</span></span></td></tr><tr><td>Service config files</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/service0/etc</span></span></td></tr><tr><td>Service log files</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/service0/log</span></span></td></tr><tr><td>Compile directory</td><td>/usr/local/src</td></tr><tr><td>PostgreSQL directory</td><td>/usr/local/pgsql</td></tr><tr><td>AOLserver directory</td><td>/usr/local/aolserver</td></tr></tbody></table></div><p> + files are located at:</td><td>/tmp/openacs-5.2.0d1/packages/acs-core-docs/www/files</td></tr><tr><td>Database backup directory</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/$OPENACS_SERVICE_NAME/database-backup</span></span></td></tr><tr><td>Service config files</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc</span></span></td></tr><tr><td>Service log files</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/$OPENACS_SERVICE_NAME/log</span></span></td></tr><tr><td>Compile directory</td><td>/usr/local/src</td></tr><tr><td>PostgreSQL directory</td><td>/usr/local/pgsql</td></tr><tr><td>AOLserver directory</td><td>/usr/local/aolserver</td></tr></tbody></table></div><p> None of these locations are set in stone - they're simply the values that we've chosen. The values that you'll probably want to change, such as service name, are Index: openacs-4/packages/acs-core-docs/www/install-tclwebtest.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-tclwebtest.html,v diff -u -r1.9 -r1.10 --- openacs-4/packages/acs-core-docs/www/install-tclwebtest.html 5 May 2004 12:36:04 -0000 1.9 +++ openacs-4/packages/acs-core-docs/www/install-tclwebtest.html 11 Jun 2004 10:17:38 -0000 1.10 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install tclwebtest.</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-nsopenssl.html" title="Install nsopenssl"><link rel="next" href="install-php.html" title="Install PHP for use in AOLserver"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-nsopenssl.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-php.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-tclwebtest"></a>Install tclwebtest.</h2></div></div><div></div></div><p>Download the <a href="individual-programs.html#source-tclwebtest">tclwebtest +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install tclwebtest.</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-nsopenssl.html" title="Install nsopenssl"><link rel="next" href="install-php.html" title="Install PHP for use in AOLserver"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-nsopenssl.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-php.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="install-tclwebtest"></a>Install tclwebtest.</h2></div></div><div></div></div><p>Download the <a href="individual-programs.html#source-tclwebtest">tclwebtest source</a>, unpack it, and put it an appropriate place. (tclwebtest 1.0 will be required for auto-tests in OpenACS 5.1. When it exists, the cvs command here will be replaced with http://prdownloads.sourceforge.net/tclwebtest/tclwebtest-0.3.tar.gz?download.) As root:</p><pre class="screen"><span class="action"><span class="action">cd /tmp cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/tclwebtest co tclwebtest Index: openacs-4/packages/acs-core-docs/www/ix01.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/ix01.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/ix01.html 5 May 2004 12:36:04 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/ix01.html 11 Jun 2004 10:17:38 -0000 1.15 @@ -1,2 +1,2 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Index</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="update-translations.html" title="How to Update the translations"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="update-translations.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> </td></tr></table><hr></div><div class="index"><div class="titlepage"><div><div><h2 class="title"><a name="id2446700"></a>Index</h2></div></div><div></div></div><div class="index"><div class="indexdiv"><h3>A</h3><dl><dt>AOLserver</dt><dd><dl><dt>configuration, <a href="openacs.html#install-from-tarball">Installation Option 2: Install from tarball</a></dt></dl></dd><dt>Automated tests, <a href="tutorial-debug.html#id2569323">Write automated tests</a></dt></dl></div><div class="indexdiv"><h3>C</h3><dl><dt>computeroutput</dt><dd><dl><dt>code, <a href="docbook-primer.html#dbprimer-code">Code</a></dt></dl></dd><dt>cvs</dt><dd><dl><dt>initializing, <a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></dt><dt>setup, <a href="cvs-tips.html">Using CVS with an OpenACS Site</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>D</h3><dl><dt>daemontools</dt><dd><dl><dt>installation, <a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></dt></dl></dd><dt>docbook</dt><dd><dl><dt>installation, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>DocBook</dt><dd><dl><dt>DTD, <a href="docbook-primer.html#dbprimer-why">Why DocBook?</a></dt><dt>emacs configuration for, <a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></dt></dl></dd><dt>Document structure, <a href="docbook-primer.html#dbprimer-structure">Document Structure</a></dt></dl></div><div class="indexdiv"><h3>E</h3><dl><dt>emacs</dt><dd><dl><dt>installation, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>emphasis</dt><dd><dl><dt>bold, italics, <a href="docbook-primer.html#dbprimer-emphasis">Emphasis</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>F</h3><dl><dt>full text search</dt><dd><dl><dt>installation, <a href="install-full-text-search.html#install-openfts">Install OpenFTS module</a>, <a href="install-full-text-search.html#install-openfts-postgres">Install OpenFTS prerequisites in PostgreSQL instance</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>G</h3><dl><dt>Graphics</dt><dd><dl><dt>Images, <a href="docbook-primer.html#dbprimer-graphics">Graphics</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>I</h3><dl><dt>informaltable</dt><dd><dl><dt>table, <a href="docbook-primer.html#dbprimer-tables">Tables</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>L</h3><dl><dt>language</dt><dd><dl><dt>installation, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>Linking, <a href="docbook-primer.html#dbprimer-links">Links</a></dt><dt>lists, <a href="docbook-primer.html#dbprimer-lists">Lists</a></dt></dl></div><div class="indexdiv"><h3>O</h3><dl><dt>OpenACS Package, <a href="packages.html#packages-looks">What a Package Looks Like</a></dt></dl></div><div class="indexdiv"><h3>P</h3><dl><dt>photo-album</dt><dd><dl><dt>installation (see ImageMagick)</dt></dl></dd><dt>Postgres</dt><dd><dl><dt>Vacuuming, <a href="openacs.html#install-from-tarball">Installation Option 2: Install from tarball</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>Q</h3><dl><dt>qmail</dt><dd><dl><dt>installation, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt><dt>Maildir, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt><dt>rcpthosts error message, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>S</h3><dl><dt>sect1, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt><dt>sect2, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt><dt>Sections</dt><dd><dl><dt>Headlines, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt></dl></dd><dt>security</dt><dd><dl><dt>definition, <a href="install-redhat.html">Install Red Hat 8/9</a></dt><dt>firewall, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>sendmail</dt><dd><dl><dt>removing, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt></dl></dd><dt>service0, <a href="install-steps.html#id2493266">Paths and Users</a></dt><dt>ssh, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></div><div class="indexdiv"><h3>T</h3><dl><dt>The publish point for new packages should be +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Index</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="update-translations.html" title="How to Update the translations"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="update-translations.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> </td></tr></table><hr></div><div class="index"><div class="titlepage"><div><div><h2 class="title"><a name="id2445475"></a>Index</h2></div></div><div></div></div><div class="index"><div class="indexdiv"><h3>Symbols</h3><dl><dt>$OPENACS_SERVICE_NAME, <a href="install-steps.html#id2447650">Paths and Users</a></dt></dl></div><div class="indexdiv"><h3>A</h3><dl><dt>AOLserver</dt><dd><dl><dt>configuration, <a href="openacs.html#install-from-tarball">Installation Option 2: Install from tarball</a></dt></dl></dd><dt>Automated tests, <a href="tutorial-debug.html#id2526312">Write automated tests</a></dt></dl></div><div class="indexdiv"><h3>C</h3><dl><dt>computeroutput</dt><dd><dl><dt>code, <a href="docbook-primer.html#dbprimer-code">Code</a></dt></dl></dd><dt>cvs</dt><dd><dl><dt>initializing, <a href="install-cvs.html">Initialize CVS (OPTIONAL)</a></dt><dt>setup, <a href="cvs-tips.html">Using CVS with an OpenACS Site</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>D</h3><dl><dt>daemontools</dt><dd><dl><dt>installation, <a href="install-daemontools.html">Install Daemontools (OPTIONAL)</a></dt></dl></dd><dt>docbook</dt><dd><dl><dt>installation, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>DocBook</dt><dd><dl><dt>DTD, <a href="docbook-primer.html#dbprimer-why">Why DocBook?</a></dt><dt>emacs configuration for, <a href="psgml-for-emacs.html">Add PSGML commands to emacs init file (OPTIONAL)</a></dt></dl></dd><dt>Document structure, <a href="docbook-primer.html#dbprimer-structure">Document Structure</a></dt></dl></div><div class="indexdiv"><h3>E</h3><dl><dt>emacs</dt><dd><dl><dt>installation, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>emphasis</dt><dd><dl><dt>bold, italics, <a href="docbook-primer.html#dbprimer-emphasis">Emphasis</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>F</h3><dl><dt>full text search</dt><dd><dl><dt>installation, <a href="install-full-text-search.html#install-openfts">Install OpenFTS module</a>, <a href="install-full-text-search.html#install-openfts-postgres">Install OpenFTS prerequisites in PostgreSQL instance</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>G</h3><dl><dt>Graphics</dt><dd><dl><dt>Images, <a href="docbook-primer.html#dbprimer-graphics">Graphics</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>I</h3><dl><dt>informaltable</dt><dd><dl><dt>table, <a href="docbook-primer.html#dbprimer-tables">Tables</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>L</h3><dl><dt>language</dt><dd><dl><dt>installation, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>Linking, <a href="docbook-primer.html#dbprimer-links">Links</a></dt><dt>lists, <a href="docbook-primer.html#dbprimer-lists">Lists</a></dt></dl></div><div class="indexdiv"><h3>O</h3><dl><dt>OpenACS Package, <a href="packages.html#packages-looks">What a Package Looks Like</a></dt></dl></div><div class="indexdiv"><h3>P</h3><dl><dt>photo-album</dt><dd><dl><dt>installation (see ImageMagick)</dt></dl></dd><dt>Postgres</dt><dd><dl><dt>Vacuuming, <a href="openacs.html#install-from-tarball">Installation Option 2: Install from tarball</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>Q</h3><dl><dt>qmail</dt><dd><dl><dt>installation, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt><dt>Maildir, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt><dt>rcpthosts error message, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt></dl></dd></dl></div><div class="indexdiv"><h3>S</h3><dl><dt>sect1, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt><dt>sect2, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt><dt>Sections</dt><dd><dl><dt>Headlines, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt></dl></dd><dt>security</dt><dd><dl><dt>definition, <a href="install-redhat.html">Install Red Hat 8/9</a></dt><dt>firewall, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></dd><dt>sendmail</dt><dd><dl><dt>removing, <a href="install-qmail.html">Install qmail (OPTIONAL)</a></dt></dl></dd><dt>ssh, <a href="install-redhat.html">Install Red Hat 8/9</a></dt></dl></div><div class="indexdiv"><h3>T</h3><dl><dt>The publish point for new packages should be fixed., <a href="tutorial-distribute.html">Prepare the package for distribution.</a></dt></dl></div><div class="indexdiv"><h3>U</h3><dl><dt>ulink, <a href="docbook-primer.html#dbprimer-links">Links</a></dt><dt>Unicode</dt><dd><dl><dt>in PostgreSQL, <a href="postgres.html">Install PostgreSQL</a></dt></dl></dd><dt>upgrade</dt><dd><dl><dt>OpenACS 4.5 to 4.6.x</dt><dd><dl><dt>Linux/Unix, <a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></dt></dl></dd></dl></dd></dl></div><div class="indexdiv"><h3>X</h3><dl><dt>XML guidelines, <a href="docbook-primer.html#dbprimer-why">Why DocBook?</a></dt><dt>xref</dt><dd><dl><dt>linkend, <a href="docbook-primer.html#dbprimer-links">Links</a></dt></dl></dd><dt>xreflabel, <a href="docbook-primer.html#dbprimer-sections">Headlines, Sections</a></dt></dl></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="update-translations.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> </td></tr><tr><td width="40%" align="left">How to Update the translations </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> </td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/ix01.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/kernel-doc.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/kernel-doc.html,v diff -u -r1.25 -r1.26 --- openacs-4/packages/acs-core-docs/www/kernel-doc.html 5 May 2004 12:36:04 -0000 1.25 +++ openacs-4/packages/acs-core-docs/www/kernel-doc.html 11 Jun 2004 10:17:38 -0000 1.26 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�15.�Kernel Documentation</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="previous" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="next" href="kernel-overview.html" title="Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="acs-plat-dev.html">Prev</a> </td><th width="60%" align="center">Part�IV.�For OpenACS Platform Developers</th><td width="20%" align="right"> <a accesskey="n" href="kernel-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="kernel-doc"></a>Chapter�15.�Kernel Documentation</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acs-plat-dev.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="kernel-overview.html">Next</a></td></tr><tr><td width="40%" align="left">Part�IV.�For OpenACS Platform Developers </td><td width="20%" align="center"><a accesskey="u" href="acs-plat-dev.html">Up</a></td><td width="40%" align="right"> Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/kernel-doc.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�15.�Kernel Documentation</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="previous" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="next" href="kernel-overview.html" title="Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="acs-plat-dev.html">Prev</a> </td><th width="60%" align="center">Part�IV.�For OpenACS Platform Developers</th><td width="20%" align="right"> <a accesskey="n" href="kernel-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="kernel-doc"></a>Chapter�15.�Kernel Documentation</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acs-plat-dev.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="kernel-overview.html">Next</a></td></tr><tr><td width="40%" align="left">Part�IV.�For OpenACS Platform Developers </td><td width="20%" align="center"><a accesskey="u" href="acs-plat-dev.html">Up</a></td><td width="40%" align="right"> Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/kernel-doc.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/kernel-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/kernel-overview.html,v diff -u -r1.19 -r1.20 --- openacs-4/packages/acs-core-docs/www/kernel-overview.html 5 May 2004 12:36:04 -0000 1.19 +++ openacs-4/packages/acs-core-docs/www/kernel-overview.html 11 Jun 2004 10:17:38 -0000 1.20 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="next" href="object-system-requirements.html" title="Object Model Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="kernel-doc.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="object-system-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-overview"></a>Overview</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="next" href="object-system-requirements.html" title="Object Model Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="kernel-doc.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="object-system-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-overview"></a>Overview</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p> The <span class="emphasis"><em>OpenACS Kernel</em></span>, which handles system-wide necessities such as metadata, security, users and groups, subsites, and package Index: openacs-4/packages/acs-core-docs/www/mac-installation.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/mac-installation.html,v diff -u -r1.29 -r1.30 --- openacs-4/packages/acs-core-docs/www/mac-installation.html 5 May 2004 12:36:04 -0000 1.29 +++ openacs-4/packages/acs-core-docs/www/mac-installation.html 11 Jun 2004 10:17:38 -0000 1.30 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Installation Guide for Mac OS X</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="win2k-installation.html" title="OpenACS Installation Guide for Windows2000"><link rel="next" href="configuring-new-site.html" title="Chapter�4.�Configuring a new OpenACS Site"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="win2k-installation.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="configuring-new-site.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="mac-installation"></a>OpenACS Installation Guide for Mac OS X</h2></div></div><div></div></div><p><b>Prerequisites.�</b>Install readline:</p><div class="orderedlist"><ol type="1"><li><p>Download readline from http://ftp.gnu.org/pub/gnu/readline/readline-4.3.tar.gz into /usr/local/src</p></li><li><p>Extract readline in /usr/local/src, configure, compile, and install:</p><pre class="screen"><b class="userinput"><tt>su - root +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Installation Guide for Mac OS X</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="win2k-installation.html" title="OpenACS Installation Guide for Windows2000"><link rel="next" href="configuring-new-site.html" title="Chapter�4.�Configuring a new OpenACS Site"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="win2k-installation.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="configuring-new-site.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="mac-installation"></a>OpenACS Installation Guide for Mac OS X</h2></div></div><div></div></div><p><b>Prerequisites.�</b>Install readline:</p><div class="orderedlist"><ol type="1"><li><p>Download readline from http://ftp.gnu.org/pub/gnu/readline/readline-4.3.tar.gz into /usr/local/src</p></li><li><p>Extract readline in /usr/local/src, configure, compile, and install:</p><pre class="screen"><b class="userinput"><tt>su - root cd /usr/local/src tar xvfz readline-4.3.tar.gz readline-4.3 Index: openacs-4/packages/acs-core-docs/www/maint-performance.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/maint-performance.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/maint-performance.html 5 May 2004 12:36:04 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/maint-performance.html 11 Jun 2004 10:17:38 -0000 1.15 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Diagnosing Performance Problems</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="uptime.html" title="External uptime validation"><link rel="next" href="database-management.html" title="Chapter�7.�Database Management"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="uptime.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="database-management.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="maint-performance"></a>Diagnosing Performance Problems</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Did performance problems happen overnight, or did they sneak up on +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Diagnosing Performance Problems</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="uptime.html" title="External uptime validation"><link rel="next" href="database-management.html" title="Chapter�7.�Database Management"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="uptime.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="database-management.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="maint-performance"></a>Diagnosing Performance Problems</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Did performance problems happen overnight, or did they sneak up on you? Any clue what caused the performance problems (e.g. loading 20K users into .LRN)</p></li><li><p>Is the file system out of space? Is the machine swapping to disk constantly?</p></li><li><p>Isolating and solving database problems.</p><div class="itemizedlist"><ul type="circle"><li><p>Without daily internal maintenance, most databases slowly degrade in performance. For PostGreSQL, see <a href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly">the section called “Vacuum Postgres nightly”</a>. For Oracle, use <tt class="computeroutput">exec dbms_stats.gather_schema_stats('SCHEMA_NAME')</tt> (<a href="http://www.piskorski.com/docs/oracle.html" target="_top">Andrew Piskorski's Oracle notes</a>).</p></li><li><p>You can track the exact amount of time each database query on a page takes:</p><div class="orderedlist"><ol type="1"><li><p>Go to <a href="/acs-admin/install" target="_top">Main Site : Site-Wide Administration : Install Software</a></p></li><li><p>Click on "Install New Application" in "Install from OpenACS Repository"</p></li><li><p>Choose "ACS Developer Support"></p></li><li><p>After install is complete, restart the server.</p></li><li><p>Browse to Developer Support, which is automatically mounted at <tt class="computeroutput"><a href="/ds" target="_top">/ds</a></tt>. - </p></li><li><p>Turn on Database statistics</p></li><li><p>Browse directly to a slow page and click "Request Information" at the bottom of the page.</p></li><li><p>This should return a list of database queries on the page, including the exact query (so it can be cut-paste into psql or oracle) and the time each query took.</p><div class="figure"><a name="id2526535"></a><p class="title"><b>Figure�6.8.�Query Analysis example</b></p><div class="mediaobject"><img src="images/query-duration.png" alt="Query Analysis example"></div></div></li></ol></div></li><li><p>Identify a runaway Oracle query: first, use <b class="userinput"><tt>ps aux</tt></b> or <b class="userinput"><tt>top</tt></b> to get the UNIX process ID of a runaway Oracle process.</p><p>Log in to SQL*Plus as the admin:</p><pre class="screen">[<span class="replaceable"><span class="replaceable">service0</span></span> ~]$ svrmgrl + </p></li><li><p>Turn on Database statistics</p></li><li><p>Browse directly to a slow page and click "Request Information" at the bottom of the page.</p></li><li><p>This should return a list of database queries on the page, including the exact query (so it can be cut-paste into psql or oracle) and the time each query took.</p><div class="figure"><a name="id2521841"></a><p class="title"><b>Figure�6.8.�Query Analysis example</b></p><div class="mediaobject"><img src="images/query-duration.png" alt="Query Analysis example"></div></div></li></ol></div></li><li><p>Identify a runaway Oracle query: first, use <b class="userinput"><tt>ps aux</tt></b> or <b class="userinput"><tt>top</tt></b> to get the UNIX process ID of a runaway Oracle process.</p><p>Log in to SQL*Plus as the admin:</p><pre class="screen">[<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> ~]$ svrmgrl Oracle Server Manager Release 3.1.7.0.0 - Production @@ -26,4 +26,29 @@ where sql.address = s.sql_address and sql.hash_value = s.sql_hash_value --and upper(s.username) like 'USERNAME%' - order by s.username ,s.sid ,s.serial# ,sql.piece ;</pre><p>To kill a troubled process:</p><pre class="programlisting">alter system kill session 'SID,SERIAL#'; --substitute values for SID and SERIAL#</pre><p>(See <a href="http://www.piskorski.com/docs/oracle.html" target="_top">Andrew Piskorski's Oracle notes</a>)</p></li></ul></div></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="uptime.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="database-management.html">Next</a></td></tr><tr><td width="40%" align="left">External uptime validation </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Chapter�7.�Database Management</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/maint-performance.html#comments">View comments on this page at openacs.org</a></center></body></html> + order by s.username ,s.sid ,s.serial# ,sql.piece ;</pre><p>To kill a troubled process:</p><pre class="programlisting">alter system kill session 'SID,SERIAL#'; --substitute values for SID and SERIAL#</pre><p>(See <a href="http://www.piskorski.com/docs/oracle.html" target="_top">Andrew Piskorski's Oracle notes</a>)</p></li></ul></div></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-monitoring"></a>Creating an appropriate tuning and monitoring environment</h3></div></div><div></div></div><p> + The first task is to create an appropriate environment for finding out + what is going on inside Oracle. Oracle provides Statspack, a package to + monitor and save the state of the v$ performance views. These reports + help finding severe problems by exposing summary data about the Oracle + wait interface, executed queries. You'll find the installation + instructions in $ORACLE_HOME/rdbms/admin/spdoc.txt. Follow the + instructions carefully and take periodic snapshots, this way you'll be + able to look at historical performance data. + </p><p> + Also turn on the timed_statistics in your init.ora file, so that + Statspack reports (and all other Oracle reports) are timed, which makes + them a lot more meaningful. The overhead of timing data is about 1% per + Oracle Support information. + </p><p> + To be able to get a overview of how Oracle executes a particular query, + install "autotrace". I usually follow the instructions here <a href="http://asktom.oracle.com/~tkyte/article1/autotrace.html" target="_top">http://asktom.oracle.com/~tkyte/article1/autotrace.html</a>. + </p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2521981"></a>Make sure, that the Oracle CBO works with adequate statistics</h4></div></div><div></div></div><p> + The Oracle Cost Based optimizer is a piece of software that tries to find + the "optimal" execution plan for a given SQL statement. For that it + estimates the costs of running a SQL query in a particular way (by default + up to 80.000 permutations are being tested in a Oracle 8i). To get an + adequate cost estimate, the CBO needs to have adequate statistics. For + that Oracle supplies the <a href="http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96612/d_stats.htm#999107" target="_top">dbms_stats + package</a>. + </p></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="uptime.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="database-management.html">Next</a></td></tr><tr><td width="40%" align="left">External uptime validation </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Chapter�7.�Database Management</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/maint-performance.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/maintenance-deploy.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/maintenance-deploy.html,v diff -u -r1.9 -r1.10 --- openacs-4/packages/acs-core-docs/www/maintenance-deploy.html 5 May 2004 12:36:04 -0000 1.9 +++ openacs-4/packages/acs-core-docs/www/maintenance-deploy.html 11 Jun 2004 10:17:38 -0000 1.10 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Staged Deployment for Production Networks</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="high-avail.html" title="High Availability/High Performance Configurations"><link rel="next" href="install-ssl.html" title="Installing SSL Support for an OpenACS service"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="high-avail.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="install-ssl.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="maintenance-deploy"></a>Staged Deployment for Production Networks</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Staged Deployment for Production Networks</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="high-avail.html" title="High Availability/High Performance Configurations"><link rel="next" href="install-ssl.html" title="Installing SSL Support for an OpenACS service"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="high-avail.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="install-ssl.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="maintenance-deploy"></a>Staged Deployment for Production Networks</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><p>This section describes minimal-risk methods for deploying changes on a production network. The important characteristics of a safe change deployment include: (THIS SECTION IN DEVELOPMENT)</p><div class="itemizedlist"><ul type="disc"><li><p>Control: You know for sure that the change you are making is the change that you intend to make and is the change that you tested.</p></li><li><p>Rollback: If anything goes wrong, you can return to the previous working configuration safely and quickly.</p></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2520226"></a>Deployment with CVS</h3></div></div><div></div></div><p>With this method, we control the files on a site via CVS. In this example, there is one development site and one production site. The only way files should move between the two is via cvs. The production site could run "HEAD" from cvs (raw example from chat log:)</p><pre class="programlisting"> + </div><p>This section describes minimal-risk methods for deploying changes on a production network. The important characteristics of a safe change deployment include: (THIS SECTION IN DEVELOPMENT)</p><div class="itemizedlist"><ul type="disc"><li><p>Control: You know for sure that the change you are making is the change that you intend to make and is the change that you tested.</p></li><li><p>Rollback: If anything goes wrong, you can return to the previous working configuration safely and quickly.</p></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2517148"></a>Deployment with CVS</h3></div></div><div></div></div><p>With this method, we control the files on a site via CVS. In this example, there is one development site and one production site. The only way files should move between the two is via cvs. The production site could run "HEAD" from cvs (raw example from chat log:)</p><pre class="programlisting"> 1) change the file on dev as desired 2) test the new file 3) commit the file: @@ -17,4 +17,4 @@ the stuff in -m "foo" is a comment visible only from within cvs commands 4) update the file on production: cd /web/foo-prod/www -cvs up index.adp</pre><p>The drawback to using HEAD as the live code is that you cannot commit new work on the development server without erasing the definition of 'working production code.' So a better method is to use a tag. This guarantees that, at any time in the future, you can retrieve exactly the same set of code. This is useful for both of the characteristics of safe change deployment. For control, you can use tags to define a body of code, test that code, and then know that what you are deploying is exactly that code. For rollback, you can use return to the last working tag if the new tag (or new, untagged changes) cause problems. .... example of using tags to follow ...</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2520268"></a>A/B Deployment</h3></div></div><div></div></div><p>The approach taken in this section is to always create a new service with the desired changes, running in parallel with the existing site. This guarantees control, at least at the final step of the process: you know what changes you are about to make because you can see them directly. It does not, by itself, guarantee the entire control chain. You need additional measures to make sure that the change you are making is exactly and completely the change you intended to make and tested previously, and nothing more. Those additional measures typically take the form of source control tags and system version numbers. The parallel-server approach also guarantees rollback because the original working service is not touched; it is merely set aside.</p><p>This approach can has limitations. If the database or file system regularly receiving new data, you must interrupt this function or risk losing data in the shuffle. It also requires extra steps if the database will be affected.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2520296"></a>Simple A/B Deployment: Database is not changed</h4></div></div><div></div></div><div class="figure"><a name="id2520302"></a><p class="title"><b>Figure�6.2.�Simple A/B Deployment - Step 1</b></p><div class="mediaobject" align="center"><img src="images/simple-deploy-1.png" align="middle" alt="Simple A/B Deployment - Step 1"></div></div><div class="figure"><a name="id2520323"></a><p class="title"><b>Figure�6.3.�Simple A/B Deployment - Step 2</b></p><div class="mediaobject" align="center"><img src="images/simple-deploy-2.png" align="middle" alt="Simple A/B Deployment - Step 2"></div></div><div class="figure"><a name="id2520344"></a><p class="title"><b>Figure�6.4.�Simple A/B Deployment - Step 3</b></p><div class="mediaobject" align="center"><img src="images/simple-deploy-3.png" align="middle" alt="Simple A/B Deployment - Step 3"></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2520366"></a>Complex A/B Deployment: Database is changed</h4></div></div><div></div></div><div class="figure"><a name="id2520371"></a><p class="title"><b>Figure�6.5.�Complex A/B Deployment - Step 1</b></p><div class="mediaobject" align="center"><img src="images/complex-deploy-1.png" align="middle" alt="Complex A/B Deployment - Step 1"></div></div><div class="figure"><a name="id2526002"></a><p class="title"><b>Figure�6.6.�Complex A/B Deployment - Step 2</b></p><div class="mediaobject" align="center"><img src="images/complex-deploy-2.png" align="middle" alt="Complex A/B Deployment - Step 2"></div></div><div class="figure"><a name="id2526023"></a><p class="title"><b>Figure�6.7.�Complex A/B Deployment - Step 3</b></p><div class="mediaobject" align="center"><img src="images/complex-deploy-3.png" align="middle" alt="Complex A/B Deployment - Step 3"></div></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="high-avail.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-ssl.html">Next</a></td></tr><tr><td width="40%" align="left">High Availability/High Performance Configurations </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Installing SSL Support for an OpenACS service</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/maintenance-deploy.html#comments">View comments on this page at openacs.org</a></center></body></html> +cvs up index.adp</pre><p>The drawback to using HEAD as the live code is that you cannot commit new work on the development server without erasing the definition of 'working production code.' So a better method is to use a tag. This guarantees that, at any time in the future, you can retrieve exactly the same set of code. This is useful for both of the characteristics of safe change deployment. For control, you can use tags to define a body of code, test that code, and then know that what you are deploying is exactly that code. For rollback, you can use return to the last working tag if the new tag (or new, untagged changes) cause problems. .... example of using tags to follow ...</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2519074"></a>A/B Deployment</h3></div></div><div></div></div><p>The approach taken in this section is to always create a new service with the desired changes, running in parallel with the existing site. This guarantees control, at least at the final step of the process: you know what changes you are about to make because you can see them directly. It does not, by itself, guarantee the entire control chain. You need additional measures to make sure that the change you are making is exactly and completely the change you intended to make and tested previously, and nothing more. Those additional measures typically take the form of source control tags and system version numbers. The parallel-server approach also guarantees rollback because the original working service is not touched; it is merely set aside.</p><p>This approach can has limitations. If the database or file system regularly receiving new data, you must interrupt this function or risk losing data in the shuffle. It also requires extra steps if the database will be affected.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2519102"></a>Simple A/B Deployment: Database is not changed</h4></div></div><div></div></div><div class="figure"><a name="id2519108"></a><p class="title"><b>Figure�6.2.�Simple A/B Deployment - Step 1</b></p><div class="mediaobject" align="center"><img src="images/simple-deploy-1.png" align="middle" alt="Simple A/B Deployment - Step 1"></div></div><div class="figure"><a name="id2519129"></a><p class="title"><b>Figure�6.3.�Simple A/B Deployment - Step 2</b></p><div class="mediaobject" align="center"><img src="images/simple-deploy-2.png" align="middle" alt="Simple A/B Deployment - Step 2"></div></div><div class="figure"><a name="id2519150"></a><p class="title"><b>Figure�6.4.�Simple A/B Deployment - Step 3</b></p><div class="mediaobject" align="center"><img src="images/simple-deploy-3.png" align="middle" alt="Simple A/B Deployment - Step 3"></div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2519172"></a>Complex A/B Deployment: Database is changed</h4></div></div><div></div></div><div class="figure"><a name="id2519178"></a><p class="title"><b>Figure�6.5.�Complex A/B Deployment - Step 1</b></p><div class="mediaobject" align="center"><img src="images/complex-deploy-1.png" align="middle" alt="Complex A/B Deployment - Step 1"></div></div><div class="figure"><a name="id2519199"></a><p class="title"><b>Figure�6.6.�Complex A/B Deployment - Step 2</b></p><div class="mediaobject" align="center"><img src="images/complex-deploy-2.png" align="middle" alt="Complex A/B Deployment - Step 2"></div></div><div class="figure"><a name="id2519220"></a><p class="title"><b>Figure�6.7.�Complex A/B Deployment - Step 3</b></p><div class="mediaobject" align="center"><img src="images/complex-deploy-3.png" align="middle" alt="Complex A/B Deployment - Step 3"></div></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="high-avail.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-ssl.html">Next</a></td></tr><tr><td width="40%" align="left">High Availability/High Performance Configurations </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Installing SSL Support for an OpenACS service</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/maintenance-deploy.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/maintenance-web.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/maintenance-web.html,v diff -u -r1.27 -r1.28 --- openacs-4/packages/acs-core-docs/www/maintenance-web.html 5 May 2004 12:36:04 -0000 1.27 +++ openacs-4/packages/acs-core-docs/www/maintenance-web.html 11 Jun 2004 10:17:38 -0000 1.28 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�6.�Production Environments</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="upgrade-supporting.html" title="Upgrading Platform components"><link rel="next" href="install-openacs-keepalive.html" title="Starting and Stopping an OpenACS instance."><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-supporting.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-openacs-keepalive.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="maintenance-web"></a>Chapter�6.�Production Environments</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="install-openacs-keepalive.html">Starting and Stopping an OpenACS instance.</a></span></dt><dt><span class="sect1"><a href="install-openacs-inittab.html">AOLserver keepalive with inittab</a></span></dt><dt><span class="sect1"><a href="install-next-add-server.html">Running multiple services on one machine</a></span></dt><dt><span class="sect1"><a href="high-avail.html">High Availability/High Performance Configurations</a></span></dt><dt><span class="sect1"><a href="maintenance-deploy.html">Staged Deployment for Production Networks</a></span></dt><dt><span class="sect1"><a href="install-ssl.html">Installing SSL Support for an OpenACS service</a></span></dt><dt><span class="sect1"><a href="analog-setup.html">Set up Log Analysis Reports</a></span></dt><dt><span class="sect1"><a href="uptime.html">External uptime validation</a></span></dt><dt><span class="sect1"><a href="maint-performance.html">Diagnosing Performance Problems</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�6.�Production Environments</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="upgrade-supporting.html" title="Upgrading Platform components"><link rel="next" href="install-openacs-keepalive.html" title="Starting and Stopping an OpenACS instance."><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-supporting.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-openacs-keepalive.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="maintenance-web"></a>Chapter�6.�Production Environments</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="install-openacs-keepalive.html">Starting and Stopping an OpenACS instance.</a></span></dt><dt><span class="sect1"><a href="install-openacs-inittab.html">AOLserver keepalive with inittab</a></span></dt><dt><span class="sect1"><a href="install-next-add-server.html">Running multiple services on one machine</a></span></dt><dt><span class="sect1"><a href="high-avail.html">High Availability/High Performance Configurations</a></span></dt><dt><span class="sect1"><a href="maintenance-deploy.html">Staged Deployment for Production Networks</a></span></dt><dt><span class="sect1"><a href="install-ssl.html">Installing SSL Support for an OpenACS service</a></span></dt><dt><span class="sect1"><a href="analog-setup.html">Set up Log Analysis Reports</a></span></dt><dt><span class="sect1"><a href="uptime.html">External uptime validation</a></span></dt><dt><span class="sect1"><a href="maint-performance.html">Diagnosing Performance Problems</a></span></dt></dl></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>Maintenance tasks, optional software, and alternate configurations for AOLserver.</p><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-supporting.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-openacs-keepalive.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading Platform components </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Starting and Stopping an OpenACS instance.</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/maintenance-web.html#comments">View comments on this page at openacs.org</a></center></body></html> Fisheye: Tag 1.14 refers to a dead (removed) revision in file `openacs-4/packages/acs-core-docs/www/maintenance.html'. Fisheye: No comparison available. Pass `N' to diff? Index: openacs-4/packages/acs-core-docs/www/nxml-mode.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/nxml-mode.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/nxml-mode.html 5 May 2004 12:36:04 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/nxml-mode.html 11 Jun 2004 10:17:38 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using nXML mode in Emacs</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="psgml-mode.html" title="Using PSGML mode in Emacs"><link rel="next" href="filename.html" title="Detailed Design Documentation Template"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="psgml-mode.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="filename.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="nxml-mode"></a>Using nXML mode in Emacs</h2></div></div><div></div></div><div class="authorblurb"><p>By Jeff Davis</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using nXML mode in Emacs</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="psgml-mode.html" title="Using PSGML mode in Emacs"><link rel="next" href="filename.html" title="Detailed Design Documentation Template"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="psgml-mode.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="filename.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="nxml-mode"></a>Using nXML mode in Emacs</h2></div></div><div></div></div><div class="authorblurb"><p>By Jeff Davis</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p> Index: openacs-4/packages/acs-core-docs/www/object-identity.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/object-identity.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/object-identity.html 5 May 2004 12:36:04 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/object-identity.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Object Identity</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="permissions-tediously-explained.html" title="OpenACS Permissions Tediously Explained"><link rel="next" href="programming-with-aolserver.html" title="Programming with AOLserver"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions-tediously-explained.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="programming-with-aolserver.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="object-identity"></a>Object Identity</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Object Identity</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="permissions-tediously-explained.html" title="OpenACS Permissions Tediously Explained"><link rel="next" href="programming-with-aolserver.html" title="Programming with AOLserver"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions-tediously-explained.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="programming-with-aolserver.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="object-identity"></a>Object Identity</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>One of the major design features of OpenACS 5.2.0d1 is the explicit representation Index: openacs-4/packages/acs-core-docs/www/object-system-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/object-system-design.html,v diff -u -r1.23 -r1.24 --- openacs-4/packages/acs-core-docs/www/object-system-design.html 5 May 2004 12:36:04 -0000 1.23 +++ openacs-4/packages/acs-core-docs/www/object-system-design.html 11 Jun 2004 10:17:38 -0000 1.24 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Object Model Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="object-system-requirements.html" title="Object Model Requirements"><link rel="next" href="permissions-requirements.html" title="Permissions Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="object-system-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="permissions-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="object-system-design"></a>Object Model Design</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su, Michael Yoon, Richard Li, Rafael Schloming</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Object Model Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="object-system-requirements.html" title="Object Model Requirements"><link rel="next" href="permissions-requirements.html" title="Permissions Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="object-system-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="permissions-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="object-system-design"></a>Object Model Design</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su, Michael Yoon, Richard Li, Rafael Schloming</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="object-system-design-essentials"></a>Essentials</h3></div></div><div></div></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="objects-design-data-model"></a>Data Model</h4></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a href="/doc/sql/display-sql?url=acs-metadata-create.sql&package_key=acs-kernel" target="_top"> Index: openacs-4/packages/acs-core-docs/www/object-system-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/object-system-requirements.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/object-system-requirements.html 5 May 2004 12:36:04 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/object-system-requirements.html 11 Jun 2004 10:17:38 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Object Model Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="kernel-overview.html" title="Overview"><link rel="next" href="object-system-design.html" title="Object Model Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="kernel-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="object-system-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="object-system-requirements"></a>Object Model Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Object Model Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="kernel-overview.html" title="Overview"><link rel="next" href="object-system-design.html" title="Object Model Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="kernel-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="object-system-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="object-system-requirements"></a>Object Model Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="object-system-requirements-"></a>I. Introduction</h3></div></div><div></div></div><p>A major goal in OpenACS 4 is to unify and normalize many of the core services Index: openacs-4/packages/acs-core-docs/www/objects.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/objects.html,v diff -u -r1.36 -r1.37 --- openacs-4/packages/acs-core-docs/www/objects.html 5 May 2004 12:36:04 -0000 1.36 +++ openacs-4/packages/acs-core-docs/www/objects.html 11 Jun 2004 10:17:38 -0000 1.37 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Data Models and the Object System</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="packages.html" title="OpenACS Packages"><link rel="next" href="request-processor.html" title="The Request Processor"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="packages.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="request-processor.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="objects"></a>OpenACS Data Models and the Object System</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Data Models and the Object System</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="packages.html" title="OpenACS Packages"><link rel="next" href="request-processor.html" title="The Request Processor"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="packages.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="request-processor.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="objects"></a>OpenACS Data Models and the Object System</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="objects-overview"></a>Overview</h3></div></div><div></div></div><p> @@ -78,7 +78,7 @@ Fire up your text editor and open the <tt class="computeroutput">ROOT/packages/notes/sql/oracle/notes-create.sql</tt> (<tt class="computeroutput">ROOT/packages/notes/sql/postgresql/notes-create.sql</tt> for the PG version) file created when we <a href="packages.html" title="OpenACS Packages">created the package</a>. Then, do the following: -</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2581623"></a>Describe the new type to the type system</h4></div></div><div></div></div><p> +</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2520881"></a>Describe the new type to the type system</h4></div></div><div></div></div><p> First, add an entry to the <tt class="computeroutput">acs_object_types</tt> table with the following PL/SQL call: </p><pre class="programlisting"> begin @@ -138,7 +138,7 @@ because the new type <tt class="computeroutput">note</tt> is a subtype of <tt class="computeroutput">acs_object</tt>, it will inherit these attributes, so there is no need for us to define them. -</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2486400"></a>Define a table in which to store your objects</h4></div></div><div></div></div><p> +</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2520957"></a>Define a table in which to store your objects</h4></div></div><div></div></div><p> The next thing we do is make a small modification to the data model to reflect the fact that each row in the <tt class="computeroutput">notes</tt> table represents something that is not only an object of type @@ -163,7 +163,7 @@ use the <tt class="computeroutput">acs_objects</tt> table to find objects will transparently find any objects that are instances of any subtype of <tt class="computeroutput">acs_objects</tt>. -</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2547505"></a>Define a package for type specific procedures</h4></div></div><div></div></div><p> +</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2527621"></a>Define a package for type specific procedures</h4></div></div><div></div></div><p> The next step is to define a PL/SQL package for your new type, and write some basic procedures to create and delete objects. Here is a package definition for our new type: @@ -211,7 +211,7 @@ object OBJ was "read only", then any other object that used OBJ as its context would also be "read only" by default. We'll talk about this more later. -</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2527391"></a>Define a package body for type specific procedures</h4></div></div><div></div></div><p> +</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2527694"></a>Define a package body for type specific procedures</h4></div></div><div></div></div><p> The PL/SQL package body contains the implementations of the procedures defined above. The only subtle thing going on here is that we must use <tt class="computeroutput">acs_object.new</tt> to insert a row into Index: openacs-4/packages/acs-core-docs/www/openacs-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs-overview.html,v diff -u -r1.18 -r1.19 --- openacs-4/packages/acs-core-docs/www/openacs-overview.html 5 May 2004 12:36:04 -0000 1.18 +++ openacs-4/packages/acs-core-docs/www/openacs-overview.html 11 Jun 2004 10:17:38 -0000 1.19 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="previous" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="next" href="release-notes.html" title="OpenACS Release Notes"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="general-documents.html">Prev</a> </td><th width="60%" align="center">Chapter�1.�High level information: What is OpenACS?</th><td width="20%" align="right"> <a accesskey="n" href="release-notes.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="openacs-overview"></a>Overview</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="previous" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="next" href="release-notes.html" title="OpenACS Release Notes"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="general-documents.html">Prev</a> </td><th width="60%" align="center">Chapter�1.�High level information: What is OpenACS?</th><td width="20%" align="right"> <a accesskey="n" href="release-notes.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="openacs-overview"></a>Overview</h2></div></div><div></div></div><p> OpenACS (Open Architecture Community System) is an advanced toolkit for building scalable, community-oriented web applications. If you're thinking of building an Index: openacs-4/packages/acs-core-docs/www/openacs-unpack.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs-unpack.html,v diff -u -r1.17 -r1.18 --- openacs-4/packages/acs-core-docs/www/openacs-unpack.html 5 May 2004 12:36:04 -0000 1.17 +++ openacs-4/packages/acs-core-docs/www/openacs-unpack.html 11 Jun 2004 10:17:38 -0000 1.18 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Unpack the OpenACS tarball</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="next" href="install-cvs.html" title="Initialize CVS (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-more-software.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="openacs-unpack"></a>Unpack the OpenACS tarball</h2></div></div><div></div></div><p>The OpenACS tarball contains sample configuration files +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Unpack the OpenACS tarball</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="next" href="install-cvs.html" title="Initialize CVS (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-more-software.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="openacs-unpack"></a>Unpack the OpenACS tarball</h2></div></div><div></div></div><p>The OpenACS tarball contains sample configuration files for some of the packages listed below. In order to access those files, unpack the tarball now.</p><pre class="screen">[root root]# <b class="userinput"><tt>cd /tmp</tt></b> [root tmp]# <b class="userinput"><tt>tar xzf openacs-5.2.0d1.tgz</tt></b> Index: openacs-4/packages/acs-core-docs/www/openacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/openacs.html 5 May 2004 12:36:04 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/openacs.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install OpenACS 5.2.0d1</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="aolserver4.html" title="Install AOLserver 4"><link rel="next" href="win2k-installation.html" title="OpenACS Installation Guide for Windows2000"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="aolserver4.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="win2k-installation.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="openacs"></a>Install OpenACS 5.2.0d1</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install OpenACS 5.2.0d1</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="aolserver4.html" title="Install AOLserver 4"><link rel="next" href="win2k-installation.html" title="OpenACS Installation Guide for Windows2000"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="aolserver4.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="win2k-installation.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="openacs"></a>Install OpenACS 5.2.0d1</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="openacs-setup"></a>Set up the file system for one or more OpenACS Sites</h3></div></div><div></div></div><p>For Linux Standard Base compliance and ease of backup, @@ -25,39 +25,39 @@ for each different service. A service name should be a single word, <span class="emphasis"><em>letters and numbers only</em></span>. If the name of your site is one word, that would be a good choice. For - example "<span class="replaceable"><span class="replaceable">service0</span></span>" might be the service name for the - <a href="http://service0.net/" target="_top"><span class="replaceable"><span class="replaceable">service0</span></span>.net</a> + example "<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>" might be the service name for the + <a href="http://%24OPENACS_SERVICE_NAME.net/" target="_top"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>.net</a> community.</p><p>We'll leave the password blank, which prevents login by password, for increased security. The only way to log in will be with ssh certificates. The only people who should log in are developers for that specific instance. Add this user, and put - it in the <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0</span></span></tt> group so that it + it in the <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> group so that it can use database and server commands associated with that group. </p><pre class="screen"> -[root root]# <b class="userinput"><tt>useradd <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +[root root]# <b class="userinput"><tt>useradd <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> [root root]#</pre></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-with-script"></a>Installation Option 1: Use automated script</h3></div></div><div></div></div><p>A bash script is available to automate all of the steps for the rest of this section. It requires <a href="install-tclwebtest.html" title="Install tclwebtest.">tclwebtest</a>. The automated script can greatly accelerate the install process, but is very sensitive to the install environment. We recommend that you run the automated install and, if it does not work the first time, consider switching to a <a href="openacs.html#install-from-tarball" title="Installation Option 2: Install from tarball">manual installation</a>.</p><p>Get the install script from CVS. It is located within the main cvs tree, at /etc/install. Use anonymous CVS checkout to get that directory in the home directory of the service's dedicated user. We put it there so that it is not overwritten when we do the main CVS checkout to the target - location.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cvs -d :pserver:anonymous@openacs.org:/cvsroot co -d install openacs-4/etc/install</tt></b> + location.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs -d :pserver:anonymous@openacs.org:/cvsroot co -d install openacs-4/etc/install</tt></b> cvs server: Updating install U install/README U install/TODO ... many lines omitted ... U install/tcl/twt-procs.tcl U install/tcl/user-procs.tcl -[service0 service0]$ <b class="userinput"><tt>cd install</tt></b> -[service0 install]$ <b class="userinput"><tt>emacs install.tcl</tt></b> -</pre><p>Edit the installation configuration file, <tt class="computeroutput">/home/<span class="replaceable"><span class="replaceable">service0</span></span>/install/install.tcl</tt> and update the site-specific values, such as the new service's IP address and name, which will be written into the new service's <tt class="computeroutput">config.tcl</tt> file. If your system is different from the one described in the previous sections, check the file paths as well. Set <tt class="computeroutput">do_checkout=yes</tt> to create a new OpenACS site directly from a CVS checkout, or <tt class="computeroutput">=no</tt> if you have a fully configured site and just want to rebuild it (drop and recreate the database and repeat the installation). If you have followed a stock installation, the default configuration will work without changes and will install an OpenACS site at 127.0.0.1:8000.</p><p>Run the install script <tt class="computeroutput">install.sh</tt> as root:</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>exit</tt></b> -[root root]# <b class="userinput"><tt>sh /home/<span class="replaceable"><span class="replaceable">service0</span></span>/install/install.sh</tt></b> -/home/service0/install/install.sh: Starting installation with config_file -/home/service0/install/install.tcl. Using serverroot=/var/lib/aolserver/ -service0, server_url=http://0.0.0.0:8000, do_checkout=yes, do_install=yes, +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd install</tt></b> +[$OPENACS_SERVICE_NAME install]$ <b class="userinput"><tt>emacs install.tcl</tt></b> +</pre><p>Edit the installation configuration file, <tt class="computeroutput">/home/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/install/install.tcl</tt> and update the site-specific values, such as the new service's IP address and name, which will be written into the new service's <tt class="computeroutput">config.tcl</tt> file. If your system is different from the one described in the previous sections, check the file paths as well. Set <tt class="computeroutput">do_checkout=yes</tt> to create a new OpenACS site directly from a CVS checkout, or <tt class="computeroutput">=no</tt> if you have a fully configured site and just want to rebuild it (drop and recreate the database and repeat the installation). If you have followed a stock installation, the default configuration will work without changes and will install an OpenACS site at 127.0.0.1:8000.</p><p>Run the install script <tt class="computeroutput">install.sh</tt> as root:</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> +[root root]# <b class="userinput"><tt>sh /home/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/install/install.sh</tt></b> +/home/$OPENACS_SERVICE_NAME/install/install.sh: Starting installation with config_file +/home/$OPENACS_SERVICE_NAME/install/install.tcl. Using serverroot=/var/lib/aolserver/ +$OPENACS_SERVICE_NAME, server_url=http://0.0.0.0:8000, do_checkout=yes, do_install=yes, dotlrn=no, and database=postgres., use_daemontools=true <span class="emphasis"><em>... many lines omitted ...</em></span> -Tue Jan 27 11:50:59 CET 2004: Finished (re)installing /var/lib/aolserver/service0. +Tue Jan 27 11:50:59 CET 2004: Finished (re)installing /var/lib/aolserver/$OPENACS_SERVICE_NAME. ###################################################################### New site URL: http://127.0.0.1:8000 admin email : admin@yourserver.net @@ -67,42 +67,42 @@ to the <tt class="computeroutput">/tmp</tt> directory. If not, <a href="individual-programs.html#openacs-download">download the OpenACS tarball</a> and save it in - <tt class="computeroutput">/tmp</tt> and proceed:</p><div class="orderedlist"><ol type="1"><li><p><a name="install-openacs-download"></a>Unpack the OpenACS tarball and rename it to <tt class="computeroutput">service0</tt>. Secure the directory so that only the owner can access it. Check the permissions by listing the directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>tar xzf /tmp/openacs-5.2.0d1.tgz</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>mv openacs-5.2.0d1 <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>chmod -R 775 <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>chown -R <span class="replaceable"><span class="replaceable">service0</span></span>.<span class="replaceable"><span class="replaceable">service0</span></span> <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>ls -al</tt></b> + <tt class="computeroutput">/tmp</tt> and proceed:</p><div class="orderedlist"><ol type="1"><li><p><a name="install-openacs-download"></a>Unpack the OpenACS tarball and rename it to <tt class="computeroutput">$OPENACS_SERVICE_NAME</tt>. Secure the directory so that only the owner can access it. Check the permissions by listing the directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>tar xzf /tmp/openacs-5.2.0d1.tgz</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>mv openacs-5.2.0d1 <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>chmod -R 775 <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>chown -R <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>.<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>ls -al</tt></b> total 3 drwxrwx--- 3 root web 1024 Mar 29 16:41 . drwxr-xr-x 25 root root 1024 Mar 29 16:24 .. -drwx------ 7 service0 web 1024 Jan 6 14:36 service0 -[service0 aolserver]$ <b class="userinput"><tt>exit</tt></b> +drwx------ 7 $OPENACS_SERVICE_NAME web 1024 Jan 6 14:36 $OPENACS_SERVICE_NAME +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>exit</tt></b> logout [root root]# -<span class="action"><span class="action">su - service0 +<span class="action"><span class="action">su - $OPENACS_SERVICE_NAME cd /var/lib/aolserver tar xzf /tmp/openacs-5.2.0d1.tgz -mv openacs-5.2.0d1 service0 -chmod -R 755 service0 -chgrp -R service0.service0 service0 +mv openacs-5.2.0d1 $OPENACS_SERVICE_NAME +chmod -R 755 $OPENACS_SERVICE_NAME +chgrp -R $OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME exit</span></span></pre></li><li><p><a href="cvs-tips.html#cvs-service-import">Add the Service to CVS</a> (OPTIONAL)</p></li><li><p>Prepare the database</p><div class="itemizedlist"><ul type="disc"><li><p><a name="install-openacs-prepare-oracle"></a><b>Prepare Oracle for OpenACS.�</b>If you won't be using Oracle, skip to <a href="openacs.html#install-openacs-prepare-postgres" title="Prepare PostgreSQL for an OpenACS Service">Prepare PostgreSQL for an OpenACS Service</a></p><p> You should be sure that your user account - (e.g. <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0</span></span></tt>) is in the + (e.g. <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt>) is in the <tt class="computeroutput">dba</tt> group. </p><div class="orderedlist"><ol type="a"><li><p> Verify membership by typing <tt class="computeroutput">groups</tt> when you login: - </p><pre class="programlisting">[service0 ~]$ groups + </p><pre class="programlisting">[$OPENACS_SERVICE_NAME ~]$ groups dba web</pre><p> If you do not see these groups, take the following action: - </p><pre class="programlisting">[service0 ~]$ <b class="userinput"><tt>su -</tt></b> + </p><pre class="programlisting">[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>su -</tt></b> Password: ************ -[root ~]# <b class="userinput"><tt>adduser <span class="replaceable"><span class="replaceable">service0</span></span> dba</tt></b></pre><p> +[root ~]# <b class="userinput"><tt>adduser <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> dba</tt></b></pre><p> If you get an error about an undefined group, then add that group manually: @@ -117,7 +117,7 @@ Connect to Oracle using <tt class="computeroutput">svrmgrl</tt> and login: - </p><pre class="programlisting">[service0 ~]$ <b class="userinput"><tt>svrmgrl</tt></b> + </p><pre class="programlisting">[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>svrmgrl</tt></b> SVRMGR> <b class="userinput"><tt>connect internal</tt></b> Connected.</pre><p> </p></li><li><p> @@ -151,13 +151,13 @@ exit from <tt class="computeroutput">svrmgrl</tt> and login as <tt class="computeroutput">root</tt> for this step: </p><pre class="programlisting"> SVRMGR> <b class="userinput"><tt>exit</tt></b> -[service0 ~]$ <b class="userinput"><tt>su -</tt></b> +[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>su -</tt></b> Password: ************ [root ~]# <b class="userinput"><tt>mkdir -p /ora8/m02/oradata/ora8/</tt></b> -[root ~]# <b class="userinput"><tt>chown <span class="replaceable"><span class="replaceable">service0</span></span>:web /ora8/m02/oradata/ora8</tt></b> +[root ~]# <b class="userinput"><tt>chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>:web /ora8/m02/oradata/ora8</tt></b> [root ~]# <b class="userinput"><tt>chmod 775 /ora8/m02/oradata/ora8</tt></b> [root ~]# <b class="userinput"><tt>exit</tt></b> -[service0 ~]$</pre></li><li><p> +[$OPENACS_SERVICE_NAME ~]$</pre></li><li><p> Create a tablespace for the service. It is important that the tablespace can <tt class="computeroutput">autoextend</tt>. This @@ -168,10 +168,10 @@ Oracle's ability to automatically coalesce free space in the tablespace. - </p><pre class="programlisting">[service0 ~]$ <b class="userinput"><tt>svrmgrl</tt></b> + </p><pre class="programlisting">[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>svrmgrl</tt></b> SVRMGR> <b class="userinput"><tt>connect internal;</tt></b> -SVRMGR> <b class="userinput"><tt>create tablespace <span class="replaceable"><span class="replaceable">service0</span></span> - datafile '/ora8/m02/oradata/ora8/<span class="replaceable"><span class="replaceable">service0</span></span>01.dbf' +SVRMGR> <b class="userinput"><tt>create tablespace <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> + datafile '/ora8/m02/oradata/ora8/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>01.dbf' size 50M autoextend on next 10M @@ -180,26 +180,26 @@ uniform size 32K;</tt></b></pre></li><li><p> Create a database user for this service. Give the user access to the tablespace and rights to connect. We'll use - <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0password</span></span></tt> as our password.</p><p> + <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAMEpassword</span></span></tt> as our password.</p><p> Write down what you specify as <span class="emphasis"><em>service_name</em></span> - (i.e. <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0</span></span></tt>) + (i.e. <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt>) and <span class="emphasis"><em>database_password</em></span> - (i.e. <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0password</span></span></tt>). You + (i.e. <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAMEpassword</span></span></tt>). You will need this information for configuring exports and AOLserver. </p><pre class="programlisting"> -SVRMGR> <b class="userinput"><tt>create user <span class="replaceable"><span class="replaceable">service0</span></span> identified by <span class="replaceable"><span class="replaceable">service0password</span></span> default tablespace <span class="replaceable"><span class="replaceable">service0</span></span> - temporary tablespace temp quota unlimited on <span class="replaceable"><span class="replaceable">service0</span></span>;</tt></b> -SVRMGR> <b class="userinput"><tt>grant connect, resource, ctxapp, javasyspriv, query rewrite to <span class="replaceable"><span class="replaceable">service0</span></span>;</tt></b> -SVRMGR> <b class="userinput"><tt>revoke unlimited tablespace from <span class="replaceable"><span class="replaceable">service0</span></span>;</tt></b> -SVRMGR> <b class="userinput"><tt>alter user <span class="replaceable"><span class="replaceable">service0</span></span> quota unlimited on <span class="replaceable"><span class="replaceable">service0</span></span>;</tt></b> +SVRMGR> <b class="userinput"><tt>create user <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> identified by <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAMEpassword</span></span> default tablespace <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> + temporary tablespace temp quota unlimited on <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>;</tt></b> +SVRMGR> <b class="userinput"><tt>grant connect, resource, ctxapp, javasyspriv, query rewrite to <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>;</tt></b> +SVRMGR> <b class="userinput"><tt>revoke unlimited tablespace from <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>;</tt></b> +SVRMGR> <b class="userinput"><tt>alter user <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> quota unlimited on <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>;</tt></b> SVRMGR> <b class="userinput"><tt>exit;</tt></b></pre><p> Your table space is now ready. In case you are trying to delete a previous OpenACS installation, consult these commands in <a href="install-openacs-delete-tablespace.html" title="Deleting a tablespace">the section called “Deleting a tablespace”</a> below. </p></li><li><p> Make sure that you can login to Oracle using your - <span class="emphasis"><em>service_name</em></span> account: </p><pre class="programlisting">[service0 ~]$ <b class="userinput"><tt>sqlplus <span class="replaceable"><span class="replaceable">service0</span></span>/<span class="replaceable"><span class="replaceable">service0password</span></span></tt></b> + <span class="emphasis"><em>service_name</em></span> account: </p><pre class="programlisting">[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>sqlplus <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAMEpassword</span></span></tt></b> SQL> <b class="userinput"><tt>select sysdate from dual;</tt></b> SYSDATE ---------- @@ -211,17 +211,17 @@ <a href="oracle.html#install-oracle-troubleshooting" title="Troubleshooting Oracle Dates">the section called “Troubleshooting Oracle Dates”</a> </p></li></ol></div></li><li><p><a name="install-openacs-prepare-postgres"></a><b>Prepare PostgreSQL for an OpenACS Service.�</b></p><div class="itemizedlist"><ul type="circle"><li><p><a name="create-service-db-user"></a>PostgreSQL:</p><p>Create a user in the database matching the service name. With default PostgreSQL authentication, a system user connecting locally automatically authenticates as the postgres user of the same name, if one exists. We currently use postgres "super-users" for everything, which means that anyone with access to any of the openacs system accounts on a machine has full access to all postgresql databases on that machine.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - postgres</tt></b> -[postgres pgsql]$ <b class="userinput"><tt>createuser -a -d <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +[postgres pgsql]$ <b class="userinput"><tt>createuser -a -d <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> CREATE USER [postgres pgsql]$ <b class="userinput"><tt>exit</tt></b> logout -[root root]#</pre></li><li><p><a name="create-database"></a>Create a database with the same name as our service name, <span class="replaceable"><span class="replaceable">service0</span></span>.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>createdb -E UNICODE <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +[root root]#</pre></li><li><p><a name="create-database"></a>Create a database with the same name as our service name, <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>createdb -E UNICODE <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> CREATE DATABASE -[service0 service0]$ -<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">service0</span></span> -createdb -E UNICODE <span class="replaceable"><span class="replaceable">service0</span></span></span></span></pre></li><li><p>Automate daily database Vacuuming. This is a process which cleans out discarded data from the database. A quick way to automate vacuuming is to edit the cron file for the database user. Recommended: <tt class="computeroutput">VACUUM ANALYZE</tt> every hour and <tt class="computeroutput">VACUUM FULL ANALYZE</tt> every day.</p><a class="indexterm" name="id2509249"></a><pre class="screen">[service0 service0]$ <b class="userinput"><tt>export EDITOR=emacs;crontab -e</tt></b></pre><p>Add these lines to the file. The vacuum command cleans up temporary structures within a PostGreSQL database, and can improve performance. We vacuum gently every hour and completely every day. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day, and every (*) day of month, month, and day of week. Type <tt class="computeroutput">man 5 crontab</tt> for more information.</p><pre class="programlisting">0 1-23 * * * /usr/local/pgsql/bin/vacuumdb --analyze <span class="replaceable"><span class="replaceable">service0</span></span> -0 0 * * * /usr/local/pgsql/bin/vacuumdb --full --analyze <span class="replaceable"><span class="replaceable">service0</span></span></pre><p>Depending on your distribution, you may receive +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ +<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +createdb -E UNICODE <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></span></span></pre></li><li><p>Automate daily database Vacuuming. This is a process which cleans out discarded data from the database. A quick way to automate vacuuming is to edit the cron file for the database user. Recommended: <tt class="computeroutput">VACUUM ANALYZE</tt> every hour and <tt class="computeroutput">VACUUM FULL ANALYZE</tt> every day.</p><a class="indexterm" name="id2512343"></a><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>export EDITOR=emacs;crontab -e</tt></b></pre><p>Add these lines to the file. The vacuum command cleans up temporary structures within a PostGreSQL database, and can improve performance. We vacuum gently every hour and completely every day. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day, and every (*) day of month, month, and day of week. Type <tt class="computeroutput">man 5 crontab</tt> for more information.</p><pre class="programlisting">0 1-23 * * * /usr/local/pgsql/bin/vacuumdb --analyze <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +0 0 * * * /usr/local/pgsql/bin/vacuumdb --full --analyze <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></pre><p>Depending on your distribution, you may receive email when the crontab items are executed. If you don't want to receive email for those crontab items, you can add <tt class="computeroutput">> /dev/null @@ -232,18 +232,18 @@ specific port, e.g. port 80. In order for OpenACS to work, you need to configure a virtual server. The Reference Platform uses a configuration file included in the OpenACS tarball, - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/config.tcl</tt>. - Open it in an editor to adjust the parameters.</p><a class="indexterm" name="id2509362"></a><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc</tt></b> -[service0 etc]$ <b class="userinput"><tt>emacs config.tcl</tt></b> + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/config.tcl</tt>. + Open it in an editor to adjust the parameters.</p><a class="indexterm" name="id2512455"></a><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc</tt></b> +[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>emacs config.tcl</tt></b> </pre><p> You can continue without changing any values in the file. However, if you don't change <tt class="computeroutput">address</tt> to match the computer's ip address, you won't be able to browse to your server from other machines. </p><div class="itemizedlist"><ul type="disc"><li><p><span class="emphasis"><em>httpport</em></span> - If you want your server on a different port, enter it here. The Reference Platform port is 8000, which is suitable for development use. Port 80 is the standard http port - it's the port used by your browser when you enter http://yourserver.test. So you should use port 80 for your production site.</p></li><li><p><span class="emphasis"><em>httpsport</em></span> - This is the port for https requests. The Reference Platform https port is 8443. If http port is set to 80, httpsport should be 143 to match the standard.</p></li><li><p> - <span class="emphasis"><em>address</em></span> - The IP address of the server. If you are hosting multiple IPs on one computer, this is the address specific to the web site. Each virtual server will ignore any requests directed at other addresses.</p></li><li><p><span class="emphasis"><em>server</em></span> - This is the keyword that, by convention, identifies the service. It is also used as part of the path for the service root, as the name of the user for running the service, as the name of the database, and in various dependent places. The Reference Platform uses <span class="replaceable"><span class="replaceable">service0</span></span>. + <span class="emphasis"><em>address</em></span> - The IP address of the server. If you are hosting multiple IPs on one computer, this is the address specific to the web site. Each virtual server will ignore any requests directed at other addresses.</p></li><li><p><span class="emphasis"><em>server</em></span> - This is the keyword that, by convention, identifies the service. It is also used as part of the path for the service root, as the name of the user for running the service, as the name of the database, and in various dependent places. The Reference Platform uses <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>. </p></li><li><p><span class="emphasis"><em>db_name</em></span> - In almost all cases, this can be kept as a reference to $server. If for some reason, @@ -260,29 +260,29 @@ </p></li><li><p><a href="install-full-text-search.html#enable-openfts" title="Enable OpenFTS in config.tcl">Enable OpenFTS Full Text Search</a> (OPTIONAL)</p></li><li><p><a href="install-ssl.html" title="Installing SSL Support for an OpenACS service">Install nsopenssl for SSL support.</a> (OPTIONAL)</p></li></ol></div></li><li><a name="verify-aolserver-startup"></a><p><b>Verify AOLserver startup.�</b></p><div class="orderedlist"><ol type="a"><li><p><a name="start-aolserver"></a> Kill any current running AOLserver processes and start a new - one. The recommended way to start an AOLserver process is by running the included script, <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools/run</tt>. If you are not using the default file paths and names, you will need to edit <tt class="computeroutput">run</tt>.</p><p>If you want to use port 80, there are complications. AOLserver must be root to use system ports such as + one. The recommended way to start an AOLserver process is by running the included script, <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools/run</tt>. If you are not using the default file paths and names, you will need to edit <tt class="computeroutput">run</tt>.</p><p>If you want to use port 80, there are complications. AOLserver must be root to use system ports such as 80, but refuses to run as root for security reasons. So, we call the run script as root and specify a non-root user ID and Group ID which AOLserver will switch to after claiming the port. To do so, find the UID and GID of the - <span class="replaceable"><span class="replaceable">service0</span></span> user via - <tt class="computeroutput">grep <span class="replaceable"><span class="replaceable">service0</span></span> + <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> user via + <tt class="computeroutput">grep <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /etc/passwd</tt> and then put those numbers into the command line via <tt class="computeroutput">-u <span class="replaceable"><span class="replaceable">501</span></span> -g <span class="replaceable"><span class="replaceable">502</span></span></tt>. In AOLserver 4, you must also send a <tt class="computeroutput">-b</tt> flag. Do this by editing the <tt class="computeroutput">run</tt> file as indicated in the comments. </p><p>If you are root then killall will affect all OpenACS services on the machine, so if there's more than one you'll have to do <tt class="computeroutput">ps -auxw | grep - nsd</tt> and selectively kill by job number.</p><pre class="screen">[service0 etc]$ <b class="userinput"><tt>killall nsd</tt></b> + nsd</tt> and selectively kill by job number.</p><pre class="screen">[$OPENACS_SERVICE_NAME etc]$ <b class="userinput"><tt>killall nsd</tt></b> nsd: no process killed -[service0 service0]$<b class="userinput"><tt> /usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/config.tcl</tt></b> -[service0 service0]$ [08/Mar/2003:18:13:29][32131.8192][-main-] Notice: nsd.tcl: starting to read config file... +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$<b class="userinput"><tt> /usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/config.tcl</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ [08/Mar/2003:18:13:29][32131.8192][-main-] Notice: nsd.tcl: starting to read config file... [08/Mar/2003:18:13:29][32131.8192][-main-] Notice: nsd.tcl: finished reading config file.</pre></li><li><p><a name="connect-to-aolserver"></a> Attempt to connect to the service from a web browser. You should specify a URL like: <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>:8000</tt></p><p> You should see a page that looks like <a href="files/openacs-start.html" target="_top">this</a>. If you <a href="cvs-tips.html#cvs-service-import">imported your files into cvs</a>, now that you know it worked you can erase the temp - directory with <tt class="computeroutput">rm -rf /var/lib/aolserver/service0.orig</tt>. + directory with <tt class="computeroutput">rm -rf /var/lib/aolserver/$OPENACS_SERVICE_NAME.orig</tt>. </p><p> If you don't see the login page, view your error log - (<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/log/<span class="replaceable"><span class="replaceable">service0</span></span>-error.log</tt>) + (<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/log/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-error.log</tt>) to make sure the service is starting without any problems. The most common errors here are trying to start a port 80 server while not root, failing to connect because of @@ -346,7 +346,7 @@ being restarted; note that unless you already set up a way for AOLserver to restart itself (ie. <a href="install-openacs-keepalive.html" title="Starting and Stopping an OpenACS instance.">inittab or daemontools</a>), you'll need to manually restart your service. - </p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>/usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/config.tcl</tt></b></pre></li><li><p> + </p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>/usr/local/aolserver/bin/nsd-postgres -t /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/config.tcl</tt></b></pre></li><li><p> Give the server a few minutes to start up. Then reload the final page above. You should see the front page, with an area to login near the upper right. Congratulations, OpenACS @@ -362,8 +362,8 @@ database while logged in as the service user. They do not directly affect the service's run-time connection with the database, because those environmental variables are set by the - wrapper scripts nsd-postgres and nsd-oracle.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>emacs .bashrc</tt></b></pre><p>Put in the appropriate lines for the database you are running. If you will use both databases, put in both sets of lines.</p><div class="itemizedlist"><ul type="circle"><li><p>PostgreSQL:</p><pre class="programlisting">export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pgsql/lib + wrapper scripts nsd-postgres and nsd-oracle.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>emacs .bashrc</tt></b></pre><p>Put in the appropriate lines for the database you are running. If you will use both databases, put in both sets of lines.</p><div class="itemizedlist"><ul type="circle"><li><p>PostgreSQL:</p><pre class="programlisting">export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/pgsql/lib export PATH=$PATH:/usr/local/pgsql/bin</pre></li><li><p>Oracle. These environment variables are specific for a local Oracle installation communicating via IPC. If you are connecting to a remote Oracle installation, you'll need to adjust these appropriately. Also, @@ -375,10 +375,10 @@ export ORACLE_SID=ora8 export ORACLE_TERM=vt100 export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data</pre></li></ul></div><p>Test this by logging out and back in as - <tt class="computeroutput"><span class="replaceable"><span class="replaceable">service0</span></span></tt> and checking the paths.</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>exit</tt></b> + <tt class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt> and checking the paths.</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> logout -[root src]# <b class="userinput"><tt>su - <b class="userinput"><tt><span class="replaceable"><span class="replaceable">service0</span></span></tt></b></tt></b> -[service0 ~]$ <b class="userinput"><tt>env</tt></b> +[root src]# <b class="userinput"><tt>su - <b class="userinput"><tt><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></tt></b> +[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>env</tt></b> </pre><div class="itemizedlist"><ul type="circle"><li><p>For PostgreSQL, you should see:</p><pre class="screen"> LD_LIBRARY_PATH=:/usr/local/pgsql/lib PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/usr/X11R6/bin:\ Index: openacs-4/packages/acs-core-docs/www/oracle.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/oracle.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/oracle.html 5 May 2004 12:36:04 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/oracle.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,62 +1,66 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Oracle 8.1.7</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="unix-installation.html" title="Install a Unix-like system and supporting software"><link rel="next" href="postgres.html" title="Install PostgreSQL"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="unix-installation.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="postgres.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="oracle"></a>Install Oracle 8.1.7</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install Oracle 8.1.7</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="unix-installation.html" title="Install a Unix-like system and supporting software"><link rel="next" href="postgres.html" title="Install PostgreSQL"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="unix-installation.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="postgres.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="oracle"></a>Install Oracle 8.1.7</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Note</h3><p> - Skip this section if you're not interested in Oracle. - </p><p> - OpenACS 5.2.0d1 will install with Oracle 9i but has not been extensively tested so may still have bugs or tuning issues. - </p><p> - - This document assumes that you'll be installing Oracle on the same - box as AOLserver. For more details on a remote Oracle installation, - see Daryl Biberdorf's <a href="http://openacs.org/new-file-storage/one-file?file_id=273" target="_top">document</a>. - - </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-getit"></a>Acquire Oracle 8.1.7 Enterprise Edition</h3></div></div><div></div></div><p> - - You can obtain the software through a variety of methods (You'll need - to become a member of <a href="http://technet.oracle.com" target="_top">technet.oracle.com</a>, which is - free): - - </p><div class="orderedlist"><ol type="1"><li><p> - - Order a CD from the <a href="http://oraclestore.oracle.com" target="_top">Oracle - Store</a>. The cost is currently $39.95 for a 30-day - evaluation copy with delivery estimated between 3-4 business - days. - - </p></li><li><p> - - Download the software from the <a href="http://otn.oracle.com/software/content.html" target="_top"> - Oracle Downloads</a> page. - - </p><div class="itemizedlist"><ul type="disc"><li><p> - - Oracle 8.1.7 now comes with a Java RunTime - Environment built-in to the distribution, so you no longer - have to download and install it separately. - + </div><p> + If you are installing PostGreSQL instead of Oracle, skip this section. + </p><p> + OpenACS 5.2.0d1 will install with Oracle 9i but has not been extensively tested so may still have bugs or tuning issues. + </p><p> + This installation guide attempts to present all of the information necessary to complete an OpenACS installation. We try hard to make all of the steps possible in one pass, rather than having a step which amounts to "go away and develop a profound understanding of software X and then come back and, in 99% of all cases, type these two lines." The exception to our rule is Oracle production systems. This page describes a set of steps to get a working Oracle development server, but it is <span class="strong">unsuitable for production systems</span>. If you will be using OpenACS on Oracle in a production environment, you will experience many problems unless you develop a basic understanding of Oracle which is outside the scope of this document. T + </p><p> + + This document assumes that you'll be installing Oracle on the same + box as AOLserver. For more details on a remote Oracle installation, + see Daryl Biberdorf's <a href="http://openacs.org/new-file-storage/one-file?file_id=273" target="_top">document</a>. + + </p><p> + + Useful links to find help on how to set up Oracle under Linux are:</p><div class="itemizedlist"><ul type="disc"><li><p><a href="http://dizwell.com/html/oracle_on_linux.html" target="_top">Dizwell - Howard + Roger's company - on Oracle on Linux</a></p></li><li><p><a href="http://puschitz.com/" target="_top">Werner Puschitz - Oracle on Red Hat Linux</a></p></li><li><p><a href="http://www.suse.com/us/business/certifications/certified_software/oracle/" target="_top">SuSE/Oracle Support matrix</a></p></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-getit"></a>Acquire Oracle</h3></div></div><div></div></div><p> + Production Oracle systems should run on certified platforms. Follow the + <a href="http://metalink.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=223718.1" target="_top">metalink + note 223718.1</a>to find certified platforms. If you don't have + metalink access, take a look at the Oracle on Linux FAQ: <a href="http://otn.oracle.com/tech/linux/htdocs/linux_techsupp_faq.html#Linux_Distributions" target="_top">Which + Linux Distributions Are Directly Supported By Oracle?</a>. In summary, + free and inexpensive Linux distributions are not certified. + </p><p> + If you don't have an account at <a href="http://otn.oracle.com" target="_top">OTN</a> + get one: you can download the Oracle software from the <a href="http://otn.oracle.com/software/products/database/oracle10g/index.html" target="_top"> + Oracle Downloads</a> page. It is also get the CDs shipped to you for + a nominal fee from the <a href="http://oraclestore.oracle.com/OA_HTML/ibeCCtdMinisites.jsp?language=US" target="_top">Oracle + Store</a>. + </p><p> + Each Oracle release comes with extensive and usually quite well-written + documentation. Your first step should be to thoroughly read the release + notes for your operating system and your Oracle version. Find the docs + here:</p><div class="itemizedlist"><ul type="disc"><li><p> + <a href="http://otn.oracle.com/documentation/oracle8i.html" target="_top">Oracle 8i + Release Documentation</a></p></li><li><p> + <a href="http://otn.oracle.com/documentation/oracle9i.html" target="_top">Oracle 9i Release Documentation</a> </p></li><li><p> - - See <a href="http://openacs.org/forums/message-view?message_id=33004" target="_top">these - instructions</a> to download the 8.1.7.4 patchset. Note - that you can't back out of an Oracle patchset once it's - installed. You have to reinstall the whole thing from scratch. - - </p></li><li><p> - - After the download is complete, untar the file - to a convenient location. To do this, you will need to login - and cd to the directory where the archive is. - - </p><pre class="programlisting"> -$ cd /directory/where/oracle/is -$ tar xvf oracle81701.tar</pre></li></ul></div></li><li><p> - - It used to be possible to get a free CD by mail, but - I can no longer find the link for that option. - - </p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-keepinmind"></a>Things to Keep in Mind</h3></div></div><div></div></div><p> - + <a href="http://otn.oracle.com/documentation/database10g.html" target="_top">Oracle + 10g Release Documentation</a></p></li></ul></div><p> It is generally useful to run a particular Oracle version with its + latest patchset. At the time of writing these were 8.1.7.4 and 9.2.0.5, + both of which are considered to be very stable. + </p><p> + To be able to download a patchset, you need a (to-pay-for) account on <a href="metalink.oracle.com" target="_top">Metalink</a>. You may find the appropriate + patchset by following <a href="http://openacs.org/forums/message-view?message_id=33004" target="_top">Andrew's + suggestion</a>. + </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-keepinmind"></a>Things to Keep in Mind</h3></div></div><div></div></div><p> + Oracle is very well-documented software, the <a href="http://tahiti.oracle.com" target="_top">online documentation</a> comes with + printable PDFs and full-text search. Altogether there is more than + 20.000 pages of documentation, so do not expect to understand Oracle + within in a few hours. The best starting pointing into Oracle is the + Concepts book. Here's the <a href="http://otn.oracle.com/pls/tahiti/tahiti.to_toc?pathname=server.817%2Fa76965%2Ftoc.htm&remark=docindex" target="_top">8i + version</a> and the <a href="http://otn.oracle.com/pls/db92/db92.to_toc?pathname=server.920%2Fa96524%2Ftoc.htm&remark=docindex" target="_top">9.2 + version</a>. + </p><p> + To give you an idea of how configurable Oracle is and how much thought + you may need to put into buying the proper hardware and creating a sane + setup, you should thoroughly read Cary Millsap's <a href="http://www.miracleas.dk/BAARF/0.Millsap1996.08.21-VLDB.pdf" target="_top">Configuring + Oracle Server for VLDB</a> and the <a href="http://download-west.oracle.com/docs/html/A97297_01/appg_ofa.htm#sthref787" target="_top">Optimal + Flexible Architecture</a> standard. + </p><p> Throughout these instructions, we will refer to a number of configurable settings and advise certain defaults. With the exception of passwords, we advise you to follow these defaults unless you know @@ -65,10 +69,24 @@ later. For a guide to the defaults, please see <a href="oracle.html#install-oracle-defaults" title="Defaults">the section called “Defaults”</a>. </p><p> + In order for OpenACS to work properly you need to set the environment + appropriately. +</p><pre class="programlisting"> +export ORACLE_BASE=/ora8/m01/app/oracle +export ORACLE_HOME=$ORACLE_BASE/product/8.1.7 +export PATH=$PATH:$ORACLE_HOME/bin +export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib +export ORACLE_SID=ora8 +export ORACLE_TERM=vt100 +export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data +umask 022</pre><pre class="programlisting"> +open_cursors = 500</pre><pre class="programlisting"> +nls_date_format = "YYYY-MM-DD"</pre><p> + For additional resources/documentation, please see this <a href="http://openacs.org/forums/message-view?message_id=28829" target="_top">thread</a> and <a href="http://openacs.org/forums/message-view?message_id=67108" target="_top">Andrew - Piskorski's mini-guide</a>.. + Piskorski's mini-guide</a>. </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-preinstall"></a>Pre-Installation Tasks</h3></div></div><div></div></div><p> @@ -1214,7 +1232,7 @@ </p><pre class="programlisting"> SQL> drop tablespace <span class="emphasis"><em>table_space_name</em></span> including contents cascade constraints;</pre></li></ul></div></li></ul></div><p> For more information on Oracle, please consult the <a href="http://oradoc.photo.net/" target="_top">documentation</a>. - </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-defaults"></a>Defaults</h3></div></div><div></div></div><p>We used the following defaults while installing Oracle.</p><div class="informaltable"><table cellspacing="0" border="1"><colgroup><col><col><col></colgroup><thead><tr><th>Variable</th><th>Value</th><th>Reason</th></tr></thead><tbody><tr><td>ORACLE_HOME</td><td>/ora8/m01/app/oracle/product/8.1.7</td><td>This is the default Oracle installation directory.</td></tr><tr><td>ORACLE_SERVICE</td><td>ora8</td><td>The service name is a domain-qualified identifier for + </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="oracle-next-steps"></a>Oracle Next Steps</h3></div></div><div></div></div><p><a href="maint-performance.html#install-oracle-monitoring" title="Creating an appropriate tuning and monitoring environment">the section called “Creating an appropriate tuning and monitoring environment”</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="install-oracle-defaults"></a>Defaults</h3></div></div><div></div></div><p>We used the following defaults while installing Oracle.</p><div class="informaltable"><table cellspacing="0" border="1"><colgroup><col><col><col></colgroup><thead><tr><th>Variable</th><th>Value</th><th>Reason</th></tr></thead><tbody><tr><td>ORACLE_HOME</td><td>/ora8/m01/app/oracle/product/8.1.7</td><td>This is the default Oracle installation directory.</td></tr><tr><td>ORACLE_SERVICE</td><td>ora8</td><td>The service name is a domain-qualified identifier for your Oracle server.</td></tr><tr><td>ORACLE_SID</td><td>ora8</td><td>This is an identifier for your Oracle server.</td></tr><tr><td>ORACLE_OWNER</td><td>oracle</td><td>The user who owns all of the oracle files.</td></tr><tr><td>ORACLE_GROUP</td><td>dba</td><td>The special oracle group. Users in the dba group are authorized to do a <tt class="computeroutput">connect internal</tt> within Index: openacs-4/packages/acs-core-docs/www/os-install.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/os-install.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/os-install.html 5 May 2004 12:36:04 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/os-install.html 11 Jun 2004 10:17:38 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Linux Install Guides</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="install-origins.html" title="Where did this document come from?"><link rel="next" href="os-security.html" title="Security Information"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-origins.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="os-security.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="os-install"></a>Linux Install Guides</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Linux Install Guides</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="install-origins.html" title="Where did this document come from?"><link rel="next" href="os-security.html" title="Security Information"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-origins.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="os-security.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="os-install"></a>Linux Install Guides</h2></div></div><div></div></div><p> Here's a list of some helpful documentation for various OS's </p><div class="itemizedlist"><ul type="disc"><li><p> <a href="http://tinyplanet.ca/pubs/debian/" target="_top">Painless Debian Index: openacs-4/packages/acs-core-docs/www/os-security.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/os-security.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/os-security.html 5 May 2004 12:36:04 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/os-security.html 11 Jun 2004 10:17:38 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Information</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="os-install.html" title="Linux Install Guides"><link rel="next" href="install-resources.html" title="Resources"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="os-install.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="install-resources.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="os-security"></a>Security Information</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Information</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="credits.html" title="Appendix�C.�Credits"><link rel="previous" href="os-install.html" title="Linux Install Guides"><link rel="next" href="install-resources.html" title="Resources"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="os-install.html">Prev</a> </td><th width="60%" align="center">Appendix�C.�Credits</th><td width="20%" align="right"> <a accesskey="n" href="install-resources.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="os-security"></a>Security Information</h2></div></div><div></div></div><p> Once you get your OS installed, it's imperative that you secure your installation. As Jon Griffin repeatedly warns us, "No distribution is secure out of the box." The Reference Platform implements Index: openacs-4/packages/acs-core-docs/www/packages.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/packages.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/packages.html 5 May 2004 12:36:04 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/packages.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Packages</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="next" href="objects.html" title="OpenACS Data Models and the Object System"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="dev-guide.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="objects.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="packages"></a>OpenACS Packages</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su and Bryan Quinn</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Packages</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="next" href="objects.html" title="OpenACS Data Models and the Object System"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="dev-guide.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="objects.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="packages"></a>OpenACS Packages</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su and Bryan Quinn</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="packages-overview"></a>Overview</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/parties.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/parties.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/parties.html 5 May 2004 12:36:04 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/parties.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Parties in OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="subsites.html" title="Writing OpenACS Application Pages"><link rel="next" href="permissions-tediously-explained.html" title="OpenACS Permissions Tediously Explained"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="permissions-tediously-explained.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="parties"></a>Parties in OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Parties in OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="subsites.html" title="Writing OpenACS Application Pages"><link rel="next" href="permissions-tediously-explained.html" title="OpenACS Permissions Tediously Explained"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="permissions-tediously-explained.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="parties"></a>Parties in OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="parties-intro"></a>Introduction</h3></div></div><div></div></div><p>While many applications must deal with individuals and many applications Index: openacs-4/packages/acs-core-docs/www/permissions-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions-design.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/permissions-design.html 5 May 2004 12:36:04 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/permissions-design.html 11 Jun 2004 10:17:38 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Permissions Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="permissions-requirements.html" title="Permissions Requirements"><link rel="next" href="groups-requirements.html" title="Groups Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="groups-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions-design"></a>Permissions Design</h2></div></div><div></div></div><div class="authorblurb"><p>By John Prevost and <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Permissions Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="permissions-requirements.html" title="Permissions Requirements"><link rel="next" href="groups-requirements.html" title="Groups Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="groups-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions-design"></a>Permissions Design</h2></div></div><div></div></div><div class="authorblurb"><p>By John Prevost and <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="permissions-design-essentials"></a>Essentials</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Tcl in <tt class="computeroutput">packages/acs-kernel</tt></p></li><li><p><a href="permissions-requirements.html">OpenACS 4 Permissions Requirements</a></p></li><li><p><a href="/doc/sql/display-sql?url=acs-permissions-create.sql&package_key=acs-kernel" target="_top"> Index: openacs-4/packages/acs-core-docs/www/permissions-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions-requirements.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/permissions-requirements.html 5 May 2004 12:36:04 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/permissions-requirements.html 11 Jun 2004 10:17:38 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Permissions Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="object-system-design.html" title="Object Model Design"><link rel="next" href="permissions-design.html" title="Permissions Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="object-system-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="permissions-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions-requirements"></a>Permissions Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By John McClary Prevost</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Permissions Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="object-system-design.html" title="Object Model Design"><link rel="next" href="permissions-design.html" title="Permissions Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="object-system-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="permissions-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions-requirements"></a>Permissions Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By John McClary Prevost</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="permissions-requirements-intro"></a>Introduction</h3></div></div><div></div></div><p>This document records requirements for the OpenACS 4 Permissions system, a Index: openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html,v diff -u -r1.29 -r1.30 --- openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html 5 May 2004 12:36:06 -0000 1.29 +++ openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html 11 Jun 2004 10:17:38 -0000 1.30 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Permissions Tediously Explained</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="parties.html" title="Parties in OpenACS"><link rel="next" href="object-identity.html" title="Object Identity"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="parties.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="object-identity.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions-tediously-explained"></a>OpenACS Permissions Tediously Explained</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Permissions Tediously Explained</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="parties.html" title="Parties in OpenACS"><link rel="next" href="object-identity.html" title="Object Identity"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="parties.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="object-identity.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions-tediously-explained"></a>OpenACS Permissions Tediously Explained</h2></div></div><div></div></div><p> by Vadim Nasardinov. Modified and converted to Docbook XML by Roberto Mello </p><p>The code has been modified since this document was written so it is now out of date. See <a href="http://openacs.org/forums/message-view?message_id=121807" target="_top">this forum thread</a>.</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="permissions-tedious-overview"></a>Overview</h3></div></div><div></div></div><p> The general permissions system has a relatively complex data model in OpenACS. @@ -100,7 +100,7 @@ </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="permissions-tedious-context-hierarchy"></a>Context Hierarchy</h3></div></div><div></div></div><p> Suppose objects <span class="emphasis"><em>A</em></span>, <span class="emphasis"><em>B</em></span>, ..., and <span class="emphasis"><em>F</em></span> form the following hierarchy. - </p><div class="table"><a name="id2552613"></a><p class="title"><b>Table�11.1.�Context Hierarchy Example</b></p><table summary="Context Hierarchy Example" cellspacing="0" border="1"><colgroup><col align="center"><col align="center"><col align="center"></colgroup><tbody><tr><td colspan="3" align="center"><span class="bold"><b>A</b></span><p> + </p><div class="table"><a name="id2541961"></a><p class="title"><b>Table�11.1.�Context Hierarchy Example</b></p><table summary="Context Hierarchy Example" cellspacing="0" border="1"><colgroup><col align="center"><col align="center"><col align="center"></colgroup><tbody><tr><td colspan="3" align="center"><span class="bold"><b>A</b></span><p> <tt class="computeroutput">object_id=10</tt> </p></td></tr><tr><td colspan="2" align="center"><span class="bold"><b>B</b></span><p> <tt class="computeroutput">object_id=20</tt> @@ -116,7 +116,7 @@ This can be represented in the <a href="permissions-tediously-explained.html#acs_objects">acs_objects</a> table by the following entries: - </p><div class="table"><a name="id2563312"></a><p class="title"><b>Table�11.2.�acs_objects example data</b></p><table summary="acs_objects example data" cellspacing="0" border="1"><colgroup><col align="center"><col align="center"></colgroup><thead><tr><th align="center">object_id</th><th align="center">context_id</th></tr></thead><tbody><tr><td align="center">20</td><td align="center">10</td></tr><tr><td align="center">30</td><td align="center">10</td></tr><tr><td align="center">40</td><td align="center">20</td></tr><tr><td align="center">50</td><td align="center">20</td></tr><tr><td align="center">60</td><td align="center">30</td></tr></tbody></table></div><p> + </p><div class="table"><a name="id2542112"></a><p class="title"><b>Table�11.2.�acs_objects example data</b></p><table summary="acs_objects example data" cellspacing="0" border="1"><colgroup><col align="center"><col align="center"></colgroup><thead><tr><th align="center">object_id</th><th align="center">context_id</th></tr></thead><tbody><tr><td align="center">20</td><td align="center">10</td></tr><tr><td align="center">30</td><td align="center">10</td></tr><tr><td align="center">40</td><td align="center">20</td></tr><tr><td align="center">50</td><td align="center">20</td></tr><tr><td align="center">60</td><td align="center">30</td></tr></tbody></table></div><p> The first entry tells us that object 20 is the descendant of object 10, and the third entry shows that object 40 is the descendant of object 20. By running a <a href="http://www.oradoc.com/ora817/server.817/a85397/expressi.htm#1023748" target="_top">CONNECT BY</a> query, Index: openacs-4/packages/acs-core-docs/www/permissions.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/permissions.html 5 May 2004 12:36:06 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/permissions.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Groups, Context, Permissions</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="templates.html" title="Using Templates in OpenACS"><link rel="next" href="subsites.html" title="Writing OpenACS Application Pages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="templates.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="subsites.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions"></a>Groups, Context, Permissions</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Groups, Context, Permissions</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="templates.html" title="Using Templates in OpenACS"><link rel="next" href="subsites.html" title="Writing OpenACS Application Pages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="templates.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="subsites.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="permissions"></a>Groups, Context, Permissions</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="permissions-overview"></a>Overview</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/postgres.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/postgres.html,v diff -u -r1.34 -r1.35 --- openacs-4/packages/acs-core-docs/www/postgres.html 5 May 2004 12:36:06 -0000 1.34 +++ openacs-4/packages/acs-core-docs/www/postgres.html 11 Jun 2004 10:17:38 -0000 1.35 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install PostgreSQL</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="oracle.html" title="Install Oracle 8.1.7"><link rel="next" href="aolserver4.html" title="Install AOLserver 4"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="oracle.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="aolserver4.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="postgres"></a>Install PostgreSQL</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install PostgreSQL</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="oracle.html" title="Install Oracle 8.1.7"><link rel="next" href="aolserver4.html" title="Install AOLserver 4"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="oracle.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="aolserver4.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="postgres"></a>Install PostgreSQL</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>Skip this section if you will run only Oracle.</p><p>OpenACS 5.2.0d1 will run with <a href="individual-programs.html#source-postgresql">PostgreSQL</a> 7.3.2, 7.3.3, and 7.3.4. 7.3.4 is the recommended version of PostgreSQL. PostgreSQL 7.4 has been verified.</p><div class="itemizedlist"><ul type="disc"><li><p><a name="install-postgres-mac"></a><b>Special notes for Mac OS X.�</b>If you are running Mac OS X prior to 10.3, you should be able to install and use PostGreSQL 7.3.x. Mac OS X 10.3 requires PostGreSQL 7.4.</p></li><li><p><a name="install-postgres-debian"></a><b>Special Notes for Debian.�</b></p><p>Debian users, especially Debian stable users, should @@ -80,9 +80,9 @@ sudo niutil -createprop / /users/postgres gid <span class="replaceable"><span class="replaceable">201</span></span> sudo niutil -createprop / /users/postgres uid <span class="replaceable"><span class="replaceable">502</span></span> sudo niutil -createprop / /users/postgres home /usr/local/pgsql -sudo niutil -create / /users/<span class="replaceable"><span class="replaceable">service0</span></span> -sudo niutil -createprop / /users/<span class="replaceable"><span class="replaceable">service0</span></span> gid <span class="replaceable"><span class="replaceable">201</span></span> -sudo niutil -createprop / /users/<span class="replaceable"><span class="replaceable">service0</span></span> uid <span class="replaceable"><span class="replaceable">201</span></span> +sudo niutil -create / /users/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +sudo niutil -createprop / /users/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> gid <span class="replaceable"><span class="replaceable">201</span></span> +sudo niutil -createprop / /users/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> uid <span class="replaceable"><span class="replaceable">201</span></span> mkdir -p /usr/local/pgsql chown -R postgres:web /usr/local/pgsql /usr/local/src/postgresql-7.4.1 chmod 750 /usr/local/pgsql</tt></b></pre></li></ul></div></li><li><a name="install-postgres-env"></a><p><b>Set up postgres's environment variables.�</b>They are necessary for the executable to find its supporting @@ -100,7 +100,7 @@ Change to the postgres user and run <tt class="computeroutput">./configure</tt> to set the compilation options automatically. This is the point at which you can configure PostgreSQL in various ways. For example, if you want to enable - Unicode<a class="indexterm" name="id2512087"></a> support, add the flags <tt class="computeroutput">--enable-locale</tt> and <tt class="computeroutput">--enable-multibyte</tt>. If you want to see what the other possibilities are, run <tt class="computeroutput">./configure --help</tt>. + Unicode<a class="indexterm" name="id2511647"></a> support, add the flags <tt class="computeroutput">--enable-locale</tt> and <tt class="computeroutput">--enable-multibyte</tt>. If you want to see what the other possibilities are, run <tt class="computeroutput">./configure --help</tt>. </p><p>On debian woody (stable, 3.0), do <tt class="computeroutput">./configure --without-readline --without-zlib</tt>.</p><pre class="screen">[root src]# <b class="userinput"><tt>su - postgres</tt></b> [postgres pgsql]$<b class="userinput"><tt> cd /usr/local/src/postgresql-7.3.4</tt></b> [postgres postgresql-7.3.4]$ <b class="userinput"><tt>./configure --with-includes=/sw/include/ --with-libraries=/sw/lib --enable-locale --enable-multibyte \ @@ -287,7 +287,7 @@ root:~ # <b class="userinput"><tt>/etc/rc.d/init.d/rc2.d/S20postgresql start</tt></b> Starting PostgreSQL: ok root:~ # </pre></li><li><p>Mac OS X:</p><div class="orderedlist"><ol type="a"><li><p>Install the startup script:</p><pre class="screen"><b class="userinput"><tt>cd /Library/StartupItems/</tt></b> -<b class="userinput"><tt>tar xfz /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-core-docs/www/files/osx-postgres-startup-item.tgz</tt></b> +<b class="userinput"><tt>tar xfz /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-core-docs/www/files/osx-postgres-startup-item.tgz</tt></b> </pre></li></ol></div></li></ul></div><p> From now on, PostgreSQL should start automatically each time you boot Index: openacs-4/packages/acs-core-docs/www/profile-code.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/profile-code.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/profile-code.html 5 May 2004 12:36:33 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/profile-code.html 11 Jun 2004 10:17:38 -0000 1.3 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Profile your code</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="ch10s06.html" title="Categories"><link rel="next" href="tutorial-distribute.html" title="Prepare the package for distribution."><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="ch10s06.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-distribute.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="profile-code"></a>Profile your code</h2></div></div><div></div></div><p>There are several facilities for profiling your code in +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Profile your code</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-categories.html" title="Categories"><link rel="next" href="tutorial-distribute.html" title="Prepare the package for distribution."><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-categories.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-distribute.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="profile-code"></a>Profile your code</h2></div></div><div></div></div><p>There are several facilities for profiling your code in OpenACS. The first thing to do is to install the developer-support package and play around with it. But there is also support in the API for profiling your code: <a href="http://openacs.org/forums/message-view?message_id=161324" target="_top">profiling your code using ds_profile</a> - </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch10s06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-distribute.html">Next</a></td></tr><tr><td width="40%" align="left">Categories </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Prepare the package for distribution.</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/profile-code.html#comments">View comments on this page at openacs.org</a></center></body></html> + </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-categories.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-distribute.html">Next</a></td></tr><tr><td width="40%" align="left">Categories </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Prepare the package for distribution.</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/profile-code.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html 5 May 2004 12:36:06 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Programming with AOLserver</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="object-identity.html" title="Object Identity"><link rel="next" href="form-builder.html" title="Using HTML Forms"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="object-identity.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="form-builder.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="programming-with-aolserver"></a>Programming with AOLserver</h2></div></div><div></div></div><div class="authorblurb"><p>By Michael Yoon, Jon Salz and <a href="http://www.pinds.com/lars" target="_top">Lars Pind</a>.</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Programming with AOLserver</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="object-identity.html" title="Object Identity"><link rel="next" href="form-builder.html" title="Using HTML Forms"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="object-identity.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="form-builder.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="programming-with-aolserver"></a>Programming with AOLserver</h2></div></div><div></div></div><div class="authorblurb"><p>By Michael Yoon, Jon Salz and <a href="http://www.pinds.com/lars" target="_top">Lars Pind</a>.</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="programming-aolserver-global"></a>The <tt class="computeroutput">global</tt> command</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html,v diff -u -r1.26 -r1.27 --- openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html 5 May 2004 12:36:06 -0000 1.26 +++ openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html 11 Jun 2004 10:17:38 -0000 1.27 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Add PSGML commands to emacs init file (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-cvs.html" title="Initialize CVS (OPTIONAL)"><link rel="next" href="install-daemontools.html" title="Install Daemontools (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-cvs.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-daemontools.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="psgml-for-emacs"></a>Add PSGML commands to emacs init file (OPTIONAL)</h2></div></div><div></div></div><p><a class="indexterm" name="id2533326"></a> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Add PSGML commands to emacs init file (OPTIONAL)</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix�B.�Install additional supporting software"><link rel="previous" href="install-cvs.html" title="Initialize CVS (OPTIONAL)"><link rel="next" href="install-daemontools.html" title="Install Daemontools (OPTIONAL)"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-cvs.html">Prev</a> </td><th width="60%" align="center">Appendix�B.�Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-daemontools.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="psgml-for-emacs"></a>Add PSGML commands to emacs init file (OPTIONAL)</h2></div></div><div></div></div><p><a class="indexterm" name="id2532607"></a> If you plan to write or edit any documentation with emacs, install a customized emacs configuration file with DocBook commands in the skeleton directory, so it will be used for all new users. The file also Index: openacs-4/packages/acs-core-docs/www/psgml-mode.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/psgml-mode.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/psgml-mode.html 5 May 2004 12:36:06 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/psgml-mode.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using PSGML mode in Emacs</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="docbook-primer.html" title="OpenACS Documentation Guide"><link rel="next" href="nxml-mode.html" title="Using nXML mode in Emacs"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="docbook-primer.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="nxml-mode.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="psgml-mode"></a>Using PSGML mode in Emacs</h2></div></div><div></div></div><div class="authorblurb"><p>By David Lutterkort</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using PSGML mode in Emacs</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="docbook-primer.html" title="OpenACS Documentation Guide"><link rel="next" href="nxml-mode.html" title="Using nXML mode in Emacs"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="docbook-primer.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="nxml-mode.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="psgml-mode"></a>Using PSGML mode in Emacs</h2></div></div><div></div></div><div class="authorblurb"><p>By David Lutterkort</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>Note: <tt class="computeroutput">nxml</tt> mode replaces and/or complements psgml mode. <a href="http://www.xmlhack.com/read.php?item=2061" target="_top">More information</a>.</p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="psgml-mode-whatisit"></a>What it is</h3></div></div><div></div></div><p>PSGML Mode is a mode for editing, umm, SGML and XML documents in emacs. It Index: openacs-4/packages/acs-core-docs/www/release-notes.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/release-notes.html,v diff -u -r1.39 -r1.40 --- openacs-4/packages/acs-core-docs/www/release-notes.html 5 May 2004 12:36:06 -0000 1.39 +++ openacs-4/packages/acs-core-docs/www/release-notes.html 11 Jun 2004 10:17:38 -0000 1.40 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Release Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="previous" href="openacs-overview.html" title="Overview"><link rel="next" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="openacs-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�1.�High level information: What is OpenACS?</th><td width="20%" align="right"> <a accesskey="n" href="acs-admin.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="release-notes"></a>OpenACS Release Notes</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-1-0"></a>Version 5.1.0</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Lots of little tweaks and fixes</p></li><li><p>Complete Change list since 5.0.0 in Changelog</p></li><li><p><a href="http://openacs.org/bugtracker/openacs/core?filter%2efix%5ffor%5fversion=125273&filter%2estatus=closed" target="_top">Many Bug fixes</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-4"></a>Version 5.0.4</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>New translations, including for .LRN 2.0.2.</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-3"></a>Version 5.0.3</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Bug fixes: <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1560" target="_top">1560</a>, <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1556" target="_top">#1556. Site becomes unresponsive, requires restart</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-2"></a>Version 5.0.2</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Bug fixes: <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1495" target="_top">#1495. Croatian enabled by default</a>, <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1496" target="_top">#1496. APM automated install fails if files have spaces in their names</a>, <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1494" target="_top">#1494. automated upgrade crashes (halting the upgrade process)</a></p></li><li><p>Complete Change list since 5.0.0 in Changelog</p></li><li><p>File tagging scheme in CVS changed to follow <a href="http://openacs.org/forums/message-view?message_id=161375" target="_top">TIP #46: (Approved) Rules for Version Numbering and CVS tagging of Packages</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-1"></a>Version 5.0.1</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>All work on the translation server from 7 Nov 2003 to 7 Feb 2004 is now included in catalogs.</p></li><li><p>One new function in acs-tcl, util::age_pretty</p></li><li><p>Complete Change list since 5.0.0 in Changelog</p></li><li><p>Many documentation updates and doc bug fixes </p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-0"></a>Version 5.0.0</h3></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Release Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="general-documents.html" title="Chapter�1.�High level information: What is OpenACS?"><link rel="previous" href="openacs-overview.html" title="Overview"><link rel="next" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="openacs-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�1.�High level information: What is OpenACS?</th><td width="20%" align="right"> <a accesskey="n" href="acs-admin.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="release-notes"></a>OpenACS Release Notes</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-1-0"></a>Version 5.1.0</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Lots of little tweaks and fixes</p></li><li><p>Complete Change list since 5.0.0 in Changelog</p></li><li><p><a href="http://openacs.org/bugtracker/openacs/core?filter%2efix%5ffor%5fversion=125273&filter%2estatus=closed" target="_top">Many Bug fixes</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-4"></a>Version 5.0.4</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>New translations, including for .LRN 2.0.2.</p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-3"></a>Version 5.0.3</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Bug fixes: <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1560" target="_top">1560</a>, <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1556" target="_top">#1556. Site becomes unresponsive, requires restart</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-2"></a>Version 5.0.2</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>Bug fixes: <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1495" target="_top">#1495. Croatian enabled by default</a>, <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1496" target="_top">#1496. APM automated install fails if files have spaces in their names</a>, <a href="http://openacs.org/bugtracker/openacs/bug?bug%5fnumber=1494" target="_top">#1494. automated upgrade crashes (halting the upgrade process)</a></p></li><li><p>Complete Change list since 5.0.0 in Changelog</p></li><li><p>File tagging scheme in CVS changed to follow <a href="http://openacs.org/forums/message-view?message_id=161375" target="_top">TIP #46: (Approved) Rules for Version Numbering and CVS tagging of Packages</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-1"></a>Version 5.0.1</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>All work on the translation server from 7 Nov 2003 to 7 Feb 2004 is now included in catalogs.</p></li><li><p>One new function in acs-tcl, util::age_pretty</p></li><li><p>Complete Change list since 5.0.0 in Changelog</p></li><li><p>Many documentation updates and doc bug fixes </p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="release-notes-5-0-0"></a>Version 5.0.0</h3></div></div><div></div></div><p> This is OpenACS 5.0.0. This version contains no known security, data loss, or crashing bugs, nor any bugs judged release blockers. This version has received manual testing. It has passed current automated testing, which is not comprehensive. This release contains work done on the translation server http://translate.openacs.org through 7 Nov 2003. </p><p> Please report bugs using our @@ -95,4 +95,4 @@ </p></li><li><p> Serving backup files and files from the CVS directories is turned off by default via the acs-kernel parameter ExcludedFiles in section request-processor (The variable provides a string match glob list of files and is defaulted to "*/CVS/* *~") - </p></li></ul></div><div class="cvstag">($Id$)</div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2506804"></a>Version 4.6.3</h3></div></div><div></div></div><p><a href="release-notes-4-6-3.html" target="_top">Release Notes for 4.6.3</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2506817"></a>Version 4.6.2</h3></div></div><div></div></div><p><a href="release-notes-4-6-2.html" target="_top">Release Notes for 4.6.2</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2506830"></a>Version 4.6</h3></div></div><div></div></div><p><a href="release-notes-4-6.html" target="_top">Release Notes for 4.6</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2506842"></a>Version 4.5</h3></div></div><div></div></div><p><a href="release-notes-4-5.html" target="_top">Release Notes for 4.5</a></p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="openacs-overview.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="acs-admin.html">Next</a></td></tr><tr><td width="40%" align="left">Overview </td><td width="20%" align="center"><a accesskey="u" href="general-documents.html">Up</a></td><td width="40%" align="right"> Part�II.�Administrator's Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/release-notes.html#comments">View comments on this page at openacs.org</a></center></body></html> + </p></li></ul></div><div class="cvstag">($Id$)</div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2446136"></a>Version 4.6.3</h3></div></div><div></div></div><p><a href="release-notes-4-6-3.html" target="_top">Release Notes for 4.6.3</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2446152"></a>Version 4.6.2</h3></div></div><div></div></div><p><a href="release-notes-4-6-2.html" target="_top">Release Notes for 4.6.2</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2446167"></a>Version 4.6</h3></div></div><div></div></div><p><a href="release-notes-4-6.html" target="_top">Release Notes for 4.6</a></p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2446182"></a>Version 4.5</h3></div></div><div></div></div><p><a href="release-notes-4-5.html" target="_top">Release Notes for 4.5</a></p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="openacs-overview.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="acs-admin.html">Next</a></td></tr><tr><td width="40%" align="left">Overview </td><td width="20%" align="center"><a accesskey="u" href="general-documents.html">Up</a></td><td width="40%" align="right"> Part�II.�Administrator's Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/release-notes.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/releasing-openacs-core.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/releasing-openacs-core.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/releasing-openacs-core.html 5 May 2004 12:36:06 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/releasing-openacs-core.html 11 Jun 2004 10:17:38 -0000 1.7 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Core and .LRN</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="next" href="update-repository.html" title="How to Update the OpenACS.org repository"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="releasing-openacs.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="update-repository.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="releasing-openacs-core"></a>OpenACS Core and .LRN</h2></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p><b>Update Translations.�</b><a href="update-translations.html" title="How to Update the translations">the section called “How to Update the translations”</a></p></li><li><p><b>Update Version Numbers.�</b>The version numbers in the documentation and in the packages must be updated. This should only happen after a release candidate is approved.</p><i><span class="remark">.LRN: this must be repeated for .LRN modules (dotlrn-core in the dotlrn cvs tree) and for any modified modules in the .LRN prerequisites (dotlrn-prereq in openacs cvs tree). My current working model is that I bulk-update .LRN and OpenACS core but that I don't touch dotlrn-prereq modules - I just use the most recent release and it's up to individual package developers to tag and <a href="releasing-package.html" title="How to package and release an OpenACS Package">release those packages</a> when they change. This model is already broken because following it means that dotlrn-prereqs don't get new translations.</span></i><div class="orderedlist"><ol type="a"><li><p>Update /var/lib/aolserver/service0/packages/acs-core-docs/www/xml/variables.ent with the new version number. - </p></li><li><p>Add new section in /var/lib/aolserver/service0/packages/acs-core-docs/www/xml/for-everyone/release-notes.xml -</p></li><li><p>Regenerate all HTML docs</p><pre class="screen">cd /var/lib/aolserver/service0/packages/acs-core-docs/www/xml -make</pre></li><li><p>Update /var/lib/aolserver/service0/readme.txt with the new version number</p></li><li><p>Update version number in all of the core packages. Here's a bash/perl script which works but could be made easier to use. Run it from /var/lib/aolserver/service0/packages:</p><pre class="programlisting">#!/bin/sh +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Core and .LRN</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="next" href="update-repository.html" title="How to Update the OpenACS.org repository"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="releasing-openacs.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="update-repository.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="releasing-openacs-core"></a>OpenACS Core and .LRN</h2></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p><b>Update Translations.�</b><a href="update-translations.html" title="How to Update the translations">the section called “How to Update the translations”</a></p></li><li><p><b>Update Version Numbers.�</b>The version numbers in the documentation and in the packages must be updated. This should only happen after a release candidate is approved.</p><i><span class="remark">.LRN: this must be repeated for .LRN modules (dotlrn-core in the dotlrn cvs tree) and for any modified modules in the .LRN prerequisites (dotlrn-prereq in openacs cvs tree). My current working model is that I bulk-update .LRN and OpenACS core but that I don't touch dotlrn-prereq modules - I just use the most recent release and it's up to individual package developers to tag and <a href="releasing-package.html" title="How to package and release an OpenACS Package">release those packages</a> when they change. This model is already broken because following it means that dotlrn-prereqs don't get new translations.</span></i><div class="orderedlist"><ol type="a"><li><p>Update /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/acs-core-docs/www/xml/variables.ent with the new version number. + </p></li><li><p>Add new section in /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/acs-core-docs/www/xml/for-everyone/release-notes.xml +</p></li><li><p>Regenerate all HTML docs</p><pre class="screen">cd /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/acs-core-docs/www/xml +make</pre></li><li><p>Update /var/lib/aolserver/$OPENACS_SERVICE_NAME/readme.txt with the new version number</p></li><li><p>Update version number in all of the core packages. Here's a bash/perl script which works but could be made easier to use. Run it from /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages:</p><pre class="programlisting">#!/bin/sh # run this file from ../packages to renumber all .info version numbers #--------------------------------------------------------------------- @@ -20,7 +20,7 @@ perl -p -i -e 's/name="5\.0\.0"/name="5\.1\.0d1"/' $dir perl -p -i -e 's/-5\.0\.0.apm"/-5\.1\.0d1.apm"/' $dir perl -p -i -e 's/(provides.*version)="5\.0\.0"/\1="5\.1\.0d1"/' $dir -done</pre></li><li><p>Commit changes to CVS</p></li></ol></div></li><li><p><b>Rubuild the Changelog.�</b>Rebuild the Changelog. I use a tool called cvs2cl. Run this command from the package root to automatically generate a Changelog file in the same dir:</p><pre class="screen">cd /var/lib/aolserver/service0 +done</pre></li><li><p>Commit changes to CVS</p></li></ol></div></li><li><p><b>Rubuild the Changelog.�</b>Rebuild the Changelog. I use a tool called cvs2cl. Run this command from the package root to automatically generate a Changelog file in the same dir:</p><pre class="screen">cd /var/lib/aolserver/$OPENACS_SERVICE_NAME perl /var/tmp/cvs2cl/cvs2cl.pl -F oacs-5-0 --delta openacs-5-0-0-final:oacs-5-0</pre><p> Commit changes </p></li><li><p><b>Tag the files in CVS.�</b>The steps to this point should have ensured that the head of the current branch contains the full set of code to release. Now we need to tag it as the code to be released.</p><div class="orderedlist"><ol type="a"><li><p>Check out OpenACS Core. The files must be checked Index: openacs-4/packages/acs-core-docs/www/releasing-openacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/releasing-openacs.html,v diff -u -r1.17 -r1.18 --- openacs-4/packages/acs-core-docs/www/releasing-openacs.html 5 May 2004 12:36:06 -0000 1.17 +++ openacs-4/packages/acs-core-docs/www/releasing-openacs.html 11 Jun 2004 10:17:38 -0000 1.18 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�16.�Releasing OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="previous" href="ext-auth-requirements.html" title="External Authentication Requirements"><link rel="next" href="releasing-openacs-core.html" title="OpenACS Core and .LRN"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="ext-auth-requirements.html">Prev</a> </td><th width="60%" align="center">Part�IV.�For OpenACS Platform Developers</th><td width="20%" align="right"> <a accesskey="n" href="releasing-openacs-core.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="releasing-openacs"></a>Chapter�16.�Releasing OpenACS</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ext-auth-requirements.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="releasing-openacs-core.html">Next</a></td></tr><tr><td width="40%" align="left">External Authentication Requirements </td><td width="20%" align="center"><a accesskey="u" href="acs-plat-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Core and .LRN</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/releasing-openacs.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�16.�Releasing OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-plat-dev.html" title="Part�IV.�For OpenACS Platform Developers"><link rel="previous" href="ext-auth-requirements.html" title="External Authentication Requirements"><link rel="next" href="releasing-openacs-core.html" title="OpenACS Core and .LRN"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="ext-auth-requirements.html">Prev</a> </td><th width="60%" align="center">Part�IV.�For OpenACS Platform Developers</th><td width="20%" align="right"> <a accesskey="n" href="releasing-openacs-core.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="releasing-openacs"></a>Chapter�16.�Releasing OpenACS</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ext-auth-requirements.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="releasing-openacs-core.html">Next</a></td></tr><tr><td width="40%" align="left">External Authentication Requirements </td><td width="20%" align="center"><a accesskey="u" href="acs-plat-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Core and .LRN</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/releasing-openacs.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/releasing-package.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/releasing-package.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/releasing-package.html 5 May 2004 12:36:06 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/releasing-package.html 11 Jun 2004 10:17:38 -0000 1.4 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to package and release an OpenACS Package</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="update-repository.html" title="How to Update the OpenACS.org repository"><link rel="next" href="update-translations.html" title="How to Update the translations"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="update-repository.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="update-translations.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="releasing-package"></a>How to package and release an OpenACS Package</h2></div></div><div></div></div><p>In this example, we are packaging and releasing <tt class="computeroutput">myfirstpackage</tt> as version 1.0.0, which is compatible with OpenACS 5.0.x.</p><div class="orderedlist"><ol type="1"><li><p>Update the version number of your package in the <a href="/acs-admin/apm/" target="_top">APM</a>.</p></li><li><p>Make sure all changes are committed.</p></li><li><p>Tag the updated work.:</p><pre class="screen"><span class="action"><span class="action">cd /var/lib/aolserver/service0/packages/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to package and release an OpenACS Package</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="update-repository.html" title="How to Update the OpenACS.org repository"><link rel="next" href="update-translations.html" title="How to Update the translations"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="update-repository.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="update-translations.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="releasing-package"></a>How to package and release an OpenACS Package</h2></div></div><div></div></div><p>In this example, we are packaging and releasing <tt class="computeroutput">myfirstpackage</tt> as version 1.0.0, which is compatible with OpenACS 5.0.x.</p><div class="orderedlist"><ol type="1"><li><p>Update the version number of your package in the <a href="/acs-admin/apm/" target="_top">APM</a>.</p></li><li><p>Make sure all changes are committed.</p></li><li><p>Tag the updated work.:</p><pre class="screen"><span class="action"><span class="action">cd /var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span> cvs tag <span class="replaceable"><span class="replaceable">myfirstpackages-1-0-0-final</span></span> cvs tag -F <span class="replaceable"><span class="replaceable">openacs-5-0-compat</span></span> </span></span></pre></li></ol></div><p>Done. The package will be added to the <a href="http://openacs.org/repository" target="_top">repository</a> automatically. If the correct version does not show up within 24 hours, ask for help on the OpenACS.org development forum.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="update-repository.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="update-translations.html">Next</a></td></tr><tr><td width="40%" align="left">How to Update the OpenACS.org repository </td><td width="20%" align="center"><a accesskey="u" href="releasing-openacs.html">Up</a></td><td width="40%" align="right"> How to Update the translations</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/releasing-package.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/remote-postgres.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/remote-postgres.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/remote-postgres.html 5 May 2004 12:36:06 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/remote-postgres.html 11 Jun 2004 10:17:38 -0000 1.3 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Running a PostgreSQL database on another server</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="database-management.html" title="Chapter�7.�Database Management"><link rel="previous" href="database-management.html" title="Chapter�7.�Database Management"><link rel="next" href="install-openacs-delete-tablespace.html" title="Deleting a tablespace"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="database-management.html">Prev</a> </td><th width="60%" align="center">Chapter�7.�Database Management</th><td width="20%" align="right"> <a accesskey="n" href="install-openacs-delete-tablespace.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="remote-postgres"></a>Running a PostgreSQL database on another server</h2></div></div><div></div></div><p>To run a database on a different machine than the +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Running a PostgreSQL database on another server</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="database-management.html" title="Chapter�7.�Database Management"><link rel="previous" href="database-management.html" title="Chapter�7.�Database Management"><link rel="next" href="install-openacs-delete-tablespace.html" title="Deleting a tablespace"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="database-management.html">Prev</a> </td><th width="60%" align="center">Chapter�7.�Database Management</th><td width="20%" align="right"> <a accesskey="n" href="install-openacs-delete-tablespace.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="remote-postgres"></a>Running a PostgreSQL database on another server</h2></div></div><div></div></div><p>To run a database on a different machine than the webserver requires changes to the database configuration file and access control file, and to the OpenACS service's configuration file.</p><div class="itemizedlist"><ul type="disc"><li><p>Edit the database configuration file, which in a @@ -7,5 +7,5 @@ permit specific remote clients to access. Access can be controlled ... (add notes from forum post) </p></li><li><p>Change the OpenACS service's configuration file to point to the remote database. Edit - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/config.tcl</tt> + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/config.tcl</tt> and change</p><pre class="programlisting"></pre><p>to </p><pre class="programlisting"></pre></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="database-management.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-openacs-delete-tablespace.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�7.�Database Management </td><td width="20%" align="center"><a accesskey="u" href="database-management.html">Up</a></td><td width="40%" align="right"> Deleting a tablespace</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/remote-postgres.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/request-processor.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/request-processor.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/request-processor.html 5 May 2004 12:36:06 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/request-processor.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>The Request Processor</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="objects.html" title="OpenACS Data Models and the Object System"><link rel="next" href="db-api.html" title="The OpenACS Database Access API"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="objects.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="db-api.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="request-processor"></a>The Request Processor</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>The Request Processor</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="objects.html" title="OpenACS Data Models and the Object System"><link rel="next" href="db-api.html" title="The OpenACS Database Access API"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="objects.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="db-api.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="request-processor"></a>The Request Processor</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="rp-overview"></a>Overview</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/requirements-template.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/requirements-template.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/requirements-template.html 5 May 2004 12:36:07 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/requirements-template.html 11 Jun 2004 10:17:38 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>System/Application Requirements Template</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="filename.html" title="Detailed Design Documentation Template"><link rel="next" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="filename.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="i18n.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="requirements-template"></a>System/Application Requirements Template</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:youremail@example.com" target="_top">You</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>System/Application Requirements Template</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="doc-standards.html" title="Chapter�13.�Documentation Standards"><link rel="previous" href="filename.html" title="Detailed Design Documentation Template"><link rel="next" href="i18n.html" title="Chapter�14.�Internationalization"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="filename.html">Prev</a> </td><th width="60%" align="center">Chapter�13.�Documentation Standards</th><td width="20%" align="right"> <a accesskey="n" href="i18n.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="requirements-template"></a>System/Application Requirements Template</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:youremail@example.com" target="_top">You</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="yourpackage-requirements-introduction"></a>Introduction</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/rp-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/rp-design.html,v diff -u -r1.25 -r1.26 --- openacs-4/packages/acs-core-docs/www/rp-design.html 5 May 2004 12:36:07 -0000 1.25 +++ openacs-4/packages/acs-core-docs/www/rp-design.html 11 Jun 2004 10:17:38 -0000 1.26 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Request Processor Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="rp-requirements.html" title="Request Processor Requirements"><link rel="next" href="tcl-doc.html" title="Documenting Tcl Files: Page Contracts and Libraries"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="rp-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="tcl-doc.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="rp-design"></a>Request Processor Design</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Request Processor Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="rp-requirements.html" title="Request Processor Requirements"><link rel="next" href="tcl-doc.html" title="Documenting Tcl Files: Page Contracts and Libraries"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="rp-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="tcl-doc.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="rp-design"></a>Request Processor Design</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="rp-design-essentials"></a>Essentials</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a href="rp-requirements.html">OpenACS 4 Request Processor Requirements</a></p></li><li><p><a href="/api-doc/procs-file-view?path=packages/acs-tcl/tcl/request-processor-procs.tcl" target="_top"> Index: openacs-4/packages/acs-core-docs/www/rp-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/rp-requirements.html,v diff -u -r1.21 -r1.22 --- openacs-4/packages/acs-core-docs/www/rp-requirements.html 5 May 2004 12:36:07 -0000 1.21 +++ openacs-4/packages/acs-core-docs/www/rp-requirements.html 11 Jun 2004 10:17:38 -0000 1.22 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Request Processor Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="security-notes.html" title="Security Notes"><link rel="next" href="rp-design.html" title="Request Processor Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="security-notes.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="rp-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="rp-requirements"></a>Request Processor Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Request Processor Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="security-notes.html" title="Security Notes"><link rel="next" href="rp-design.html" title="Request Processor Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="security-notes.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="rp-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="rp-requirements"></a>Request Processor Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="rp-requirements-intro"></a>Introduction</h3></div></div><div></div></div><p>The following is a requirements document for the OpenACS 4.0 request Index: openacs-4/packages/acs-core-docs/www/security-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/security-design.html,v diff -u -r1.23 -r1.24 --- openacs-4/packages/acs-core-docs/www/security-design.html 5 May 2004 12:36:07 -0000 1.23 +++ openacs-4/packages/acs-core-docs/www/security-design.html 11 Jun 2004 10:17:39 -0000 1.24 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="security-requirements.html" title="Security Requirements"><link rel="next" href="security-notes.html" title="Security Notes"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="security-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="security-notes.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="security-design"></a>Security Design</h2></div></div><div></div></div><div class="authorblurb"><p>By Richard Li and Archit Shah</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Design</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="security-requirements.html" title="Security Requirements"><link rel="next" href="security-notes.html" title="Security Notes"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="security-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="security-notes.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="security-design"></a>Security Design</h2></div></div><div></div></div><div class="authorblurb"><p>By Richard Li and Archit Shah</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="security-design-essentials"></a>Essentials</h3></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><a href="security-requirements.html">OpenACS 4 Security Requirements</a></p></li></ul></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="security-design-intro"></a>Introduction</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/security-notes.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/security-notes.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/security-notes.html 5 May 2004 12:36:07 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/security-notes.html 11 Jun 2004 10:17:39 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="security-design.html" title="Security Design"><link rel="next" href="rp-requirements.html" title="Request Processor Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="security-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="rp-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="security-notes"></a>Security Notes</h2></div></div><div></div></div><div class="authorblurb"><p>By Richard Li</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Notes</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="security-design.html" title="Security Design"><link rel="next" href="rp-requirements.html" title="Request Processor Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="security-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="rp-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="security-notes"></a>Security Notes</h2></div></div><div></div></div><div class="authorblurb"><p>By Richard Li</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p> Index: openacs-4/packages/acs-core-docs/www/security-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/security-requirements.html,v diff -u -r1.23 -r1.24 --- openacs-4/packages/acs-core-docs/www/security-requirements.html 5 May 2004 12:36:07 -0000 1.23 +++ openacs-4/packages/acs-core-docs/www/security-requirements.html 11 Jun 2004 10:17:39 -0000 1.24 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="i18n-requirements.html" title="OpenACS Internationalization Requirements"><link rel="next" href="security-design.html" title="Security Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="security-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="security-requirements"></a>Security Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By Richard Li</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Security Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="i18n-requirements.html" title="OpenACS Internationalization Requirements"><link rel="next" href="security-design.html" title="Security Design"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="security-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="security-requirements"></a>Security Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By Richard Li</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="security-requirements-intro"></a>Introduction</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/snapshot-backup.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/snapshot-backup.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/snapshot-backup.html 5 May 2004 12:36:07 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/snapshot-backup.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Manual backup and recovery</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="install-next-backups.html" title="Backup Strategy"><link rel="next" href="automated-backup.html" title="Automated Backup"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-backups.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="automated-backup.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="snapshot-backup"></a>Manual backup and recovery</h2></div></div><div></div></div><p>This section describes how to make a one-time backup and +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Manual backup and recovery</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter�8.�Backup and Recovery"><link rel="previous" href="install-next-backups.html" title="Backup Strategy"><link rel="next" href="automated-backup.html" title="Automated Backup"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-backups.html">Prev</a> </td><th width="60%" align="center">Chapter�8.�Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="automated-backup.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="snapshot-backup"></a>Manual backup and recovery</h2></div></div><div></div></div><p>This section describes how to make a one-time backup and restore of the files and database. This is useful for rolling back to known-good versions of a service, such as at initial installation and just before an upgrade. First, you back up the @@ -63,15 +63,15 @@ . exporting dimensions . exporting post-schema procedural objects and actions . exporting statistics -Export terminated successfully without warnings.</pre></li></ul></div></li><li><p><a name="postgres-snapshot-backup"></a><b>PostgreSQL.�</b>Create a backup file and verify that it was created and has a reasonable size (several megabytes).</p><pre class="screen">[root root]# <b class="userinput"><tt>su - service0</tt></b> -[service0 service0]$ <b class="userinput"><tt>pg_dump -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup/before_upgrade_to_4.6.dmp <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>ls -al /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup/before_upgrade_to_4.6.dmp </tt></b> --rw-rw-r-x 1 service0 service0 4005995 Feb 21 18:28 /var/lib/aolserver/service0/database-backup/before_upgrade_to_4.6.dmp -[service0 service0]$ <b class="userinput"><tt>exit</tt></b> +Export terminated successfully without warnings.</pre></li></ul></div></li><li><p><a name="postgres-snapshot-backup"></a><b>PostgreSQL.�</b>Create a backup file and verify that it was created and has a reasonable size (several megabytes).</p><pre class="screen">[root root]# <b class="userinput"><tt>su - $OPENACS_SERVICE_NAME</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>pg_dump -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup/before_upgrade_to_4.6.dmp <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>ls -al /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup/before_upgrade_to_4.6.dmp </tt></b> +-rw-rw-r-x 1 $OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME 4005995 Feb 21 18:28 /var/lib/aolserver/$OPENACS_SERVICE_NAME/database-backup/before_upgrade_to_4.6.dmp +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> [root root]# -<span class="action"><span class="action">su - service0 -pg_dump -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup/before_upgrade_to_4.6.dmp <span class="replaceable"><span class="replaceable">openacs-dev</span></span> -ls -al /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup/before_upgrade_to_4.6.dmp +<span class="action"><span class="action">su - $OPENACS_SERVICE_NAME +pg_dump -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup/before_upgrade_to_4.6.dmp <span class="replaceable"><span class="replaceable">openacs-dev</span></span> +ls -al /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup/before_upgrade_to_4.6.dmp exit</span></span></pre></li></ul></div></li><li><a name="backup-file-system"></a><p><b>Back up the file system.�</b>Back up all of the files in the service, including the database backup file but excluding the auto-generated <tt class="filename">supervise</tt> directory, which is @@ -82,51 +82,51 @@ break anything by omitting them.</p></li><li><p>The <tt class="computeroutput">--file</tt> clause specifies the name of the output file to be generated; we manually add the correct extensions.</p></li><li><p>The last clause, - <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/</tt>, + <tt class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/</tt>, specifies the starting point for backup. Tar defaults to - recursive backup.</p></li></ul></div><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>tar -cpsz --exclude /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools/supervise \ - --file /tmp/<span class="replaceable"><span class="replaceable">service0</span></span>-backup.tar.gz /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/</tt></b> + recursive backup.</p></li></ul></div><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>tar -cpsz --exclude /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools/supervise \ + --file /tmp/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-backup.tar.gz /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/</tt></b> tar: Removing leading `/' from member names -[service0 service0]$</pre></li><li><p><b>Suffer a catastrophic failure on your production system.�</b>(We'll simulate this step)</p><pre class="screen">[root root]# <b class="userinput"><tt>svc -d /service/service0</tt></b> -[root root]# <b class="userinput"><tt>mv /var/lib/aolserver/service0/ /var/lib/aolserver/service0.lost</tt></b> -[root root]#<b class="userinput"><tt> rm /service/service0</tt></b> -rm: remove symbolic link `/service/service0'? y -[root root]# <b class="userinput"><tt>ps -auxw | grep service0</tt></b> -root 1496 0.0 0.0 1312 252 ? S 16:58 0:00 supervise service0 +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$</pre></li><li><p><b>Suffer a catastrophic failure on your production system.�</b>(We'll simulate this step)</p><pre class="screen">[root root]# <b class="userinput"><tt>svc -d /service/$OPENACS_SERVICE_NAME</tt></b> +[root root]# <b class="userinput"><tt>mv /var/lib/aolserver/$OPENACS_SERVICE_NAME/ /var/lib/aolserver/$OPENACS_SERVICE_NAME.lost</tt></b> +[root root]#<b class="userinput"><tt> rm /service/$OPENACS_SERVICE_NAME</tt></b> +rm: remove symbolic link `/service/$OPENACS_SERVICE_NAME'? y +[root root]# <b class="userinput"><tt>ps -auxw | grep $OPENACS_SERVICE_NAME</tt></b> +root 1496 0.0 0.0 1312 252 ? S 16:58 0:00 supervise $OPENACS_SERVICE_NAME [root root]#<b class="userinput"><tt> kill<span class="replaceable"><span class="replaceable"> 1496</span></span></tt></b> -[root root]# <b class="userinput"><tt>ps -auxw | grep service0</tt></b> +[root root]# <b class="userinput"><tt>ps -auxw | grep $OPENACS_SERVICE_NAME</tt></b> [root root]# <b class="userinput"><tt>su - postgres</tt></b> -[postgres pgsql]$ <b class="userinput"><tt>dropdb service0</tt></b> +[postgres pgsql]$ <b class="userinput"><tt>dropdb $OPENACS_SERVICE_NAME</tt></b> DROP DATABASE -[postgres pgsql]$ <b class="userinput"><tt>dropuser service0</tt></b> +[postgres pgsql]$ <b class="userinput"><tt>dropuser $OPENACS_SERVICE_NAME</tt></b> DROP USER [postgres pgsql]$ <b class="userinput"><tt>exit</tt></b> logout [root root]#</pre></li><li><p><a name="recovery"></a><b>Recovery.�</b></p><div class="orderedlist"><ol type="a"><li><p>Restore the operating system and required software. You can do this with standard backup processes or by keeping copies of the install material (OS CDs, OpenACS tarball and supporting software) and repeating the install - guide. Recreate the service user (<span class="replaceable"><span class="replaceable">service0</span></span>).</p></li><li><p>Restore the OpenACS files and database backup file.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> -[service0 aolserver]$<b class="userinput"><tt> tar xzf /tmp/service0-backup.tar.gz</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>chmod -R 775 <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>chown -R <span class="replaceable"><span class="replaceable">service0.web</span></span> <span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li><li><p>Restore the database</p><div class="itemizedlist"><ul type="disc"><li><p><b>Oracle.�</b></p><div class="orderedlist"><ol type="i"><li><p>Set up a clean Oracle database user and - tablespace with the same names as the ones exported from (<a href="openacs.html#install-openacs-prepare-oracle">more information</a>).</p></li><li><p>Invoke the import command</p><pre class="screen"><span class="action"><span class="action">imp <span class="replaceable"><span class="replaceable">service0</span></span>/<span class="replaceable"><span class="replaceable">service0</span></span> FILE=/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup/nighty_backup.dmp FULL=Y</span></span></pre></li></ol></div></li><li><p><a name="restore-postgres"></a><b>Postgres.�</b>If the database user does not already exist, create it.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - postgres</tt></b> -[postgres ~]$ <b class="userinput"><tt>createuser <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> + guide. Recreate the service user (<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>).</p></li><li><p>Restore the OpenACS files and database backup file.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$<b class="userinput"><tt> tar xzf /tmp/$OPENACS_SERVICE_NAME-backup.tar.gz</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>chmod -R 775 <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>chown -R <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME.web</span></span> <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li><li><p>Restore the database</p><div class="itemizedlist"><ul type="disc"><li><p><b>Oracle.�</b></p><div class="orderedlist"><ol type="i"><li><p>Set up a clean Oracle database user and + tablespace with the same names as the ones exported from (<a href="openacs.html#install-openacs-prepare-oracle">more information</a>).</p></li><li><p>Invoke the import command</p><pre class="screen"><span class="action"><span class="action">imp <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> FILE=/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup/nighty_backup.dmp FULL=Y</span></span></pre></li></ol></div></li><li><p><a name="restore-postgres"></a><b>Postgres.�</b>If the database user does not already exist, create it.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - postgres</tt></b> +[postgres ~]$ <b class="userinput"><tt>createuser <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> Shall the new user be allowed to create databases? (y/n) <b class="userinput"><tt>y</tt></b> Shall the new user be allowed to create more new users? (y/n) <b class="userinput"><tt>y</tt></b> CREATE USER [postgres ~]$ <b class="userinput"><tt>exit</tt></b> -</pre><p>Because of a bug in Postgres backup-recovery, database objects are not guaranteed to be created in the right order. In practice, running the OpenACS initialization script is always sufficient to create any out-of-order database objects. Next, restore the database from the dump file. The restoration will show some error messages at the beginning for objects that were pre-created from the OpenACS initialization script, which can be ignored.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 ~]$ <b class="userinput"><tt>createdb <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +</pre><p>Because of a bug in Postgres backup-recovery, database objects are not guaranteed to be created in the right order. In practice, running the OpenACS initialization script is always sufficient to create any out-of-order database objects. Next, restore the database from the dump file. The restoration will show some error messages at the beginning for objects that were pre-created from the OpenACS initialization script, which can be ignored.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>createdb <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> CREATE DATABASE -[service0 ~]$<b class="userinput"><tt> psql -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-kernel/sql/postgresql/postgresql.sql <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +[$OPENACS_SERVICE_NAME ~]$<b class="userinput"><tt> psql -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-kernel/sql/postgresql/postgresql.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> <span class="emphasis"><em>(many lines omitted)</em></span> -[service0 ~]$ <b class="userinput"><tt>psql <span class="replaceable"><span class="replaceable">service0</span></span> < /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup/<span class="replaceable"><span class="replaceable">database-backup.dmp</span></span></tt></b> +[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> < /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup/<span class="replaceable"><span class="replaceable">database-backup.dmp</span></span></tt></b> <span class="emphasis"><em>(many lines omitted)</em></span> -[service0 ~]$ <b class="userinput"><tt>exit</tt></b> +[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>exit</tt></b> [postgres ~]$ <b class="userinput"><tt>exit</tt></b> -logout</pre></li></ul></div></li><li><p>Activate the service</p><pre class="screen">[root root]# <b class="userinput"><tt>ln -s /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/etc/daemontools /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> +logout</pre></li></ul></div></li><li><p>Activate the service</p><pre class="screen">[root root]# <b class="userinput"><tt>ln -s /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/daemontools /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> [root root]# <b class="userinput"><tt>sleep 10</tt></b> -[root root]# <b class="userinput"><tt>svgroup web /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li></ol></div></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-backups.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="automated-backup.html">Next</a></td></tr><tr><td width="40%" align="left">Backup Strategy </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Automated Backup</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/snapshot-backup.html#comments">View comments on this page at openacs.org</a></center></body></html> +[root root]# <b class="userinput"><tt>svgroup web /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li></ol></div></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-backups.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="automated-backup.html">Next</a></td></tr><tr><td width="40%" align="left">Backup Strategy </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Automated Backup</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/snapshot-backup.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/style-guide.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/style-guide.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/style-guide.html 5 May 2004 12:36:07 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/style-guide.html 11 Jun 2004 10:17:39 -0000 1.15 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Style Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="next" href="eng-standards-versioning.html" title="Release Version Numbering"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-versioning.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="style-guide"></a>OpenACS Style Guide</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Style Guide</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="next" href="eng-standards-versioning.html" title="Release Version Numbering"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-versioning.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="style-guide"></a>OpenACS Style Guide</h2></div></div><div></div></div><p> By Jeff Davis </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="style-guide-motivation"></a>Motivation</h3></div></div><div></div></div><p> Why have coding standards for OpenACS? And if the code works why change it to Index: openacs-4/packages/acs-core-docs/www/subsites-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/subsites-design.html,v diff -u -r1.23 -r1.24 --- openacs-4/packages/acs-core-docs/www/subsites-design.html 5 May 2004 12:36:07 -0000 1.23 +++ openacs-4/packages/acs-core-docs/www/subsites-design.html 11 Jun 2004 10:17:39 -0000 1.24 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Subsites Design Document</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="subsites-requirements.html" title="Subsites Requirements"><link rel="next" href="apm-requirements.html" title="Package Manager Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="apm-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="subsites-design"></a>Subsites Design Document</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Subsites Design Document</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="subsites-requirements.html" title="Subsites Requirements"><link rel="next" href="apm-requirements.html" title="Package Manager Requirements"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites-requirements.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="apm-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="subsites-design"></a>Subsites Design Document</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p><span class="emphasis"><em>*Note* This document has not gone through the any of the Index: openacs-4/packages/acs-core-docs/www/subsites-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/subsites-requirements.html,v diff -u -r1.22 -r1.23 --- openacs-4/packages/acs-core-docs/www/subsites-requirements.html 5 May 2004 12:36:07 -0000 1.22 +++ openacs-4/packages/acs-core-docs/www/subsites-requirements.html 11 Jun 2004 10:17:39 -0000 1.23 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Subsites Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="groups-design.html" title="Groups Design"><link rel="next" href="subsites-design.html" title="Subsites Design Document"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="groups-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="subsites-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="subsites-requirements"></a>Subsites Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> and Dennis Gregorovic</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Subsites Requirements</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="groups-design.html" title="Groups Design"><link rel="next" href="subsites-design.html" title="Subsites Design Document"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="groups-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="subsites-design.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="subsites-requirements"></a>Subsites Requirements</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="http://planitia.org" target="_top">Rafael H. Schloming</a> and Dennis Gregorovic</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="subsites-requirements-intro"></a>Introduction</h3></div></div><div></div></div><p>The following is a requirements document for OpenACS 4 Subsites, part of the Index: openacs-4/packages/acs-core-docs/www/subsites.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/subsites.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/subsites.html 5 May 2004 12:36:07 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/subsites.html 11 Jun 2004 10:17:39 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Writing OpenACS Application Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="permissions.html" title="Groups, Context, Permissions"><link rel="next" href="parties.html" title="Parties in OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="parties.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="subsites"></a>Writing OpenACS Application Pages</h2></div></div><div></div></div><div class="authorblurb"><p>By Rafael H. Schloming and Pete Su</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Writing OpenACS Application Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="permissions.html" title="Groups, Context, Permissions"><link rel="next" href="parties.html" title="Parties in OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="permissions.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="parties.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="subsites"></a>Writing OpenACS Application Pages</h2></div></div><div></div></div><div class="authorblurb"><p>By Rafael H. Schloming and Pete Su</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="subsites-overview"></a>Overview</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/tcl-doc.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tcl-doc.html,v diff -u -r1.36 -r1.37 --- openacs-4/packages/acs-core-docs/www/tcl-doc.html 5 May 2004 12:36:07 -0000 1.36 +++ openacs-4/packages/acs-core-docs/www/tcl-doc.html 11 Jun 2004 10:17:39 -0000 1.37 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Documenting Tcl Files: Page Contracts and Libraries</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="rp-design.html" title="Request Processor Design"><link rel="next" href="bootstrap-acs.html" title="Bootstrapping OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="rp-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="bootstrap-acs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tcl-doc"></a>Documenting Tcl Files: Page Contracts and Libraries</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a> on 3 July 2000 </p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Documenting Tcl Files: Page Contracts and Libraries</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter�15.�Kernel Documentation"><link rel="previous" href="rp-design.html" title="Request Processor Design"><link rel="next" href="bootstrap-acs.html" title="Bootstrapping OpenACS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="rp-design.html">Prev</a> </td><th width="60%" align="center">Chapter�15.�Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="bootstrap-acs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tcl-doc"></a>Documenting Tcl Files: Page Contracts and Libraries</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a> on 3 July 2000 </p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="itemizedlist"><ul type="disc"><li><p>Tcl procedures: /packages/acs-kernel/tcl-documentation-procs.tcl</p></li></ul></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tcl-doc-bigpicture"></a>The Big Picture</h3></div></div><div></div></div><p>In versions of the OpenACS prior to 3.4, <a href="/doc/standards" target="_top">the standard Index: openacs-4/packages/acs-core-docs/www/templates.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/templates.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/templates.html 5 May 2004 12:36:07 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/templates.html 11 Jun 2004 10:17:39 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using Templates in OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="db-api.html" title="The OpenACS Database Access API"><link rel="next" href="permissions.html" title="Groups, Context, Permissions"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="db-api.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="permissions.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="templates"></a>Using Templates in OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using Templates in OpenACS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="previous" href="db-api.html" title="The OpenACS Database Access API"><link rel="next" href="permissions.html" title="Groups, Context, Permissions"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="db-api.html">Prev</a> </td><th width="60%" align="center">Chapter�11.�Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="permissions.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="templates"></a>Using Templates in OpenACS</h2></div></div><div></div></div><div class="authorblurb"><p>By Pete Su</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="templates-overview"></a>Overview</h3></div></div><div></div></div><p> Index: openacs-4/packages/acs-core-docs/www/tutorial-admin-pages.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-admin-pages.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/tutorial-admin-pages.html 5 May 2004 12:36:07 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/tutorial-admin-pages.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Admin Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-comments.html" title="Adding Comments"><link rel="next" href="tutorial-categories.html" title="Categories"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-comments.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-categories.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-admin-pages"></a>Admin Pages</h2></div></div><div></div></div><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Admin Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-comments.html" title="Adding Comments"><link rel="next" href="tutorial-categories.html" title="Categories"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-comments.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-categories.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-admin-pages"></a>Admin Pages</h2></div></div><div></div></div><p> There are at least two flavors of admin user interface: </p><div class="itemizedlist"><ul type="disc"><li><p>Admins use same pages as all other users, except that they are offered admin links and buttons where appropriate. @@ -9,24 +9,24 @@ access to data that users aren't interested in or aren't allowed to see you will need dedicated admin pages. The conventional place to put those dedicated admin pages is in the - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/admin</tt> + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/admin</tt> directory. - </p><pre class="screen">[service0 www]$ <b class="userinput"><tt>mkdir admin</tt></b></pre><pre class="screen">[service0 www]$ <b class="userinput"><tt>cd admin</tt></b></pre><p> + </p><pre class="screen">[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>mkdir admin</tt></b></pre><pre class="screen">[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>cd admin</tt></b></pre><p> Even if your application doesn't need any admin pages of its own you will usually need at least one simple page with a bunch of links to existing administration UI such as Category Management or standard Parameters UI. Adding the link to Category Management is described in the section on categories. The listing below adds a link to the Parameters UI of our package. - </p><pre class="screen">[service0 admin]$ <b class="userinput"><tt>vi index.adp</tt></b></pre><pre class="programlisting"> + </p><pre class="screen">[$OPENACS_SERVICE_NAME admin]$ <b class="userinput"><tt>vi index.adp</tt></b></pre><pre class="programlisting"> <master> <property name="title">@title;noquote@</property> <property name="context">@context;noquote@</property> <ul class="action-links"> <li><a href="@parameters_url@" title="Set parameters" class="action_link">Set parameters</a></li> </ul> -</pre><pre class="screen">[service0 admin]$ <b class="userinput"><tt>vi index.tcl</tt></b></pre><pre class="programlisting"> +</pre><pre class="screen">[$OPENACS_SERVICE_NAME admin]$ <b class="userinput"><tt>vi index.tcl</tt></b></pre><pre class="programlisting"> ad_page_contract {} { } -properties { context_bar @@ -58,7 +58,7 @@ </p><p> In order to display the link to the admin page only to users that have admin privileges add the following code near the top of -<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/admin/index.tcl</tt>: +<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/admin/index.tcl</tt>: </p><pre class="programlisting"> set package_id [ad_conn package_id] @@ -72,7 +72,7 @@ } </pre><p> In -<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/admin/index.adp</tt> put: +<tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/admin/index.adp</tt> put: </p><pre class="programlisting"> <if @admin_p@ ne nil> <a href="@admin_url@">@admin_title@</a> Index: openacs-4/packages/acs-core-docs/www/tutorial-advanced.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-advanced.html,v diff -u -r1.21 -r1.22 --- openacs-4/packages/acs-core-docs/www/tutorial-advanced.html 5 May 2004 12:36:07 -0000 1.21 +++ openacs-4/packages/acs-core-docs/www/tutorial-advanced.html 11 Jun 2004 10:17:39 -0000 1.22 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�10.�Advanced Topics</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="tutorial-debug.html" title="Debugging and Automated Testing"><link rel="next" href="tutorial-specs.html" title="Write the Requirements and Design Specs"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-debug.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-specs.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tutorial-advanced"></a>Chapter�10.�Advanced Topics</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="tutorial-specs.html">Write the Requirements and Design Specs</a></span></dt><dt><span class="sect1"><a href="tutorial-cvs.html">Add the new package to CVS</a></span></dt><dt><span class="sect1"><a href="tutorial-comments.html">Adding Comments</a></span></dt><dt><span class="sect1"><a href="tutorial-admin-pages.html">Admin Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-categories.html">Categories</a></span></dt><dt><span class="sect1"><a href="ch10s06.html">Categories</a></span></dt><dt><span class="sect1"><a href="profile-code.html">Profile your code</a></span></dt><dt><span class="sect1"><a href="tutorial-distribute.html">Prepare the package for distribution.</a></span></dt><dt><span class="sect1"><a href="tutorial-notifications.html">Notifications</a></span></dt><dt><span class="sect1"><a href="ch10s10.html">Hierarchical data</a></span></dt><dt><span class="sect1"><a href="tutorial-vuh.html">Using .vuh files for pretty urls</a></span></dt><dt><span class="sect1"><a href="tutorial-future-topics.html">Future Topics</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�10.�Advanced Topics</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="tutorial-debug.html" title="Debugging and Automated Testing"><link rel="next" href="tutorial-specs.html" title="Write the Requirements and Design Specs"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-debug.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-specs.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tutorial-advanced"></a>Chapter�10.�Advanced Topics</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="tutorial-specs.html">Write the Requirements and Design Specs</a></span></dt><dt><span class="sect1"><a href="tutorial-cvs.html">Add the new package to CVS</a></span></dt><dt><span class="sect1"><a href="tutorial-comments.html">Adding Comments</a></span></dt><dt><span class="sect1"><a href="tutorial-admin-pages.html">Admin Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-categories.html">Categories</a></span></dt><dt><span class="sect1"><a href="profile-code.html">Profile your code</a></span></dt><dt><span class="sect1"><a href="tutorial-distribute.html">Prepare the package for distribution.</a></span></dt><dt><span class="sect1"><a href="tutorial-notifications.html">Notifications</a></span></dt><dt><span class="sect1"><a href="tutorial-hierarchical.html">Hierarchical data</a></span></dt><dt><span class="sect1"><a href="tutorial-vuh.html">Using .vuh files for pretty urls</a></span></dt><dt><span class="sect1"><a href="tutorial-future-topics.html">Future Topics</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>This tutorial covers topics which are not essential to Index: openacs-4/packages/acs-core-docs/www/tutorial-categories.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-categories.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/tutorial-categories.html 5 May 2004 12:36:07 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/tutorial-categories.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Categories</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-admin-pages.html" title="Admin Pages"><link rel="next" href="ch10s06.html" title="Categories"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-admin-pages.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="ch10s06.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-categories"></a>Categories</h2></div></div><div></div></div><p>You can associate any ACS Object with one or more categories. +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Categories</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-admin-pages.html" title="Admin Pages"><link rel="next" href="profile-code.html" title="Profile your code"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-admin-pages.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="profile-code.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-categories"></a>Categories</h2></div></div><div></div></div><p>You can associate any ACS Object with one or more categories. In this tutorial we'll show how to equip your application with user interface to take advantage of the Categories service. </p><p> @@ -25,15 +25,15 @@ </p><p> The way to achieve this is is to provide a link to the Category Management pages. Add the following snippet to your - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/admin/index.tcl</tt> + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/admin/index.tcl</tt> file: </p><pre class="programlisting"> set category_map_url [export_vars -base \ "[site_node::get_package_url -package_key categories]cadmin/one-object" \ { { object_id $package_id } }] </pre><p> and the following snippet to your - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/admin/index.adp</tt> + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/admin/index.adp</tt> file: </p><pre class="programlisting"> <li><a href="@category_map_url@" @@ -114,7 +114,7 @@ <tt class="computeroutput">note_id</tt> and <tt class="computeroutput">confirm_p</tt>. If confirm_p is present, we delete the record, set redirection back to the index, and abort -script execution.</p><p>The database commands:</p><pre class="screen">[service0@yourserver www]$ <b class="userinput"><tt>emacs note-delete.xql</tt></b></pre><pre class="programlisting"><?xml version="1.0"?> +script execution.</p><p>The database commands:</p><pre class="screen">[$OPENACS_SERVICE_NAME@yourserver www]$ <b class="userinput"><tt>emacs note-delete.xql</tt></b></pre><pre class="programlisting"><?xml version="1.0"?> <queryset> <fullquery name="do_delete"> <querytext> @@ -126,7 +126,7 @@ select samplenote__name(:note_id) </querytext> </fullquery> -</queryset></pre><p>And the adp page:</p><pre class="screen">[service0@yourserver www]$ <b class="userinput"><tt>emacs note-delete.adp</tt></b></pre><pre class="programlisting"><master> +</queryset></pre><p>And the adp page:</p><pre class="screen">[$OPENACS_SERVICE_NAME@yourserver www]$ <b class="userinput"><tt>emacs note-delete.adp</tt></b></pre><pre class="programlisting"><master> <property name="title">@title@</property> <property name="context">{@title@}</property> <h2>@title@</h2> @@ -135,4 +135,4 @@ <tt class="computeroutput">formtemplate</tt> tag outputs the HTML form generated by the ad_form command with the matching name. Test it by adding the new files in the APM and then deleting a few - samplenotes.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-admin-pages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="ch10s06.html">Next</a></td></tr><tr><td width="40%" align="left">Admin Pages </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Categories</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-categories.html#comments">View comments on this page at openacs.org</a></center></body></html> + samplenotes.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-admin-pages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="profile-code.html">Next</a></td></tr><tr><td width="40%" align="left">Admin Pages </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Profile your code</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-categories.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-comments.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-comments.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/tutorial-comments.html 5 May 2004 12:36:07 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/tutorial-comments.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Adding Comments</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-cvs.html" title="Add the new package to CVS"><link rel="next" href="tutorial-admin-pages.html" title="Admin Pages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-cvs.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-admin-pages.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-comments"></a>Adding Comments</h2></div></div><div></div></div><p>You can track comments for any ACS Object. Here we'll track +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Adding Comments</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-cvs.html" title="Add the new package to CVS"><link rel="next" href="tutorial-admin-pages.html" title="Admin Pages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-cvs.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-admin-pages.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-comments"></a>Adding Comments</h2></div></div><div></div></div><p>You can track comments for any ACS Object. Here we'll track comments for notes. On the note-edit.tcl/adp pair, which is used to display individual notes, we want to put a link to add comments at the bottom of the screen. If there are any comments, we want to Index: openacs-4/packages/acs-core-docs/www/tutorial-cvs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-cvs.html,v diff -u -r1.11 -r1.12 --- openacs-4/packages/acs-core-docs/www/tutorial-cvs.html 5 May 2004 12:36:07 -0000 1.11 +++ openacs-4/packages/acs-core-docs/www/tutorial-cvs.html 11 Jun 2004 10:17:39 -0000 1.12 @@ -1,21 +1,21 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Add the new package to CVS</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-specs.html" title="Write the Requirements and Design Specs"><link rel="next" href="tutorial-comments.html" title="Adding Comments"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-specs.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-comments.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-cvs"></a>Add the new package to CVS</h2></div></div><div></div></div><p>Before you do any more work, make sure that your work is +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Add the new package to CVS</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-specs.html" title="Write the Requirements and Design Specs"><link rel="next" href="tutorial-comments.html" title="Adding Comments"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-specs.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-comments.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-cvs"></a>Add the new package to CVS</h2></div></div><div></div></div><p>Before you do any more work, make sure that your work is protected by putting it all into cvs. The <tt class="computeroutput">cvs add</tt> command is not recursive, so you'll have to traverse the directory tree manually and add as you go. (<a href="http://www.piskorski.com/docs/cvs-conventions.html" target="_top">More on - CVS</a>)</p><pre class="screen">[service0 xml]$ <b class="userinput"><tt>cd ..</tt></b> -[service0 doc]$ <b class="userinput"><tt>cd ..</tt></b> -[service0 www]$ <b class="userinput"><tt>cd ..</tt></b> -[service0 myfirstpackage]$ <b class="userinput"><tt>cd ..</tt></b> -[service0 packages]$ <b class="userinput"><tt>cvs add myfirstpackage/</tt></b> -Directory /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage added to the repository -[service0 packages]$ <b class="userinput"><tt>cd myfirstpackage/</tt></b> -[service0 myfirstpackage]$ <b class="userinput"><tt>cvs add www</tt></b> -Directory /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www added to the repository -[service0 myfirstpackage]$ <b class="userinput"><tt>cd www</tt></b> -[service0 www]$ <b class="userinput"><tt>cvs add doc</tt></b> -Directory /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/doc added to the repository -[service0 www]$ <b class="userinput"><tt>cd doc</tt></b> -[service0 doc]$ <b class="userinput"><tt>cvs add *</tt></b> + CVS</a>)</p><pre class="screen">[$OPENACS_SERVICE_NAME xml]$ <b class="userinput"><tt>cd ..</tt></b> +[$OPENACS_SERVICE_NAME doc]$ <b class="userinput"><tt>cd ..</tt></b> +[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>cd ..</tt></b> +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>cd ..</tt></b> +[$OPENACS_SERVICE_NAME packages]$ <b class="userinput"><tt>cvs add myfirstpackage/</tt></b> +Directory /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage added to the repository +[$OPENACS_SERVICE_NAME packages]$ <b class="userinput"><tt>cd myfirstpackage/</tt></b> +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>cvs add www</tt></b> +Directory /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www added to the repository +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>cd www</tt></b> +[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>cvs add doc</tt></b> +Directory /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/doc added to the repository +[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>cd doc</tt></b> +[$OPENACS_SERVICE_NAME doc]$ <b class="userinput"><tt>cvs add *</tt></b> cvs add: cannot add special file `CVS'; skipping cvs add: scheduling file `admin-guide.html' for addition cvs add: scheduling file `bi01.html' for addition @@ -38,24 +38,24 @@ cvs add: scheduling file `user-guide.html' for addition cvs add: scheduling file `user-interface.dia' for addition cvs add: scheduling file `user-interface.png' for addition -Directory /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/doc/xml added to the repository +Directory /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/doc/xml added to the repository cvs add: use 'cvs commit' to add these files permanently -[service0 doc]$ <b class="userinput"><tt>cd xml</tt></b> -[service0 xml]$ <b class="userinput"><tt>cvs add Makefile index.xml</tt></b> +[$OPENACS_SERVICE_NAME doc]$ <b class="userinput"><tt>cd xml</tt></b> +[$OPENACS_SERVICE_NAME xml]$ <b class="userinput"><tt>cvs add Makefile index.xml</tt></b> cvs add: scheduling file `Makefile' for addition cvs add: scheduling file `index.xml' for addition cvs add: use 'cvs commit' to add these files permanently -[service0 xml]$<b class="userinput"><tt> cd ../../..</tt></b> -[service0 myfirstpackage]$ <b class="userinput"><tt>cvs commit -m "new package"</tt></b> +[$OPENACS_SERVICE_NAME xml]$<b class="userinput"><tt> cd ../../..</tt></b> +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>cvs commit -m "new package"</tt></b> cvs commit: Examining . cvs commit: Examining www cvs commit: Examining www/doc cvs commit: Examining www/doc/xml -RCS file: /cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/doc/admin-guide.html,v +RCS file: /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/doc/admin-guide.html,v done Checking in www/doc/admin-guide.html; -/cvsroot/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www/doc/admin-guide.html,v <-- admin-guide.html +/cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www/doc/admin-guide.html,v <-- admin-guide.html initial revision: 1.1 done <span class="emphasis"><em>(many lines omitted)</em></span> -[service0 myfirstpackage]$</pre><div class="figure"><a name="id2563018"></a><p class="title"><b>Figure�10.1.�Upgrading a local CVS repository</b></p><div class="mediaobject" align="center"><img src="images/development-with-cvs.png" align="middle" alt="Upgrading a local CVS repository"></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-specs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-comments.html">Next</a></td></tr><tr><td width="40%" align="left">Write the Requirements and Design Specs </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Adding Comments</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-cvs.html#comments">View comments on this page at openacs.org</a></center></body></html> +[$OPENACS_SERVICE_NAME myfirstpackage]$</pre><div class="figure"><a name="id2544665"></a><p class="title"><b>Figure�10.1.�Upgrading a local CVS repository</b></p><div class="mediaobject" align="center"><img src="images/development-with-cvs.png" align="middle" alt="Upgrading a local CVS repository"></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-specs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-comments.html">Next</a></td></tr><tr><td width="40%" align="left">Write the Requirements and Design Specs </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Adding Comments</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-cvs.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-database.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-database.html,v diff -u -r1.28 -r1.29 --- openacs-4/packages/acs-core-docs/www/tutorial-database.html 5 May 2004 12:36:07 -0000 1.28 +++ openacs-4/packages/acs-core-docs/www/tutorial-database.html 11 Jun 2004 10:17:39 -0000 1.29 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Setting Up Database Objects</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial-newpackage.html" title="Creating an Application Package"><link rel="next" href="tutorial-pages.html" title="Creating Web Pages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-newpackage.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-pages.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-database"></a>Setting Up Database Objects</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Setting Up Database Objects</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial-newpackage.html" title="Creating an Application Package"><link rel="next" href="tutorial-pages.html" title="Creating Web Pages"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-newpackage.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-pages.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-database"></a>Setting Up Database Objects</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2485725"></a>Code the data model</h3></div></div><div></div></div><p>We create all database objects with scripts in the + </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2461107"></a>Code the data model</h3></div></div><div></div></div><p>We create all database objects with scripts in the <tt class="computeroutput">myfirstpackage/sql/</tt> directory. All database scripts are database-specific and are thus in either the <tt class="computeroutput">myfirstpackage/sql/oracle</tt> or @@ -31,13 +31,13 @@ repository functions to simplify our database creation. (<a href="objects.html" target="_top">More information about ACS Objects</a>. <a href="/doc/acs-content-repository" target="_top">More information about the Content Repository</a>.) -</p><div class="figure"><a name="id2481062"></a><p class="title"><b>Figure�9.2.�Tutorial Data Model</b></p><div class="mediaobject" align="center"><img src="images/tutorial-data-model.png" align="middle" alt="Tutorial Data Model"></div></div><p>The top of each sql file has some +</p><div class="figure"><a name="id2462754"></a><p class="title"><b>Figure�9.2.�Tutorial Data Model</b></p><div class="mediaobject" align="center"><img src="images/tutorial-data-model.png" align="middle" alt="Tutorial Data Model"></div></div><p>The top of each sql file has some standard comments, including doc tags such as <tt class="computeroutput">@author</tt> which will be picked up by the API browser. The string <tt class="computeroutput">$Id$</tt> will automatically be - expanded when the file is checked in to cvs.</p><pre class="screen">[service0 ~]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/sql/postgresql</tt></b> -[service0 postgresql]$ <b class="userinput"><tt>emacs myfirstpackage-create.sql</tt></b></pre><p>Paste the text below into the file, save, and close.</p><div class="figure"><a name="id2542322"></a><p class="title"><b>Figure�9.3.�The Database Creation Script</b></p><pre class="programlisting">-- creation script + expanded when the file is checked in to cvs.</p><pre class="screen">[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/sql/postgresql</tt></b> +[$OPENACS_SERVICE_NAME postgresql]$ <b class="userinput"><tt>emacs myfirstpackage-create.sql</tt></b></pre><p>Paste the text below into the file, save, and close.</p><div class="figure"><a name="id2566675"></a><p class="title"><b>Figure�9.3.�The Database Creation Script</b></p><pre class="programlisting">-- creation script -- -- @author joel@aufrecht.org -- @cvs-id &Id:$ @@ -61,7 +61,7 @@ object. Notice the use of "mfp." This is derived from "My First Package" and ensures that our object is unlikely to conflict with objects from other packages.</p><p>Create a database file to drop everything if the package is uninstalled.</p><pre class="screen"> -[service0 postgresql]$ <b class="userinput"><tt>emacs myfirstpackage-drop.sql</tt></b></pre><div class="figure"><a name="id2542960"></a><p class="title"><b>Figure�9.4.�Database Deletion Script</b></p><pre class="programlisting">-- drop script +[$OPENACS_SERVICE_NAME postgresql]$ <b class="userinput"><tt>emacs myfirstpackage-drop.sql</tt></b></pre><div class="figure"><a name="id2565601"></a><p class="title"><b>Figure�9.4.�Database Deletion Script</b></p><pre class="programlisting">-- drop script -- -- @author joel@aufrecht.org -- @cvs-id &Id:$ @@ -73,20 +73,19 @@ 't', 't' ); -</pre></div> - (like the creation script the drop script calls a PL/pgSQL function: <tt class="computeroutput"><a href="/api-doc/plsql-subprogram-one?type=FUNCTION&name=content%5ftype%5f%5fdrop%5ftype" target="_top">content_type__drop_type</a></tt><p>Run the create script manually to add your tables and functions.</p><pre class="screen">[service0 postgresql]$ <b class="userinput"><tt>psql -f myfirstpackage-create.sql</tt></b> +</pre></div><p>(like the creation script the drop script calls a PL/pgSQL function: <tt class="computeroutput"><a href="/api-doc/plsql-subprogram-one?type=FUNCTION&name=content%5ftype%5f%5fdrop%5ftype" target="_top">content_type__drop_type</a></tt></p><p>Run the create script manually to add your tables and functions.</p><pre class="screen">[$OPENACS_SERVICE_NAME postgresql]$ <b class="userinput"><tt>psql -f myfirstpackage-create.sql</tt></b> psql:myfirstpackage-create.sql:15: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index 'mfp_notes_pkey' for table 'mfp_notes' psql:myfirstpackage-create.sql:15: NOTICE: CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s) content_type__create_type --------------------------- 0 (1 row) -[service0 postgresql]$</pre><p>If there are errors, use them to debug the sql file and try again. If there are errors in the database table creation, you may need to run the drop script to drop the table so that you can recreate it. The drop script will probably have errors since some of the things it's trying to drop may be missing. They can be ignored.</p><p>Once you get the same output as shown above, test the drop script:</p><pre class="screen">[service0 postgresql]$ <b class="userinput"><tt>psql -f myfirstpackage-drop.sql</tt></b> +[$OPENACS_SERVICE_NAME postgresql]$</pre><p>If there are errors, use them to debug the sql file and try again. If there are errors in the database table creation, you may need to run the drop script to drop the table so that you can recreate it. The drop script will probably have errors since some of the things it's trying to drop may be missing. They can be ignored.</p><p>Once you get the same output as shown above, test the drop script:</p><pre class="screen">[$OPENACS_SERVICE_NAME postgresql]$ <b class="userinput"><tt>psql -f myfirstpackage-drop.sql</tt></b> content_type__drop_type ------------------------- 0 (1 row) -[service0 postgresql]$</pre><p>Once both scripts are working without errors, <span class="emphasis"><em>run the create script one last time</em></span> and proceed.</p><pre class="screen">[service0 postgresql]$ <b class="userinput"><tt>psql -f myfirstpackage-create.sql</tt></b></pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-newpackage.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-pages.html">Next</a></td></tr><tr><td width="40%" align="left">Creating an Application Package </td><td width="20%" align="center"><a accesskey="u" href="tutorial.html">Up</a></td><td width="40%" align="right"> Creating Web Pages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-database.html#comments">View comments on this page at openacs.org</a></center></body></html> +[$OPENACS_SERVICE_NAME postgresql]$</pre><p>Once both scripts are working without errors, <span class="emphasis"><em>run the create script one last time</em></span> and proceed.</p><pre class="screen">[$OPENACS_SERVICE_NAME postgresql]$ <b class="userinput"><tt>psql -f myfirstpackage-create.sql</tt></b></pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-newpackage.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-pages.html">Next</a></td></tr><tr><td width="40%" align="left">Creating an Application Package </td><td width="20%" align="center"><a accesskey="u" href="tutorial.html">Up</a></td><td width="40%" align="right"> Creating Web Pages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-database.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-debug.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-debug.html,v diff -u -r1.28 -r1.29 --- openacs-4/packages/acs-core-docs/www/tutorial-debug.html 5 May 2004 12:36:07 -0000 1.28 +++ openacs-4/packages/acs-core-docs/www/tutorial-debug.html 11 Jun 2004 10:17:39 -0000 1.29 @@ -1,41 +1,41 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Debugging and Automated Testing</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial-pages.html" title="Creating Web Pages"><link rel="next" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-pages.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-advanced.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-debug"></a>Debugging and Automated Testing</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Debugging and Automated Testing</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial-pages.html" title="Creating Web Pages"><link rel="next" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-pages.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-advanced.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-debug"></a>Debugging and Automated Testing</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2493156"></a>Debugging</h3></div></div><div></div></div><p><b>Developer Support.�</b>The Developer Support package adds several goodies: debug + </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2495065"></a>Debugging</h3></div></div><div></div></div><p><b>Developer Support.�</b>The Developer Support package adds several goodies: debug information for every page; the ability to log comments to the page instead of the error log, and fast user switching so that you can test pages as anonymous and as dummy users without logging in and out.</p><p><b>PostgreSQL.�</b>You can work directly with the database to do debugging steps like looking directly at tables and testing stored procedures. Start emacs. Type <b class="userinput"><tt>M-x sql-postgres</tt></b>. Press enter for - server name and use <b class="userinput"><tt><span class="replaceable"><span class="replaceable">service0</span></span></tt></b> for + server name and use <b class="userinput"><tt><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> for database name. You can use C-(up arrow) and C-(down arrow) for command history. </p><p>Hint: "Parse error near *" usually means that an xql file wasn't recognized, because the tcl file is choking on the *SQL* placeholder that it falls back on.</p><p><b>Watching the server log.�</b></p><p>To set up real-time monitoring of the AOLserver error - log, <span class="bold"><b>type</b></span> </p><pre class="screen">less /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/log/openacs-dev-error.log</pre><p> + log, <span class="bold"><b>type</b></span> </p><pre class="screen">less /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/log/openacs-dev-error.log</pre><p> </p><div class="literallayout"><p>F�to�show�new�log�entries�in�real�time�(like�tail�-f)<br> C-c�to�stop�and�F�to�start�it�up�again.�<br> G�goes�to�the�end.<br> ?�searches�backward�<br> /�searches�forward.�<br> ����������</p></div><p> - </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2510095"></a>Manual testing</h3></div></div><div></div></div><p>Make a list of basic tests to make sure it works</p><div class="segmentedlist"><table border="0"><thead><tr><th>Test Num</th><th>Action</th><th>Expected Result</th></tr></thead><tbody><tr><td>001</td><td>Browse to the index page while not logged in and + </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2460149"></a>Manual testing</h3></div></div><div></div></div><p>Make a list of basic tests to make sure it works</p><div class="segmentedlist"><table border="0"><thead><tr><th>Test Num</th><th>Action</th><th>Expected Result</th></tr></thead><tbody><tr><td>001</td><td>Browse to the index page while not logged in and while one or more notes exist.</td><td>No edit or delete or add links should appear.</td></tr><tr><td>002</td><td>Browse to the index page while logged in. An Edit link should appear. Click on it. Fill out the form and click Submit.</td><td>The text added in the form should be visible on the index page.</td></tr><tr><td>API-001</td><td>Invoke mfp::note::create with a specific word as the title.</td><td>Proc should return an object id.</td></tr><tr><td>API-002</td><td>Given an object id from API-001, invoke mfp::note::get.</td><td>Proc should return the specific word in the title.</td></tr><tr><td>API-003</td><td>Given the object id from API-001, invoke mfp::note::delete.</td><td>Proc should return 0 for success.</td></tr></tbody></table></div><p>Other things to test: try to delete someone else's note. Try to delete your own note. Edit your own note. - Search for a note.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2569323"></a>Write automated tests</h3></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:simon@collaboraid.net" target="_top">Simon Carstensen</a> and Joel Aufrecht</p> + Search for a note.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2526312"></a>Write automated tests</h3></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:simon@collaboraid.net" target="_top">Simon Carstensen</a> and Joel Aufrecht</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><p><a class="indexterm" name="id2555492"></a> + </div><p><a class="indexterm" name="id2561592"></a> It seems to me that a lot of people have been asking for some guidelines on how to write automated tests. I've done several tests by now and have found the process to be extremely easy and useful. It's a joy to work with automated testing once you get the hang of it.</p><p>Create the directory that will contain the test - script and edit the script file. The directory location and file name are standards which are recognized by the automated testing package:</p><pre class="screen">[service0 www]$<b class="userinput"><tt> mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/tcl/test</tt></b> -[service0 www]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/tcl/test</tt></b> -[service0 test]$ <b class="userinput"><tt>emacs myfirstpackages-procs.tcl</tt></b></pre><p>Write the tests. This is obviously the big step :) The script should first call ad_library like any normal -procs.tcl file:</p><pre class="screen">ad_library { + script and edit the script file. The directory location and file name are standards which are recognized by the automated testing package:</p><pre class="screen">[$OPENACS_SERVICE_NAME www]$<b class="userinput"><tt> mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/tcl/test</tt></b> +[$OPENACS_SERVICE_NAME www]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/tcl/test</tt></b> +[$OPENACS_SERVICE_NAME test]$ <b class="userinput"><tt>emacs myfirstpackages-procs.tcl</tt></b></pre><p>Write the tests. This is obviously the big step :) The script should first call ad_library like any normal -procs.tcl file:</p><pre class="screen">ad_library { ... } </pre><p>To create a test case you call @@ -54,7 +54,7 @@ inserts, deletes, and updates will be rolled back once the test has been executed. A very useful feature. Instead of inserting bogus data like: <tt class="computeroutput">set name "Simon"</tt>, I tend to generate a random script in order avoid inserting a value that's already in the database:</p><pre class="screen">set name [ad_generate_random_string] -</pre><i class="parameter"><tt>Here's how the test case looks so far:</tt></i><pre class="screen">aa_register_case mfp_basic_test { +</pre><p>Here's how the test case looks so far:</p><pre class="screen">aa_register_case mfp_basic_test { My test } { aa_run_with_teardown \ @@ -67,7 +67,7 @@ goes inside <tt class="computeroutput">-test_code {}</tt>. We want to implement test case API-001, "Given an object id from API-001, invoke mfp::note::get. Proc should return the specific word in the title."</p><pre class="programlisting"> set name [ad_generate_random_string] set new_id [mfp::note::add -title $name] - aa_true "Note add succeeded" [exists_and_not_null new_id]</pre><p>To test our simple case, we must load the test file into the system (just as with the /tcl file in the basic tutorial, since the file didn't exist when the system started, the system doesn't know about it.) To make this file take effect, go to the <a href="/acs-admin/apm" target="_top">APM</a> and choose "Reload changed" for "MyFirstPackage". Since we'll be changing it frequently, select "watch this file" on the next page. This will cause the system to check this file every time any page is requested, which is bad for production systems but convenient for developing. We can also add some aa_register_case flags to make it easier to run the test. The <tt class="computeroutput">-procs</tt> flag, which indicates which procs are tested by this test case, makes it easier to find procs in your package that aren't tested at all. The <tt class="computeroutput">-cats</tt> flag, setting categories, makes it easier to control which tests to run. The <tt class="computeroutput">smoke</tt> test setting means that this is a basic test case that can and should be run any time you are doing any test. (<a href="http://www.nedbatchelder.com/blog/20030408T062805.html" target="_top">a definition of "smoke test"</a>)</p><p>Once the file is loaded, go to <a href="/test" target="_top">ACS Automated Testing</a> and click on myfirstpackage. You should see your test case. Run it and examine the results.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2559196"></a>TCLWebtest tests</h4></div></div><div></div></div><p>API testing can only test part of our package - it doesn't test the code in our adp/tcl pairs. For this, we can use TCLwebtest. TCLwebtest must be <a href="install-tclwebtest.html" title="Install tclwebtest.">installed</a> for this test to work. This provides a <a href="http://tclwebtest.sourceforge.net/doc/api_public.html" target="_top">library of functions</a> that make it easy to call a page through HTTP, examine the results, and drive forms. TCLwebtest's functions overlap slightly with acs-automated-testing; see the example provided for one approach on integrating them.</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2559221"></a>Example</h4></div></div><div></div></div><p>Now we can add the rest of the API tests, including a test with deliberately bad data. The complete test looks like:</p><pre class="programlisting">ad_library { + aa_true "Note add succeeded" [exists_and_not_null new_id]</pre><p>To test our simple case, we must load the test file into the system (just as with the /tcl file in the basic tutorial, since the file didn't exist when the system started, the system doesn't know about it.) To make this file take effect, go to the <a href="/acs-admin/apm" target="_top">APM</a> and choose "Reload changed" for "MyFirstPackage". Since we'll be changing it frequently, select "watch this file" on the next page. This will cause the system to check this file every time any page is requested, which is bad for production systems but convenient for developing. We can also add some aa_register_case flags to make it easier to run the test. The <tt class="computeroutput">-procs</tt> flag, which indicates which procs are tested by this test case, makes it easier to find procs in your package that aren't tested at all. The <tt class="computeroutput">-cats</tt> flag, setting categories, makes it easier to control which tests to run. The <tt class="computeroutput">smoke</tt> test setting means that this is a basic test case that can and should be run any time you are doing any test. (<a href="http://www.nedbatchelder.com/blog/20030408T062805.html" target="_top">a definition of "smoke test"</a>)</p><p>Once the file is loaded, go to <a href="/test" target="_top">ACS Automated Testing</a> and click on myfirstpackage. You should see your test case. Run it and examine the results.</p><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2558553"></a>TCLWebtest tests</h4></div></div><div></div></div><p>API testing can only test part of our package - it doesn't test the code in our adp/tcl pairs. For this, we can use TCLwebtest. TCLwebtest must be <a href="install-tclwebtest.html" title="Install tclwebtest.">installed</a> for this test to work. This provides a <a href="http://tclwebtest.sourceforge.net/doc/api_public.html" target="_top">library of functions</a> that make it easy to call a page through HTTP, examine the results, and drive forms. TCLwebtest's functions overlap slightly with acs-automated-testing; see the example provided for one approach on integrating them.</p></div><div class="sect3" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="id2558579"></a>Example</h4></div></div><div></div></div><p>Now we can add the rest of the API tests, including a test with deliberately bad data. The complete test looks like:</p><pre class="programlisting">ad_library { Test cases for my first package. } Index: openacs-4/packages/acs-core-docs/www/tutorial-distribute.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-distribute.html,v diff -u -r1.11 -r1.12 --- openacs-4/packages/acs-core-docs/www/tutorial-distribute.html 5 May 2004 12:36:07 -0000 1.11 +++ openacs-4/packages/acs-core-docs/www/tutorial-distribute.html 11 Jun 2004 10:17:39 -0000 1.12 @@ -1,10 +1,10 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Prepare the package for distribution.</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="profile-code.html" title="Profile your code"><link rel="next" href="tutorial-notifications.html" title="Notifications"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="profile-code.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-notifications.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-distribute"></a>Prepare the package for distribution.</h2></div></div><div></div></div><p>Browse to the package manager. Click on +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Prepare the package for distribution.</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="profile-code.html" title="Profile your code"><link rel="next" href="tutorial-notifications.html" title="Notifications"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="profile-code.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-notifications.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-distribute"></a>Prepare the package for distribution.</h2></div></div><div></div></div><p>Browse to the package manager. Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">tutorialapp</span></span></tt>.</p><p>Click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Generate a distribution file for this package from the filesystem</span></span></tt>. </p><p>Click on the file size (<tt class="computeroutput"><span class="guilabel"><span class="guilabel">37.1KB</span></span></tt>) after the label <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Distribution File:</span></span></tt> and save the file to - /tmp.</p><p><a class="indexterm" name="id2562840"></a> + /tmp.</p><p><a class="indexterm" name="id2575178"></a> </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="profile-code.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-notifications.html">Next</a></td></tr><tr><td width="40%" align="left">Profile your code </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Notifications</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-distribute.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-future-topics.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-future-topics.html,v diff -u -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/tutorial-future-topics.html 5 May 2004 12:36:07 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/tutorial-future-topics.html 11 Jun 2004 10:17:39 -0000 1.5 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Future Topics</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-vuh.html" title="Using .vuh files for pretty urls"><link rel="next" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-vuh.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="dev-guide.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-future-topics"></a>Future Topics</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>How to enforce security so that users can't +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Future Topics</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-vuh.html" title="Using .vuh files for pretty urls"><link rel="next" href="dev-guide.html" title="Chapter�11.�Development Reference"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-vuh.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="dev-guide.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-future-topics"></a>Future Topics</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p>How to enforce security so that users can't change other users records</p></li><li><p>How to use the content management tables so that ... what?</p></li><li><p>How to change the default stylesheets for Form Builder HTML forms.</p></li><li><p>How to make your package searchable with OpenFTS/Oracle</p></li><li><p>How to prepare pagelets for inclusion in other pages</p></li><li><p>How and when to put procedures in a tcl procedure library</p></li><li><p>More on ad_form - data validation, other stuff. Index: openacs-4/packages/acs-core-docs/www/tutorial-hierarchical.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-hierarchical.html,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ openacs-4/packages/acs-core-docs/www/tutorial-hierarchical.html 11 Jun 2004 10:17:39 -0000 1.1 @@ -0,0 +1,79 @@ +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Hierarchical data</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-notifications.html" title="Notifications"><link rel="next" href="tutorial-vuh.html" title="Using .vuh files for pretty urls"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-notifications.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-vuh.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-hierarchical"></a>Hierarchical data</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="http://rubick.com:8002" target="_top">Jade Rubick</a> + with help from many people in the OpenACS community</p> + OpenACS docs are written by the named authors, and may be edited + by OpenACS documentation staff. + </div><p>One of the nice things about using the OpenACS object system + is that it has a built-in facility for tracking hierarchical data + in an efficient way. The algorithm behind this is called + <tt class="computeroutput">tree_sortkey.</tt></p><p>Any time your tables are subclasses of the acs_objects + table, then you automatically get the ability to structure them + hierarchically. The way you do this is currently via the + <tt class="computeroutput">context_id</tt> column of + acs_objects (Note that there is talk of adding in a + <tt class="computeroutput">parent_id</tt> column instead, because + the use of <tt class="computeroutput">context_id</tt> has been + ambiguous in the past). So when you want to build your hierarchy, + simply set the context_id values. Then, when you want to make + hierarchical queries, you can do them as follows:</p><pre class="programlisting"> + db_multirow categories blog_categories " + SELECT + c.*, + o.context_id, + tree_level(o.tree_sortkey) + FROM + blog_categories c, + acs_objects o + WHERE + c.category_id = o.object_id + ORDER BY + o.tree_sortkey" + </pre><p>Note the use of the + <tt class="computeroutput">tree_level()</tt> function, which + gives you the level, starting from 1, 2, 3... </p><p>Here's an example, pulling all of the children for a given + parent:</p><pre class="programlisting"> + SELECT + children.*, + tree_level(children.tree_sortkey) - + tree_level(parent.tree_sortkey) as level + FROM + some_table parent, + some_table children + WHERE + children.tree_sorktey between parent.tree_sortkey and tree_right(parent.tree_sortkey) + and parent.tree_sortkey <> children.tree_sortkey + and parent.key = :the_parent_key; + </pre><p>The reason we substract the parent's tree_level from the + child's tree_level is that the tree_levels are global, so if you + want the parent's tree_level to start with 0, you'll want the + subtraction in there. This is a reason you'll commonly see magic + numbers in tree_sortkey SQL queries, like + <tt class="computeroutput">tree_level(children.tree_sortkey) - + 4</tt>. That is basically an incorrect way to do it, + and subtracting the parent's tree_level is the preferred method.</p><p>This example does not include the parent. To return the entire subtree including the parent, leave out the non-equals clause:</p><pre class="programlisting"> + SELECT + subtree.*, + tree_level(children.tree_sortkey) - + tree_level(parent.tree_sortkey) as level + FROM some_table parent, some_table subtree + WHERE + subtree.tree_sorktey between parent.tree_sortkey and tree_right(parent.tree_sortkey) + and parent.key = :the_parent_key; + </pre><p>If you are using the Content Repository, you get a similar + facility, but the <tt class="computeroutput">parent_id</tt> + column is already there. Note you can do joins with + <tt class="computeroutput">tree_sortkey</tt>:</p><pre class="programlisting"> + SELECT + p.item_id, + repeat(:indent_pattern, (tree_level(p.tree_sortkey) - 5)* :indent_factor) as indent, + p.parent_id as folder_id, + p.project_name + FROM pm_projectsx p, cr_items i + WHERE p.project_id = i.live_revision + ORDER BY i.tree_sortkey + </pre><p>This rather long thread explains <a href="http://openacs.org/forums/message-view?message_id=16799" target="_top">How + tree_sortkeys work</a> and this paper <a href="http://www.yafla.com/papers/sqlhierarchies/sqlhierarchies2.htm" target="_top">describes + the technique for tree_sortkeys</a>, although the <a href="http://openacs.org/forums/message-view?message_id=112943" target="_top">OpenACS + implementation has a few differences in the + implementation</a>, to make it work for many languages and the + LIKE construct in Postgres. + </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-notifications.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-vuh.html">Next</a></td></tr><tr><td width="40%" align="left">Notifications </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Using .vuh files for pretty urls</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-hierarchical.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html,v diff -u -r1.29 -r1.30 --- openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html 5 May 2004 12:36:07 -0000 1.29 +++ openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html 11 Jun 2004 10:17:39 -0000 1.30 @@ -1,7 +1,7 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Creating an Application Package</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="next" href="tutorial-database.html" title="Setting Up Database Objects"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-database.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-newpackage"></a>Creating an Application Package</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Creating an Application Package</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="next" href="tutorial-database.html" title="Setting Up Database Objects"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-database.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-newpackage"></a>Creating an Application Package</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tutorial-picture"></a>The intended page map</h3></div></div><div></div></div><div class="mediaobject"><img src="images/openacs-best-practice.png"></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2459075"></a>Overview</h3></div></div><div></div></div><p>To start developing new code in OpenACS, we build a new package. A package + </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tutorial-picture"></a>The intended page map</h3></div></div><div></div></div><div class="mediaobject"><img src="images/openacs-best-practice.png"></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2480717"></a>Overview</h3></div></div><div></div></div><p>To start developing new code in OpenACS, we build a new package. A package is a a discrete collection of web pages, tcl code, and database tables and procedures. A package with user interface is called an <span class="strong">application</span>; a package which provides functions to other packages and has no direct interface, a @@ -17,11 +17,11 @@ right now. Code that is temporary hackage is clearly marked. </p><p>In this tutorial, we will make an application package for displaying a list of text notes. -</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2495695"></a>Before you begin</h3></div></div><div></div></div><p>You will need:</p><div class="itemizedlist"><ul type="disc"><li><p>A computer with a working installation of +</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2568657"></a>Before you begin</h3></div></div><div></div></div><p>You will need:</p><div class="itemizedlist"><ul type="disc"><li><p>A computer with a working installation of OpenACS. If you don't have this, see <a href="install-overview.html" title="Chapter�2.�Installation Overview">Chapter�2, <i>Installation Overview</i></a>. </p></li><li><p>Example files, which are included in the standard OpenACS 5.2.0d1 distribution. - </p></li></ul></div><div class="figure"><a name="id2455565"></a><p class="title"><b>Figure�9.1.�Assumptions in this section</b></p><div class="informaltable"><table cellspacing="0" border="1"><colgroup><col><col></colgroup><tbody><tr><td>Fully qualified domain name of your server</td><td><span class="replaceable"><span class="replaceable">yourserver.test</span></span></td></tr><tr><td>URL of your server</td><td><span class="replaceable"><span class="replaceable">http://yourserver.test:8000</span></span></td></tr><tr><td>Name of development account</td><td><span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td>New Package key</td><td><span class="replaceable"><span class="replaceable">myfirstpackage</span></span></td></tr></tbody></table></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2581957"></a>Use the APM to initialize a new package</h3></div></div><div></div></div><p>We use the <a href="packages.html" target="_top">ACS Package Manager</a> (APM) to add, remove, and + </p></li></ul></div><div class="figure"><a name="id2568679"></a><p class="title"><b>Figure�9.1.�Assumptions in this section</b></p><div class="informaltable"><table cellspacing="0" border="1"><colgroup><col><col></colgroup><tbody><tr><td>Fully qualified domain name of your server</td><td><span class="replaceable"><span class="replaceable">yourserver.test</span></span></td></tr><tr><td>URL of your server</td><td><span class="replaceable"><span class="replaceable">http://yourserver.test:8000</span></span></td></tr><tr><td>Name of development account</td><td><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>New Package key</td><td><span class="replaceable"><span class="replaceable">myfirstpackage</span></span></td></tr></tbody></table></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2504581"></a>Use the APM to initialize a new package</h3></div></div><div></div></div><p>We use the <a href="packages.html" target="_top">ACS Package Manager</a> (APM) to add, remove, and upgrade packages. It handles package meta-data, such as lists of files that belong in the package. Each package is uniquely identified by a package key. To start developing a new @@ -51,9 +51,9 @@ </p></li></ul></div><p>At the bottom, click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Create Package</span></span></tt>. </p></li></ol></div><p>This creates a package rooted at - <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt>. + <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt>. This is the "home directory" of our new package, and all - files in the package will be within this directory.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2553675"></a>Add an Application Instance to the Server</h3></div></div><div></div></div><p>In order to see your work in progress, you must create a + files in the package will be within this directory.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2566405"></a>Add an Application Instance to the Server</h3></div></div><div></div></div><p>In order to see your work in progress, you must create a map between the URL space of incoming requests and the package application instance. You do this by adding the application in the main site administration). This creates a link between the incoming URL requests and an @@ -64,8 +64,8 @@ in this tutorial.</p><div class="orderedlist"><ol type="1"><li><p>Browse to <tt class="computeroutput"><span class="replaceable"><span class="replaceable">http://yourserver.test:8000</span></span><a href="/admin/applications/application-add" target="_top">/admin/applications/application-add/</a></tt>.</p></li><li><p>Choose "My First Package" from the list and click OK (the other fields are optional).</p></li></ol></div><p>By mounting the package, we've caused all requests to <tt class="computeroutput">http://yourserver.test:8000/my-first-package</tt> - to be satisfied from the files at <tt class="computeroutput">/var/lib/aolserver/service0/packages/myfirstpackage/www</tt>.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2575172"></a>Quick start</h3></div></div><div></div></div><p>The remainder of the tutorial walks you through each file one at a time as you create the package. You can skip all this, and get a working package, by doing the following:</p><pre class="screen">cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-core-docs/www/files/tutorial -psql <span class="replaceable"><span class="replaceable">service0</span></span> -f myfirstpackage-create.sql + to be satisfied from the files at <tt class="computeroutput">/var/lib/aolserver/$OPENACS_SERVICE_NAME/packages/myfirstpackage/www</tt>.</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2546866"></a>Quick start</h3></div></div><div></div></div><p>The remainder of the tutorial walks you through each file one at a time as you create the package. You can skip all this, and get a working package, by doing the following:</p><pre class="screen">cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-core-docs/www/files/tutorial +psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f myfirstpackage-create.sql cp note-edit.* note-delete.tcl index.* ../../../../myfirstpackage/www/ mkdir ../../../../myfirstpackage/lib cp note-list.* ../../../../myfirstpackage/lib/ Index: openacs-4/packages/acs-core-docs/www/tutorial-notifications.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-notifications.html,v diff -u -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/tutorial-notifications.html 5 May 2004 12:36:08 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/tutorial-notifications.html 11 Jun 2004 10:17:39 -0000 1.6 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Notifications</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-distribute.html" title="Prepare the package for distribution."><link rel="next" href="ch10s10.html" title="Hierarchical data"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-distribute.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="ch10s10.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-notifications"></a>Notifications</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:dave@student.usyd.edu.au" target="_top">David Bell</a> and <a href="mailto:simon@collaboraid.net" target="_top">Simon Carstensen</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Notifications</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-distribute.html" title="Prepare the package for distribution."><link rel="next" href="tutorial-hierarchical.html" title="Hierarchical data"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-distribute.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-hierarchical.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-notifications"></a>Notifications</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:dave@student.usyd.edu.au" target="_top">David Bell</a> and <a href="mailto:simon@collaboraid.net" target="_top">Simon Carstensen</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p>The notifications package allows you to send notifications through any @@ -201,4 +201,4 @@ parameter is what appears at the end of the text returned (i.e. "... request notification</a> for pretty_name"), The <tt class="computeroutput">url</tt> parameter should be set to the address we want the user to be redirected to after they have finished the subscription process.</p><p>This should be all you need to implement a notification system. For more examples - look at the forums package.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-distribute.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="ch10s10.html">Next</a></td></tr><tr><td width="40%" align="left">Prepare the package for distribution. </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Hierarchical data</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-notifications.html#comments">View comments on this page at openacs.org</a></center></body></html> + look at the forums package.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-distribute.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-hierarchical.html">Next</a></td></tr><tr><td width="40%" align="left">Prepare the package for distribution. </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Hierarchical data</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-notifications.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-pages.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-pages.html,v diff -u -r1.28 -r1.29 --- openacs-4/packages/acs-core-docs/www/tutorial-pages.html 5 May 2004 12:36:08 -0000 1.28 +++ openacs-4/packages/acs-core-docs/www/tutorial-pages.html 11 Jun 2004 10:17:39 -0000 1.29 @@ -1,8 +1,8 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Creating Web Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial-database.html" title="Setting Up Database Objects"><link rel="next" href="tutorial-debug.html" title="Debugging and Automated Testing"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-database.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-debug.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-pages"></a>Creating Web Pages</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Creating Web Pages</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial.html" title="Chapter�9.�Development Tutorial"><link rel="previous" href="tutorial-database.html" title="Setting Up Database Objects"><link rel="next" href="tutorial-debug.html" title="Debugging and Automated Testing"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-database.html">Prev</a> </td><th width="60%" align="center">Chapter�9.�Development Tutorial</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-debug.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-pages"></a>Creating Web Pages</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2492344"></a>Install some API</h3></div></div><div></div></div><p>As a workaround for missing content-repository functionality, copy a provided file into the directory for tcl files:</p><pre class="screen"> - <span class="action"><span class="action">cp /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-core-docs/www/files/note-procs.tcl /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/tcl/</span></span></pre><p>To make this file take effect, go to the <a href="/acs-admin/apm" target="_top">APM</a> and choose "Reload changed" for "MyFirstPackage".</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2464158"></a>Page Map</h3></div></div><div></div></div><p>Our package will have two visible pages. The first shows a list of all objects; the second shows a single object in view or edit mode, and can also be used to add an object. The index page will display the list, but since we might reuse the list later, we'll put it in a seperate file and include it on the index page.</p><div class="figure"><a name="id2460404"></a><p class="title"><b>Figure�9.5.�Page Map</b></p><div class="mediaobject" align="center"><img src="images/tutorial-page-map.png" align="middle" alt="Page Map"></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2464383"></a>Build the "Index" page</h3></div></div><div></div></div><p>Each user-visible page in your package has, typically, + </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2498794"></a>Install some API</h3></div></div><div></div></div><p>As a workaround for missing content-repository functionality, copy a provided file into the directory for tcl files:</p><pre class="screen"> + <span class="action"><span class="action">cp /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-core-docs/www/files/note-procs.tcl /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/tcl/</span></span></pre><p>To make this file take effect, go to the <a href="/acs-admin/apm" target="_top">APM</a> and choose "Reload changed" for "MyFirstPackage".</p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2469476"></a>Page Map</h3></div></div><div></div></div><p>Our package will have two visible pages. The first shows a list of all objects; the second shows a single object in view or edit mode, and can also be used to add an object. The index page will display the list, but since we might reuse the list later, we'll put it in a seperate file and include it on the index page.</p><div class="figure"><a name="id2485500"></a><p class="title"><b>Figure�9.5.�Page Map</b></p><div class="mediaobject" align="center"><img src="images/tutorial-page-map.png" align="middle" alt="Page Map"></div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2502989"></a>Build the "Index" page</h3></div></div><div></div></div><p>Each user-visible page in your package has, typically, three parts. The <tt class="computeroutput">tcl</tt> file holds the procedural logic for the page, including TCL and database-independent SQL code, and does things like @@ -12,8 +12,8 @@ and <tt class="computeroutput">-oracle.xql</tt> files contains database-specific SQL. The default page in any directory is <tt class="computeroutput">index</tt>, so we'll build that - first, starting with the tcl file:</p><pre class="screen">[service0 postgresql]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackages/www</tt></b> -[service0 www]$ <b class="userinput"><tt>emacs index.tcl</tt></b></pre><p>Paste this into the file.</p><pre class="programlisting">ad_page_contract { + first, starting with the tcl file:</p><pre class="screen">[$OPENACS_SERVICE_NAME postgresql]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackages/www</tt></b> +[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>emacs index.tcl</tt></b></pre><p>Paste this into the file.</p><pre class="programlisting">ad_page_contract { This is the main page for the package. It displays all of the Notes and provides links to edit them and to create new Notes. @author Your Name (you@example.com) @@ -24,9 +24,9 @@ set context [list]</pre><p>Now <tt class="computeroutput">index.adp</tt>:</p><pre class="programlisting"><master> <property name="title">@page_title;noquote@</property> <property name="context">@context;noquote@</property> -<include src="/packages/myfirstpackage/lib/note-list"></pre><p>You can test your work by <a href="/myfirstpackage/" target="_top">viewing the page</a>.</p><p>The index page includes the list page, which we put in /lib instead of /www to designate that it's available for reuse by other packages.</p><pre class="screen">[service0 www]$<b class="userinput"><tt> mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/lib</tt></b> -[service0 www]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/lib</tt></b> -[service0 lib]$ <b class="userinput"><tt>emacs note-list.tcl</tt></b></pre><pre class="programlisting">template::list::create \ +<include src="/packages/myfirstpackage/lib/note-list"></pre><p>You can test your work by <a href="/myfirstpackage/" target="_top">viewing the page</a>.</p><p>The index page includes the list page, which we put in /lib instead of /www to designate that it's available for reuse by other packages.</p><pre class="screen">[$OPENACS_SERVICE_NAME www]$<b class="userinput"><tt> mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/lib</tt></b> +[$OPENACS_SERVICE_NAME www]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/lib</tt></b> +[$OPENACS_SERVICE_NAME lib]$ <b class="userinput"><tt>emacs note-list.tcl</tt></b></pre><pre class="programlisting">template::list::create \ -name notes \ -multirow notes \ -actions { "Add a Note" note-edit} \ @@ -63,9 +63,9 @@ } { set edit_url [export_vars -base "note-edit" {item_id}] set delete_url [export_vars -base "note-delete" {item_id}] - }</pre><pre class="screen">[service0 lib]$ <b class="userinput"><tt>emacs note-list.adp</tt></b></pre><pre class="programlisting"><listtemplate name="notes"></listtemplate></pre><p>Create the add/edit page. If note_id is passed in, - it display that note, and can change to edit mode if appropriate. Otherwise, it presents a form for adding notes.</p><pre class="screen">[service0 lib]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www</tt></b> -[service0 www]$ <b class="userinput"><tt>emacs note-edit.tcl</tt></b></pre><pre class="programlisting">ad_page_contract { + }</pre><pre class="screen">[$OPENACS_SERVICE_NAME lib]$ <b class="userinput"><tt>emacs note-list.adp</tt></b></pre><pre class="programlisting"><listtemplate name="notes"></listtemplate></pre><p>Create the add/edit page. If note_id is passed in, + it display that note, and can change to edit mode if appropriate. Otherwise, it presents a form for adding notes.</p><pre class="screen">[$OPENACS_SERVICE_NAME lib]$<b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www</tt></b> +[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>emacs note-edit.tcl</tt></b></pre><pre class="programlisting">ad_page_contract { This is the view-edit page for notes. @author Your Name (you@example.com) @@ -105,13 +105,13 @@ } -after_submit { ad_returnredirect "." ad_script_abort -}</pre><pre class="screen">[service0 www]$ <b class="userinput"><tt>emacs note-edit.adp</tt></b></pre><pre class="programlisting"><master> +}</pre><pre class="screen">[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>emacs note-edit.adp</tt></b></pre><pre class="programlisting"><master> <property name="title">@page_title;noquote@</property> <property name="context">@context;noquote@</property> <property name="focus">note.title</property> <formtemplate id="note"></formtemplate></pre><p>And the delete page. Since it has no UI, there is only a - tcl page, and no adp page.</p><pre class="screen">[service0 www]$ <b class="userinput"><tt>emacs note-delete.tcl</tt></b></pre><pre class="programlisting">ad_page_contract { + tcl page, and no adp page.</p><pre class="screen">[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>emacs note-delete.tcl</tt></b></pre><pre class="programlisting">ad_page_contract { This deletes a note @author Your Name (you@example.com) Index: openacs-4/packages/acs-core-docs/www/tutorial-specs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-specs.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/tutorial-specs.html 5 May 2004 12:36:08 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/tutorial-specs.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Write the Requirements and Design Specs</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="next" href="tutorial-cvs.html" title="Add the new package to CVS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-advanced.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-specs"></a>Write the Requirements and Design Specs</h2></div></div><div></div></div><p>Before you get started you should make yourself familiar with +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Write the Requirements and Design Specs</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="next" href="tutorial-cvs.html" title="Add the new package to CVS"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-advanced.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-specs"></a>Write the Requirements and Design Specs</h2></div></div><div></div></div><p>Before you get started you should make yourself familiar with the tags that are used to write your documentation. For tips on editing SGML files in emacs, see <a href="docbook-primer.html">OpenACS Documentation Guide</a>.</p><p>It's time to document. For the tutorial we'll use pre-written documentation. When creating a package @@ -12,12 +12,12 @@ directory, and store png or jpg versions of supporting files in the <tt class="computeroutput">www/doc</tt> directory.</p><p>For this tutorial, you should instead install the pre-written documentation files for the tutorial app. Log in - as <span class="replaceable"><span class="replaceable">service0</span></span>, create the standard - directories, and copy the prepared documentation:</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/</tt></b> -[service0 myfirstpackage]$ <b class="userinput"><tt>mkdir -p www/doc/xml</tt></b> -[service0 myfirstpackage]$ <b class="userinput"><tt>cd www/doc/xml</tt></b> -[service0 xml]$ <b class="userinput"><tt>cp /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-core-docs/www/files/myfirstpackage/* .</tt></b> -[service0 xml]$</pre><p> OpenACS uses DocBook for documentation. DocBook is + as <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>, create the standard + directories, and copy the prepared documentation:</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/</tt></b> +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>mkdir -p www/doc/xml</tt></b> +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>cd www/doc/xml</tt></b> +[$OPENACS_SERVICE_NAME xml]$ <b class="userinput"><tt>cp /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-core-docs/www/files/myfirstpackage/* .</tt></b> +[$OPENACS_SERVICE_NAME xml]$</pre><p> OpenACS uses DocBook for documentation. DocBook is an XML standard for semantic markup of documentation. That means that the tags you use indicate meaning, not intended appearance. The style sheet will determine appearance. You @@ -32,7 +32,7 @@ is stored in the <tt class="computeroutput">www/docs/</tt> directory. A Makefile is provided to generate html from the xml, and copy all of the supporting files. If Docbook is set up correctly, all you need - to do is:</p><pre class="screen">[service0 xml]$<b class="userinput"><tt> make</tt></b> + to do is:</p><pre class="screen">[$OPENACS_SERVICE_NAME xml]$<b class="userinput"><tt> make</tt></b> cd .. ; /usr/bin/xsltproc ../../../acs-core-docs/www/xml/openacs.xsl xml/index.xml Writing requirements-introduction.html for chapter(requirements-introduction) Writing requirements-overview.html for chapter(requirements-overview) @@ -48,5 +48,5 @@ Writing admin-guide.html for chapter(admin-guide) Writing bi01.html for bibliography Writing index.html for book -[service0 xml]$</pre><p>Verify that the documentation was generated and reflects +[$OPENACS_SERVICE_NAME xml]$</pre><p>Verify that the documentation was generated and reflects your changes by browsing to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yoursite</span></span>:8000/myfirstpackage/doc</tt></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-advanced.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-cvs.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�10.�Advanced Topics </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Add the new package to CVS</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-specs.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial-vuh.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-vuh.html,v diff -u -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/tutorial-vuh.html 5 May 2004 12:36:08 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/tutorial-vuh.html 11 Jun 2004 10:17:39 -0000 1.6 @@ -1,5 +1,5 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using .vuh files for pretty urls</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="ch10s10.html" title="Hierarchical data"><link rel="next" href="tutorial-future-topics.html" title="Future Topics"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="ch10s10.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-future-topics.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-vuh"></a>Using .vuh files for pretty urls</h2></div></div><div></div></div><p>.Vuh files are special cases of .tcl files, used for rewriting incoming urls. We can use a vuh file to prettify the uri for our notes. Instead of <tt class="computeroutput">note-edit?item_id=495</tt>, we can use <tt class="computeroutput">note/495</tt>. To do this, we will need a new .vuh file for redirection and we will need to change the referring links in note-list. First, add the vuh:</p><pre class="screen">[service0 service0]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/myfirstpackage/www</tt></b> -[service0 www]$ <b class="userinput"><tt>emacs note.vuh</tt></b> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Using .vuh files for pretty urls</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="tutorial-advanced.html" title="Chapter�10.�Advanced Topics"><link rel="previous" href="tutorial-hierarchical.html" title="Hierarchical data"><link rel="next" href="tutorial-future-topics.html" title="Future Topics"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-hierarchical.html">Prev</a> </td><th width="60%" align="center">Chapter�10.�Advanced Topics</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-future-topics.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tutorial-vuh"></a>Using .vuh files for pretty urls</h2></div></div><div></div></div><p>.Vuh files are special cases of .tcl files, used for rewriting incoming urls. We can use a vuh file to prettify the uri for our notes. Instead of <tt class="computeroutput">note-edit?item_id=495</tt>, we can use <tt class="computeroutput">note/495</tt>. To do this, we will need a new .vuh file for redirection and we will need to change the referring links in note-list. First, add the vuh:</p><pre class="screen">[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/myfirstpackage/www</tt></b> +[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>emacs note.vuh</tt></b> </pre><p>Paste this into the file:</p><pre class="programlisting"># Transform requests of type: a/b # into this internal request: A?c=b # for example, note/495 > note-edit?item_id=496 @@ -17,7 +17,7 @@ set internal_path "/packages/[ad_conn package_key]/www/note-edit" rp_internal_redirect $internal_path -</pre><p>We parse the incoming request and treat everything after the final / as the item id. Note that this simple redirection will lose any additional query parameters passed in. Many OpenACS objects maintain a pretty-name, which is a unique, human-readable string, usually derived from title, which makes an even better 'pretty url' than a numeric id; this requires that your display page be able to look up an item based on pretty id.</p><p>We use <tt class="computeroutput">rp_form_put</tt> to store the item id in the internal register that the next page is expecting, and then redirects the request in process internally (ie, without a browser refresh).</p><p>Next, modify note-list so that its link is of the new form.:</p><pre class="screen">[service0 www]$ <b class="userinput"><tt>emacs ../lib/note-edit.tcl</tt></b></pre><pre class="programlisting"> +</pre><p>We parse the incoming request and treat everything after the final / as the item id. Note that this simple redirection will lose any additional query parameters passed in. Many OpenACS objects maintain a pretty-name, which is a unique, human-readable string, usually derived from title, which makes an even better 'pretty url' than a numeric id; this requires that your display page be able to look up an item based on pretty id.</p><p>We use <tt class="computeroutput">rp_form_put</tt> to store the item id in the internal register that the next page is expecting, and then redirects the request in process internally (ie, without a browser refresh).</p><p>Next, modify note-list so that its link is of the new form.:</p><pre class="screen">[$OPENACS_SERVICE_NAME www]$ <b class="userinput"><tt>emacs ../lib/note-edit.tcl</tt></b></pre><pre class="programlisting"> db_multirow \ -extend { edit_url @@ -36,4 +36,4 @@ package. Commonly, you would use ad_conn package_url to build the URL. Otherwise, some of your links may be relative to the virtual directory (note/) instead of the actual directory that the note is - being served from</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch10s10.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-future-topics.html">Next</a></td></tr><tr><td width="40%" align="left">Hierarchical data </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Future Topics</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-vuh.html#comments">View comments on this page at openacs.org</a></center></body></html> + being served from</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-hierarchical.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-future-topics.html">Next</a></td></tr><tr><td width="40%" align="left">Hierarchical data </td><td width="20%" align="center"><a accesskey="u" href="tutorial-advanced.html">Up</a></td><td width="40%" align="right"> Future Topics</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial-vuh.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/tutorial.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial.html,v diff -u -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/tutorial.html 5 May 2004 12:36:08 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/tutorial.html 11 Jun 2004 10:17:39 -0000 1.14 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�9.�Development Tutorial</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="next" href="tutorial-newpackage.html" title="Creating an Application Package"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="acs-package-dev.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-newpackage.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tutorial"></a>Chapter�9.�Development Tutorial</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="tutorial-newpackage.html">Creating an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database.html">Setting Up Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages.html">Creating Web Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug.html">Debugging and Automated Testing</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acs-package-dev.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-newpackage.html">Next</a></td></tr><tr><td width="40%" align="left">Part�III.�For OpenACS Package Developers </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> Creating an Application Package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�9.�Development Tutorial</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="previous" href="acs-package-dev.html" title="Part�III.�For OpenACS Package Developers"><link rel="next" href="tutorial-newpackage.html" title="Creating an Application Package"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="acs-package-dev.html">Prev</a> </td><th width="60%" align="center">Part�III.�For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="tutorial-newpackage.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tutorial"></a>Chapter�9.�Development Tutorial</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="tutorial-newpackage.html">Creating an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database.html">Setting Up Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages.html">Creating Web Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug.html">Debugging and Automated Testing</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acs-package-dev.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="tutorial-newpackage.html">Next</a></td></tr><tr><td width="40%" align="left">Part�III.�For OpenACS Package Developers </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> Creating an Application Package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/tutorial.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/unix-installation.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/unix-installation.html,v diff -u -r1.20 -r1.21 --- openacs-4/packages/acs-core-docs/www/unix-installation.html 5 May 2004 12:36:08 -0000 1.20 +++ openacs-4/packages/acs-core-docs/www/unix-installation.html 11 Jun 2004 10:17:39 -0000 1.21 @@ -1,11 +1,6 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install a Unix-like system and supporting software</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="next" href="oracle.html" title="Install Oracle 8.1.7"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="complete-install.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="oracle.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="unix-installation"></a>Install a Unix-like system and supporting software</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Install a Unix-like system and supporting software</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="next" href="oracle.html" title="Install Oracle 8.1.7"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="complete-install.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="oracle.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="unix-installation"></a>Install a Unix-like system and supporting software</h2></div></div><div></div></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. - </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="unix-install"></a>a Unix-like system</h3></div></div><div></div></div><p>You will need a computer running a unix-like system with the following software installed:</p><div class="itemizedlist"><ul type="disc"><li><p>tdom</p></li><li><p>tcl</p></li><li><p>gmake and the compile and build - environment.</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">BSD Note</h3><p>BSD users: in most places in these instructions, gmake - will work better than make. (<a href="http://openacs.org/forums/message-view?message_id=136910" target="_top">more - information on FreeBSD installation</a>)</p></div></li></ul></div><p>and optionally these programs, which are included in most distributions:</p><div class="itemizedlist"><ul type="disc"><li><p>emacs</p></li><li><p>cvs (and <a href="install-cvs.html" title="Initialize CVS (OPTIONAL)">initialize</a> it)</p></li><li><p>ImageMagick</p></li><li><p>DocBook and supporting software (and <a href="psgml-for-emacs.html" title="Add PSGML commands to emacs init file (OPTIONAL)">install</a> emacs keybindings for - DocBook SGML)</p></li><li><p>daemontools (<a href="install-daemontools.html" title="Install Daemontools (OPTIONAL)">install from - source</a>)</p></li><li><p>a Mail Transport Agent, such as exim or sendmail (or <a href="install-qmail.html" title="Install qmail (OPTIONAL)">install qmail from source</a>)</p></li></ul></div><p>To install a machine to the specifications of the Reference - Platform, do the <a href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9">walkthrough of the - Red Hat 8.0 Install for OpenACS</a>.</p><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="complete-install.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="oracle.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�3.�Complete Installation </td><td width="20%" align="center"><a accesskey="u" href="complete-install.html">Up</a></td><td width="40%" align="right"> Install Oracle 8.1.7</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/unix-installation.html#comments">View comments on this page at openacs.org</a></center></body></html> + </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="unix-install"></a>a Unix-like system</h3></div></div><div></div></div><p>You will need a computer running a unix-like system with the following software installed:</p><div class="itemizedlist"><ul type="disc"><li><p>tdom</p></li><li><p>tcl</p></li><li><p>gmake and the compile and build environment.</p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">BSD Note</h3><p>BSD users: in most places in these instructions, gmake will work better than make. (<a href="http://openacs.org/forums/message-view?message_id=136910" target="_top">more + information on FreeBSD installation</a>)</p></div></li></ul></div><p>and optionally these programs, which are included in most distributions:</p><div class="itemizedlist"><ul type="disc"><li><p>emacs</p></li><li><p>cvs (and <a href="install-cvs.html" title="Initialize CVS (OPTIONAL)">initialize</a> it)</p></li><li><p>ImageMagick (used by some packages for server side image manipulation)</p></li><li><p>Aspell (<a href="http://openacs.org/forums/message-view?message_id=130549" target="_top">more information on spell-checking</a>)</p></li><li><p>DocBook and supporting software (and <a href="psgml-for-emacs.html" title="Add PSGML commands to emacs init file (OPTIONAL)">install</a> emacs keybindings for DocBook SGML)</p></li><li><p>daemontools (<a href="install-daemontools.html" title="Install Daemontools (OPTIONAL)">install from source</a>)</p></li><li><p>a Mail Transport Agent, such as exim or sendmail (or <a href="install-qmail.html" title="Install qmail (OPTIONAL)">install qmail from source</a>)</p></li></ul></div><p>In order to cut and paste the example code into your shell, you must first do <a href="install-steps.html#cut-and-paste-name-var" title="Setting a global shell variable for cut and paste">Setting a global shell variable for cut and paste</a>.</p><p>To install a machine to the specifications of the Reference Platform, do the + <a href="install-redhat.html" title="Appendix�A.�Install Red Hat 8/9">walkthrough of the Red Hat 8.0 Install for OpenACS</a>.</p><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="complete-install.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="oracle.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�3.�Complete Installation </td><td width="20%" align="center"><a accesskey="u" href="complete-install.html">Up</a></td><td width="40%" align="right"> Install Oracle 8.1.7</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/unix-installation.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/update-repository.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/update-repository.html,v diff -u -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/update-repository.html 5 May 2004 12:36:08 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/update-repository.html 11 Jun 2004 10:17:39 -0000 1.7 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to Update the OpenACS.org repository</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="releasing-openacs-core.html" title="OpenACS Core and .LRN"><link rel="next" href="releasing-package.html" title="How to package and release an OpenACS Package"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="releasing-openacs-core.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="releasing-package.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="update-repository"></a>How to Update the OpenACS.org repository</h2></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to Update the OpenACS.org repository</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="releasing-openacs-core.html" title="OpenACS Core and .LRN"><link rel="next" href="releasing-package.html" title="How to package and release an OpenACS Package"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="releasing-openacs-core.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="releasing-package.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="update-repository"></a>How to Update the OpenACS.org repository</h2></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p> Setup a local OpenACS server running 5.0 or better. </p></li><li><p> Edit <tt class="computeroutput">packages/acs-admin/www/apm/build-repository.tcl</tt> and adjust the Configuration Settings. </p></li><li><p> @@ -13,4 +13,14 @@ The files will be stored on the server's hard drive in the directory specified by the 'repository_dir' variable in the page script, by default "[acs_root_dir]/www/repository/". </p></li></ol></div></li><li><p> If you're on openacs.org, everything should now be fine. Otherwise, you need to move the entire directory tree to openacs.org:/web/openacs/www/repository, replacing what was already there. - </p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="releasing-openacs-core.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="releasing-package.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Core and .LRN </td><td width="20%" align="center"><a accesskey="u" href="releasing-openacs.html">Up</a></td><td width="40%" align="right"> How to package and release an OpenACS Package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/update-repository.html#comments">View comments on this page at openacs.org</a></center></body></html> + </p><p>This is automated on OpenACS.org by having a dedicated site just for building the repository, invoked with this shell script. Since the page circumvents security checks for ease of use, the entire site is limited to local requests. The script is called daily with a cron job.</p><pre class="programlisting">#!/bin/sh +#set -x + +STATUS=`wget --output-document - http://127.0.0.1:8002/build-repository.tcl | grep DONE | wc -l` + +if [ $STATUS -eq "1" ] + then + rm -rf /web/openacs.org/www/repository.old + mv /web/openacs.org/www/repository /web/openacs.org/www/repository.old + cp -r /web/repository/www/repository /web/openacs.org/www/repository +fi</pre></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="releasing-openacs-core.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="releasing-package.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Core and .LRN </td><td width="20%" align="center"><a accesskey="u" href="releasing-openacs.html">Up</a></td><td width="40%" align="right"> How to package and release an OpenACS Package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/update-repository.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/update-translations.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/update-translations.html,v diff -u -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/update-translations.html 5 May 2004 12:36:08 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/update-translations.html 11 Jun 2004 10:17:39 -0000 1.6 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to Update the translations</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="releasing-package.html" title="How to package and release an OpenACS Package"><link rel="next" href="ix01.html" title="Index"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="releasing-package.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="ix01.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="update-translations"></a>How to Update the translations</h2></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>How to Update the translations</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="releasing-openacs.html" title="Chapter�16.�Releasing OpenACS"><link rel="previous" href="releasing-package.html" title="How to package and release an OpenACS Package"><link rel="next" href="ix01.html" title="Index"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="releasing-package.html">Prev</a> </td><th width="60%" align="center">Chapter�16.�Releasing OpenACS</th><td width="20%" align="right"> <a accesskey="n" href="ix01.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="update-translations"></a>How to Update the translations</h2></div></div><div></div></div><div class="orderedlist"><ol type="1"><li><p> Update the translation server. (Approach 1: upgrade to the last release; approach 2: upgrade to head or to an alpha or beta release.) Use CVS up. </p><i><span class="remark">This approach puts the translation server at risk. An alternate approach would be to create a whole new checkout on the appropriate branch (such as oacs-5-0), point that at the live production database, import keys (which is safe because keys on the translation server take precedence), then export keys back, and then commit. This gets the keys committed to the right branch without changing the code running on the production site. Updating the production site can then be a seperate exercise.</span></i></li><li><p>Go to <a href="/acs-lang/admin" target="_top">ACS Lang admin page</a> and click "Import All Messages"</p></li><li><p>Resolve conflicts, if any, on the provided page. </p></li><li><p>Back on the admin page, click the export link. If there are conflicts, the messages will be exported anyway and any errors will be shown in the web interface.</p></li><li><p>From the packages dir, run the acs-lang/bin/check-catalog.sh script. (This checks for keys no longer in use and some other things. Until it is rolled into the UI, do it manually and check the results and take whatever steps you can intuit you should do.) Index: openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html 5 May 2004 12:36:08 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/upgrade-4.5-to-4.6.html 11 Jun 2004 10:17:39 -0000 1.13 @@ -1,11 +1,11 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading 4.5 or higher to 4.6.3</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-overview.html" title="Overview"><link rel="next" href="upgrade-4.6.3-to-5.html" title="Upgrading OpenACS 4.6.3 to 5.0"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-4.6.3-to-5.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-4.5-to-4.6"></a>Upgrading 4.5 or higher to 4.6.3</h2></div></div><div></div></div><a class="indexterm" name="id2511704"></a><p>The required platform for OpenACS 4.6 is the same as +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading 4.5 or higher to 4.6.3</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-overview.html" title="Overview"><link rel="next" href="upgrade-4.6.3-to-5.html" title="Upgrading OpenACS 4.6.3 to 5.0"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-overview.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-4.6.3-to-5.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-4.5-to-4.6"></a>Upgrading 4.5 or higher to 4.6.3</h2></div></div><div></div></div><a class="indexterm" name="id2518962"></a><p>The required platform for OpenACS 4.6 is the same as 4.5, with the exception of OpenFTS. OpenACS 4.6 and later require OpenFTS 0.3.2 for full text search on PostGreSQL. If you have OpenFTS 0.2, you'll need to upgrade. </p><p>If upgrading from 4.2, you need to manually run acs-kernel/sql/postgres/upgrade-4.2-4.5.sql. See <a href="http://openacs.org/bugtracker/openacs/bug?bug_number=632" target="_top">Bug #632</a></p><div class="itemizedlist"><ul type="circle"><li style="list-style-type: circle"><p>A computer with OpenACS 4.5.</p></li><li style="list-style-type: circle"><p><a href="http://openacs.org/projects/openacs/download/" target="_top">OpenACS 4.6 tarball</a> or CVS checkout/export.</p></li><li style="list-style-type: circle"><p>Required for Full Text Search on PostgreSQL: <a href="http://openfts.sourceforge.net" target="_top">OpenFTS 0.3.2</a></p></li></ul></div><div class="orderedlist"><ol type="1"><li><p><b>Make a Backup.�</b>Back up the database and file system (see <a href="snapshot-backup.html" title="Manual backup and recovery">the section called “Manual backup and recovery”</a>).</p></li><li><p><b>OPTIONAL: Upgrade OpenFTS.�</b><a href="upgrade-supporting.html#upgrade-openfts-0.2-to-0.3.2" title="Upgrading OpenFTS from 0.2 to 0.3.2">the section called “Upgrading OpenFTS from 0.2 to 0.3.2”</a></p></li><li><p> Stop the server - </p><pre class="screen">[root root]# <b class="userinput"><tt>svc -d /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li><li><p><b>Upgrade the file system.�</b><a href="upgrade-openacs-files.html" title="Upgrading the OpenACS files">the section called “Upgrading the OpenACS files”</a></p></li><li><p> + </p><pre class="screen">[root root]# <b class="userinput"><tt>svc -d /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li><li><p><b>Upgrade the file system.�</b><a href="upgrade-openacs-files.html" title="Upgrading the OpenACS files">the section called “Upgrading the OpenACS files”</a></p></li><li><p> <span class="strong">Start the server</span> - </p><pre class="screen">[root root]# <b class="userinput"><tt>svc -u /service/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li><li><p><a name="upgrade-with-apm"></a><b>Use APM to upgrade the database.�</b></p><div class="orderedlist"><ol type="a"><li><p>Browse to the package manager, <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/acs-admin/apm</tt>.</p></li><li><p>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install packages.</span></span></tt></p></li><li><p>Select the packages you want to install. This should + </p><pre class="screen">[root root]# <b class="userinput"><tt>svc -u /service/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li><li><p><a name="upgrade-with-apm"></a><b>Use APM to upgrade the database.�</b></p><div class="orderedlist"><ol type="a"><li><p>Browse to the package manager, <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/acs-admin/apm</tt>.</p></li><li><p>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Install packages.</span></span></tt></p></li><li><p>Select the packages you want to install. This should be everything that says <tt class="computeroutput">upgrade</tt>, plus any new packages you want. It's safest to upgrade the kernel by itself, and then come back and upgrade the rest of the - desired packages in a second pass.</p></li><li><p>On the next screen, click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Install Packages</span></span></tt></p></li><li><p>When prompted, restart the server:</p><pre class="screen">[root root]# <b class="userinput"><tt>restart-aolserver <span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li><li><p>Wait a minute, then browse to the package manager, <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/acs-admin/apm</tt>.</p></li><li><p>Check that the kernel upgrade worked by clicking <tt class="computeroutput"><span class="guilabel"><span class="guilabel">All</span></span></tt> and making sure that <tt class="computeroutput">acs-kernel</tt> version is 5.2.0d1.</p></li></ol></div></li><li><p><b>Rollback.�</b>If anything goes wrong, <a href="snapshot-backup.html#recovery">roll back</a> to the backup snapshot.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-overview.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-4.6.3-to-5.html">Next</a></td></tr><tr><td width="40%" align="left">Overview </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading OpenACS 4.6.3 to 5.0</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-4.5-to-4.6.html#comments">View comments on this page at openacs.org</a></center></body></html> + desired packages in a second pass.</p></li><li><p>On the next screen, click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Install Packages</span></span></tt></p></li><li><p>When prompted, restart the server:</p><pre class="screen">[root root]# <b class="userinput"><tt>restart-aolserver <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li><li><p>Wait a minute, then browse to the package manager, <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/acs-admin/apm</tt>.</p></li><li><p>Check that the kernel upgrade worked by clicking <tt class="computeroutput"><span class="guilabel"><span class="guilabel">All</span></span></tt> and making sure that <tt class="computeroutput">acs-kernel</tt> version is 5.2.0d1.</p></li></ol></div></li><li><p><b>Rollback.�</b>If anything goes wrong, <a href="snapshot-backup.html#recovery">roll back</a> to the backup snapshot.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-overview.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-4.6.3-to-5.html">Next</a></td></tr><tr><td width="40%" align="left">Overview </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading OpenACS 4.6.3 to 5.0</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-4.5-to-4.6.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/upgrade-4.6.3-to-5.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-4.6.3-to-5.html,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/upgrade-4.6.3-to-5.html 5 May 2004 12:36:08 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/upgrade-4.6.3-to-5.html 11 Jun 2004 10:17:39 -0000 1.3 @@ -1,23 +1,23 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading OpenACS 4.6.3 to 5.0</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-4.5-to-4.6.html" title="Upgrading 4.5 or higher to 4.6.3"><link rel="next" href="upgrade-5-0-dot.html" title="Upgrading 5.0.0 to 5.0.x"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-4.5-to-4.6.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-5-0-dot.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-4.6.3-to-5"></a>Upgrading OpenACS 4.6.3 to 5.0</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Oracle.�</b>Not yet documented. It should be possible to upgrade via the APM just as when upgrading to 4.6.3.</p></li><li><p><b>PostGreSQL.�</b>You must use PostGreSQL 7.3.x or newer to upgrade OpenACS beyond 4.6.3. See <a href="upgrade-supporting.html#upgrade-postgres-7.2-to-7.3" title="Upgrading from PostGreSQL 7.2 to 7.3">Upgrade PostGreSQL to 7.3</a>; <a href="individual-programs.html#compatibility-matrix" title="Table�2.2.�Version Compatibility Matrix">Table�2.2, “Version Compatibility Matrix”</a> - </p><div class="orderedlist"><ol type="1"><li><p><a href="snapshot-backup.html" title="Manual backup and recovery">Back up the database and file system.</a></p></li><li><p><b>Upgrade the file system for packages/acs-kernel.�</b><a href="upgrade-openacs-files.html" title="Upgrading the OpenACS files">the section called “Upgrading the OpenACS files”</a></p></li><li><p>Upgrade the kernel manually. (There is a script to do most of the rest: <a href="http://cvs.openacs.org/cvs/openacs-4/contrib/misc/upgrade_4.6_to_5.0.sh?only_with_tag=HEAD" target="_top">/contrib/misc/upgrade_4.6_to_5.0.sh on HEAD</a>). You'll still have to do a lot of stuff manually, but automated trial and error is much more fun.)</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/ <span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-kernel/sql/postgresql/upgrade</tt></b></pre><p> - Manually execute each of the upgrade scripts in sequence, either from within psql or from the command line with commands such as <tt class="computeroutput"><b class="userinput"><tt>psql -f upgrade-4.6.3-4.6.4.sql <span class="replaceable"><span class="replaceable">service0</span></span></tt></b></tt>. Run the scripts in this order (order is tentative, not verified): - </p><pre class="programlisting">psql -f upgrade-4.6.3-4.6.4.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-4.6.4-4.6.5.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-4.6.5-4.6.6.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-4.7d-4.7.2d.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-4.7.2d-5.0d.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0d-5.0d2.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0d2-5.0d3.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0d6-5.0d7.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0d7-5.0d9.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0d11-5.0d12.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0.0a4-5.0.0a5.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0.0b1-5.0.0b2.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0.0b2-5.0.0b3.sql <span class="replaceable"><span class="replaceable">service0</span></span> -psql -f upgrade-5.0.0b3-5.0.0b4.sql <span class="replaceable"><span class="replaceable">service0</span></span></pre></li><li><p>Upgrade ACS Service Contracts manually:</p><pre class="screen">[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/ <span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-service-contracts/sql/postgresql/upgrade</tt></b> -psql -f upgrade-4.7d2-4.7d3.sql <span class="replaceable"><span class="replaceable">service0</span></span> -</pre></li><li><p>Load acs-authentication data model.</p><pre class="screen"><b class="userinput"><tt>psql -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/openacs-5/packages/acs-authentication/sql/postgresql/acs-authentication-create.sql <span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li><li><p>Load acs-lang data model.</p><pre class="screen"><b class="userinput"><tt>psql -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/packages/acs-lang/sql/postgresql/acs-lang-create.sql <span class="replaceable"><span class="replaceable">service0</span></span></tt></b></pre></li><li><p>(This step may overlap with the two previous steps, but I think it's harmless?) Create a file which will be executed on startup which takes care of a few issues with authentication and internationalization: create <span class="replaceable"><span class="replaceable">service0</span></span>/tcl/zzz-postload.tcl containing:</p><pre class="programlisting">if {![apm_package_installed_p acs-lang]} { +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading OpenACS 4.6.3 to 5.0</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-4.5-to-4.6.html" title="Upgrading 4.5 or higher to 4.6.3"><link rel="next" href="upgrade-5-0-dot.html" title="Upgrading 5.0.0 to 5.0.x"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-4.5-to-4.6.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-5-0-dot.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-4.6.3-to-5"></a>Upgrading OpenACS 4.6.3 to 5.0</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Oracle.�</b>Not yet documented. It should be possible to upgrade via the APM just as when upgrading to 4.6.3.</p></li><li><p><b>PostGreSQL.�</b>You must use PostGreSQL 7.3.x or newer to upgrade OpenACS beyond 4.6.3. See <a href="upgrade-supporting.html#upgrade-postgres-7.2-to-7.3" title="Upgrading from PostGreSQL 7.2 to 7.3">Upgrade PostGreSQL to 7.3</a>; <a href="individual-programs.html#compatibility-matrix" title="Table�2.2.�Version Compatibility Matrix">Table�2.2, “Version Compatibility Matrix”</a> + </p><div class="orderedlist"><ol type="1"><li><p><a href="snapshot-backup.html" title="Manual backup and recovery">Back up the database and file system.</a></p></li><li><p><b>Upgrade the file system for packages/acs-kernel.�</b><a href="upgrade-openacs-files.html" title="Upgrading the OpenACS files">the section called “Upgrading the OpenACS files”</a></p></li><li><p>Upgrade the kernel manually. (There is a script to do most of the rest: <a href="http://cvs.openacs.org/cvs/openacs-4/contrib/misc/upgrade_4.6_to_5.0.sh?only_with_tag=HEAD" target="_top">/contrib/misc/upgrade_4.6_to_5.0.sh on HEAD</a>). You'll still have to do a lot of stuff manually, but automated trial and error is much more fun.)</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/ <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-kernel/sql/postgresql/upgrade</tt></b></pre><p> + Manually execute each of the upgrade scripts in sequence, either from within psql or from the command line with commands such as <tt class="computeroutput"><b class="userinput"><tt>psql -f upgrade-4.6.3-4.6.4.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></tt>. Run the scripts in this order (order is tentative, not verified): + </p><pre class="programlisting">psql -f upgrade-4.6.3-4.6.4.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-4.6.4-4.6.5.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-4.6.5-4.6.6.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-4.7d-4.7.2d.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-4.7.2d-5.0d.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0d-5.0d2.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0d2-5.0d3.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0d6-5.0d7.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0d7-5.0d9.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0d11-5.0d12.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0.0a4-5.0.0a5.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0.0b1-5.0.0b2.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0.0b2-5.0.0b3.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql -f upgrade-5.0.0b3-5.0.0b4.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></pre></li><li><p>Upgrade ACS Service Contracts manually:</p><pre class="screen">[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/ <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-service-contracts/sql/postgresql/upgrade</tt></b> +psql -f upgrade-4.7d2-4.7d3.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +</pre></li><li><p>Load acs-authentication data model.</p><pre class="screen"><b class="userinput"><tt>psql -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/openacs-5/packages/acs-authentication/sql/postgresql/acs-authentication-create.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li><li><p>Load acs-lang data model.</p><pre class="screen"><b class="userinput"><tt>psql -f /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/acs-lang/sql/postgresql/acs-lang-create.sql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b></pre></li><li><p>(This step may overlap with the two previous steps, but I think it's harmless?) Create a file which will be executed on startup which takes care of a few issues with authentication and internationalization: create <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/tcl/zzz-postload.tcl containing:</p><pre class="programlisting">if {![apm_package_installed_p acs-lang]} { apm_package_install -enable -mount_path acs-lang [acs_root_dir]/packages/acs-lang/acs-lang.info lang::catalog::import -locales [list "en_US"] } @@ -34,4 +34,11 @@ parameter::set_value -package_id [ad_acs_kernel_id] -parameter UsePasswordWidgetForUsername -value 0 }</pre></li><li><p>If you can login, visit /acs-admin/apm and upgrade acs-kernel and acs-service-contract and uncheck the data model scripts. Restart. If everything is still working, make another backup of the database. </p></li><li><p>Upgrade other packages <a href="upgrade-4.5-to-4.6.html#upgrade-with-apm">via the APM</a></p></li></ol></div><p> - See also these forum posts: <a href="http://openacs.org/forums/message-view?message_id=143497" target="_top">Forum OpenACS Development: 4.6.3 upgrade to 5-HEAD: final results</a>, <a href="http://openacs.org/forums/message-view?message_id=152200" target="_top">OpenACS 5.0 Upgrade Experiences</a>.</p></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-4.5-to-4.6.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-5-0-dot.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading 4.5 or higher to 4.6.3 </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading 5.0.0 to 5.0.x</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-4.6.3-to-5.html#comments">View comments on this page at openacs.org</a></center></body></html> + See also these forum posts: <a href="http://openacs.org/forums/message-view?message_id=143497" target="_top">Forum OpenACS Development: 4.6.3 upgrade to 5-HEAD: final results</a>, <a href="http://openacs.org/forums/message-view?message_id=152200" target="_top">OpenACS 5.0 Upgrade Experiences</a>.</p><p> + There are a few things you might want to do once you've + upgraded. First, the acs-kernel parameters need to be set to + allow HREF and IMG tags, if you want users who can edit HTML + to be able to insert HREF and IMG tags. Also, you might need + to set the default language for your site. See the above + link on OpenACS 5.0 Upgrade Experiences for details. + </p></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-4.5-to-4.6.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-5-0-dot.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading 4.5 or higher to 4.6.3 </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading 5.0.0 to 5.0.x</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-4.6.3-to-5.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/upgrade-5-0-dot.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-5-0-dot.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/upgrade-5-0-dot.html 5 May 2004 12:36:08 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/upgrade-5-0-dot.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading 5.0.0 to 5.0.x</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-4.6.3-to-5.html" title="Upgrading OpenACS 4.6.3 to 5.0"><link rel="next" href="upgrade-openacs-files.html" title="Upgrading the OpenACS files"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-4.6.3-to-5.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-openacs-files.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-5-0-dot"></a>Upgrading 5.0.0 to 5.0.x</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Upgrading a stock site.�</b>If you have no custom code, and your site is not in a CVS repository, upgrade with these steps:</p><div class="orderedlist"><ol type="1"><li><p>Go to <a href="/acs-admin/install" target="_top">/acs-admin/install/</a> and click "Upgrade Your System" in "Install from OpenACS Repository"</p></li><li><p>Select all of the packages you want to upgrade and proceed</p></li><li><p>After upgrade is complete, restart the server as indicated.</p></li><li><p>If you are using locales other than en_US, go to acs-lang/admin and "Import all Messages" to load the new translated messages. Your local translations, if any, will take precedence over imported translations.</p></li></ol></div></li><li><p><b>Upgrading a Custom or CVS site.�</b>If you have custom code, and your site is in a CVS repository, upgrade with these steps:</p><div class="orderedlist"><ol type="1"><li><p><b>Upgrade the file system for all packages in use.�</b><a href="upgrade-openacs-files.html" title="Upgrading the OpenACS files">the section called “Upgrading the OpenACS files”</a></p></li><li><p>Go to <a href="/acs-admin/install" target="_top">/acs-admin/install/</a> and click "Upgrade Your System" in "Install from local file system"</p></li><li><p>Select all of the packages you want to upgrade and proceed</p></li><li><p>After upgrade is complete, restart the server as indicated.</p></li><li><p>If you are using locales other than en_US, go to acs-lang/admin and "Import all Messages" to load the new translated messages. Your local translations, if any, will take precedence over imported translations.</p></li></ol></div></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-4.6.3-to-5.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-openacs-files.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading OpenACS 4.6.3 to 5.0 </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading the OpenACS files</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-5-0-dot.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading 5.0.0 to 5.0.x</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-4.6.3-to-5.html" title="Upgrading OpenACS 4.6.3 to 5.0"><link rel="next" href="upgrade-openacs-files.html" title="Upgrading the OpenACS files"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-4.6.3-to-5.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-openacs-files.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-5-0-dot"></a>Upgrading 5.0.0 to 5.0.x</h2></div></div><div></div></div><div class="itemizedlist"><ul type="disc"><li><p><b>Upgrading a stock site.�</b>If you have no custom code, and your site is not in a CVS repository, upgrade with these steps:</p><div class="orderedlist"><ol type="1"><li><p>Go to <a href="/acs-admin/install" target="_top">/acs-admin/install/</a> and click "Upgrade Your System" in "Install from OpenACS Repository"</p></li><li><p>Select all of the packages you want to upgrade and proceed</p></li><li><p>After upgrade is complete, restart the server as indicated.</p></li><li><p>If you are using locales other than en_US, go to acs-lang/admin and "Import all Messages" to load the new translated messages. Your local translations, if any, will take precedence over imported translations.</p></li></ol></div></li><li><p><b>Upgrading a Custom or CVS site.�</b>If you have custom code, and your site is in a CVS repository, upgrade with these steps:</p><div class="orderedlist"><ol type="1"><li><p><b>Upgrade the file system for all packages in use.�</b><a href="upgrade-openacs-files.html" title="Upgrading the OpenACS files">the section called “Upgrading the OpenACS files”</a></p></li><li><p>Go to <a href="/acs-admin/install" target="_top">/acs-admin/install/</a> and click "Upgrade Your System" in "Install from local file system"</p></li><li><p>Select all of the packages you want to upgrade and proceed</p></li><li><p>After upgrade is complete, restart the server as indicated.</p></li><li><p>If you are using locales other than en_US, go to acs-lang/admin and "Import all Messages" to load the new translated messages. Your local translations, if any, will take precedence over imported translations.</p></li></ol></div></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-4.6.3-to-5.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-openacs-files.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading OpenACS 4.6.3 to 5.0 </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading the OpenACS files</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-5-0-dot.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/upgrade-openacs-files.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-openacs-files.html,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/upgrade-openacs-files.html 5 May 2004 12:36:08 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/upgrade-openacs-files.html 11 Jun 2004 10:17:39 -0000 1.13 @@ -1,55 +1,62 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading the OpenACS files</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-5-0-dot.html" title="Upgrading 5.0.0 to 5.0.x"><link rel="next" href="upgrade-supporting.html" title="Upgrading Platform components"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-5-0-dot.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-supporting.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-openacs-files"></a>Upgrading the OpenACS files</h2></div></div><div></div></div><p>OpenACS is distributed as a collection of files, available as one big tarball, via CVS, and via automatic download from within the APM. Upgrades work by first changing the file system (via any of the previous methods), and then using the APM to scan the file system, find upgrade scripts, and execute them. This section describes how to upgrade the file system. Starting with OpenACS 5.0, this section can generally be skipped because the OpenACS APM can directly download new files from the openacs.org repository.</p><p>Many OpenACS site developers operate their own CVS repository to keep track of changes from the release OpenACS code. This part describes how to import the latest OpenACS version into your own repository. If you are using CVS, you will unpack the OpenACS 4.6 tarball into a working directory and then import that directory into cvs. If you have changed files in the core packages, cvs will attempt to merge your changes. You may have to manually merge some conflicts. When that's finished, you can update your normal development checkout directory and the new files will appear. If you aren't using CVS, you can unpack the tarball on top of your existing tree, but any customizations you've made to the kernel or core packages will be erased.</p><div class="itemizedlist"><ul type="disc"><li><p><b>Upgrading files for a site which is not in a CVS repository.�</b>Unpack the tarball into a new directory and copy its contents on top of your working directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> -[service0 web]$ <b class="userinput"><tt>tar xzf /tmp/openacs-4-6.tgz</tt></b> -[service0 web]$ <b class="userinput"><tt>cp -r openacs-4-6/* openacs-4</tt></b> -[service0 openacs-upgrade]$ <b class="userinput"><tt>exit</tt></b> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading the OpenACS files</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-5-0-dot.html" title="Upgrading 5.0.0 to 5.0.x"><link rel="next" href="upgrade-supporting.html" title="Upgrading Platform components"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-5-0-dot.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-supporting.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-openacs-files"></a>Upgrading the OpenACS files</h2></div></div><div></div></div><p>OpenACS is distributed as a collection of files, available as one big tarball, via CVS, and via automatic download from within the APM. Upgrades work by first changing the file system (via any of the previous methods), and then using the APM to scan the file system, find upgrade scripts, and execute them. This section describes how to upgrade the file system. Starting with OpenACS 5.0, this section can generally be skipped because the OpenACS APM can directly download new files from the openacs.org repository.</p><p>Many OpenACS site developers operate their own CVS repository to keep track of changes from the release OpenACS code. This part describes how to import the latest OpenACS version into your own repository. If you are using CVS, you will unpack the OpenACS 5.1 tarball into a working directory and then import that directory into cvs. If you have changed files in the core packages, cvs will attempt to merge your changes. You may have to manually merge some conflicts. When that's finished, you can update your normal development checkout directory and the new files will appear. If you aren't using CVS, you can unpack the tarball on top of your existing tree, but any customizations you've made to the kernel or core packages will be erased.</p><div class="itemizedlist"><ul type="disc"><li><p><b>Upgrading files for a site which is not in a CVS repository.�</b>Unpack the tarball into a new directory and copy its contents on top of your working directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> +[$OPENACS_SERVICE_NAME web]$ <b class="userinput"><tt>tar xzf /tmp/openacs-5-1.tar.gz</tt></b> +[$OPENACS_SERVICE_NAME web]$ <b class="userinput"><tt>cp -r openacs-5-1/* openacs-4</tt></b> +[$OPENACS_SERVICE_NAME openacs-upgrade]$ <b class="userinput"><tt>exit</tt></b> [root root]# -<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">service0</span></span> +<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> cd /var/lib/aolserver -tar xzf /tmp/openacs-4-6.tgz -cp -r openacs-4-6/* openacs-4 +tar xzf /tmp/openacs-5-1.tgz +cp -r openacs-5-1/* openacs-4 exit</span></span></pre></li><li><p> <span class="strong">Upgrading files for a site in a private CVS repository</span> - </p><div class="figure"><a name="id2523611"></a><p class="title"><b>Figure�5.2.�Upgrading a local CVS repository</b></p><div class="mediaobject" align="center"><img src="images/upgrade-cvs.png" align="middle" alt="Upgrading a local CVS repository"></div></div><div class="itemizedlist"><ul type="circle"><li><p><b>Step 1: Import new CVS code.�</b>There are two common ways to get new OpenACS code into your local CVS repository - via tarball or with a working CVS checkout of OpenACS. Both methods work well for starting your local repository; the second method is better for incremental additions or upgrades.</p><div class="itemizedlist"><ul type="disc"><li><p><b>(a): via tarball.�</b>Download a <a href="http://openacs.org/projects/openacs/download" target="_top">current tarball</a> and unpack the new files into a working directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /tmp</tt></b> -[service0 tmp]$ <b class="userinput"><tt>tar xzf openacs-4-6.tgz</tt></b> -[service0 tmp]$ <b class="userinput"><tt>cd openacs-4.6</tt></b></pre></li><li><p><b>(b): via cvs working checkout.�</b>Create a CVS checkout from OpenACS. The first time you do this, you will need to create the checkout directory. We use one dedicated directory for each branch of OpenACS - if you are using OpenACS 5.0,x, you only need an OpenACS 5.0 branch. The <span class="replaceable"><span class="replaceable">openacs-5-0-compat</span></span> tag identifies the latest released version of OpenACS 5.0 (ie, 5.0.3 or 5.0.4) and the latest compatible version of each package, including .LRN. Each minor release of OpenACS since 5.0 has this tagging structure. (Ie., OpenACS 5.1.x has <tt class="computeroutput">openacs-5-1-compat</tt>.)</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cvs -d :pserver:anonymous@openacs.org:/cvsroot checkout -r <span class="replaceable"><span class="replaceable">openacs-5-0-compat</span></span> openacs-4</tt></b> -[service0 aolserver]$ <b class="userinput"><tt>mv openacs-4 <span class="replaceable"><span class="replaceable">openacs-5-0</span></span></tt></b></pre><p>If this checkout already exists, you can simply update it instead of recreating it.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cvs up -Pd</tt></b></pre></li><li><p><b>(c) A single package via cvs working checkout.�</b>You can add or upgrade a single package at a time, if you already have a cvs working directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-0</span></span></tt></b> -[service0 openacs-5-0]$ <b class="userinput"><tt>cvs up -d <span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt></b></pre><p>In the next section, the import must be tailored to just this package.</p></li></ul></div></li><li><p><b>Step 2: Merge New OpenACS code.�</b>Now that you have a local copy of the new OpenACS code, you need to import it into your local CVS repository and resolve any conflicts that occur.</p><p>Import the new files into your cvs repository; where they match existing files, they will become the new version of the file.</p><pre class="screen">[service0 openacs-4.6]$ <b class="userinput"><tt> cvs -d /var/lib/cvs import -m "upgrade to OpenACS 4.6" openacs OpenACS openacs-4-6</tt></b></pre><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p>If adding or upgrading a single package, run the cvs import from within the base directory of that package, and adjust the cvs command accordingly. In this example, we are adding the <tt class="computeroutput">myfirstpackage</tt> package.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-0</span></span>/packagse/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt></b> -[service0 myfirstpackage]$ <b class="userinput"><tt>cvs -d /var/lib/cvs/ import -m "importing package" <span class="replaceable"><span class="replaceable">service0</span></span>/packages/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt></b></pre></div><p>Create a new directory as temporary working space to reconcile conflicts between the new files and your current work. The example uses the cvs keyword yesterday, making the assumption that you haven't checked in new code to your local tree in the last day.</p><pre class="screen">[service0 openacs-4.6]$ <b class="userinput"><tt> cd /var/lib/aolserver</tt></b> -[service0 tmp]$ <b class="userinput"><tt>mkdir <span class="replaceable"><span class="replaceable">service0</span></span>-upgrade</tt></b> -[service0 tmp]$ <b class="userinput"><tt>cvs checkout -d openacs-upgrade -jOpenACS:yesterday -jOpenACS openacs > cvs.txt 2>&1</tt></b> -(CVS feedback here) -</pre><p>The file /tmp/openacs-upgrade/cvs.txt contains the results of the upgrade. If you changed files that are part of the OpenACS tarball and those changes conflict with the 4.5-4.6 upgrade, you'll have to manually reconcile them. Use the emacs command <tt class="computeroutput">M-x sort-lines</tt> and then, for each line that starts with a C, open that file and manually resolve the conflict by deleting the excess lines. When you're finished, or if there aren't any conflicts, save and exit.</p><p>Once you've fixed any conflicts, commit the new code - to your local tree. </p><pre class="screen">[service0 tmp]$ <b class="userinput"><tt>cd openacs-upgrade</tt></b> -[service0 openacs-upgrade]$ <b class="userinput"><tt>cvs commit -m "Upgraded to 4.6"</tt></b></pre></li><li><p><b>Step 3: Upgrade your local staging site.�</b>Update your working tree with the new files. The CVS flags ensure that new directories are created and pruned directories destroyed.</p><pre class="screen">[service0 openacs-upgrade]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cvs up -Pd</tt></b> + </p><div class="figure"><a name="id2515360"></a><p class="title"><b>Figure�5.2.�Upgrading a local CVS repository</b></p><div class="mediaobject" align="center"><img src="images/upgrade-cvs.png" align="middle" alt="Upgrading a local CVS repository"></div></div><div class="itemizedlist"><ul type="circle"><li><p><b>Step 1: Import new CVS code.�</b>There are two common ways to get new OpenACS code into your local CVS repository - via tarball or with a working CVS checkout of OpenACS. Both methods work well for starting your local repository; the second method is better for incremental additions or upgrades.</p><div class="itemizedlist"><ul type="disc"><li><p><b>(a): via tarball.�</b>Download a <a href="http://openacs.org/projects/openacs/download" target="_top">current tarball</a> and unpack the new files into a working directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /tmp</tt></b> +[$OPENACS_SERVICE_NAME tmp]$ <b class="userinput"><tt>tar xzf <span class="replaceable"><span class="replaceable">openacs-5-1</span></span>.tar.gz</tt></b> +[$OPENACS_SERVICE_NAME tmp]$ <b class="userinput"><tt>cd <span class="replaceable"><span class="replaceable">openacs-5-1</span></span></tt></b></pre></li><li><p><b>(b): via cvs working checkout.�</b>Create a CVS checkout from OpenACS. The first time you do this, you will need to create the checkout directory. We use one dedicated directory for each branch of OpenACS - if you are using OpenACS 5.0,x, you only need an OpenACS 5.0 branch. The <span class="replaceable"><span class="replaceable">openacs-5-1-compat</span></span> tag identifies the latest released version of OpenACS 5.1 (ie, 5.1.3 or 5.1.4) and the latest compatible version of each package, including .LRN. Each minor release of OpenACS since 5.0 has this tagging structure. For example, OpenACS 5.1.x has <tt class="computeroutput">openacs-5-1-compat</tt>. + You will want to separately check out all the + packages you are using. + </p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cvs -d :pserver:anonymous@openacs.org:/cvsroot checkout -r <span class="replaceable"><span class="replaceable">openacs-5-1-compat</span></span> acs-core</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd openacs-4/packages</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cvs -d :pserver:anonymous@openacs.org:/cvsroot checkout -r <span class="replaceable"><span class="replaceable">openacs-5-1-compat</span></span> <span class="replaceable"><span class="replaceable">packagename packagename2...</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd ../..</tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>mv openacs-4 <span class="replaceable"><span class="replaceable">openacs-5-1</span></span></tt></b></pre><p>If this checkout already exists, you can simply update it instead of recreating it.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-1</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cvs up -Pd</tt></b></pre></li><li><p><b>(c) A single package via cvs working checkout.�</b>You can add or upgrade a single package at a time, if you already have a cvs working directory.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-1</span></span></tt></b> +[$OPENACS_SERVICE_NAME openacs-5-1]$ <b class="userinput"><tt>cvs up -d <span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt></b></pre><p>In the next section, the import must be tailored to just this package.</p></li></ul></div></li><li><p><b>Step 2: Merge New OpenACS code.�</b>Now that you have a local copy of the new OpenACS code, you need to import it into your local CVS repository and resolve any conflicts that occur.</p><p>Import the new files into your cvs repository; where they match existing files, they will become the new version of the file.</p><pre class="screen">[$OPENACS_SERVICE_NAME openacs-5-1]$ <b class="userinput"><tt> cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-1</span></span></tt></b> + [$OPENACS_SERVICE_NAME openacs-5-1]$ <b class="userinput"><tt> cvs -d /var/lib/cvs import -m "upgrade to OpenACS 5.1" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS <span class="replaceable"><span class="replaceable">openacs-5-1</span></span></tt></b> + </pre><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title">Tip</h3><p>If adding or upgrading a single package, run the cvs import from within the base directory of that package, and adjust the cvs command accordingly. In this example, we are adding the <tt class="computeroutput">myfirstpackage</tt> package.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME aolserver]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">openacs-5-0</span></span>/package/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span></tt></b> +[$OPENACS_SERVICE_NAME myfirstpackage]$ <b class="userinput"><tt>cvs -d /var/lib/cvs/ import -m "importing package" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/packages/<span class="replaceable"><span class="replaceable">myfirstpackage</span></span> OpenACS openacs-5-1</tt></b></pre></div><p>Create a new directory as temporary working space to reconcile conflicts between the new files and your current work. The example uses the cvs keyword yesterday, making the assumption that you haven't checked in new code to your local tree in the last day.</p><pre class="screen">[$OPENACS_SERVICE_NAME openacs-4.6]$ <b class="userinput"><tt> cd /var/lib/aolserver</tt></b> +[$OPENACS_SERVICE_NAME tmp]$ <b class="userinput"><tt>mkdir <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-upgrade</tt></b> +[$OPENACS_SERVICE_NAME tmp]$ <b class="userinput"><tt>cvs checkout -d openacs-upgrade -jOpenACS:yesterday -jOpenACS -kk <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> > cvs.txt 2>&1</tt></b> +(CVS feedback here)</pre><p>The file /tmp/openacs-upgrade/cvs.txt contains the results of the upgrade. If you changed files that are part of the OpenACS tarball and those changes conflict with the 4.5-4.6 upgrade, you'll have to manually reconcile them. Use the emacs command <tt class="computeroutput">M-x sort-lines</tt> and then, for each line that starts with a C, open that file and manually resolve the conflict by deleting the excess lines. When you're finished, or if there aren't any conflicts, save and exit.</p><p>Once you've fixed any conflicts, commit the new code + to your local tree. </p><pre class="screen">[$OPENACS_SERVICE_NAME tmp]$ <b class="userinput"><tt>cd openacs-upgrade</tt></b> +[$OPENACS_SERVICE_NAME openacs-upgrade]$ <b class="userinput"><tt>cvs commit -m "Upgraded to 4.6"</tt></b></pre></li><li><p><b>Step 3: Upgrade your local staging site.�</b>Update your working tree with the new files. The CVS flags ensure that new directories are created and pruned directories destroyed.</p><pre class="screen">[$OPENACS_SERVICE_NAME openacs-upgrade]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs up -Pd</tt></b> (CVS feedback) -[service0 service0]$ <b class="userinput"><tt>exit</tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>exit</tt></b> [root root]# </pre></li></ul></div></li></ul></div><p> <span class="strong">Upgrading files for a site using the OpenACS.org CVS repository</span> - </p><div class="orderedlist"><ol type="1"><li><pre class="screen">[service0 ~]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> -[service0 service0]$ <b class="userinput"><tt>cvs up -Pd</tt></b> + </p><div class="orderedlist"><ol type="1"><li><pre class="screen">[$OPENACS_SERVICE_NAME ~]$ <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <b class="userinput"><tt>cvs up -Pd</tt></b> (CVS feedback) -[service0 service0]$</pre></li></ol></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2523981"></a>Upgrading a Production Site Safely</h3></div></div><div></div></div><p>If you are upgrading a production OpenACS site which is on a private CVS tree, this process lets you do the upgrade without risking extended downtime or an unusable site:</p><div class="orderedlist"><ol type="1"><li><p>Declare a freeze on new cvs updates - ie, you cannot run cvs update +[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$</pre></li></ol></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2516027"></a>Upgrading a Production Site Safely</h3></div></div><div></div></div><p>If you are upgrading a production OpenACS site which is on a private CVS tree, this process lets you do the upgrade without risking extended downtime or an unusable site:</p><div class="orderedlist"><ol type="1"><li><p>Declare a freeze on new cvs updates - ie, you cannot run cvs update on the production site</p></li><li><p> Make a manual backup of the production site in addition to the automated backups</p></li><li><p>Import the new code (for example, OpenACS 5.0.4, openacs-5-0-compat versions of ETP, blogger, and other applications) into a "vendor branch" of the - <span class="replaceable"><span class="replaceable">service0</span></span> CVS tree, as described in "Upgrading a local CVS repository", step 1, above. + <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> CVS tree, as described in "Upgrading a local CVS repository", step 1, above. As soon as we do this, any cvs update command on production might bring new code onto the production site, which - would be bad.</p><p>Do step 2 above (merging conflicts in a <span class="replaceable"><span class="replaceable">service0</span></span>-upgrade working tree).</p></li><li><p> + would be bad.</p><p>Do step 2 above (merging conflicts in a <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-upgrade working tree).</p></li><li><p> Manually resolve any conflicts in the working upgrade tree </p></li><li><p>Use the upgrade script and a recent backup of the production database, to ake - a new upgraded database called <span class="replaceable"><span class="replaceable">service0</span></span>-upgrade. Now we - have a new website called <span class="replaceable"><span class="replaceable">service0</span></span>-upgrade. + a new upgraded database called <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-upgrade. Now we + have a new website called <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-upgrade. </p></li><li><p> - Test the <span class="replaceable"><span class="replaceable">service0</span></span>-upgrade site - </p></li><li><p>If <span class="replaceable"><span class="replaceable">service0</span></span>-upgrade is fully functional, do the real upgrade.</p><div class="orderedlist"><ol type="a"><li><p>Take down the <span class="replaceable"><span class="replaceable">service0</span></span> site and put up a "down for maintenance" page.</p></li><li><p>Repeat the upgrade with the most recent database</p></li><li><p>Test the that the new site is functional. If so, change the upgraded site to respond to + Test the <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-upgrade site + </p></li><li><p>If <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>-upgrade is fully functional, do the real upgrade.</p><div class="orderedlist"><ol type="a"><li><p>Take down the <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> site and put up a "down for maintenance" page.</p></li><li><p>Repeat the upgrade with the most recent database</p></li><li><p>Test the that the new site is functional. If so, change the upgraded site to respond to <span class="replaceable"><span class="replaceable">yourserver.net</span></span> requests. If not, bring the original production site back up and return to the merge.</p></li></ol></div></li></ol></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-5-0-dot.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-supporting.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading 5.0.0 to 5.0.x </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading Platform components</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-openacs-files.html#comments">View comments on this page at openacs.org</a></center></body></html> Fisheye: Tag 1.8 refers to a dead (removed) revision in file `openacs-4/packages/acs-core-docs/www/upgrade-openacs.html'. Fisheye: No comparison available. Pass `N' to diff? Index: openacs-4/packages/acs-core-docs/www/upgrade-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-overview.html,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/upgrade-overview.html 5 May 2004 12:36:08 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/upgrade-overview.html 11 Jun 2004 10:17:39 -0000 1.13 @@ -1,6 +1,6 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="next" href="upgrade-4.5-to-4.6.html" title="Upgrading 4.5 or higher to 4.6.3"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-4.5-to-4.6.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-overview"></a>Overview</h2></div></div><div></div></div><p>Starting with Version 4.5, all OpenACS core packages support +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Overview</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="next" href="upgrade-4.5-to-4.6.html" title="Upgrading 4.5 or higher to 4.6.3"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-4.5-to-4.6.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-overview"></a>Overview</h2></div></div><div></div></div><p>Starting with Version 4.5, all OpenACS core packages support automatic upgrade. That means that, if you have OpenACS 4.5 or better, you should always be able to upgrade all of your core packages automatically. If you haven't changed anything, no manual intervention should be required. If you are running - OpenACS prior to 4.5, upgrading will require manual effort.</p><p>If all of these conditions are true:</p><div class="itemizedlist"><ul type="disc"><li><p>Your OpenACS Core is 5.0.0 or later</p></li><li><p>You do not keep your OpenACS site in a local CVS repository</p></li><li><p>You do not have any custom code</p></li></ul></div><p>then you can upgrade automatically using the automated installer in the OpenACS Package Manager (APM), and you can probably skip the rest of this chapter. To upgrade directly from the OpenACS repository using the APM:</p><div class="orderedlist"><ol type="1"><li><p>Browse to the <a href="/acs-admin/install/" target="_top">Installer</a>.</p></li><li><p>Click install or upgrade under "Install from OpenACS Repository" and select the packages to install or upgrade.</p></li><li><p>The APM will download the requested packages from OpenACS.org, install the files on your hard drive, run any appropriate database upgrade scripts, and prompt you to restart the server. After restarting the server again, the upgrade is complete.</p></li></ol></div><div class="figure"><a name="id2497071"></a><p class="title"><b>Figure�5.1.�Upgrading with the APM</b></p><div class="mediaobject" align="center"><img src="images/upgrade-apm.png" align="middle" alt="Upgrading with the APM"></div></div><p>It's always a good idea to precede an upgrade attempt with a <a href="snapshot-backup.html" title="Manual backup and recovery">snapshot backup</a>.</p><div class="table"><a name="id2483838"></a><p class="title"><b>Table�5.1.�Assumptions in this section</b></p><table summary="Assumptions in this section" cellspacing="0" border="1"><colgroup><col><col></colgroup><tbody><tr><td>name of OpenACS user</td><td><span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td>OpenACS server name</td><td><span class="replaceable"><span class="replaceable">service0</span></span></td></tr><tr><td>Root of OpenACS file tree</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></span></span></td></tr><tr><td>Database backup directory</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/database-backup</span></span></td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-4.5-to-4.6.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�5.�Upgrading </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading 4.5 or higher to 4.6.3</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-overview.html#comments">View comments on this page at openacs.org</a></center></body></html> + OpenACS prior to 4.5, upgrading will require manual effort.</p><p>If all of these conditions are true:</p><div class="itemizedlist"><ul type="disc"><li><p>Your OpenACS Core is 5.0.0 or later</p></li><li><p>You do not keep your OpenACS site in a local CVS repository</p></li><li><p>You do not have any custom code</p></li></ul></div><p>then you can upgrade automatically using the automated installer in the OpenACS Package Manager (APM), and you can probably skip the rest of this chapter. To upgrade directly from the OpenACS repository using the APM:</p><div class="orderedlist"><ol type="1"><li><p>Browse to the <a href="/acs-admin/install/" target="_top">Installer</a>.</p></li><li><p>Click install or upgrade under "Install from OpenACS Repository" and select the packages to install or upgrade.</p></li><li><p>The APM will download the requested packages from OpenACS.org, install the files on your hard drive, run any appropriate database upgrade scripts, and prompt you to restart the server. After restarting the server again, the upgrade is complete.</p></li></ol></div><div class="figure"><a name="id2484949"></a><p class="title"><b>Figure�5.1.�Upgrading with the APM</b></p><div class="mediaobject" align="center"><img src="images/upgrade-apm.png" align="middle" alt="Upgrading with the APM"></div></div><p>It's always a good idea to precede an upgrade attempt with a <a href="snapshot-backup.html" title="Manual backup and recovery">snapshot backup</a>.</p><div class="table"><a name="id2494480"></a><p class="title"><b>Table�5.1.�Assumptions in this section</b></p><table summary="Assumptions in this section" cellspacing="0" border="1"><colgroup><col><col></colgroup><tbody><tr><td>name of OpenACS user</td><td><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>OpenACS server name</td><td><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>Root of OpenACS file tree</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/$OPENACS_SERVICE_NAME</span></span></td></tr><tr><td>Database backup directory</td><td><span class="replaceable"><span class="replaceable">/var/lib/aolserver/$OPENACS_SERVICE_NAME/database-backup</span></span></td></tr></tbody></table></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-4.5-to-4.6.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter�5.�Upgrading </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Upgrading 4.5 or higher to 4.6.3</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-overview.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/upgrade-supporting.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade-supporting.html,v diff -u -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/upgrade-supporting.html 5 May 2004 12:36:08 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/upgrade-supporting.html 11 Jun 2004 10:17:39 -0000 1.9 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading Platform components</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-openacs-files.html" title="Upgrading the OpenACS files"><link rel="next" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-openacs-files.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="maintenance-web.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-supporting"></a>Upgrading Platform components</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="upgrade-openfts-0.2-to-0.3.2"></a>Upgrading OpenFTS from 0.2 to 0.3.2</h3></div></div><div></div></div><p>OpenACS Full Text Search requires several pieces: the OpenFTS code, some database functions, and the OpenFTS Engine. This section describes how to upgrade OpenFTS from 0.2 to 0.3.2 and upgrade the search engine on an OpenACS site at the same time.</p><div class="orderedlist"><ol type="1"><li><p>Uninstall the old OpenFTS Engine from the <span class="replaceable"><span class="replaceable">service0</span></span> database.</p><div class="orderedlist"><ol type="a"><li><p><span class="bold"><b>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/openfts</tt>.</b></span> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading Platform components</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="upgrade.html" title="Chapter�5.�Upgrading"><link rel="previous" href="upgrade-openacs-files.html" title="Upgrading the OpenACS files"><link rel="next" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="upgrade-openacs-files.html">Prev</a> </td><th width="60%" align="center">Chapter�5.�Upgrading</th><td width="20%" align="right"> <a accesskey="n" href="maintenance-web.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade-supporting"></a>Upgrading Platform components</h2></div></div><div></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="upgrade-openfts-0.2-to-0.3.2"></a>Upgrading OpenFTS from 0.2 to 0.3.2</h3></div></div><div></div></div><p>OpenACS Full Text Search requires several pieces: the OpenFTS code, some database functions, and the OpenFTS Engine. This section describes how to upgrade OpenFTS from 0.2 to 0.3.2 and upgrade the search engine on an OpenACS site at the same time.</p><div class="orderedlist"><ol type="1"><li><p>Uninstall the old OpenFTS Engine from the <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> database.</p><div class="orderedlist"><ol type="a"><li><p><span class="bold"><b>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/openfts</tt>.</b></span> </p></li><li><p><span class="bold"><b>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration</span></span></tt>.</b></span></p></li><li><p><span class="bold"><b>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Drop OpenFTS Engine</span></span></tt></b></span></p></li></ol></div></li><li><p>Build and install the new OpenFTS driver and supporting tcl procedures. (This section of shell code is not fully documented; please exercise care.)</p><pre class="screen">cd /usr/local/src/ tar xzf /tmp/Search-OpenFTS-tcl-0.3.2.tar.gz chown -R root.root Search-OpenFTS-tcl-0.3.2/ @@ -17,22 +17,22 @@ cd tsearch/ make make install - exit</pre><p>In order for the OpenACS 4.6 OpenFTS Engine to use the OpenFTS 0.3.2 driver, we need some commands added to the database.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> - [service0 dev]$ <b class="userinput"><tt>psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/pgsql/share/contrib/openfts.sql</tt></b> + exit</pre><p>In order for the OpenACS 4.6 OpenFTS Engine to use the OpenFTS 0.3.2 driver, we need some commands added to the database.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> + [$OPENACS_SERVICE_NAME dev]$ <b class="userinput"><tt>psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/pgsql/share/contrib/openfts.sql</tt></b> CREATE CREATE - [service0 dev]$ <b class="userinput"><tt>psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/src/postgresql-7.2.3/contrib/tsearch/tsearch.sql</tt></b> + [$OPENACS_SERVICE_NAME dev]$ <b class="userinput"><tt>psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/src/postgresql-7.2.3/contrib/tsearch/tsearch.sql</tt></b> BEGIN CREATE (~30 more lines) - [service0 dev]$ <b class="userinput"><tt>exit</tt></b> + [$OPENACS_SERVICE_NAME dev]$ <b class="userinput"><tt>exit</tt></b> [root root]# - <span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">service0</span></span> -psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/pgsql/share/contrib/openfts.sql -psql <span class="replaceable"><span class="replaceable">service0</span></span> -f /usr/local/src/postgresql-7.2.3/contrib/tsearch/tsearch.sql + <span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> +psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/pgsql/share/contrib/openfts.sql +psql <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> -f /usr/local/src/postgresql-7.2.3/contrib/tsearch/tsearch.sql exit</span></span></pre></li><li><p><b>OPTIONAL: Install the new OpenFTS Engine.�</b>If you want to upgrade the OpenFTS Engine, do these steps. (You must have already upgraded the OpenFTS driver to - 0.3.2.)</p><div class="orderedlist"><ol type="a"><li><p>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/admin/site-map</tt></p></li><li><p>On the <tt class="computeroutput">openfts</tt> line, click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">set parameters</span></span></tt>.</p></li><li><p>Change the value of <tt class="computeroutput">openfts_tcl_src_path</tt> from <tt class="computeroutput">/usr/local/src/Search-OpenFTS-tcl-0.2/</tt> to <tt class="computeroutput">/usr/local/src/Search-OpenFTS-tcl-0.3.2/</tt></p></li><li><p>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Set Parameters</span></span></tt></p></li><li><pre class="screen">[root root]# restart-aolserver <span class="replaceable"><span class="replaceable">service0</span></span></pre></li><li><p>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/openfts</tt></p></li><li><p><span class="bold"><b>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration</span></span></tt>.</b></span></p></li><li><p><span class="bold"><b>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Initialize OpenFTS Engine</span></span></tt></b></span></p></li></ol></div></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="upgrade-postgres-7.2-to-7.3"></a>Upgrading from PostGreSQL 7.2 to 7.3</h3></div></div><div></div></div><p>An OpenACS database created in PostGreSQL 7.2 will not + 0.3.2.)</p><div class="orderedlist"><ol type="a"><li><p>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/admin/site-map</tt></p></li><li><p>On the <tt class="computeroutput">openfts</tt> line, click on <tt class="computeroutput"><span class="guilabel"><span class="guilabel">set parameters</span></span></tt>.</p></li><li><p>Change the value of <tt class="computeroutput">openfts_tcl_src_path</tt> from <tt class="computeroutput">/usr/local/src/Search-OpenFTS-tcl-0.2/</tt> to <tt class="computeroutput">/usr/local/src/Search-OpenFTS-tcl-0.3.2/</tt></p></li><li><p>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Set Parameters</span></span></tt></p></li><li><pre class="screen">[root root]# restart-aolserver <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></pre></li><li><p>Browse to <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver</span></span>/openfts</tt></p></li><li><p><span class="bold"><b>Click <tt class="computeroutput"><span class="guilabel"><span class="guilabel">Administration</span></span></tt>.</b></span></p></li><li><p><span class="bold"><b>Click <tt class="computeroutput"><span class="guibutton"><span class="guibutton">Initialize OpenFTS Engine</span></span></tt></b></span></p></li></ol></div></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="upgrade-postgres-7.2-to-7.3"></a>Upgrading from PostGreSQL 7.2 to 7.3</h3></div></div><div></div></div><p>An OpenACS database created in PostGreSQL 7.2 will not work correctly in PostGreSQL 7.3. This is because 7.2 truncates function names to 31 characters, but 7.3 does not. This does not cause problems in 7.2, because truncation occurs both at @@ -42,20 +42,20 @@ are not, and so they don't match. Also some functions use casting commands that no longer work in 7.3 and these functions must be recreated.</p><p> - To upgrade an OpenACS site from PostGreSQL 7.2 to 7.3, first upgrade the kernel to 4.6.3. Then, dump the database, run the upgrade script <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/bin/pg_7.2to7.3_upgrade_helper.pl</tt> on the dump file, and reply the dump. See <a href="http://openacs.org/forums/message-view?message_id=109337" target="_top">Forum OpenACS Q&A: PG 7.2->7.3 upgrade gotcha?</a>. Example:</p><div class="orderedlist"><ol type="1"><li><p>Back up the database as per <a href="snapshot-backup.html#postgres-snapshot-backup" title="PostgreSQL">PostgreSQL</a>.</p></li><li><p>Run the upgrade script on the backup file.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">service0</span></span></tt></b> - [service0 <span class="replaceable"><span class="replaceable">service0</span></span>]# <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span>/bin</tt></b> - [service0 bin]$ <b class="userinput"><tt>./pg_7.2to7.3_upgrade_helper.pl \ + To upgrade an OpenACS site from PostGreSQL 7.2 to 7.3, first upgrade the kernel to 4.6.3. Then, dump the database, run the upgrade script <tt class="computeroutput">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/bin/pg_7.2to7.3_upgrade_helper.pl</tt> on the dump file, and reply the dump. See <a href="http://openacs.org/forums/message-view?message_id=109337" target="_top">Forum OpenACS Q&A: PG 7.2->7.3 upgrade gotcha?</a>. Example:</p><div class="orderedlist"><ol type="1"><li><p>Back up the database as per <a href="snapshot-backup.html#postgres-snapshot-backup" title="PostgreSQL">PostgreSQL</a>.</p></li><li><p>Run the upgrade script on the backup file.</p><pre class="screen">[root root]# <b class="userinput"><tt>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> + [$OPENACS_SERVICE_NAME <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>]# <b class="userinput"><tt>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/bin</tt></b> + [$OPENACS_SERVICE_NAME bin]$ <b class="userinput"><tt>./pg_7.2to7.3_upgrade_helper.pl \ ../database-backup/nightly.dmp \ ../database-backup/upgrade-7.3.dmp \ - /var/lib/aolserver/<span class="replaceable"><span class="replaceable">service0</span></span></tt></b> + /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></tt></b> ================================================================== looking for function acs_object__check_object_ancest in oacs grep result: /var/lib/aolserver/aufrecht-dev/packages/acs-kernel/sql/postgresql/acs-objects-create.sql:create function acs_object__check_object_ancestors (integer,integer,integer) replacing acs_object__check_object_ancest with acs_object__check_object_ancestors <span class="emphasis"><em>(many lines omitted)</em></span> - [service0 bin]$ + [$OPENACS_SERVICE_NAME bin]$ </pre></li><li><p>Use perl to replace <tt class="computeroutput">timestamp</tt> with <tt class="computeroutput">timestamptz</tt> in the dump file. See example perl code in step two in <a href="http://cvs.openacs.org/cvs/openacs-4/contrib/misc/upgrade_4.6_to_5.0.sh?only_with_tag=HEAD" target="_top">/contrib/misc/upgrade_4.6_to_5.0.sh</a></p></li><li><p>Create a new user for PostgreSQL 7.3.x, as per the Postgres installation guide. Keep in mind that your installation location is different, and your startup script @@ -73,6 +73,6 @@ installs. When you do ./configure, you'll need to include --prefix=$HOME to ensure that it is installed in the postgres73 user's home directory.</p></li><li><p>Change the path in - <span class="replaceable"><span class="replaceable">service0</span></span>'s .bashrc or + <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>'s .bashrc or .bash_profile (or both) files to reflect the new postgres73 user directory. Also add in the PGPORT.</p></li><li><p>Restore the database from dump as per the <a href="snapshot-backup.html#restore-postgres">recovery instructions</a>.</p></li></ol></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upgrade-openacs-files.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="maintenance-web.html">Next</a></td></tr><tr><td width="40%" align="left">Upgrading the OpenACS files </td><td width="20%" align="center"><a accesskey="u" href="upgrade.html">Up</a></td><td width="40%" align="right"> Chapter�6.�Production Environments</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade-supporting.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/upgrade.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade.html,v diff -u -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/upgrade.html 5 May 2004 12:36:08 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/upgrade.html 11 Jun 2004 10:17:39 -0000 1.17 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�5.�Upgrading</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="how-do-I.html" title="How Do I?"><link rel="next" href="upgrade-overview.html" title="Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="how-do-I.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="upgrade"></a>Chapter�5.�Upgrading</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="upgrade-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot.html">Upgrading 5.0.0 to 5.0.x</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files.html">Upgrading the OpenACS files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting.html">Upgrading Platform components</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter�5.�Upgrading</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part�II.�Administrator's Guide"><link rel="previous" href="how-do-I.html" title="How Do I?"><link rel="next" href="upgrade-overview.html" title="Overview"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="how-do-I.html">Prev</a> </td><th width="60%" align="center">Part�II.�Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="upgrade-overview.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="upgrade"></a>Chapter�5.�Upgrading</h2></div></div><div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="upgrade-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading 4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot.html">Upgrading 5.0.0 to 5.0.x</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files.html">Upgrading the OpenACS files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting.html">Upgrading Platform components</a></span></dt></dl></div><div class="authorblurb"><p>by <a href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="how-do-I.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="upgrade-overview.html">Next</a></td></tr><tr><td width="40%" align="left">How Do I? </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Overview</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/upgrade.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/uptime.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/uptime.html,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-core-docs/www/uptime.html 5 May 2004 12:36:08 -0000 1.3 +++ openacs-4/packages/acs-core-docs/www/uptime.html 11 Jun 2004 10:17:39 -0000 1.4 @@ -1 +1 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>External uptime validation</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="analog-setup.html" title="Set up Log Analysis Reports"><link rel="next" href="maint-performance.html" title="Diagnosing Performance Problems"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="analog-setup.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="maint-performance.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="uptime"></a>External uptime validation</h2></div></div><div></div></div><p>The <a href="http://uptime.openacs.org/uptime/" target="_top">OpenACS uptime site</a> can monitor your site and send you an email whenever your site fails to respond. If you test the url <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>/SYSTEM/dbtest.tcl</tt>, you should get back the string <tt class="computeroutput">success</tt>.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="analog-setup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="maint-performance.html">Next</a></td></tr><tr><td width="40%" align="left">Set up Log Analysis Reports </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Diagnosing Performance Problems</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/uptime.html#comments">View comments on this page at openacs.org</a></center></body></html> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>External uptime validation</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter�6.�Production Environments"><link rel="previous" href="analog-setup.html" title="Set up Log Analysis Reports"><link rel="next" href="maint-performance.html" title="Diagnosing Performance Problems"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="analog-setup.html">Prev</a> </td><th width="60%" align="center">Chapter�6.�Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="maint-performance.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="uptime"></a>External uptime validation</h2></div></div><div></div></div><p>The <a href="http://uptime.openacs.org/uptime/" target="_top">OpenACS uptime site</a> can monitor your site and send you an email whenever your site fails to respond. If you test the url <tt class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>/SYSTEM/dbtest.tcl</tt>, you should get back the string <tt class="computeroutput">success</tt>.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="analog-setup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="maint-performance.html">Next</a></td></tr><tr><td width="40%" align="left">Set up Log Analysis Reports </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> Diagnosing Performance Problems</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/uptime.html#comments">View comments on this page at openacs.org</a></center></body></html> Index: openacs-4/packages/acs-core-docs/www/variables.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/variables.html,v diff -u -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/variables.html 5 May 2004 12:36:08 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/variables.html 11 Jun 2004 10:17:39 -0000 1.15 @@ -1,9 +1,9 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Variables</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-plsql.html" title="PL/SQL Standards"><link rel="next" href="automated-testing-best-practices.html" title="Automated Testing"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-plsql.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="automated-testing-best-practices.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="variables"></a>Variables</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">joel@aufrecht.org</a></p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Variables</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter�12.�Engineering Standards"><link rel="previous" href="eng-standards-plsql.html" title="PL/SQL Standards"><link rel="next" href="automated-testing-best-practices.html" title="Automated Testing"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-plsql.html">Prev</a> </td><th width="60%" align="center">Chapter�12.�Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="automated-testing-best-practices.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="variables"></a>Variables</h2></div></div><div></div></div><div class="authorblurb"><p>By <a href="mailto:joel@aufrecht.org" target="_top">joel@aufrecht.org</a></p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="variables-datetime"></a>Date and Time Variables</h3></div></div><div></div></div><p>Starting with OpenACS 5.0 and the introduction of acs-lang, we recommend retrieving date/time information from the database in - ANSI format and then using <a href="/api-doc/proc-view?proc=lc%5ftime%5ffmt" target="_top">lc_time_fmt</a> to format it for display.</p><div class="example"><a name="id2485878"></a><p class="title"><b>Example�12.1.�Getting datetime from the database ANSI-style</b></p><pre class="programlisting">db_multirow -extend { mydate_pretty } { + ANSI format and then using <a href="/api-doc/proc-view?proc=lc%5ftime%5ffmt" target="_top">lc_time_fmt</a> to format it for display.</p><div class="example"><a name="id2449027"></a><p class="title"><b>Example�12.1.�Getting datetime from the database ANSI-style</b></p><pre class="programlisting">db_multirow -extend { mydate_pretty } { select to_char(mydate, 'YYYY-MM-DD HH24:MI:SS') as mydate_ansi, ... ... Index: openacs-4/packages/acs-core-docs/www/win2k-installation.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/win2k-installation.html,v diff -u -r1.35 -r1.36 --- openacs-4/packages/acs-core-docs/www/win2k-installation.html 5 May 2004 12:36:08 -0000 1.35 +++ openacs-4/packages/acs-core-docs/www/win2k-installation.html 11 Jun 2004 10:17:39 -0000 1.36 @@ -1,4 +1,4 @@ -<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Installation Guide for Windows2000</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="openacs.html" title="Install OpenACS 5.2.0d1"><link rel="next" href="mac-installation.html" title="OpenACS Installation Guide for Mac OS X"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="openacs.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="mac-installation.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="win2k-installation"></a>OpenACS Installation Guide for Windows2000</h2></div></div><div></div></div><div class="authorblurb"><p>by Matthew Burke and Curtis Galloway</p> +<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>OpenACS Installation Guide for Windows2000</title><meta name="generator" content="DocBook XSL Stylesheets V1.62.0"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="complete-install.html" title="Chapter�3.�Complete Installation"><link rel="previous" href="openacs.html" title="Install OpenACS 5.2.0d1"><link rel="next" href="mac-installation.html" title="OpenACS Installation Guide for Mac OS X"><link rel="stylesheet" href="openacs.css" type="text/css"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" border="0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="openacs.html">Prev</a> </td><th width="60%" align="center">Chapter�3.�Complete Installation</th><td width="20%" align="right"> <a accesskey="n" href="mac-installation.html">Next</a></td></tr></table><hr></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="win2k-installation"></a>OpenACS Installation Guide for Windows2000</h2></div></div><div></div></div><div class="authorblurb"><p>by Matthew Burke and Curtis Galloway</p> OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. </div><p><span class="strong">NOTE:</span> These instructions were