Subversion Repositories DevTools

Rev

Go to most recent revision | Details | 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
 
92
=item GBE_DPKG_CACHE (optional)
93
 
94
This the path to a local package archive cache. This is used to speed access to
95
main repository. The cache should be on the users local machine and not a network
96
drive.
97
 
98
=item GBE_DPKG_LOCAL (optional)
99
 
100
This the path to a group wide local package archive. This may be used to store
101
non-official packages that are under test or development.
102
 
343 dpurdie 103
Not recommended. Use is being deprecated.
315 dpurdie 104
 
343 dpurdie 105
=item GBE_DPKG_SBOX (internal)
106
 
107
This the path to a sandbox specific package archive. This will be used to store
315 dpurdie 108
non-official packages that are under test or development within the current sandbox.
109
 
110
The archive is located by searching from the current directory to the root of
343 dpurdie 111
the file system for a directory called 'sandbox_dpkg_archive'.
315 dpurdie 112
 
113
It is intended that a group of packages that are being developed in the same
114
sandbox will share the same sandbox_dpkg_archive.
115
 
116
Jats will ignore the version number when dealing with packages in GBE_DPKG_SBOX.
117
This is done to simplify the publishing and consuming of packages in the sandbox.
118
 
119
This should not be set by a user. It will be calculated by JATS and passed to
120
JATS tools and utilities.
121
 
343 dpurdie 122
=item GBE_SANDBOX (internal)
315 dpurdie 123
 
124
This the path to a sandbox base directory. It is intended that a group of
125
packages that are being developed in the same sandbox will share the same
126
sandbox_dpkg_archive.
127
 
128
This should not be set by a user. It will be calculated by JATS and passed to
129
JATS tools and utilities.
130
 
131
=item GBE_DPLY (optional)
132
 
133
This the path to the deployment archive.
134
This archive will be used when publishing special deployment package. This is
135
not the norm.
136
 
137
This variable may be set on a per-project basis.
138
 
139
=item GBE_PLATFORM (deprecated)
140
 
141
This specifies the names of platforms that will be built and made. This should
142
be empty. Use B<GBE_BUILDFILTER> to provide better control.
143
 
144
=item GBE_BUILDFILTER (desirable)
145
 
146
This is a filter string that specifies which platforms to create makefiles
147
for. This variable is used to prevent JATS from creating Solaris and Linux
148
targets on a Windows machine and visa-versa.
149
 
150
=item GBE_JATS_VERSION (optional)
151
 
152
Specifies the version of JATS that the user will use. This is the same as
153
specifying the -version=xx.xx.xx option on the command line, but because it is
154
in the environment the required version will be used by all invocations of JATS.
155
 
156
=item GBE_ABT (optional)
157
 
158
Used by the Auto Build Tool to indicate that the build is being performed by the
159
ABT. When set the build environment will be modified to suite the ABT. Some
160
operations may be relaxed.
161
 
162
Currently set to 1 to set it.
163
 
3859 dpurdie 164
=item ANT_HOME (desirable)
165
 
166
Used by the Auto Build Tool and any JATS builds that make use of ANT. This 
167
EnvVar should specify the location of the root of the ANT (1.6.5) Installation. 
168
Jats will expect to locate 'bin/ant' below ANT_HOME.
169
 
315 dpurdie 170
=item GBE_VIEWBASE (optional)
171
 
343 dpurdie 172
Used by the 'release' utilities to provide a user configurable base directory for
173
the creation of static views. The default location is:
315 dpurdie 174
 
343 dpurdie 175
=over 8
176
 
361 dpurdie 177
=item *
343 dpurdie 178
 
361 dpurdie 179
WINDOWS - c:\clearcase
343 dpurdie 180
 
361 dpurdie 181
=item * 
182
 
183
Unix - ${HOME}/jats_cbuilder
184
 
343 dpurdie 185
=back
186
 
361 dpurdie 187
=item GBE_VCS (optional)
188
 
189
Used by the JATS wrapper script when processing the 'release', 'extract' and 'label'
190
commands to determine the command to invoke.
191
 
192
If not specified, then 'cc' is assumed.
193
 
194
Valid values are:
195
 
196
=over 4
197
 
198
=item *
199
 
