Subversion Repositories DevTools

Rev

Rev 4949 | Rev 5109 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
315 dpurdie 1
#-------------------------------------------------------------------------------
2
#   Documentation
3
#
4
 
5
=pod
6
 
361 dpurdie 7
=for htmltoc    CORE::
8
 
315 dpurdie 9
=head1 NAME
10
 
11
JATS Environment Variables
12
 
13
=head1 SYNOPSIS
14
 
15
JATS makes use of a number of Environment Variables (EnvVars) to provide
16
configuration information.
17
 
18
There are two classes of EnvVars used by JATS. These are:
19
 
361 dpurdie 20
=over 4
315 dpurdie 21
 
361 dpurdie 22
=item 1 
315 dpurdie 23
 
361 dpurdie 24
JATS Configuration
25
 
315 dpurdie 26
These EnvVars have a GBE_ prefix. These are detailed in this document.
27
 
361 dpurdie 28
=item 2 
315 dpurdie 29
 
361 dpurdie 30
Toolset location
31
 
315 dpurdie 32
Some of the build tools used by JATS use EnvVars to specify the location
33
of the installed tool. 
34
 
35
Ideally tools should be installed in their default location and JATS should be
36
preconfigured to use this default location. Configuration allows for exceptions.
37
 
38
=back
39
 
40
=head2  Environment variables
41
 
42
Environment variables that specify a path may be set to '-', or 'none' in order
43
to force an undefined path.
44
 
45
=over 8
46
 
47
=item GBE_MACHTYPE
48
 
49
This specifies the machine that the script is running on. This is fixed within
50
the startup script.
51
 
52
=item GBE_HOSTMACH (internally set)
53
 
54
This is a copy of GBE_MACHTYPE.
55
Unlike GBE_MACHTYPE, this copy is not modified by makefiles.
56
 
57
=item GBE_HOSTNAME (internally)
58
 
59
This EnvVar is the name of the current host. It is available to be used within
60
scripts that need to stamp build files.
61
 
62
=item GBE_PERL
63
 
64
This specifies the full path the to B<ActiveState> perl binary.
65
 
66
=item GBE_CORE
67
 
68
This specifies the path the to B<JATS> installation.
69
 
70
=item GBE_CACHE_JATS
71
 
72
When set to a non zero value will force JATS to transfer a working copy to the
73
local dpkg_archive. This will speed up the build process because the utilities
74
will be run from a local drive; not a network drive.
75
 
76
This will only operate if JATS is run from dpkg_archive.
77
 
78
=item GBE_DPKG_STORE (optional)
79
 
80
This is the global read-only archive store. It will only be used to source
81
packages after all other archive stores have been examined. The GBE_DPKG_STORE
82
is intended to provide a read-only or remote repository within a global
83
environment.
84
 
85
=item GBE_DPKG
86
 
87
This is the official archive. Some tools will publish packages directly to this
88
archive.
89
 
90
This item is mandatory and must address a valid directory.
91
 
4688 dpurdie 92
=item GBE_DPKG_REPLICA (optional)
93
 
94
This is the local package read-only archive replica. It will only be used to source
95
packages before other archive stores have been examined. The GBE_DPKG_REPLICA
96
is intended to provide a local read-only replica of the main repository within a global
97
environment.
98
 
315 dpurdie 99
=item GBE_DPKG_CACHE (optional)
100
 
101
This the path to a local package archive cache. This is used to speed access to
102
main repository. The cache should be on the users local machine and not a network
103
drive.
104
 
105
=item GBE_DPKG_LOCAL (optional)
106
 
107
This the path to a group wide local package archive. This may be used to store
108
non-official packages that are under test or development.
109
 
343 dpurdie 110
Not recommended. Use is being deprecated.
315 dpurdie 111
 
343 dpurdie 112
=item GBE_DPKG_SBOX (internal)
113
 
114
This the path to a sandbox specific package archive. This will be used to store
315 dpurdie 115
non-official packages that are under test or development within the current sandbox.
116
 
117
The archive is located by searching from the current directory to the root of
343 dpurdie 118
the file system for a directory called 'sandbox_dpkg_archive'.
315 dpurdie 119
 
