(file) Return to readme.txt CVS log (file) (dir) Up to [Pegasus] / pegasus

  1 karl  1.11 
  2            OpenPegasus - A Manageability Services Broker for the DMTF CIM/WBEM Standards
  3 karl  1.1  
  4 mike  1.3  Author: Mike Brasher, Karl Schopmeyer
  5            
  6 karl  1.11 Tagline: OpenPegasus is an object manager for DMTF CIM objects written in C++
  7 karl  1.5           and supported by The Open Group
  8 karl  1.4  
  9 karl  1.14 STATUS: Revised October 2003 to match Pegasus release 2.3
 10 karl  1.15 
 11            NOTE: Obsolete. See readme.html
 12 karl  1.11 Contents:
 13 mike  1.7  =========
 14            
 15 karl  1.11 1.  Overview
 16            2.  Availability of Pegasus
 17            3.  Pegasus major components
 18            4.  Pegasus Dependencies
 19            5.  The Pegasus Directory Structure
 20            6.  Installation
 21            7.  Building Pegasus
 22            8.  Populate the Repository
 23            9.  The MU Utility
 24            10. Notes about Building Pegasus on Linux
 25            11. Notes on building Pegasus with SSL
 26            12. Building Pegasus on Windows 2000 or Windows XP With Microsoft Visual C++
 27            13. Installing the Pegasus HTML Test Client
 28            14. Development with Pegasus and Pegasus Tools
 29            15. Commands
 30            16. Creating SSL certifications.
 31 humberto 1.13 17. Testing with ICU enabled
 32               18. Documentation
 33               19. Participate
 34 karl     1.11 
 35               
 36               
 37               
 38               1. Overview:
 39               ============
 40               
 41               OpenPegasus (also refered to as Pegasus):
 42               
 43 karl     1.5  Pegasus is an open-source object manager for DMTF CIM objects. It is written
 44               in C++ and includes the Object manager, a set of defined interfaces, and SDKs
 45               for both client, providers, and services extensions.  It is maintained
 46               consistent with the DMTF CIM and WBEM specifications except for any exceptions
 47               noted in the documentation.
 48 karl     1.1  
 49               This distribution represents a work in progress towards building a Pegasus
 50 mike     1.3  release. Pegasus is open source and is covered under the following license.
 51 karl     1.1  This version is incomplete and is directed towards evaluators and developers
 52               of the Pegasus Architecture.
 53               
 54               Pegasus is being developed and maintained under the auspices of The Open
 55               Group. Pegasus is maintained under the license defined in the doc directory
 56               (LICENSE) of this release.  This licensing is intended to support as wide a
 57               distribution as possible with minimal demands on the users.
 58               
 59 karl     1.11 This distribution represents a snapshot of the current work. Currently Pegasus
 60 karl     1.1  is in phase 1 of a multiphase development project. This snapshot is primarily
 61               for developers and for evaluation of the project.
 62               
 63 mike     1.3  More information on this project, access to the CVS, and documentation on
 64               Pegasus are available from the OpenGroup WEB site.
 65 karl     1.1  
 66               There are separate files in the release for
 67               
 68 karl     1.11 		 History of releases - HISTORY
 69               		 What's new for this release - WHATSNEW
 70               		 What's Broken - BUGS
 71 karl     1.1  
 72               In addition, the roadmap for Pegasus and further information on the project is
 73               available on The Opengroup Pegasus WEB Site.
 74               
 75 karl     1.11 http://www.openpegasus.org
 76               
 77               
 78               2. Availability of Pegasus:
 79               ============================
 80               
 81               Pegasus is distributed as open source.  The distribution is available via 
 82               CVS and snapshot images in tar and zip file formats.
 83               
 84               The source code from CVS can be found at the following Open Group CVS server;
 85               
 86                        cvs.opengroup.org:/cvs/MSB 
 87               
 88               using the password authenticating server option (pserve).
 89               
 90               Anonymous access for read is with the name and password "anon" as follows:
 91               
 92               	%export CVSROOT=:pserver:anon@cvs.opengroup.org:/cvs/MSB
 93               	%cvs login
 94               	  
 95                        When requested, enter the password "anon"
 96 karl     1.1  
 97 karl     1.11 The source tree is in the directory pegasus. To check out the complete Pegasus  
 98               source tree just type:
 99 karl     1.1  
