"SfR Fresh" - the SfR Freeware/Shareware Archive 
Member "ocs-2.1.0-1/docs/UPGRADE" of archive ocs-2.1.0-1.tar.gz:
As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers.
Alternatively you can here view or download the uninterpreted source code file.
That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
1 Upgrading an OCS Installation
2 -----------------------------
3
4 Note: backing up your current data files and database is strongly recommended
5 prior to upgrading OCS.
6
7 If you are using PHP Safe Mode, please ensure that the max_execution_time
8 directive in your php.ini configuration file is set to a high limit. If this
9 or any other time limit (e.g. Apache's "Timeout" directive) is reached and
10 the upgrade process is interrupted, manual intervention will be required.
11
12
13 ======================
14 Upgrading from OCS 2.x
15 ======================
16
17 Upgrading to the latest version of OCS involves two steps:
18
19 - Obtaining the latest OCS code
20 - Upgrading the OCS database
21
22 It is highly recommended that you also review the release notes (docs/RELEASE)
23 and other documentation in the docs directory before performing an upgrade.
24
25 New in OCS 2.0
26 --------------
27
28 OCS 2.0 is the first release in the OCS 2.x series.
29
30
31 Obtaining the latest OCS code
32 -----------------------------
33
34 The OCS source code is available in three forms: as patches against older
35 releases of OCS, from an anonymous CVS repository, and as a complete
36 standalone package.
37
38 Patching or updating from CVS is the recommended approach if you have made local
39 modifications to the system.
40
41 1. Patch
42
43 Patch files for older releases of OCS can be downloaded from the OCS web site.
44
45 To update by patching, download the appropriate patch file for your current
46 version of OCS and run the following command from your OCS directory:
47
48 $ patch -p1 < PATCH_FILE
49
50 "PATCH_FILE" should be replaced with the path to the decompressed patch file
51 that was downloaded, e.g. "ocs-2.0.0_to_2.0.1.patch".
52
53 Alternatively, OCS 2.0 provides a command-line tool to automatically download
54 and apply the appropriate patch to upgrade to the latest release. To use this
55 tool run the following command from your OCS directory:
56
57 $ php tools/upgrade.php patch
58
59 Note that this will require the GNU patch tool to be installed. GNU patch is
60 included in most *NIX distributions, and is available for Windows and Solaris
61 as a download. Windows users may need to work around a patch bug by converting
62 the line-endings in the patch file from UNIX to DOS; to do this, open the patch
63 file in Notepad and save it again.
64
65
66 2. CVS
67
68 If your instance of OCS was checked out from the PKP anonymous CVS repository
69 (see docs/README-CVS), you can update the OCS code using a CVS client.
70
71 To update the OCS code from a CVS check-out, run the following command from
72 your OCS directory:
73
74 $ cvs update -r TAG
75
76 "TAG" should be replaced with the CVS tag corresponding to the new release.
77 OCS release version tags are of the form "ocs-MAJOR_MINOR_REVSION-BUILD".
78 For example, the tag for the initial release of OCS 2.0.0 is "ocs-2_0_0-0".
79
80 Consult the README of the latest OCS package or the OCS web site for the
81 tag corresponding to the latest available OCS release.
82
83 Note that attempting to update to an unreleased version (e.g., using the HEAD
84 tag to obtain the bleeding-edge OCS code) is not recommended for anyone other
85 than OCS or third-party developers; using experimental code on a production
86 deployment is strongly discouraged and will not be supported in any way by
87 the OCS team.
88
89
90 3. Full Package
91
92 It is also possible to upgrade by downloading the complete package for the
93 latest release of OCS:
94
95 - Download and decompress the package from the OCS web site
96 - Make a copy of the config.inc.php provided in the new package
97 - Move or copy the following files and directories from your current OCS
98 installation:
99 - config.inc.php
100 - public/
101 - Your uploaded files directory ("files_dir" in config.inc.php), if it
102 resides within your OCS directory
103 - Replace the current OCS directory with the new OCS directory, moving the
104 old one to a safe location as a backup
105 - Be sure to review the Configuration Changes section of the release notes
106 in docs/release-notes/README-(version) for all versions between your
107 original version and the new version. You may need to manually add
108 new items to your config.inc.php file.
109
110
111
112 Upgrading the OCS database
113 --------------------------
114
115 After obtaining the latest OCS code, an additional script must be run to
116 complete the upgrade process by upgrading the OCS database and potentially
117 executing additional upgrade code.
118
119 This script can be executed from the command-line or via the OCS web interface.
120
121 1. Command-line
122
123 If you have the CLI version of PHP installed (e.g., /usr/bin/php), you can
124 upgrade the database by running the following command from the OCS directory:
125
126 $ php tools/upgrade.php upgrade
127
128
129 2. Web
130
131 If you do not have the PHP CLI installed, you can also upgrade by running a
132 web-based script. To do so:
133
134 - Edit config.inc.php and change "installed = On" to "installed = Off"
135 - Open a web browser to your OCS site; you should be redirected to the
136 installation and upgrade page
137 - Select the "Upgrade" link and follow the on-screen instructions
138 - Re-edit config.inc.php and change "installed = Off" back to
139 "installed = On"
140
141
142
143
144 ======================
145 Migrating from OCS 1.x
146 ======================
147
148 OCS 2 represents a complete re-design and re-implementation of the Open Conference
149 Systems project, and as such, it is not possible to directly upgrade a 1.x
150 system to 2.x.
151
152 Instead, a migration utility has been provided to allow content from OCS 1.x to
153 be imported into an installed 2.x system -- including most conference settings and
154 all user, issue, and paper data.
155
156 This migration tool imports papers, reviews, registrations, tracks, and attendant
157 metadata, but the migration process IS NOT COMPREHENSIVE and there is a
158 considerable amount of data and configuration that will not be migrated. It is
159 STRONGLY SUGGESTED that you review all migrated data to ensure that it has been
160 imported properly, partcularly security settings, registration and payment info,
161 and other critical and/or private data.
162
163 To migrate data from OCS 1.x to a 2.x system:
164
165 - Install the latest release of OCS 2 onto the same server as the current
166 OCS 1 installation
167 - Run the migration command-line or web-based utility to import data
168
169
170 The migration utility can be used to either create a new OCS 2 conference with all
171 settings and data from an OCS 1 conference, or to import just users, issues, and
172 articles into an already existing OCS 2 conference.
173
174 Note that, depending on the amount of content in the conference to be imported, it
175 may take a long time for the migration utility to complete -- especially if your
176 system is configured to index full-text files.
177
178 1. Using the migration command-line tool:
179
180 $ php tools/migrate.php [conference_path] [sched_conf_path] [ocs1_path] [options]
181
182 Options:
183
184 conference_path Conference path to create (E.g., "ocs")
185 If path already exists, all content except conference settings
186 will be imported into the existing conference
187
188 sched_conf_path Scheduled conference path to create (E.g., "2007")
189 If path already exists, all content except scheduled
190 conference settings will be imported into the existing
191 scheduled conference
192
193 ocs1_path Complete local filesystem path to the OCS 1 installation
194 (E.g., "/var/www/ocs")
195
196 options importRegistrations - import registration type and user
197 data
198 verbose - print additional debugging information
199
200 Examples:
201
202 To import all data from "/var/www/ocs" into a new conference "import1" and
203 scheduled conference "2007":
204
205 $ php tools/migrate.php import1 2007 /var/www/ocs importRegistrations
206
207 To import just users, issues, and articles from "/var/www/ocs" into an
208 existing conference "import2" and scheduled conference "2007":
209
210 $ php tools/migrate.php import2 2007 /var/www/ocs
211
212 WARNING: If the CLI tool is executed as a different user than the Apache
213 user, you will need to chown or chmod the public and uploaded files
214 directories before (for the user running the tool) and afterwards (to
215 Apache) to set the correct ownership/permissions.
216
217
218 2. Using the migration web-based tool:
219
220 The web-based migration utility can be found under:
221
222 Site Administration > Hosted Conferences > Import From OCS 1
223
224 The web-based tool is used nearly identically to the CLI tool.
225
226
227 Additional notes regarding migration:
228
229 - After using the migration tool, edit and save the hosted conference settings
230 under Site Administration, and proceed through and complete all Conference
231 Setup steps under Conference Management -- there are a number of new and
232 modified settings in OCS 2 compared to OCS 1
233 - Any number of OCS 1.x conferences can be imported into a single OCS 2
234 instance (OCS 2 is designed as a multiple conference system)
235 - In addition to hosting multiple conferences, OCS 2 introduces "scheduled
236 conferences" which may be associated with a recurring conference. For
237 example, an annual conference would host one scheduled conference per
238 year, typically named for the year in which it occurs.
239 - OCS 2 requires both user usernames and email addresses to be unique (OCS
240 1 did not enforce the latter restriction):
241 - If a user already exists with the same username as an imported
242 user, all imported data will be associated with the existing user
243 - If a user already exists with the same email address as an
244 imported user, the email address of the imported user will be
245 prefixed with "ocs-<username>+" to ensure uniqueness -- such users
246 can then be updated manually post-migration
247 - Modified email templates and RST versions are not migrated due to the
248 numerous revisions and enhancements to these components in OCS 2
249 - Migrated registration types are given a 12-month duration and public
250 visibility by default -- these settings can be modified post-migration
251
252
253 OCS 1.x features that are currently not supported in 2.x:
254
255 - Most configuration options in OCS 1.x are not migrated because of
256 differences in operation between the two systems. After migrating, review
257 and configure your conference and scheduled conferences to ensure that
258 the site will operate as you need.
259 - OCS 2 currently only includes an English localization (see the README for
260 information on producing a translation for other languages)
261 - LOCKSS support is currently unavailable, but will likely appear in a
262 future release
263 - Room and session scheduling is not currently implemented, and will be
264 added in the near future.