120
It is intended that a group of packages that are being developed in the same
121
sandbox will share the same sandbox_dpkg_archive.
122
 
123
Jats will ignore the version number when dealing with packages in GBE_DPKG_SBOX.
124
This is done to simplify the publishing and consuming of packages in the sandbox.
125
 
126
This should not be set by a user. It will be calculated by JATS and passed to
127
JATS tools and utilities.
128
 
343 dpurdie 129
=item GBE_SANDBOX (internal)
315 dpurdie 130
 
131
This the path to a sandbox base directory. It is intended that a group of
132
packages that are being developed in the same sandbox will share the same
133
sandbox_dpkg_archive.
134
 
135
This should not be set by a user. It will be calculated by JATS and passed to
136
JATS tools and utilities.
137
 
138
=item GBE_DPLY (optional)
139
 
140
This the path to the deployment archive.
141
This archive will be used when publishing special deployment package. This is
142
not the norm.
143
 
144
This variable may be set on a per-project basis.
145
 
146
=item GBE_PLATFORM (deprecated)
147
 
148
This specifies the names of platforms that will be built and made. This should
149
be empty. Use B<GBE_BUILDFILTER> to provide better control.
150
 
151
=item GBE_BUILDFILTER (desirable)
152
 
153
This is a filter string that specifies which platforms to create makefiles
154
for. This variable is used to prevent JATS from creating Solaris and Linux
155
targets on a Windows machine and visa-versa.
156
 
157
=item GBE_JATS_VERSION (optional)
158
 
159
Specifies the version of JATS that the user will use. This is the same as
160
specifying the -version=xx.xx.xx option on the command line, but because it is
161
in the environment the required version will be used by all invocations of JATS.
162
 
163
=item GBE_ABT (optional)
164
 
165
Used by the Auto Build Tool to indicate that the build is being performed by the
166
ABT. When set the build environment will be modified to suite the ABT. Some
167
operations may be relaxed.
168
 
169
Currently set to 1 to set it.
170
 
4902 dpurdie 171
Used values:
172
 
173
=over 4
174
 
175
=item NONE
176
 
177
Indicates that the current machine is not to be used to build software. It may be used to run various JATS utilities.
178
 
179
=back
180
 
3859 dpurdie 181
=item ANT_HOME (desirable)
182
 
183
Used by the Auto Build Tool and any JATS builds that make use of ANT. This 
184
EnvVar should specify the location of the root of the ANT (1.6.5) Installation. 
185
Jats will expect to locate 'bin/ant' below ANT_HOME.
186
 
315 dpurdie 187
=item GBE_VIEWBASE (optional)
188
 
343 dpurdie 189
Used by the 'release' utilities to provide a user configurable base directory for
190
the creation of static views. The default location is:
315 dpurdie 191
 
343 dpurdie 192
=over 8
193
 
361 dpurdie 194
=item *
343 dpurdie 195
 
361 dpurdie 196
WINDOWS - c:\clearcase
343 dpurdie 197
 
361 dpurdie 198
=item * 
199
 
200
Unix - ${HOME}/jats_cbuilder
201
 
343 dpurdie 202
=back
203
 
361 dpurdie 204
=item GBE_VCS (optional)
205
 
206
Used by the JATS wrapper script when processing the 'release', 'extract' and 'label'
207
commands to determine the command to invoke.
208
 
209
If not specified, then 'cc' is assumed.
210
 
211
Valid values are:
212
 
213
=over 4
214
 
215
=item *
216
 
217
cc for ClearCase
218
 
219
=item *
220
 
221
svn for Subversion
222
 
223
=back
224
 
315 dpurdie 225
=item GBE_RM_LOCATION (optional)
226
 
227
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
228
Specifies the location of the Release Manager Database. This is a database url
229
of the form jdbc:subprotocol:subname as used by java.sql.DriverManager.getConnection()
230
 
4466 dpurdie 231
C<Example: jdbc:oracle:thin:@auperaprm01:1521:RELEASEM>
315 dpurdie 232
 
233
=item GBE_RM_USERNAME (optional)
234
 
235
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
236
Specifies a USERNAME with access to the Release Manager Database.
237
 
238
=item GBE_RM_PASSWORD (optional)
239
 