200
cc for ClearCase
201
 
202
=item *
203
 
204
svn for Subversion
205
 
206
=back
207
 
315 dpurdie 208
=item GBE_RM_LOCATION (optional)
209
 
210
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
211
Specifies the location of the Release Manager Database. This is a database url
212
of the form jdbc:subprotocol:subname as used by java.sql.DriverManager.getConnection()
213
 
4466 dpurdie 214
C<Example: jdbc:oracle:thin:@auperaprm01:1521:RELEASEM>
315 dpurdie 215
 
216
=item GBE_RM_USERNAME (optional)
217
 
218
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
219
Specifies a USERNAME with access to the Release Manager Database.
220
 
221
=item GBE_RM_PASSWORD (optional)
222
 
223
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
224
Specifies a PASSWORD to be used in conjunction with GBE_RM_USERNAME to access
225
the Release Manager Database.
226
 
227
=item GBE_RM_URL (optional)
228
 
229
Used by tools that interface to Release Manager: primarily the (ABT) Auto Build Tools.
230
Specifies the base URL of RElease Manager
231
 
232
=item GBE_DM_LOCATION (optional)
233
 
234
Similar to GBE_RM_LOCATION, but is used to access the Deployment Manager Database.
235
If GBE_DM_LOCATION is not provided, then GBE_RM_LOCATION will be used.
236
 
237
=item GBE_DM_USERNAME (optional)
238
 
239
Similar to GBE_RM_USERNAME, but is used to access the Deployment Manager Database.
240
 
241
=item GBE_DM_PASSWORD (optional)
242
 
243
Similar to GBE_RM_PASSWORD, but is used to access the Deployment Manager Database.
244
 
245
=item GBE_DM_URL (optional)
246
 
247
Similar to GBE_DM_URL, but is used to access the Deployment Manager Database.
248
 
4466 dpurdie 249
=item GBE_CQ_LOCATION (optional)
250
 
251
Used by tools that interface to ClearQuest: primarily the (ABT) Auto Build Tools.
252
Specifies the location of the ClearQuest Database. This is a database url
253
of the form jdbc:subprotocol:subname as used by java.sql.DriverManager.getConnection()
254
 
255
C<Example: jdbc:jtds:sqlserver://AUPERASQL05:1433:master>
256
 
257
=item GBE_CQ_USERNAME (optional)
258
 
259
Used by tools that interface to ClearQuest: primarily the (ABT) Auto Build Tools.
260
Specifies a USERNAME with access to the ClearQuest Database.
261
 
262
=item GBE_CQ_PASSWORD (optional)
263
 
264
Used by tools that interface to ClearQuest: primarily the (ABT) Auto Build Tools.
265
Specifies a PASSWORD to be used in conjunction with GBE_RM_USERNAME to access
266
the ClearQuest Database.
267
 
4612 dpurdie 268
=item GBE_JIRA_URL (optonal)
269
 
270
Used by tools that interface to the Jira Issues database via a REST API: primarily the
271
Auto Build Tools. The variable specifies the URL to the base of the REST API interface.
272
 
273
C<Example: http://cloudajir01.vix.local:8080>
274
 
275
=item GBE_JIRA_USERNAME (optional)
276
 
277
Using in conjunction with GBE_JIRA_URL to access the Jira Issues database.
278
 
279
=item GBE_JIRA_PASSWORD (optional)
280
 
281
Using in conjunction with GBE_JIRA_URL to access the Jira Issues database.
282
 
353 dpurdie 283
=item GBE_SVN_URL_<Repo> (Required for Subversion support)
284
 
285
Provides subversion configuration of known repositories. The EnvVar contains 
286
the unique name of the repository within the ERG domain. ie: 
287
C<GBE_SVN_URL_AUPERASVN01>
288
 
289
The value of the EnvVar specifies the URL of the Subversion repository to be
290
used by the Subversion oriented JATS commands. The URL should contain the
291
protocol, the repository host and the path to the root of the repository and
292
possibly name of the repository. ie: C<svn://auperasbm03/AUPERASVN01>
293
 
341 dpurdie 294
=item GBE_SVN_URL (Required for Subversion support)
315 dpurdie 295
 
