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