100 karl     1.11          cvs co pegasus
101 karl     1.1  
102 karl     1.11 A Pegasus directory will be created under the current directory and populated
103               with the complete source tree and documentation. To get the latest updates 
104               after a checkout just type this from Pegasus root:
105 karl     1.1  
106 karl     1.11          cvs update -d
107 mike     1.3  
108               
109 karl     1.11 Active contributors to Pegasus have write access to the CVS repository.
110                If you are interested in contributing back to the Pegasus project, 
111               (i.e. write (checkin) access to CVS) please request access from either
112               Martin Kirk (m.kirk@opengroup.org) or Karl Schopmeyer (k.schopmeyer@opengroup.org).
113 karl     1.1  
114 karl     1.11 
115               3. Pegasus Major Components:
116               =============================
117 mike     1.3  
118 karl     1.1  The major components of Pegasus are:
119               
120 mike     1.3  Pegasus Server - WBEM/CIM Server with interfaces for providers and clients
121 karl     1.1  
122 karl     1.5  Pegasus Repositories - Today Pegasus provides a defined class repository
123                   interface and a simple file based class repository. It also includes
124                   an instance repository. Note that these repository were created for
125                   functionality, not efficieny. It is expected that they will be replaced
126 karl     1.11     with other implementations of the respository function as the need arises.
127 mike     1.3  
128 karl     1.4  Pegasus Client SDK - Tools for building Pegasus clients based on the Pegasus
129                   C++ interfaces and using the WBEM HTTP/XML protocols or directly
130 mike     1.3      interfacing with Pegasus.
131               
132 karl     1.4  Pegasus Test Clients - Simple test clients being developed as part of the
133 mike     1.3      Pegasus development process
134               
135 karl     1.4  Pegasus HTML Test Client - To aid in testing we created a test client for
136                   Pegasus that uses a WEB server (ex. Apache) with a set of CGI modules and
137                   HTML to allow the entry of Pegasus operations from a WEB browser as forms
138 karl     1.11     and the receipt of the response as WEB pages. This has proven useful as a
139 mike     1.3      test tool and can be used for a wide variety of demonstrations.
140 karl     1.1  
141 karl     1.11 Pegasus Provider SDK - Tools for building Pegasus providers using the Pegasus
142 karl     1.5      C++ interfaces.
143               
144 karl     1.11 Pegasus Providers - Providers to illustrate the use of Pegasus services including 
145               providers for test and demonstration.
146 karl     1.1  
147 karl     1.11 Pegasus Service Extensions -  Common services for use by other Pegasus 
148               components to extend Pegasus capabilites. 
149 karl     1.1  
150 karl     1.5  Pegasus MOF Compiler - FA standalone compiler for MOF files that can be used
151 karl     1.11 to install MOF into the Pegasus schema repository and also to check syntax. 
152               There is also a tool to extract the MOF from the repository.
153 karl     1.1  
154 karl     1.11 
155               4. Pegasus Dependencies:
156               =========================
157 karl     1.1  
158               We have worked to minimize the dependence of Pegasus on other software
159 karl     1.11 packages and tools. Currently Pegasus has the following dependencies:
160 karl     1.1  
161 mike     1.7  1.  GNUMAKE - To simplify the building of Pegasus across multiple platforms we 
162                   have standardized on a set of build tools including: GNUMAKE. We are using 
163 kumpf    1.12     GNUMAKE 3.79.1 successfully both in Windows and Linux environments.
164 karl     1.1  
165 mike     1.7      GNUMAKE is available from
166 karl     1.1  
167                   http://www.gnu.org
168               
169 mike     1.7  
170 karl     1.11 2.  MU.EXE - To minimize the difference between Linux and Windows for GNUMAKE,
171 mike     1.7      we have created a utility called MU.exe.  This utility is required for 
172 karl     1.11     Pegasus make with ONLY Windows environment. It is provided as an alternative to 
173 mike     1.7      requiring a number of UNIX utilities (SH, RM, etc.) on the windows platform
174                   and effectively provides the functions of these utilities that GNUMAKE 
175                   needs. MU is not required on UNIX or LINUX platforms.
176               
177                   NOTE: The binary for MU.EXE is not distributed in the Pegasus bin directory.
178                   You must build it separately.  MU source code is part of the distribution
179                   in the directory src/utils/MU with its own make file.  You must compile MU
180                   before you initiate the Pegausu make.
181               
182 karl     1.11     NOTE: A copy of the binary is made available as a zip file on the Pegasus
183                   WEB site.
184               
185                   Again, MU is used ONLY if you are using Windows.
186               
187 mike     1.7  
188 karl     1.11 3.  FLEX and BISON - These tools were used to develop the MOF compiler and WQL 
189                   parser. Anybody intending to recompile the compiler or parser from scratch 
190                   will be required to have these tools. They are only required if changes need 
191                   to be made to the files for parsing and compiling.
192 mike     1.7  
193               4.  DOC++ - The Pegasus documentation is taken from a combination of text files
194                   and the Pegasus header files themselves.  This documentation is formatted 
195                   with DOC++ and GAWK.  These tools are required if the documentation is to 
196                   be recreated but we expect that only the core team will be recreating 
197                   documentaiton.
198 mike     1.3  
199 karl     1.11 
200               5. The Pegasus Directory Structure
201               ===================================
202 karl     1.1  
203 karl     1.4  Pegasus is distributed as a complete directory structure that should be
204 mike     1.3  installed either from one of the snapshots or from CVS.
205 karl     1.1  
206               This structure is generally as follows
207 mike     1.3  
208 karl     1.4  Pegasus                     Pegasus Root directory
209 karl     1.5  
210                   cgi                     Source for the Pegasus WEB Based Test client
211 karl     1.11         cgi-bin             CGI Directories for WEB demonstration.
212                                               This directory is normally empty but can
213                                               be populated from the runtime with the make
214                                               from cgi.
215                       htdocs              HTML Pages for Pegasus WEB emonstration
216 karl     1.5      doc                     Miscellaneous Pegasus Documents.
217 karl     1.11     DevManual               Source and build files for developers' manual
218 karl     1.4      mak                     General make files (used by other makes)
219 karl     1.1      src                     All Pegasus Source Files
220 karl     1.14         ACEExample          Test directrory with examples of the use of ACE (obsolete). 
221 karl     1.11         Clients             Source for various test clients and client SDK
222 karl     1.4              CGICLIENT       Pegasus test client that uses a WEB browser
223 karl     1.14         JAVA                Java Client support modules
224 karl     1.1          Pegasus
225 karl     1.4              Client          Pegasus Client API Tests
226 karl     1.1                  depends
227                               tests
228                           Common          Pegasus Common Functions (C++ source and headers
229                               tests       Test programs for the common functions
230 karl     1.14             Compiler        Pegasus MOF compiler
231                           Config          TBD
232                           Consumer        TBD
233                           ControlProvidersImplementation of Pegasus internal providers
234                           ExportClient    TBD
235                           ExportServer    TBD
236                           Handler         TBD
237                           HandlerService  TBD
238                           IndicationService TBD
239                           Listener        TBD
240 karl     1.1              Protocol        Pegasus Client HTTP/XML Protocol Modules
241                               depends
242 karl     1.11             Provider        Pegasus Provider interface functions
243 karl     1.14             ProviderManager Provider Manager service that manages providers
244                           ProviderManager2Pluggable Provider Manager service
245 karl     1.11             Repository      Pegasus Repository Interfaces and Simple Repository
246 karl     1.1                  tests       Tests for Repository Functions
247 karl     1.14             Security        TBD
248 karl     1.1              Server          Pegasus Server Modules
249 karl     1.14             WQL             TBD
250 karl     1.11         Providers           Pegasus test and required providers
251 karl     1.14             generic         TBD this and following
252                           IndicationConsumer
253                           Linux
254                           ManaedSystem
255                           slp
256                           statistic
257                           sample
258                           testproviders
259                           
260                       Server              Pegasus executable build
261                       slp
262                       StandardIncludes
263                       tools               MU and other utilities written for Pegasus support
264                       Unsupported         Code that is made available but is not supported or included
265                                           in the normal make.
266                       WMIMapper           Pegasus implementation that implements mapping to Microsoft
267                                           WMI objects.
268 karl     1.5  
269               Runtime Directories
270 karl     1.11      $PEGASUS_HOME$         Home directory for runtime.  All compiler, linker
271 karl     1.5                              documentation creation, etc. is put here.
272 karl     1.11      bin                    Destination for executable and DLL modules from
273                                               Pegasus build
274                    Manual                 HTML output of the Pegasus Manual
275                    lib                    Destination for Pegasus LIB modules
276                    obj                    Destination for object modules
277                    repository             This Directory contains the created repository
278 karl     1.5  
279 karl     1.1  
280 karl     1.11 6. Installation
281               ================
282 karl     1.1  
283 karl     1.11 Pegasus today is provided only as a source distribution. 
284 karl     1.1  
285 karl     1.11 To install Pegasus, you must check it out using CVS (Common Version System)
286               or download the snapshot. You download, compile, and use it. 
287               
288               For the snapshot, the installation of Pegasus involves expanding the snapshot 
289               distribution files, building the runtime, the test files and test clients, and 
290               building the repository.
291 karl     1.1  
292 karl     1.4  
293 karl     1.11 7. Building Pegasus
294               =====================
295 mike     1.7  
296               1.  Check that you have requisite programs (listed in Pegasus Dependencies).
297               
298 karl     1.11     These include GNU Make, MU.EXE (if using Windows), Flex, and Bison (Flex 
299                   and Bison only required if changes will be made to the MOF compiler or WQL 
300                   parser).
301 mike     1.7  
302                   Be sure these are on your path.
303               
304 karl     1.11 
305               2.  Define the following three environment variables:
306               
307                   PEGASUS_ROOT - this should be the "pegasus" directory you've pulled from CVS
308 mike     1.7  
309                   PEGASUS_HOME - to point to a directory to contain output binary files
310 karl     1.11     (e.g., set it to $HOME/pegasus_home). Then the output will go into
311                   $HOME/pegasus_home/bin and $HOME/pegasus_home/lib
312 mike     1.7  
313                   PEGASUS_PLATFORM - this must be set to a supported platform identifier.
314               
315 karl     1.11     This identifier has the following form:
316               
317               		 <Operating-System>_<Architecture>_<Compiler>
318 mike     1.7  
319 karl     1.11     For example (Linux on IA32 platform using the GNU Compiler):
320                                LINUX_IX86_GNU
321               
322                   For a complete list, refer to the platform_ make files found in directory 
323                   pegasus/mak
324 mike     1.7  
325               
326                   Note: if you plan on doing parallel builds, you might consider setting
327                   PEGASUS_HOME to something like this:
328               
329 karl     1.11 		 $HOME/pegasus_home_LINUX_IX86_GNU
330 mike     1.7  
331                   That way, the output of each build will be placed in its own directory.
332               
333               3.  Now place $PEGASUS_HOME/bin on your path
334               
335                   and
336               
337 karl     1.11     Place $PEGASUS_HOME/lib on your LD_LIBRARY_PATH (for Unix only).
338                   For RedHat/SuSE/UL, edit /etc/ld.so.conf and add $PEGASUS_HOME/lib
339 mike     1.7  
340 karl     1.11 4.  Change to the root of the Pegasus distrubution and type "make"
341                   (where make refers to GNU make).
342 karl     1.1  
343 karl     1.11 5.  Then create the repository, which is needed to serve data.
344 mike     1.9      "make repository"
345               
346               6.  To test the build type "make tests".
347 karl     1.1  
348 mike     1.7  The following make targets are supported:
349 karl     1.1  
350 mike     1.7      <default> - Build everything.
351                   clean - Clean out all objects, libs, and executables.
352                   depend - Create the dependencies.
353 mike     1.9      repository - Create the repository in $PEGASUS_HOME/repository
354 mike     1.7      tests  - Execute all tests (except client server tests).
355                   rebuild - clean, depend, <default>
356                   world - depend, <default>
357 karl     1.1  
358 karl     1.4  The Pegasus Client server tests are executed separately from the above because
359               they require the initiation of separate process for the Pegasus server and
360 karl     1.11 Pegasus client. To execute these tests please refer to the scripts in 
361               pegasus/mak/BuildMakefile - refer to the prestarttests and poststarttests.
362 karl     1.1  
363 karl     1.4  For information on particular installation characteristics, tools, etc. for
364 karl     1.6  each platform see the appropriate sections below:
365 karl     1.1  
366               Generally the build commands are as follows:
367               
368 karl     1.6      1. There is a Makefile in the Pegasus root directory.   Simply executing
369 karl     1.11     make in the Pegasus root directory will make everything. "make rebuild"
370 karl     1.6      will clean and rebuild everything. The "make rebuild" will also populate
371                   the repository with the current CIM Schemas.
372 karl     1.1  
373 karl     1.6      2. To test a fresh release, go to the pegasus root and type
374 karl     1.1  
375 karl     1.11 		 		 "make world".
376 karl     1.1  
377               
378 karl     1.6      This will build dependencies, build binaries, and then run all
379 karl     1.4      tests except the Client/Server tests.
380 karl     1.1  
381 karl     1.6      3. To execute the basic test suite that is shipped with pegasus type
382 karl     1.1  
383 karl     1.11 		    "make tests". This also reintalls the repository.
384 karl     1.1  
385 karl     1.4      Running "make -s tests" suppresses extraneous output such as the
386                   enter/leave directory messages.
387 karl     1.1  
388 karl     1.11     4. "make clean" removes all object and library files from the structure.
389               
390               
391                   5. A new build system has been added to Pegasus where a new CVS checkout is done,
392                      built, and tests are run. Do it by: "make -f mak/BuildMakefile cleanbuild"
393               
394               
395               8. Populate the Repository
396               ===========================
397               
398               Before using Pegasus you must populate the repository with the providers. The makefile 
399               does it all for you, but in case you are wondering what it does or how to do it 
400               manually:
401               
402               1. Register the MOF (Managed Object Format) file describing the skeleton of the object.
403               2. Register a second MOF which only points out which lib*.so file to be loaded when a 
404                  specific object is activated.
405               
406               This is done automatically for the providers included in Pegasus by doing:
407               make repository.
408               
409 karl     1.11 The 'make repository' in pegasus/Schemas does three things
410               Runs MOF compiler (cimmofl) on:
411               -Schema v2.7
412                   Generates the CIM Schema v2.7 in the repository  (skeleton of CIM objects)
413               -PG_InterOp
414                   Internal to Pegasus schema for operating (shutdown, add users, etc)
415                   CIM_Indication’s (SNMP, Events, Alert, Threshold, etc)
416               -PG_ManagedSystem
417                   Registers included CIM Providers (libOSProvider.so, libDNSProvider.so, … ) 
418                   in Pegasus (which are located in src/Providers)
419               
420               For more information about using the MOF compiler, refer to user's manual on the 
421               openpegasus.org.  
422 karl     1.1  
423 karl     1.11 
424               9. The MU Utility
425               ===================
426 karl     1.1  
427 karl     1.4  In order to provide a consistent build structure across multiple platforms, we
428               developed a small utility to provide a consistent set of small utilities
429               across these platforms. The MU utilityis a simple utility that contains many
430               commands. For example:
431 karl     1.1  
432               
433                   C:\> mu rm myfile.cpp yourfile.cpp
434               
435               
436               You may type "mu" to get a list of valid commands. Here are some
437               of them:
438               
439               
440 karl     1.2      rm, rmdirhier, mkdirhier, echo, touch, pwd, copy, move, compare depend
441 karl     1.1  
442               
443               The MU utility supports globing (expansion of wildcards) so
444               you can do things like this:
445               
446               
447                   C:\> mu rm *.obj *.exe
448               
449 karl     1.4  MU is required to build under the Windows environment.MU is available as part
450               of the distribution of Pegasus.
451 karl     1.1  
452               
453 karl     1.11 10. Notes about Building Pegasus on Linux
454               ===========================================
455               
456               No problem. Just make sure you have the environment variables set.
457               
458 karl     1.1  
459 karl     1.11 11. Notes about Building Pegasus with SSL
460               ==========================================
461 karl     1.1  
462 karl     1.11 To build with SSL you need the OpenSSL libraries and header files. Make sure 
463               you have them in a standard directory so Pegasus can find them. If that's not 
464               the case, set the environment varialble OPENSSL_HOME= to point where your OpenSSL
465               installation is.
466               
467               Also have the PEGASUS_HAS_SSL=yes variable set. Then just run 'make' in Pegasus
468               directory and you will have Pegasus with SSL enabled. See section "Creating SSL 
469               certificates" for more information of how to use SSL.
470               
471               
472               12. Building Pegasus on Windows 2000 (SP3 or later recommended) or Windows XP
473                   With Microsoft Visual C++
474               ======================================================================
475               
476               Today we build Pegasus on Windows using a set of make files contained
477               in the source distribution, the Microsoft compilers (DevStudio 5.x is not 
478               supported, Visual Studio 6.0, SP5 supported) and the GNUMAKE make utility.The 
479               following is the basic setup steps for the environment.
480               
481                
482               Setup the environment variables and path for the Micrososft Visual C compiler. 
483 karl     1.11 Typically this can be done by running the VCVARS32.BAT file supplied with 
484               Microsoft Visual C++. (contained in the same directory as cl.exe).
485               
486               For Windows, try the following for an example environment:
487               
488                   REM call the standard Microsoft .bat for VC 6 setup. 
489                   call 'C:/Program Files/Microsoft Visual Studio/VC98/Bin/Vcvars32.bat' 
490                   REM Set debug to something if you want compile in debug mode 
491                   set PEGASUS_DEBUG=true 
492                   REM set PEGASUS_ROOT to top of source tree 
493                   set PEGASUS_ROOT=C:/cimom/pegasus 
494                   REM set PEGASUS_HOME to where you want repository and executables
495                   set PEGASUS_HOME=%PEGASUS_ROOT% 
496                   REM setup the path to the runtime files. 
497                   set path=%path%;%PEGASUS_HOME%/bin 
498 karl     1.1  
499 karl     1.11 13. Installing the Pegasus HTML Test Client:
500               =============================================
501 karl     1.1  
502 karl     1.4  This is a separate test tool that allows Pegasus requests to be initiated from
503               any WEB browser and that uses a WEB browser, CGI scritps and HTML pages for
504               the formating and connections. It requires a WEB server, etc.  The
505               instructions for setting up this environment are maintained in a separate
506               readme in the CGI directory.
507 karl     1.1  
508 karl     1.11 
509               14. Development with Pegasus and Pegasus Tools:
510               ================================================
511 karl     1.1  
512               ATTN: This section needs to be completed.  It should reference the more
513               complete documentation
514 karl     1.11 ATTN: Write about providers?
515 karl     1.1  
516 karl     1.11 
517               15. Commands:
518               =============
519               
520               The manpages for each of the commands are in rpm/manLinux/man1.Z directory (on CVS)
521               
522               To see simple help for each of the commands, use the "-h" flag.
523               Examples:
524               bin/cimserver –s (Shuts it down)
525               bin/cimserver traceLevel=4 traceComponents=ALL (starts server with config flags)
526               bin/cimprovider –l –s (lists providers and their status)
527               bin/cimprovider –e –m OperatingSystemModule (enables the OperatingSystem provider)
528               bin/cimuser –a –u guest –w ThePassword
529               bin/cimuser –l (lists the users)
530               bin/tomof CIM_Config (extract CIM_Config from repository and present it in MOF type)
531               
532               
533               16. Creating SSL certifications
534               ================================
535               
536               Type these commands in your shell to create the SSL certifications. The PEGASUS_ROOT 
537 karl     1.11 and PEGASUS_HOME have to be set to your respective installation and source directory. 
538               
539               CN="Common Name"
540               EMAIL="test@email.address"
541               HOSTNAME=`uname -n`
542               sed -e "s/$CN/$HOSTNAME/"  \
543                   -e "s/$EMAIL/root@$HOSTNAME/" $PEGASUS_ROOT/ssl.cnf \
544                   > $PEGASUS_HOME/ssl.cnf
545               chmod 644 $PEGASUS_HOME/ssl.cnf
546               chown bin $PEGASUS_HOME/ssl.cnf
547               chgrp bin $PEGASUS_HOME/ssl.cnf
548               
549               /usr/bin/openssl req -x509 -days 365 -newkey rsa:512 \
550                -nodes -config $PEGASUS_HOME/ssl.cnf \
551                  -keyout $PEGASUS_HOME/key.pem -out $PEGASUS_HOME/cert.pem 
552               
553               cat $PEGASUS_HOME/key.pem $PEGASUS_HOME/cert.pem > $PEGASUS_HOME/server.pem
554               rm $PEGASUS_HOME/key.pem $PEGASUS_HOME/cert.pem
555               cp $PEGASUS_HOME/cert.pem $PEGASUS_HOME/client.pem
556               
557 humberto 1.13 17. Testing with ICU enabled:
558               ==============================
559 karl     1.11 
560 humberto 1.13 ICU (International Compoments for Unicode) refers to the set of libraries that
561               Pegasus uses to run globalized.  For example: these libraries are used to
562               load messages in different languages, format currency and numbers according to
563               a specific locale etc.  In order to enable globalization in Pegasus, Pegasus
564               must be built with ICU enabled, ie. the right environment variables must be
565               set prior to running "make". Refer to the GlobalizationHOWTO.htm in the docs
566               directory for details.  That said, when users run "make poststarttests" 
567               to verify the integrity of a Pegasus download, a series of tests are run that 
568               require the cimserver to be running. These tests currently depend on specific 
569               messages returned from the server. When ICU is enabled, all messages come 
570               from the resource bundles and these usually do not match the hardcoded 
571               default messages within Pegasus.  These hardcoded default messages 
572               are what the various test programs expect in order to complete 
573               successfully.  If the ICU enabled server is started without
574               disabling message loading from the bundles, "make poststartests" will fail.
575               In order to run "make poststarttests" successfully with ICU enabled, an
576               environment variable called PEGASUS_USE_DEFAULT_MESSAGES must exist prior to
577               starting the server.  Once this is defined, when the cimserver starts, all
578               messages generated will be the default hardcoded messages.  This will enable
579               "make poststarttests" to complete successfully.  Once "make poststarttests" is
580               complete, you should stop the cimserver and then undefine PEGASUS_USE_DEFAULT_MESSAGES. 
581 humberto 1.13 If this variable is left defined, Pegasus will not be able to load messages
582               using ICU resource bundles. 
583               
584               18. Documentation:
585 karl     1.11 ===================
586 karl     1.1  
587 karl     1.4  The documentation is currently in preperation. The preliminary documentation
588               is not provided with this snapshot but is avialable from the OpenGroup Pegasus
589               WEB pages. The current documentation is maintained both as a manual created
590 karl     1.5  under the tool DOC++ in the runtime subdirectory manual/html and as other
591               miscelaneous documentation in the doc directory.
592 karl     1.4  
593               Note that the Pegasus WEB site at The Open Group will be the source of most
594               documentation in the future and today is the source of most discussion and
595               design documentation.
596 karl     1.1  
597 karl     1.11 
598 humberto 1.13 19. Participate!
599 karl     1.11 =================
600 mike     1.7  
601 karl     1.4  We are looking for people who want to join the Pegasus work group and
602 karl     1.11 contribute to effort of getting this Pegasus off the ground. Please join 
603               the mailing list by visiting www.openpegasus.org, and click on Mailing Lists.

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2