240
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
241
Specifies a PASSWORD to be used in conjunction with GBE_RM_USERNAME to access
242
the Release Manager Database.
243
 
244
=item GBE_RM_URL (optional)
245
 
246
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
247
Specifies the base URL of RElease Manager
248
 
249
=item GBE_DM_LOCATION (optional)
250
 
251
Similar to GBE_RM_LOCATION, but is used to access the Deployment Manager Database.
252
If GBE_DM_LOCATION is not provided, then GBE_RM_LOCATION will be used.
253
 
254
=item GBE_DM_USERNAME (optional)
255
 
256
Similar to GBE_RM_USERNAME, but is used to access the Deployment Manager Database.
257
 
258
=item GBE_DM_PASSWORD (optional)
259
 
260
Similar to GBE_RM_PASSWORD, but is used to access the Deployment Manager Database.
261
 
262
=item GBE_DM_URL (optional)
263
 
264
Similar to GBE_DM_URL, but is used to access the Deployment Manager Database.
265
 
4466 dpurdie 266
=item GBE_CQ_LOCATION (optional)
267
 
268
Used by tools that interface to ClearQuest: primarily the (ABT) Auto Build Tools.
269
Specifies the location of the ClearQuest Database. This is a database url
270
of the form jdbc:subprotocol:subname as used by java.sql.DriverManager.getConnection()
271
 
272
C<Example: jdbc:jtds:sqlserver://AUPERASQL05:1433:master>
273
 
274
=item GBE_CQ_USERNAME (optional)
275
 
276
Used by tools that interface to ClearQuest: primarily the (ABT) Auto Build Tools.
277
Specifies a USERNAME with access to the ClearQuest Database.
278
 
279
=item GBE_CQ_PASSWORD (optional)
280
 
281
Used by tools that interface to ClearQuest: primarily the (ABT) Auto Build Tools.
282
Specifies a PASSWORD to be used in conjunction with GBE_RM_USERNAME to access
283
the ClearQuest Database.
284
 
4612 dpurdie 285
=item GBE_JIRA_URL (optonal)
286
 
287
Used by tools that interface to the Jira Issues database via a REST API: primarily the
288
Auto Build Tools. The variable specifies the URL to the base of the REST API interface.
289
 
290
C<Example: http://cloudajir01.vix.local:8080>
291
 
292
=item GBE_JIRA_USERNAME (optional)
293
 
294
Using in conjunction with GBE_JIRA_URL to access the Jira Issues database.
295
 
296
=item GBE_JIRA_PASSWORD (optional)
297
 
298
Using in conjunction with GBE_JIRA_URL to access the Jira Issues database.
299
 
353 dpurdie 300
=item GBE_SVN_URL_<Repo> (Required for Subversion support)
301
 
302
Provides subversion configuration of known repositories. The EnvVar contains 
303
the unique name of the repository within the ERG domain. ie: 
304
C<GBE_SVN_URL_AUPERASVN01>
305
 
306
The value of the EnvVar specifies the URL of the Subversion repository to be
307
used by the Subversion oriented JATS commands. The URL should contain the
308
protocol, the repository host and the path to the root of the repository and
4814 dpurdie 309
possibly name of the repository. ie: C<https://auawsasvn001.vix.local/svn>
353 dpurdie 310
 
341 dpurdie 311
=item GBE_SVN_URL (Required for Subversion support)
315 dpurdie 312
 
353 dpurdie 313
Specifies the default URL of the Subversion repository to be used by the
314
Subversion oriented JATS commands. The URL should contain the protocol, the
315
repository host and the path to the root of the repository, but not the name of
4814 dpurdie 316
the repository. ie: C<https://auawsasvn001.vix.local/svn>
315 dpurdie 317
 
353 dpurdie 318
This EnvVar is similar to B<GBE_SVN_URL_<Repo>>, except that it will only be
319
used as a last resort. It may be used to provide a site wide repository URL, but
320
it would not be suitable for repositories that are external to the site. 
321
 
322
For correct operation of utilities that calculate a global Subversion tag,
323
B<GBE_SVN_URL> should resolve to one of B<GBE_SVN_URL_<Repo>> values.
324
 
315 dpurdie 325
=item GBE_SVN_PATH (optional)
326
 