353 dpurdie 296
Specifies the default URL of the Subversion repository to be used by the
297
Subversion oriented JATS commands. The URL should contain the protocol, the
298
repository host and the path to the root of the repository, but not the name of
299
the repository. ie: C<svn://auperasbm03>
315 dpurdie 300
 
353 dpurdie 301
This EnvVar is similar to B<GBE_SVN_URL_<Repo>>, except that it will only be
302
used as a last resort. It may be used to provide a site wide repository URL, but
303
it would not be suitable for repositories that are external to the site. 
304
 
305
For correct operation of utilities that calculate a global Subversion tag,
306
B<GBE_SVN_URL> should resolve to one of B<GBE_SVN_URL_<Repo>> values.
307
 
315 dpurdie 308
=item GBE_SVN_PATH (optional)
309
 
310
If provided this will be used to locate the 'svn' utility used by the SubVersion
311
support functions. If not provided, then the utilities assume that 'svn' is in the
341 dpurdie 312
users PATH. 
315 dpurdie 313
 
341 dpurdie 314
Providing the path will prevent JATS from searching for the utility.
315
 
315 dpurdie 316
=item GBE_SVN_USERNAME (optional)
317
 
318
Subversion repository credentials. If provided it will be used, otherwise the
319
native svn credential mechanism will be used.
320
 
321
=item GBE_SVN_PASSWORD (optional)
322
 
323
Subversion repository credentials. If provided it will be used, otherwise the
324
native svn credential mechanism will be used.
325
 
326
=item GBE_MAKE_TYPE (internal)
327
 
328
This EnvVar is set when a Makefile is being processed by 'make'. The value
329
indicates the type of the build. It will be either P(Production), D(debug)
330
or C(Common).
331
 
332
=item GBE_MAKE_TARGET (internal)
333
 
334
This EnvVar is set when a Makefile is being processed by 'make'. The value
335
is set current target platform name.
336
 
337
=item GBE_MAKE_CFG (internal)
338
 
339
This EnvVar is set when a Makefile is being processed by 'make'. The value
340
is set to the path of the parsed makefile.pl data gathered when the makefile
341
was created.
342
 
343
=item GBE_MAKE_CMD (internal)
344
 
345
This EnvVar is set when a Makefile is being processed by 'make'. The value
346
is set current make command being processed.
347
 
348
=item GBE_SCRIPT (internal)
349
 
343 dpurdie 350
This EnvVar contains the path and command line argument to the current JATS
315 dpurdie 351
command.
352
 
353
Its primary purpose is to determine the location of the jats startup script:
354
jats.bat or jats.sh.
355
 
356
=item GBE_UNIX (internal)
357
 
358
This EnvVar will be set to 1 on Unix systems and 0 on Windows Systems. The value
359
is calculated by JATS and cannot be set externally.
360
 
361
=item USER (set if undefined)
362
 
363
This EnvVar will be set to the current JATS user. It may be set externally,
364
but normally this is not required as JATS will determine the user in a
365
platform specific manner.
366
 
367
=back
368
 
369
=head2 Location of EnvVar definitions
370
 
371
The location of the EnvVars used by JATS is dependent on the target machine
372
type.
373
 
374
=head3 Windows 
375
 
376
Under Windows, the best place to specify the JATS EnvVars is in the JATS.BAT
377
file itself. The location of the JATS.BAT file being used is provided by the '
378
jats vars' utility.
379
 
380
=head3 Solaris
381
 
382
Under Solaris, the JATS EnvVars are set in /etc/profile. These can be
383
overridden by users in there own profile, but this is not encouraged as the
384
JATS configuration is normally machine-wide.
385
 
343 dpurdie 386
The jats.sh script, used to start jats may provide default definitions. The
315 dpurdie 387
location of this script is provided by the 'jats vars' utility.
388
 
389
=head3 Linux
390
 
391
Under Linux, the JATS EnvVars are set in  /etc/profile.d/jats.sh. These can be
392
overridden by users in there own profile, but this is not encouraged as the
393
JATS configuration is normally machine-wide.
394
 
343 dpurdie 395
The jats.sh script, used to start jats may provide default definitions. The
315 dpurdie 396
location of this script is provided by the 'jats vars' utility.
397