327
If provided this will be used to locate the 'svn' utility used by the SubVersion
328
support functions. If not provided, then the utilities assume that 'svn' is in the
341 dpurdie 329
users PATH. 
315 dpurdie 330
 
341 dpurdie 331
Providing the path will prevent JATS from searching for the utility.
332
 
315 dpurdie 333
=item GBE_SVN_USERNAME (optional)
334
 
335
Subversion repository credentials. If provided it will be used, otherwise the
336
native svn credential mechanism will be used.
337
 
338
=item GBE_SVN_PASSWORD (optional)
339
 
340
Subversion repository credentials. If provided it will be used, otherwise the
341
native svn credential mechanism will be used.
342
 
343
=item GBE_MAKE_TYPE (internal)
344
 
345
This EnvVar is set when a Makefile is being processed by 'make'. The value
346
indicates the type of the build. It will be either P(Production), D(debug)
347
or C(Common).
348
 
349
=item GBE_MAKE_TARGET (internal)
350
 
351
This EnvVar is set when a Makefile is being processed by 'make'. The value
352
is set current target platform name.
353
 
354
=item GBE_MAKE_CFG (internal)
355
 
356
This EnvVar is set when a Makefile is being processed by 'make'. The value
357
is set to the path of the parsed makefile.pl data gathered when the makefile
358
was created.
359
 
360
=item GBE_MAKE_CMD (internal)
361
 
362
This EnvVar is set when a Makefile is being processed by 'make'. The value
363
is set current make command being processed.
364
 
4949 dpurdie 365
=item GBE_UTFNAME (internal)
366
 
367
This EnvVar is set when a unit test is being run. It is the name of the unit test.
368
 
369
=item GBE_UTFUID (internal)
370
 
371
This EnvVar is set when a unit test is being run. It is a short string that will 
372
uniquely identify the unit test within the build. It may be used to create a unique
373
log file for post processing.
374
 
4996 dpurdie 375
=item GBE_UTFFILE (internal)
376
 
377
This EnvVar is set when a unit test is being run. It is an absolute path to a
378
recommended output file within the final package. 
379
 
380
It will be unique as it is includes the GBE_UTFUID element. Unit Tests may 
381
create correctly formatted test results in this file.
382
 
315 dpurdie 383
=item GBE_SCRIPT (internal)
384
 
343 dpurdie 385
This EnvVar contains the path and command line argument to the current JATS
315 dpurdie 386
command.
387
 
388
Its primary purpose is to determine the location of the jats startup script:
389
jats.bat or jats.sh.
390
 
391
=item GBE_UNIX (internal)
392
 
393
This EnvVar will be set to 1 on Unix systems and 0 on Windows Systems. The value
394
is calculated by JATS and cannot be set externally.
395
 
396
=item USER (set if undefined)
397
 
398
This EnvVar will be set to the current JATS user. It may be set externally,
399
but normally this is not required as JATS will determine the user in a
400
platform specific manner.
401
 
402
=back
403
 
404
=head2 Location of EnvVar definitions
405
 
406
The location of the EnvVars used by JATS is dependent on the target machine
407
type.
408
 
409
=head3 Windows 
410
 
411
Under Windows, the best place to specify the JATS EnvVars is in the JATS.BAT
412
file itself. The location of the JATS.BAT file being used is provided by the '
413
jats vars' utility.
414
 
415
=head3 Solaris
416
 
417
Under Solaris, the JATS EnvVars are set in /etc/profile. These can be
418
overridden by users in there own profile, but this is not encouraged as the
419
JATS configuration is normally machine-wide.
420
 
343 dpurdie 421
The jats.sh script, used to start jats may provide default definitions. The
315 dpurdie 422
location of this script is provided by the 'jats vars' utility.
423
 
424
=head3 Linux
425
 
426
Under Linux, the JATS EnvVars are set in  /etc/profile.d/jats.sh. These can be
427
overridden by users in there own profile, but this is not encouraged as the
428
JATS configuration is normally machine-wide.
429
 
343 dpurdie 430
The jats.sh script, used to start jats may provide default definitions. The
315 dpurdie 431
location of this script is provided by the 'jats vars' utility.
432