'branch_workflow_2'.
Sprout from michal_Torque 2012-01-26 14:08:31 UTC Michal Voců <michal@ruk.cuni.cz> 'fix memory allocation'
Delete:
org.glite.lb/.cvsignore
org.glite.lb/LICENSE
org.glite.lb/configure
org.glite.lb/deployment/README
org.glite.lb/deployment/deploy_all.diff
org.glite.lb/deployment/deploy_jp.diff
org.glite.lb/deployment/deploy_lb.diff
org.glite.lb/doc/README.lb4vdt
org.glite.lb/doc/perf_clear_proxy
org.glite.lb/doc/perf_purge
org.glite.lb/doc/perf_reg_jobs
org.glite.lb/doc/perf_results/il_sci_09062006.txt
org.glite.lb/doc/perf_results/il_sci_09062006_01.txt
org.glite.lb/doc/perf_results/il_sci_12062006.txt
org.glite.lb/doc/perf_results/ll_michal_21062006.txt
org.glite.lb/doc/perf_results/proxy2serv_umbar2sci_22062006.txt
org.glite.lb/doc/perf_results/proxy2serv_umbar2sci_23062006.txt
org.glite.lb/doc/perf_results/proxy_sci_09062006.txt
org.glite.lb/doc/perf_run_interlogd
org.glite.lb/doc/perf_run_proxy
org.glite.lb/doc/perf_run_server
org.glite.lb/doc/perf_run_test
org.glite.lb/egee_license_check.sh
org.glite.lb/etics-tag-branch.pl
org.glite.lb/etics-tag-consistency.pl
org.glite.lb/etics-tag-gridsite.pl
org.glite.lb/etics-tag-with-subsystems-branch.pl
org.glite.lb/etics-tag-with-subsystems.pl
org.glite.lb/etics-tag.pl
org.glite.lb/generate-properties.pl
org.glite.lb/lb4vdt/LB_install.sh
org.glite.lb/lb4vdt/Makefile.inc
org.glite.lb/lb4vdt/scripts/org.gridsite.core.build
org.glite.lb/project/package.description
org.glite.lb/project/package.summary
org.glite.lb/project/version.properties
+++ /dev/null
-.project
-.cdtproject
\ No newline at end of file
+++ /dev/null
-LICENSE file for EGEE Middleware\r
-================================\r
-\r
-Copyright (c) 2004 on behalf of the EU EGEE Project: \r
-The European Organization for Nuclear Research (CERN), \r
-Istituto Nazionale di Fisica Nucleare (INFN), Italy\r
-Datamat Spa, Italy\r
-Centre National de la Recherche Scientifique (CNRS), France\r
-CS Systeme d'Information (CSSI), France\r
-Royal Institute of Technology, Center for Parallel Computers (KTH-PDC), Sweden\r
-Universiteit van Amsterdam (UvA), Netherlands\r
-University of Helsinki (UH.HIP), Finlan\r
-University of Bergen (UiB), Norway\r
-Council for the Central Laboratory of the Research Councils (CCLRC), United Kingdom\r
-\r
-Redistribution and use in source and binary forms, with or without\r
-modification, are permitted provided that the following conditions are\r
-met: \r
-\r
-1. Redistributions of source code must retain the above copyright\r
-notice, this list of conditions and the following disclaimer.\r
-\r
-2. Redistributions in binary form must reproduce the above copyright\r
-notice, this list of conditions and the following disclaimer in the\r
-documentation and/or other materials provided with the distribution.\r
-\r
-3. The end-user documentation included with the redistribution, if\r
-any, must include the following acknowledgment: "This product includes\r
-software developed by The EU EGEE Project (http://cern.ch/eu-egee/)."\r
-Alternatively, this acknowledgment may appear in the software itself, if\r
-and wherever such third-party acknowledgments normally appear.\r
-\r
-4. The names EGEE and the EU EGEE Project must not be\r
-used to endorse or promote products derived from this software without\r
-prior written permission. For written permission, please contact\r
-<email address>.\r
-\r
-5. You are under no obligation whatsoever to provide anyone with any\r
-bug fixes, patches, or upgrades to the features, functionality or\r
-performance of the Software ("Enhancements") that you may develop over\r
-time; however, if you choose to provide your Enhancements to The EU\r
-EGEE Project, or if you choose to otherwise publish or distribute your\r
-Enhancements, in source code form without contemporaneously requiring\r
-end users of The EU EGEE Proejct to enter into a separate written license\r
-agreement for such Enhancements, then you hereby grant The EU EGEE Project\r
-a non-exclusive, royalty-free perpetual license to install, use, copy,\r
-modify, prepare derivative works, incorporate into the EGEE Middleware\r
-or any other computer software, distribute, and sublicense your\r
-Enhancements or derivative works thereof, in binary and source code\r
-form (if any), whether developed by The EU EGEE Project or third parties.\r
-\r
-THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED\r
-WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\r
-DISCLAIMED. IN NO EVENT SHALL PROJECT OR ITS CONTRIBUTORS BE LIABLE\r
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\r
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\r
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\r
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,\r
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE\r
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN\r
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r
-\r
-This software consists of voluntary contributions made by many\r
-individuals on behalf of the EU EGEE Prject. For more information on The\r
-EU EGEE Project, please see http://cern.ch/eu-egee/. For more information on\r
-EGEE Middleware, please see http://egee-jra1.web.cern.ch/egee-jra1/\r
-\r
-\r
+++ /dev/null
-#!/usr/bin/perl
-
-# WARNING: Don't edit this file unless it is the master copy in org.glite.lb
-#
-# For the purpose of standalone builds of lb/jobid/lbjp-common components
-# it is copied on tagging
-
-# $Header$
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners/ for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Long;
-
-my $pwd = `pwd`; chomp $pwd;
-my $prefix = '/usr';
-my $stagedir = undef;
-my $root = $pwd.'/stage';
-my $sysroot = '';
-my $sysconfdir;
-my $localstatedir;
-my $staged;
-my $module;
-my $thrflavour = 'gcc64dbgpthr';
-my $nothrflavour = 'gcc64dbg';
-my $mode = 'build';
-my $help = 0;
-my $listmodules;
-my $version;
-my $branch;
-my $output;
-my $lb_tag = '';
-my $lbjp_tag = '';
-my $jp_tag = '';
-my $jobid_tag = '';
-my $libdir = getlibdir();
-my $project = 'glite';
-my (%projects, %project);
-my $debug = 0;
-my $pkg_config_env = (defined $ENV{PKG_CONFIG_PATH}) ? "$ENV{PKG_CONFIG_PATH}:" : '';
-
-my @nodes = qw/client server logger logger-msg utils client-java doc ws-test db jpprimary jpindex jpclient harvester lb px proxyrenewal/;
-my @default_nodes = qw/lb px proxyrenewal/;
-my %enable_nodes;
-my %disable_nodes;
-my %default_nodes; @default_nodes{@default_nodes} = (1) x ($#default_nodes + 1);
-
-# key: internal package name (arguments, ...)
-# 'pkg': pkg-config name
-# 'prefix': used when pkg-config fails
-my %externs = (
- cares => {
- prefix => '/opt/c-ares',
- pkg => 'libcares'
- },
- classads => {
- prefix=> '/usr',
- pkg => 'classads'
- },
- cppunit => {
- prefix=> '/usr',
- pkg => 'cppunit'
- },
- expat => {
- prefix=> '/usr',
- pkg => 'expat'
- },
- globus => {
- prefix=> '/opt/globus',
- pkg => 'globus-gssapi-gsi'
- },
- 'myproxy-devel' => {
- prefix=> '/opt/globus',
- pkg => 'myproxy'
- },
- 'myproxy-server' => {
- prefix=> '',
- },
- 'myproxy-libs' => {
- prefix=> '',
- },
- 'myproxy-admin' => {
- prefix=> '',
- },
- gsoap => {
- prefix=> '/usr',
- pkg => 'gsoap'
- },
- gsoapxx => {
- prefix=> '/usr',
- pkg => 'gsoap++'
- },
- mysql => {
- prefix=> '/usr'
- },
- 'mysql-devel' => {
- prefix=> ''
- },
- 'mysql-server' => {
- prefix => ''
- },
- voms => {
- prefix => '/opt/glite',
- pkg => 'voms-2.0'
- },
- gridsite => {
- prefix => '/opt/glite'
- },
- lcas => {
- prefix => '/opt/glite',
- pkg => 'lcas'
- },
- trustmanager => {
- prefix => '/opt/glite'
- },
- trustmanager_axis => {
- prefix => '/opt/glite'
- },
- utiljava => {
- prefix=> '/opt/glite'
- },
- ant => {
- prefix=> '/usr'
- },
- jdk => {
- prefix=> '/usr/java/latest'
- },
- libtar => {
- prefix=> '/usr'
- },
- axis => {
- prefix=> '/usr'
- },
- log4c => {
- prefix=> '/usr'
- },
- postgresql => {
- prefix=> '/usr'
- },
- activemq => {
- prefix=>'/opt/activemq-cpp-library',
- pkg => 'activemq-cpp'
- },
- apr => {
- prefix=>'/opt/apr',
- pkg => 'apr-1'
- },
- aprutil => {
- prefix=>'/opt/apr-util',
- pkg => 'apr-util-1'
- },
-);
-
-my %jar = (
- 'jakarta-commons-codec' => '/usr/share/java/commons-codec.jar',
- 'jakarta-commons-lang' => '/usr/share/java/commons-lang.jar',
-);
-
-
-my %glite_prefix;
-my %need_externs;
-my %need_externs_type;
-my %need_jars;
-my %extrafull;
-my %extranodmod;
-my %deps;
-my %deps_type;
-my %buildroot;
-my (%etics_externs, %etics_projects);
-
-#
-# modules of the subsystems
-#
-# additional modules from $project{modules} are automatically added
-#
-my %lbmodules = (
- 'lb' => [ qw/client client-java common doc logger server state-machine types utils ws-interface ws-test harvester yaim logger-msg/],
- 'lbjp-common' => [qw/db log maildir server-bones trio jp-interface gss gsoap-plugin/],
- 'jobid' => [qw/api-c api-cpp api-java/],
- 'jp' => [ qw/client doc index primary server-common ws-interface/ ],
- 'gridsite' => [ qw/apache shared commands core devel slashgrid services service-clients gsexec/ ],
- 'px' => [ qw/proxyrenewal myproxy-yaim/ ],
- );
-
-
-my @opts = (
- 'prefix:s' => \$prefix,
- 'staged=s' => \$staged,
- 'module=s' => \$module,
- 'thrflavour:s' => \$thrflavour,
- 'nothrflavour:s' => \$nothrflavour,
- 'mode=s' => \$mode,
- 'listmodules=s' => \$listmodules,
- 'version=s' => \$version,
- 'branch=s' => \$branch,
- 'output=s' => \$output,
- 'stage=s' => \$stagedir,
- 'root:s' => \$root,
- 'sysroot:s' => \$sysroot,
- 'sysconfdir=s' => \$sysconfdir,
- 'localstatedir=s' => \$localstatedir,
- 'lb-tag=s' => \$lb_tag,
- 'lbjp-common-tag=s' => \$lbjp_tag,
- 'jp-tag=s' => \$jp_tag,
- 'jobid-tag=s' => \$jobid_tag,
- 'help' => \$help,
- 'libdir=s' => \$libdir,
- 'project=s' => \$project,
- 'debug' => \$debug,
-);
-
-for (@nodes) {
- $enable_nodes{$_} = 0;
- $disable_nodes{$_} = 0;
-
- push @opts,"disable-$_",\$disable_nodes{$_};
- push @opts,"enable-$_",\$enable_nodes{$_};
-}
-
-push @opts,"with-$_=s",\$externs{$_}{withprefix} for keys %externs;
-push @opts,"with-$_=s",\$jar{$_} for keys %jar;
-
-my @keeparg = @ARGV;
-
-GetOptions @opts or die "Errors parsing command line\n";
-$prefix=~s/\/$//;
-$root=~s/\/$//;
-$sysroot=~s/\/$//;
-if (not $sysconfdir) { $sysconfdir = $prefix eq '/usr' ? '/etc' : "$prefix/etc"; }
-if (not $localstatedir) { $localstatedir = $prefix eq '/usr' ? '/var' : "$prefix/var"; }
-$sysconfdir=~s/\/$//;
-$localstatedir=~s/\/$//;
-
-$externs{'mysql-server'}{prefix}=$externs{mysql}{prefix} if $externs{'mysql-server'}{prefix} eq '';
-$externs{'mysql-devel'}{prefix}=$externs{mysql}{prefix} if $externs{'mysql-devel'}{prefix} eq '';
-$externs{'gsoapxx'}{prefix}=$externs{gsoap}{prefix} if $externs{'gsoapxx'}{prefix} eq '';
-
-%project = %{$projects{$project}};
-for $_ (keys %{$project{etics_externs}}) {
- $etics_externs{$_} = $project{etics_externs}{$_};
-}
-for $_ (keys %{$project{etics_projects}}) {
- $etics_projects{$_} = $project{etics_projects}{$_};
-}
-for $_ (keys %{$project{need_externs_aux}}) {
- $need_externs_aux{$_} = $project{need_externs_aux}{$_};
-}
-for my $ext (keys %need_externs_aux) {
- for (@{$need_externs_aux{$ext}}) {
- my ($pkg, $type) =/([^:]*)(?::(.*))?/;
- $type = 'BR' unless ($type);
-
- push @{$need_externs{$ext}},$pkg;
- $need_externs_type{$ext}->{$pkg} = $type;
- }
-}
-for $_ (keys %{$project{modules}}) {
- push @{$lbmodules{$_}},@{$project{modules}{$_}};
-}
-
-
-if ($help) { usage(); exit 0; }
-
-if ($listmodules) {
- my $name_prefix = ($listmodules eq 'gridsite' and $project eq 'glite') ? 'org' : $project{etics_name};
- my @m = map "$name_prefix.$listmodules.$_",@{$lbmodules{$listmodules}};
- print "@m\n";
- exit 0;
-}
-
-warn "$0: --version, --branch and --output make sense only in --mode=etics\n"
- if ($version || $output || $branch) && $mode ne 'etics';
-
-my $en;
-for (keys %enable_nodes) { $en = 1 if $enable_nodes{$_}; }
-
-my $dis;
-for (keys %disable_nodes) { $dis = 1 if $disable_nodes{$_}; }
-
-die "--enable-* and --disable-* are mutually exclusive\n"
- if $en && $dis;
-
-die "--module cannot be used with --enable-* or --disable-*\n"
- if $module && ($en || $dis);
-
-die "$module: unknown module\n" if $module && ! grep $module,@{$lbmodules{lb}},{$lbmodules{jp}};
-
-if ($dis) {
- for (@nodes) {
- $enable_nodes{$_} = 1 unless ($disable_nodes{$_} or not $default_nodes{$_});
- }
-}
-
-if (!$en && !$dis) { for (@nodes) { $enable_nodes{$_} = 1 if ($default_nodes{$_}) } };
-
-for (keys %enable_nodes) { delete $enable_nodes{$_} unless $enable_nodes{$_}; }
-
-$stagedir = $root unless $stagedir;
-$stagedir=~s/\/$// if ($stagedir);
-
-if ($mode eq 'build') { for my $ext (keys %externs) {
- if (defined $externs{$ext} and defined $externs{$ext}{withprefix}) { $externs{$ext}{prefix} = $externs{$ext}{withprefix}; }
- elsif (defined $externs{$ext}{pkg}) {
- my ($flag, $env, $cmd, $ret);
- my $pkg = $externs{$ext}{pkg};
- my $flagname = uc $externs{$ext}{pkg};
- $flagname =~ s/-[0-9\.]*$//;
- $flagname =~ y/-\+/_X/;
-
- print "Checking $pkg ... ";
- $env = "PKG_CONFIG_PATH=$pkg_config_env$stagedir$prefix/$libdir/pkgconfig";
- $cmd = "$env pkg-config $pkg --exists >/dev/null";
- `$cmd`; $ret = $?;
- print "('$cmd' => $ret)\n" if ($debug);
- if ($ret == 0) {
- $externs{$ext}{prefix}=`$env pkg-config $pkg --variable=prefix`;
- chomp $externs{$ext}{prefix};
- print "$externs{$ext}{prefix}\n";
-
- $flag=`$env pkg-config $pkg --cflags`;
- $externs{$ext}{flags} .= "${flagname}_CFLAGS=$flag" if ($flag);
- $flag=`$env pkg-config $pkg --libs`;
- $externs{$ext}{flags} .= "${flagname}_LIBS=$flag" if ($flag);
- } else {
- print "(using default $externs{$ext}{prefix})\n";
- }
- print "\n" if ($debug);
- }
- elsif ($ext eq 'jdk') {
- my $jdk_prefix;
-
- print "Looking for some caffein ... ";
- if (defined $ENV{'JDK_HOME'}) {
- $jdk_prefix = $ENV{'JDK_HOME'};
- print "JDK_HOME=$jdk_prefix\n";
- } elsif (defined $ENV{'JAVA_HOME'}) {
- $jdk_prefix = $ENV{'JAVA_HOME'};
- print "JAVA_HOME=$jdk_prefix\n";
- } else {
- print "(using default $externs{$ext}{prefix}))\n"
- }
- $externs{$ext}{prefix} = $jdk_prefix if ($jdk_prefix);
- }
-} }
-
-if ($mode eq 'build') {
- print "Writing config.status\n";
- open CONF,">config.status" or die "config.status: $!\n";
- for ('JDK_HOME', 'JAVA_HOME', 'PKG_CONFIG_PATH') {
- print CONF "$_=$ENV{$_} " if (defined $ENV{$_});
- }
- print CONF "$0 @keeparg\n";
- close CONF;
-}
-
-
-my @modules;
-my %aux;
-
-if ($module) {
-# push @modules,split(/[,.]+/,$module);
- push @modules,$module;
-}
-else {
- @modules = map(($extranodmod{$_} ? $extranodmod{$_} : 'lb.'.$_),(keys %enable_nodes));
-
- my $n;
-
- do {
- local $"="\n";
- $n = $#modules;
- push @modules,(map @{$deps{$_}},@modules);
-
- undef %aux; @aux{@modules} = (1) x ($#modules+1);
- @modules = keys %aux;
- } while ($#modules > $n);
-}
-
-@aux{@modules} = (1) x ($#modules+1);
-delete $aux{$_} for (split /,/,$staged);
-@modules = keys %aux;
-
-mode_build() if $mode eq 'build';
-mode_checkout() if $mode eq 'checkout';
-mode_etics($module) if $mode eq 'etics';
-
-sub mode_build {
- print "\nBuilding modules: @modules\n";
- print "Mode: "; print $module ? "single module" : "multiple modules"; print "\n";
-
- my @ext = map @{$need_externs{$_}},@modules;
- my @myjars = map @{$need_jars{$_}},@modules;
- undef %aux; @aux{@ext} = 1;
- @ext = keys %aux;
- undef %aux; @aux{@myjars} = (1) x ($#myjars+1);
- @myjars = keys %aux;
-
- print "\nRequired externals:\n";
- print "\t$_: ".($externs{$_}{prefix}?$externs{$_}{prefix}:'-')."\n" for @ext;
- print "\t$_: $jar{$_}\n" for @myjars;
- for (@ext) { if (defined($externs{$_}{flags})) { print "$externs{$_}{flags}"; } };
- print "\nThis is a poor-man configure, it's up to you to have sources and externals there\n\n";
-
- mkinc($_) for @modules;
-
- if ($module) {
- print "Not creating summary Makefile\n" if $debug;
- } else {
- print "Creating Makefile\n";
-
- open MAK,">Makefile" or die "Makefile: $!\n";
-
- print MAK "all: @modules\n\n";
- print MAK "stage: ".(join '-stage ', @modules)."-stage\n\n";
- print MAK "clean check install:\n";
-
- for (@modules) {
- my $full = full($_);
- print MAK "\tcd $full/$buildroot{$_} && \${MAKE} \$@\n"
- }
-
- print MAK "\ndistclean:\n";
-
- for (@modules) {
- my $full = full($_);
- print MAK $buildroot{$_} eq '' ?
- "\tcd $full && \${MAKE} distclean\n" :
- "\trm -rf $full/$buildroot{$_}\n"
- }
-
- print MAK "\n";
-
- for (@modules) {
- my %ldeps; undef %ldeps;
- @ldeps{@{$deps{$_}}} = 1;
- for my $x (split /,/,$staged) { delete $ldeps{$x}; }
- my @dnames = $module ? () : keys %ldeps;
- my $snames = $#dnames == -1 ? '' : join('-stage ', @dnames).'-stage';
-
- my $full = full($_);
- my $build = $buildroot{$_};
-
- print MAK "$_: @dnames\n\tcd $full/$build && \${MAKE} && \${MAKE} install\n\n";
- print MAK "$_-stage: $snames\n\tcd $full/$build && \${MAKE} && \${MAKE} stage\n\n";
- }
-
- close MAK;
- }
-}
-
-sub mode_checkout() {
- for (@modules) {
- my $module = $_;
- my $tag = "";
- if ($lb_tag){
- for (@{$lbmodules{lb}}){
- if ("lb.".$_ eq $module){
- $tag = '-r '.$lb_tag;
- }
- }
- }
- if ($lbjp_tag){
- for (@{$lbmodules{'lbjp-common'}}){
- if ("lbjp-common.".$_ eq $module){
- $tag = '-r '.$lbjp_tag;
- }
- }
- }
- if ($jp_tag){
- for (@{$lbmodules{'jp'}}){
- if ("jp.".$_ eq $module){
- $tag = '-r '.$jp_tag;
- }
- }
- }
- if ($jobid_tag){
- for (@{$lbmodules{jobid}}){
- if ("jobid.".$_ eq $module){
- $tag = '-r '.$jobid_tag;
- }
- }
- }
- #if (grep {"lb.".$_ eq $module} @{$lbmodules{lb}}){
- # print "found";
- #}
- $_ = full($_);
- print "\n*** Checking out $_\n";
- system("cvs checkout $tag $_") == 0 or die "cvs checkout $tag $_: $?\n";
- }
-}
-
-BEGIN{
-%etics_externs = (
- 'myproxy-devel'=>'myproxy-devel',
- 'myproxy-libs'=>'myproxy-libs',
- 'myproxy-server'=>'myproxy-server',
- 'myproxy-admin'=>'myproxy-admin',
- cares=>'c-ares',
- voms=>'org.glite.security.voms-api-cpp',
- utiljava=>'org.glite.security.util-java',
- gpt=>'gpt',
- fetchcrl=>'fetch-crl',
- activemq=>'activemq-cpp-library',
- apr=>'apr-dev',
- aprutil=>'aprutil-dev',
-);
-
-%etics_projects = (
-);
-
-%need_externs_aux = (
- 'lb.client' => [ qw/cppunit:B classads libtool:B/ ],
- 'lb.common' => [ qw/expat cares:B cppunit:B classads libtool:B/ ],
- 'lb.doc' => [ qw/tetex-latex:B/ ],
- 'lb.logger' => [ qw/cppunit:B libtool:B/ ],
- 'lb.logger-msg' => [ qw/cppunit:B activemq libtool:B/ ],
- 'lb.server' => [ qw/globus_essentials:R globus:B expat cares mysql:R mysql-server:R mysql-devel:B cppunit:B gsoap:B classads voms lcas gridsite bison:B libtool:B libxml2 flex:B/ ],
- 'lb.state-machine' => [ qw/classads libtool:B libxslt:B expat:B/ ],
- 'lb.utils' => [ qw/cppunit:B libtool:B/ ],
- 'lb.ws-interface' => [ qw/libxslt:B/ ],
- 'lb.ws-test' => [ qw/gsoap:B libtool:B/ ],
- 'lb.types' => [ qw// ],
- 'lb.harvester' => [ qw/docbook-utils:B libtool:B/ ],
- 'lbjp-common.db' => [ qw/mysql:B mysql-devel:B postgresql:B cppunit:B log4c:B libtool:B/ ],
- 'lbjp-common.log' => [ qw/log4c libtool:B/ ],
- 'lbjp-common.maildir' => [ qw/libtool:B/ ],
- 'lbjp-common.server-bones' => [ qw/libtool:B/ ],
- 'lbjp-common.trio' => [ qw/cppunit:B libtool:B/ ],
- 'lbjp-common.jp-interface' => [ qw/cppunit:B log4c:B libtool:B/ ],
- 'lbjp-common.gss' => [ qw/globus_essentials:R globus:B cares cppunit:B libtool:B/ ],
- 'lbjp-common.gsoap-plugin' => [ qw/cppunit:B globus_essentials:R globus:B cares:B gsoap gsoapxx libtool:B/ ],
- 'jobid.api-c' => [ qw/cppunit:B libtool:B openssl:B/ ],
- 'jobid.api-cpp' => [ qw/cppunit:B libtool:B/ ],
- 'jobid.api-java' => [ qw/ant:B jdk:B/ ],
- 'jp.client' => [ qw/gsoap libtar globus_essentials:R globus:B/ ],
- 'jp.doc' => [],
- 'jp.index' => [ qw/gsoap globus_essentials:R globus:B/ ],
- 'jp.primary' => [ qw/classads gsoap libtar globus_essentials:R globus:B/ ],
- 'jp.server-common' => [],
- 'jp.ws-interface' => [],
- 'gridsite.core' => [ qw/httpd-devel:B gsoap:B globus:B curl:B doxygen:B fuse-devel:B libxml2 openssl:B build_common_cpp:B doxygen:B/ ],
- 'gridsite.commands' => [ qw/curl:R openssl:R/ ],
- 'gridsite.apache' => [ qw/libxml2:R openssl:R curl:R/ ],
- 'gridsite.shared' => [ qw/libxml2:R openssl:R/ ],
- 'gridsite.devel' => [ qw// ],
- 'gridsite.slashgrid' => [ qw/curl:R fuse-libs:R fuse:R/],
- 'gridsite.services' => [ qw/curl:R gsoap:R/ ],
- 'gridsite.service-clients' => [ qw/curl:R gsoap:R gsoapxx:R/ ],
- 'gridsite.gsexec' => [ qw// ],
- 'px.proxyrenewal' => [ qw/globus:B globus_essentials:R myproxy-devel:B myproxy-libs:R voms libtool:B/ ],
- 'px.myproxy-config' => [ qw/myproxy-admin:R/ ], # in myproxy-config.spec
-);
-
-%need_jars = (
- 'jobid.api-java' => [ qw/jakarta-commons-codec/ ],
- 'lb.client-java' => [ qw/jakarta-commons-lang/ ],
-);
-
-for my $jar (keys %need_jars) {
- for (@{$need_jars{$jar}}) {
- $need_externs_type{$jar}->{$_} = 'BR'; # XXX
- }
-}
-
-%deps_aux = (
- 'lb.client' => [ qw/
- lb.types:B lb.common
- lbjp-common.trio
- jobid.api-cpp:B jobid.api-c
- lbjp-common.gss
- / ],
- 'lb.client-java' => [ qw/
- lb.types:B
- lb.ws-interface:B
- jobid.api-java
- / ],
- 'lb.common' => [ qw/
- jobid.api-cpp:B jobid.api-c
- lb.types:B lbjp-common.trio lbjp-common.gss
- / ],
- 'lb.doc' => [ qw/lb.types:B/ ],
- 'lb.logger' => [ qw/
- lbjp-common.trio
- lbjp-common.log
- jobid.api-c
- lb.common
- lbjp-common.gss
- / ],
- 'lb.logger-msg' => [ qw/
- lb.logger
- / ],
- 'lb.server' => [ qw/
- lb.ws-interface lb.types:B lb.common lb.state-machine
- lbjp-common.db lbjp-common.server-bones lbjp-common.trio lbjp-common.maildir lbjp-common.log
- jobid.api-c
- lbjp-common.gsoap-plugin lbjp-common.gss
- / ],
- 'lb.state-machine' => [ qw/lb.types:B lb.common lbjp-common.jp-interface lbjp-common.gss/ ],
- 'lb.utils' => [ qw/
- lbjp-common.jp-interface
- jobid.api-c
- lbjp-common.trio lbjp-common.maildir
- lb.client lb.state-machine lb.types:B
- / ],
- 'lb.ws-test' => [ qw/lbjp-common.gsoap-plugin lb.ws-interface/ ],
- 'lb.ws-interface' => [ qw/lb.types:B/ ],
- 'lb.types' => [ qw// ],
- 'lb.harvester' => [ qw/
- jobid.api-c lbjp-common.trio lbjp-common.db lb.common lb.client
- lbjp-common.gss lbjp-common.log
- / ],
- 'lb.yaim' => [ qw// ],
- 'lb.glite-LB' => [ qw/
- lb.logger:R lb.server:R lb.utils:R lb.doc:R
- lb.ws-test:R lb.harvester:R lb.yaim:R lb.client-java:R
- lb.logger-msg:R
- / ],
- 'lb.emi-lb' => [ qw/
- lb.logger:R lb.server:R lb.utils:R lb.doc:R
- lb.ws-test:R lb.harvester:R lb.yaim:R lb.client-java:R
- lb.logger-msg:R
- / ],
- 'lbjp-common.db' => [ qw/lbjp-common.trio lbjp-common.log/ ],
- 'lbjp-common.maildir' => [ qw// ],
- 'lbjp-common.log' => [ qw// ],
- 'lbjp-common.server-bones' => [ qw/lbjp-common.log/ ],
- 'lbjp-common.trio' => [ qw// ],
- 'lbjp-common.gss' => [ qw// ],
- 'lbjp-common.gsoap-plugin' => [ qw/lbjp-common.gss/ ],
- 'jobid.api-c' => [ qw// ],
- 'jobid.api-cpp' => [ qw/jobid.api-c/ ],
- 'jobid.api-java' => [ qw// ],
-
- 'lbjp-common.jp-interface' => [ qw/lbjp-common.db jobid.api-c/ ],
-
- 'jp.client' => [ qw/
- jp.ws-interface
- lbjp-common.jp-interface lbjp-common.maildir
- jobid.api-c
- lbjp-common.gsoap-plugin
- / ],
- 'jp.doc' => [ qw// ],
- 'jp.index' => [ qw/
- jp.server-common jp.ws-interface
- lbjp-common.jp-interface lbjp-common.trio lbjp-common.db lbjp-common.server-bones
- lbjp-common.gsoap-plugin
- / ],
- 'jp.primary' => [ qw/
- jobid.api-c
- jp.server-common jp.ws-interface
- lb.state-machine
- lbjp-common.jp-interface lbjp-common.trio lbjp-common.db lbjp-common.server-bones
- lbjp-common.gsoap-plugin
- / ],
- 'jp.server-common' => [ qw/
- lbjp-common.jp-interface lbjp-common.db
- / ],
- 'jp.ws-interface' => [ qw// ],
-
- 'gridsite.core' => [ qw// ],
- 'gridsite.commands' => [ qw/gridsite.core:B gridsite.shared:R/ ],
- 'gridsite.apache' => [ qw/gridsite.core:B gridsite.shared:R/ ],
- 'gridsite.shared' => [ qw/gridsite.core:B / ],
- 'gridsite.devel' => [ qw/gridsite.core:B gridsite.shared:R/ ],
- 'gridsite.slashgrid' => [ qw/gridsite.core:B gridsite.shared:R/],
- 'gridsite.services' => [ qw/gridsite.core:B gridsite.shared:R/ ],
- 'gridsite.service-clients' => [ qw/gridsite.core:B gridsite.shared:R/ ],
- 'gridsite.gsexec' => [ qw/gridsite.core:B/ ],
-
- 'px.proxyrenewal' => [ qw// ],
- 'px.glite-PX' => [qw/px.myproxy-yaim:R/],
- 'px.emi-px' => [qw/px.myproxy-yaim:R/],
- 'px.myproxy-yaim' => [ qw// ],
- 'px.myproxy-config' => [],
-);
-
-for my $ext (keys %deps_aux) {
- for (@{$deps_aux{$ext}}) {
- /([^:]*)(?::(.*))?/;
- push @{$deps{$ext}},$1;
- my $type = $2 ? $2 : 'BR';
- $deps_type{$ext}->{$1} = $type;
- }
-}
-
-
-%extrafull = ( gridsite=>'org.gridsite.core');
-
-#( java => 'client-java' );
-%extranodmod = (
- db => 'lbjp-common.db',
- jpprimary => 'jp.primary',
- jpindex => 'jp.index',
- jpclient => 'jp.client',
- lb => 'lb.glite-LB',
- px => 'px.glite-PX',
- proxyrenewal => 'px.proxyrenewal'
-);
-
-%obsoletes = (
- 'lb.yaim' => [ qq/glite-yaim-lb/ ],
- 'px.proxyrenewal' => [ qq/glite-security-proxyrenewal/ ],
- 'px.myproxy-yaim' => [ qq/glite-yaim-myproxy/ ],
- 'px.myproxy-config' => [ qq/myproxy-config/ ], # in myproxy-config.spec
- 'lbjp-common.gss' => [ qq/glite-security-gss/ ],
- 'lbjp-common.gsoap-plugin' => [ qq/glite-security-gsoap-plugin/ ],
-);
-
-%conflicts = (
-);
-
-%provides = (
- 'lbjp-common.gss' => [ qq/glite-security-gss/ ],
- 'lbjp-common.gsoap-plugin' => [ qq/glite-security-gsoap-plugin/ ],
-);
-
-%cvs_prefix = (
- 'lb' => 'org.glite',
- 'jp' => 'org.glite',
- 'jobid' => 'org.glite',
- 'lbjp-common' => 'org.glite',
- 'gridsite' => 'org',
- 'px' => 'org.glite',
-);
-
-%cvs_tag_prefix = (
- 'lb' => 'glite-',
- 'jp' => 'glite-',
- 'jobid' => 'glite-',
- 'lbjp-common' => 'glite-',
- 'gridsite' => '',
- 'px' => 'glite-',
-);
-
-# ==== projects specification ====
-# etics_name ........... ETICS project name
-# conf_prefix .......... ETICS configurations name prefix
-# tag_prefix ........... VCS tag prefix
-# local_prefix ......... prefix (relative to stage)
-# etics_externs ........ ETICS modules names of externals
-# (${NAME.location}, ETICS conf. dependencies)
-# etics_projects ....... ETICS project names of externals
-# etics_externs_devel .. ETICS modules names of devel versions of externals
-# need_externs_aux ..... project-specific external dependencies
-# supported_platforms .. platforms supported by the project
-# modules .............. additional modules in subsystems
-%projects = (
- glite => {
- etics_name => 'org.glite',
- conf_prefix => { %cvs_tag_prefix },
- tag_prefix => { %cvs_tag_prefix },
- flavours => '--thrflavour=${globus.thr.flavor} --nothrflavour=${globus.nothr.flavor}',
- local_prefix => '',
- etics_externs => {
- globus_essentials=>'vdt_globus_essentials',
- globus=>'globus',
- gridsite=>'org.gridsite.shared',
- yaim_core=>'org.glite.yaim.core',
- gip_release=>'glite-info-provider-release',
- gip_service=>'glite-info-provider-service',
- bdii=>'bdii',
- glite_version=>'glite-version',
- glite_info_templates=>'glite-info-templates',
- glue_schema=>'glue-schema',
- trustmanager=>'org.glite.security.trustmanager',
- axis=>'axis',
- lcas=>'org.glite.security.lcas',
- gsoapxx=>'-',
- build_common_cpp=>'org.glite.build.common-cpp',
- },
- etics_externs_devel => {
- gridsite=>'org.gridsite.devel',
- },
- etics_projects => {
- vdt=>[qw/globus globus_essentials gpt/],
- 'org.glite'=>[qw/voms gridsite lcas gip_release gip_service bdii glite_version glite_info_templates glue_schema yaim_core/],
- },
- need_externs_aux => {
- 'lb.client-java' => [ qw/ant:B jdk:B axis:B trustmanager utiljava libtool:B/ ],
- 'lb.glite-LB' => [ qw/fetchcrl:R gpt:R gip_release:R gip_service:R bdii:R glite_version:R glite_info_templates:R glue_schema:R/ ],
- 'lb.yaim' => [ qw/yaim_core:R perl-LDAP:R/ ],
- 'px.glite-PX' => [qw/myproxy-server:R myproxy-admin:R fetchcrl:R gip_service:R bdii:R glite_version:R gpt:R glue_schema:R/],
- 'px.myproxy-yaim' => [ qw/yaim_core:R/ ],
- },
- modules => {
- 'lb' => [ qw/glite-LB/ ],
- 'px' => [ qw/glite-PX/ ],
- }
- },
-
- emi => {
- etics_name => 'emi',
- conf_prefix => {
- 'lb' => 'emi-',
- 'jp' => 'emi-',
- 'jobid' => 'emi-',
- 'lbjp-common' => 'emi-',
- 'gridsite' => '',
- 'px' => 'emi-',
- },
- tag_prefix => { %cvs_tag_prefix },
- flavours => '--thrflavour= --nothrflavour=',
- local_prefix => '/usr',
- etics_externs => {
- globus_essentials=>'globus-gssapi-gsi',
- globus=>'globus-gssapi-gsi-devel',
- gridsite=>'emi.gridsite.shared',
- yaim_core=>'emi.yaim.yaim-core',
- yaim_bdii=>'emi.bdii.yaim-bdii',
- gip_service=>'emi.bdii.glite-info-provider-service',
- bdii=>'emi.bdii.core',
- glite_version=>'emi.misc.glite-version',
- glue_schema=>'emi.bdii.glue-schema',
- trustmanager=>'emi.java-security.trustmanager',
- trustmanager_axis=>'emi.java-security.trustmanager-axis',
- axis=>'axis1.4',
- lcas=>'emi.sac.lcas',
- gsoapxx=>'-',
- build_common_cpp=>'emi.misc.glite.build-common-cpp',
- jdk=>'java',
- },
- etics_externs_devel => {
- cares => 'c-ares-devel',
- classads => 'classads-devel',
- cppunit => 'cppunit-devel',
- expat => 'expat-devel',
- gsoap => 'gsoap-devel',
- voms => 'org.glite.security.voms-api',
- libtar => 'libtar-devel',
- log4c => 'log4c-devel',
- postgresql => 'postgresql-devel',
- curl => 'curl-devel',
- libxml2 => 'libxml2-devel',
- openssl => 'openssl-devel',
- gridsite=>'emi.gridsite.devel',
- jdk=>'java-devel',
- },
- etics_projects => {
- 'emi'=>[qw/voms voms-devel gridsite lcas gip_service bdii glite_version glue_schema yaim_core yaim_bdii trustmanager trustmanager_axis/],
- },
- need_externs_aux => {
- 'lb.client-java' => [ qw/ant:B jdk:B axis:B trustmanager trustmanager_axis libtool:B/ ],
- 'lb.glite-LB' => [ qw/fetchcrl:R gip_service:R bdii:R glite_version:R glue_schema:R/ ],
- 'lb.yaim' => [ qw/yaim_core:R yaim_bdii:R perl-LDAP:R/ ],
- 'px.glite-PX' => [qw/myproxy-server:R myproxy-admin:R fetchcrl:R gip_service:R bdii:R glite_version:R glue_schema:R/],
- 'px.myproxy-yaim' => [ qw/yaim_core:R yaim_bdii:R/ ],
- },
- supported_platforms => {
- sl5_x86_64_gcc412EPEL => 1,
- sl5_ia32_gcc412EPEL => 1,
- },
- modules => {
- 'lb' => [ qw/emi-lb/ ],
- 'px' => [ qw/emi-px/ ],
- }
- },
-);
-
-%platform_properties = (
- 'gridsite.core' => {
- sl5_x86_64_gcc412 => { aprSuffix => '1' },
- sl5_ia32_gcc412 => { aprSuffix => '1' },
- sl5_x86_64_gcc412EPEL => { aprSuffix => '1' },
- sl5_ia32_gcc412EPEL => { aprSuffix => '1' },
- deb5_x86_64_gcc432 => { aprSuffix => '1.0' },
- deb5_ia32_gcc432 => { aprSuffix => '1.0' },
- slc4_x86_64_gcc346 => { aprSuffix => '0' },
- slc4_ia32_gcc346 => { aprSuffix => '0' },
- default => {
- }
- },
- 'jobid.api-java' => {
- default => { 'package.buildarch' => 'noarch' },
- },
- 'lb.types' => {
- default => { 'package.buildarch' => 'noarch' },
- },
- 'lb.doc' => {
- default => { 'package.buildarch' => 'noarch' },
- },
- 'lb.ws-interface' => {
- default => { 'package.buildarch' => 'noarch' },
- },
- 'lb.yaim' => {
- default => { 'package.buildarch' => 'noarch' },
- },
- 'px.yaim' => {
- default => { 'package.buildarch' => 'noarch' },
- },
- 'px.myproxy-config' => {
- default => { 'package.buildarch' => 'noarch' },
- },
-);
-
-my @k = keys %deps_aux;
-@buildroot{@k} = ('') x ($#k+1);
-
-$buildroot{'gridsite.core'} = 'src';
-}
-
-sub full
-{
- my $short = shift;
- return $extrafull{$short} ? $extrafull{$short} : 'org.glite.'.$short;
-}
-
-sub mkinc
-{
- my %aux;
- undef %aux;
- my @m=qw/
-lb.client lb.doc lb.state-machine lb.ws-interface lb.logger lb.logger-msg lb.types lb.common lb.server lb.utils lb.ws-test lb.client-java lb.harvester lb.yaim lb.glite-LB
-lbjp-common.gss lbjp-common.gsoap-plugin
-jobid.api-c jobid.api-cpp jobid.api-java
-lbjp-common.db lbjp-common.log lbjp-common.maildir lbjp-common.server-bones lbjp-common.trio lbjp-common.jp-interface lbjp-common.gss lbjp-common.gsoap-plugin
-jp.client jp.doc jp.index jp.primary jp.server-common jp.ws-interface
-px.proxyrenewal px.myproxy-yaim px.glite-PX px.myproxy-config
-/;
- @aux{@m} = (1) x ($#m+1);
-
- my $short = shift;
- my $full = full $short;
-
- unless ($aux{$short}) {
- print "Makefile.inc not needed in $full\n";
- return;
- }
-
- my $top_srcdir = '.';
- my $build = '';
-
- if ($module) {
- $top_srcdir = $0;
- $top_srcdir =~ s,/?[^/]*$,,;
- $top_srcdir =~ s,^$,\.,;
- } else {
- $build = "$full/";
- unless ($buildroot{$_} eq '') {
- $top_srcdir = '..';
- $build .= "$buildroot{$_}/";
- unless (-d "$build") {
- mkdir "$build" or die "mkdir $build: $!\n";
- }
- }
- }
- unless ($top_srcdir eq '.') {
- unlink $build."Makefile";
- symlink "$top_srcdir/Makefile",$build."Makefile" or die "symlink $top_srcdir/Makefile ".$build."Makefile: $!\n";
- for my $file ('.pre', '.post', '.preun', '.postun changelog') {
- my $pfile = "project/$file";
- if (-f "$full/$pfile") {
- mkdir "$build/project" unless (-d "$build/project");
- unlink $build.$pfile;
- symlink "../$top_srcdir/$pfile", $build.$pfile or die "symlink ../$top_srcdir/$pfile ".$build."$pfile: $!\n";
- }
- }
- }
-
- open MKINC,">".$build."Makefile.inc"
- or die $build."Makefile.inc: $!\n";
-
- print "Creating ".$build."Makefile.inc\n";
-
- print MKINC qq{project = $project
-PREFIX = $root
-prefix = $prefix
-stagedir = $stagedir
-sysroot = $sysroot
-sysconfdir = $sysconfdir
-localstatedir = $localstatedir
-thrflavour = $thrflavour
-nothrflavour = $nothrflavour
-libdir = $libdir
-top_srcdir = $top_srcdir
-};
-
- for (@{$need_externs{$short}}) {
- next unless defined $externs{$_} and defined $externs{$_}{prefix};
- print MKINC "${_}_prefix = $externs{$_}{prefix}\n";
- print MKINC "$externs{$_}{flags}" if defined $externs{$_}{flags};
- }
-
- for (@{$need_jars{$short}}) {
- print MKINC "${_}_jar = $jar{$_}\n"
- }
-
- my $need_gsoap = 0;
- for (@{$need_externs{$short}}) { $need_gsoap = 1 if $_ eq 'gsoap'; }
-
- print MKINC "gsoap_default_version=".gsoap_version()."\n" if $need_gsoap;
-
- close MKINC;
-}
-
-BEGIN{
-};
-
-sub mode_etics {
- $fmod = shift;
-
- die "$0: --module required with --etics\n" unless $fmod;
-
- my ($subsys,$module) = split /\./,$fmod;
-
- my ($major,$minor,$rev,$age);
-
- if ($version) {
- $version =~ /([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)-(.+)/;
- ($major,$minor,$rev,$age) = ($1,$2,$3,$4);
- }
- else {
- my $path = "$cvs_prefix{$subsys}.$subsys.$module/project";
- if ($subsys eq 'gridsite') {
- $path = "$cvs_prefix{$subsys}.$subsys.core/project";
- }
- open V,"$path/version.properties"
- or die "$cvs_prefix{$subsys}.$subsys.$module/project/version.properties: $!\n";
-
- while ($_ = <V>) {
- chomp;
- ($major,$minor,$rev) = ($1,$2,$3) if /module\.version\s*=\s*([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)/;
- $age = $1 if /module\.age\s*=\s*([[:digit:]]+)/;
- }
- close V;
- }
-
- my @copts = ();
- my %ge;
- @ge{@{$etics_projects{$project{etics_name}}}} = (1) x ($#{$etics_projects{$project{etics_name}}}+1);
-
- for (@{$need_externs{"$subsys.$module"}}) {
- if ($need_externs_type{"$subsys.$module"}->{$_}=~/B/ and (defined $externs{$_} or defined $jar{$_})) {
- my $eext = $etics_externs{$_} ? $etics_externs{$_} : $_;
- next if ($eext eq '-');
- if ($project ne 'glite') {
- if ($ge{$_} and not defined $externs{$_}{pkg}) {
- push @copts, "--with-$_=\${stageDir}";
- }
- } else {
- push @copts,$ge{$_} ? "--with-$_=\${stageDir}" : "--with-$_=\${$eext.location}";
- }
- }
- }
-
- for (@{$need_jars{"$subsys.$module"}}) {
- my $eext = $etics_externs{$_} ? $etics_externs{$_} : $_;
-
- push @copts,"--with-$_ \${$eext.location}$jar{$_}" if ($project eq 'glite');
- }
-
- my $conf;
- my $conftag;
- my ($confprefix, $nameprefix);
-
- $dwpath = "path = \${projectName}/\${moduleName}/\${version}/\${platformName}/\${packageName}-\${version}-\${age}.tar.gz\n";
-
- $confprefix = $project{conf_prefix}{$subsys};
- $nameprefix = $confprefix;
- $nameprefix =~ s/-$//;
- $nameprefix =~ s/-/\./g;
-
- if ($branch) {
- $conf = "$confprefix${subsys}-${module}_$branch";
- $conftag = $branch;
- # forced low age number
- $age = $branch eq 'HEAD' ? '0head' : '0dev'; }
- else {
- $conf = "$confprefix$subsys-${module}_R_${major}_${minor}_${rev}_${age}";
-
-# XXX: gridsite hack
- $conftag = $subsys eq 'gridsite' ? "$project{tag_prefix}{$subsys}$subsys-${module}_R_${major}_${minor}_${rev}" :
- "$project{tag_prefix}{$subsys}$subsys-${module}_R_${major}_${minor}_${rev}_${age}"; }
-
- my $file = $output ? $output : "$conf.ini";
- open C,">$file" or die "$file: $!\n";
-
- my $buildroot = $buildroot{"$subsys.$module"} eq '' ? '#no build.root' : "build.root = " . $buildroot{"$subsys.$module"};
-
- my $confdir = $buildroot{"$subsys.$module"} eq '' ? '.' : '..';
-
- my $package_description = "";
- my $package_summary = "";
-
- if (-e "$cvs_prefix{$subsys}.$subsys.$module/project/package.description") {
- open V, "$cvs_prefix{$subsys}.$subsys.$module/project/package.description";
- $package_description = join ("", <V>);
- close V;
- chomp $package_description;
- $package_description =~ s/\n/\\n/g;
- $package_description = "package.description = $package_description\n";
- }
- else {
- print STDERR "package.description not found for $subsys.$module!\n"; }
-
- if (-e "$cvs_prefix{$subsys}.$subsys.$module/project/package.summary") {
- open V, "$cvs_prefix{$subsys}.$subsys.$module/project/package.summary";
- $package_summary = join ("", <V>);
- close V;
- chomp $package_summary;
- $package_summary =~ s/\n/\\n/g;
- $package_summary = "package.summary = $package_summary\n";
- }
- else {
- print STDERR "package.summary not found for $subsys.$module!\n"; }
-
- my %cmd;
- @cmd{qw/configure compile test install packaging clean/} = ('None') x 6;
- $cmd{clean} = 'make clean';
- $cmd{checkout} = "cvs -d \${vcsroot} co -d \${moduleName} ".($conftag eq 'HEAD' ? '-A' : '-r ${tag}')." $cvs_prefix{$subsys}.$subsys.$module 2>/dev/null";
- #$cmd{checkout} = "(test -d jra1mw/.git && (cd jra1mw; git pull) || git clone http://scientific.zcu.cz/git/jra1mw.git)";
- #$cmd{checkout} .= " && (cd jra1mw; git checkout \${tag})" unless ($conftag =~ /HEAD/);
- #$cmd{checkout} .= " && ln -s jra1mw/$cvs_prefix{$subsys}.$subsys.$module \${moduleName}";
- $cmd{tag} = "cvs -d \${vcsroot} tag -R \${tag} ${moduleName}";
-
- if ($subsys eq 'gridsite') {
- $cmd{tag} = 'None';
-
- if ($module eq 'core') {
- my ($flags, $prefix);
-
- if ($project ne 'glite') {
- $flags = 'RELEASE_VERSION=${age}.${platformFamily} libdir=${libdir} GSOAPDIR=`pkg-config gsoap --variable=prefix` OPENSSL_GLOBUS_FLAGS=`pkg-config globus-openssl --cflags` OPENSSL_GLOBUS_LIBS=`pkg-config globus-openssl --libs` FLAVOR_GLOBUS_EXT= HTTPD_FLAGS="-I/usr/include/httpd -I/usr/include/apache2 -I/usr/include/apr-${aprSuffix} -I/usr/include/pcre"';
- $prefix = 'prefix=${prefix}/usr';
- } else {
- $flags = 'RELEASE_VERSION=${age}.${platformFamily} libdir=${libdir} GSOAPDIR=${gsoap.location} OPENSSL_GLOBUS_FLAGS=-I${globus.location}/include/${globus.dbg.nothr.flavor} OPENSSL_GLOBUS_LIBS=-L${globus.location}/${libdir}/ FLAVOR_GLOBUS_EXT=_${globus.dbg.nothr.flavor} HTTPD_FLAGS="-I${httpd-devel.location}/include/httpd -I${httpd-devel.location}/include/apache2 -I${httpd-devel.location}/include/apr-${aprSuffix} -I${httpd-devel.location}/include/pcre"';
- $prefix = 'prefix=${prefix}';
- }
-
- $cmd{compile} = "echo 'make $flags' > build.sh\n\tmake $flags build";
- $cmd{clean} = "rm -rvf build.sh; $cmd{clean}";
- $cmd{install} = "make $prefix $flags install";
- $cmd{packaging} = "mkdir \${moduleDir}/RPMTMP/SOURCES \${moduleDir}/src/tgz
- make $prefix $flags rpm && \
- cp \${moduleDir}/RPMTMP/SOURCES/gridsite-\${version}.src.tar.gz \${moduleDir}/src/tgz";
- }
- else {
- $cmd{clean} = 'None';
- $cmd{packaging} = "echo building nothing, org.gridsite.core make rpm step will create this";
- $cmd{checkout} = "mkdir -v \${moduleName} 2>/dev/null || true";
- }
- }
- elsif ($subsys eq 'px' and $module eq 'myproxy-config') {
- $cmd{configure} = "/usr/bin/perl $confdir/configure --root=\${prefix} --prefix= --stage=\${stageDir} --libdir=\${libdir} --project=\${projectName} --module $subsys.$module @copts";
- $cmd{packaging} = "make rpm package=".$confprefix."$subsys-myproxy-config";
- }
- else {
- $cmd{configure} = "/usr/bin/perl $confdir/configure $project{flavours} --root=\${prefix} --prefix=$project{local_prefix} --stage=\${stageDir} --sysroot=\${package.prefix} --libdir=\${libdir} --project=\${projectName} --module $subsys.$module @copts";
- $cmd{compile} = 'make';
- $cmd{test} = 'make check';
- $cmd{install} = 'make install';
- }
-
- my $defprops = '';
-
- for my $p (keys %{$platform_properties{"$subsys.$module"}->{default}}) {
- $defprops .= $p . ' = ' . $platform_properties{"$subsys.$module"}->{default}->{$p} . "\n";
- }
-
- print STDERR "Writing $file\n";
- print C qq{
-[Configuration-$conf]
-profile = None
-moduleName = $project{etics_name}.$subsys.$module
-displayName = $conf
-description = $cvs_prefix{$subsys}.$subsys.$module
-projectName = $project{etics_name}
-age = $age
-deploymentType = None
-vcsroot = :pserver:anonymous\@glite.cvs.cern.ch:/cvs/glite
-tag = $conftag
-version = $major.$minor.$rev
-$dwpath
-[Platform-default:VcsCommand]
-displayName = None
-description = None
-tag = $cmd{tag}
-branch = None
-commit = None
-checkout = $cmd{checkout}
-
-[Platform-default:BuildCommand]
-postpublish = None
-packaging = $cmd{packaging}
-displayName = None
-description = None
-doc = None
-prepublish = None
-publish = None
-compile = $cmd{compile}
-init = None
-install = $cmd{install}
-clean = $cmd{clean}
-test = $cmd{test}
-configure = $cmd{configure}
-checkstyle = None
-
-[Platform-default:Property]
-$buildroot
-aprSuffix = 0
-package.RPMSLocation = \${moduleDir}/RPMTMP/RPMS
-package.SRPMSLocation = \${moduleDir}/RPMTMP/SRPMS
-package.preserve.libtool = false
-$package_description$package_summary$defprops};
-
- for (@{$obsoletes{"$subsys.$module"}}) {
- print C "package.obsoletes = $_\n";
- print C "package.replaces = $_\n";
- }
- for (@{$conflicts{"$subsys.$module"}}) {
- print C "package.conflicts = $_\n";
- }
- for (@{$provides{"$subsys.$module"}}) {
- print C "package.provides = $_\n";
- }
-
- for my $pp (keys %{$platform_properties{"$subsys.$module"}}) {
- next if $pp eq 'default';
- next if exists $project{supported_platforms} and not exists $project{supported_platforms}{$pp};
-
- print C "[Platform-$pp:Property]\n$buildroot\n";
-
- for my $p (keys %{$platform_properties{"$subsys.$module"}->{$pp}}) {
- print C $p . ' = ' . $platform_properties{"$subsys.$module"}->{$pp}->{$p} . "\n";
- }
- print C "package.RPMSLocation = \${moduleDir}/RPMTMP/RPMS
-package.SRPMSLocation = \${moduleDir}/RPMTMP/SRPMS\n";
- print C "$package_description$package_summary\n";
- }
-
- print C qq{
-[Platform-default:DynamicDependency]
-};
- for (@{$need_externs{"$subsys.$module"}},@{$need_jars{"$subsys.$module"}}) {
- my $eext = $etics_externs{$_} ? $etics_externs{$_} : $_;
- my $edev = $project{etics_externs_devel}{$_};
- next if ($eext eq '-');
-
- my $proj = 'externals';
- for my $p (keys %etics_projects) {
- for $m (@{$etics_projects{$p}}) {
- $proj = $p if $m eq $_;
- }
- }
-
- my $type = $need_externs_type{"$subsys.$module"}->{$_};
-
- if ($edev) {
- if ($type eq 'B') {
- $eext = $edev; # no runtime - change to devel pkg
- } elsif ($type eq 'BR' or $type eq 'RB') {
- print C "$proj|$edev = B\n"; # additional devel pkg
- }
- }
- print C "$proj|$eext = $type\n";
- }
-
- for (@{$deps{"$subsys.$module"}}) {
- my $type = $deps_type{"$subsys.$module"}->{$_};
- print C "$project{etics_name}|$project{etics_name}.$_ = $type\n";
- }
-
- close C;
-}
-
-sub gsoap_version {
- local $_;
- my $gsoap_version;
- open S,"$externs{gsoap}{prefix}/bin/soapcpp2 -v 2>&1 |" or die "$externs{gsoap}{prefix}/bin/soapcpp2: $!\n";
-
- while ($_ = <S>) {
- chomp;
-
- $gsoap_version = $1 if /The gSOAP Stub and Skeleton Compiler for C and C\+\+ ([.[:digit:][:alpha:]]+)$/;
- $gsoap_version = $1 if /The gSOAP code generator for C and C\+\+, soapcpp2 release ([.[:digit:][:alpha:]]+)$/;
- }
- close S;
- return $gsoap_version;
-}
-
-sub getlibdir {
- if ( -e "/etc/debian_version") { # We are on Debian
- $lib64="lib";
- $lib32="lib32"; }
- else { # Another distribution
- $lib64="lib64";
- $lib32="lib"; }
- $libdir=$lib32;
-
- open INP, "uname -s | "; # Check kernel name
- $kname= <INP>;
- chomp($kname);
- close INP;
-
- if ( $kname eq "Linux") {
- $arch = ("x86_64\npowerpc\nppc64\n");
-
- open INP, "uname -p | "; # Check processor type
- $procname= <INP>;
- chomp($procname);
- close INP;
-
- if ($arch =~/^$procname\n/) {
- return ($lib64); }
-
- open INP, "uname -m | "; # Check machine hardware
- $machname= <INP>;
- chomp($machname);
- close INP;
-
- if ($arch =~/^$machname\n/) {
- return ($lib64); }
-
- # special cases (hyperlink lib64, Debian)
- if (-l "/usr/lib64") {
- $libdir=$lib32; }
-
- # if /usr/lib64 doesn't exist at all (AIX)
- unless ( -e "/usr/lib64" ) {
- $libdir=$lib32; }
- }
-
- if ( $kname eq "SunOS") {
- if (-e "/usr/lib/64") {
- $libdir="lib/64"; }
- }
-
- return $libdir;
-}
-
-sub usage {
- my @ext = keys %externs;
- my @myjars = keys %jar;
-
- print STDERR qq{
-Usage: $0 options
-
-General options (defaults in []):
- --prefix=PREFIX destination directory [./stage]
- --stage=DIR staging directory [./stage]
- --root=DIR installation root (custom relocation root -> sysroot) [./stage]
- --sysroot=DIR system root (custom relocation root -> sysroot) []
- --sysconfdir=DIR system configuration directory [PREFIX/etc]
- --staged=module,module,... what is already in PREFIX (specify without org.glite.)
- --thrflavour=flavour
- --nothrflavour=flavour threaded and non-treaded flavours [gcc64dbgpthr,gcc64dbg]
- --listmodules=subsys list modules of a subsystem
- --version=maj.min.rev-age specify version here instead of reading version.properties
- --branch=branch CVS branch/etics name suffix (HEAD, branch_2_1, ...)
- --libdir=libdir typically [lib,lib64] postfix
- --project=PROJECT build or generate etics for a project (glite/emi) [emi]
- --debug print more details
-
-Mode of operation:
- --mode=\{checkout|build|etics\} what to do [build]
-
-What to build:
- --module=module build this module only
- --enable-NODE build this "node" (set of modules) only
- --disable-NODE don't build this node
- --lb-tag=tag checkout LB modules with specific tag
- --jp-tag=tag checkout JP modules with specific tag
- --lbjp-common-tag=tag checkout lbjp-common modules with specific tag
- --jobid-tag=tag checkout jobid modules with specific tag
-
-Dependencies (summary of what will be used is always printed):
- --with-EXTERNAL=PATH where to look for an external [autodetect]
- --with-JAR=JAR where to look for jars
-
-Available nodes:
- @nodes
-
-Default nodes:
- @default_nodes
-
-Externals (not all for all modules) are:
- @ext
-
-External jars are:
- @myjars
-
-};
-
-}
+++ /dev/null
-deploy_all.diff - against RC31
-deploy_lb, deploy_jp - older patches
+++ /dev/null
-Index: org.glite/project/global.dependencies.properties
-===================================================================
-RCS file: /cvs/jra1mw/org.glite/project/global.dependencies.properties,v
-retrieving revision 1.482.2.279.2.61
-diff -u -r1.482.2.279.2.61 global.dependencies.properties
---- org.glite/project/global.dependencies.properties 23 Apr 2007 09:54:21 -0000 1.482.2.279.2.61
-+++ org.glite/project/global.dependencies.properties 24 Apr 2007 08:20:35 -0000
-@@ -2100,6 +2100,24 @@
- ext.globus-sdk.rpm.version = ${ext.vdt.version}
- ext.globus-sdk.rpm.age = ${ext.vdt.age}
-
-+# Globus vdt data server - grid ftp server
-+ext.globus-data-server.name = ${ext.globus.name}
-+ext.globus-data-server.vendor = ${ext.globus.vendor}
-+ext.globus-data-server.version = ${ext.globus.version}
-+ext.globus-data-server.platform = ${platform}
-+ext.globus-data-server.subdir = ${ext.globus-data-server.name}/${ext.globus-data-server.version}/${ext.globus-data-server.platform}
-+ext.globus-data-server.rep.base = ${jra1.rep.base}
-+ext.globus-data-server.rep.file =
-+ext.globus-data-server.rep.subdir =
-+ext.globus-data-server.rep.url = ${ext.globus-data-server.rep.base}/${ext.globus-data-server.subdir}/${ext.globus-data-server.rep.subdir}/${ext.globus-data-server.rep.file}
-+ext.globus-data-server.files =
-+ext.globus-data-server.download = http://www.cs.wisc.edu/vdt/releases/1.2.2/installing-rpms.html
-+ext.globus-data-server.homepage = http://www.cs.wisc.edu/vdt//index.html
-+ext.globus-data-server.description = The Globus Toolkit(R). This is the version packaged by VDT.
-+ext.globus-data-server.rpm.name = vdt_globus_data_server
-+ext.globus-data-server.rpm.version = ${ext.vdt.version}
-+ext.globus-data-server.rpm.age = 1
-+
- # google-perftools
- ext.google-perftools.name = google-perftools
- ext.google-perftools.vendor = google-perftools
-@@ -3855,31 +3873,31 @@
- # System dependencies
- ###################################################################
-
--org.glite.deployment.version = glite-deployment_branch_2_5_0
-+org.glite.deployment.version = HEAD
- org.glite.testsuites.version = HEAD
--org.glite.version = glite_branch_3_1_0
-+org.glite.version = HEAD
-
--#subsystem version tag = do not remove
-+#subsystem version tag = HEAD
- org.glite.slcs.version = HEAD
--org.glite.amga.version = glite-amga_R_1_0_0_2
-+org.glite.amga.version = HEAD
- org.glite.bdii.version = HEAD
--org.glite.ce.version = glite-ce_R_1_7_13_0
--org.glite.data.version = glite-data_R_3_1_17_1
--org.glite.dgas.version = glite-dgas_R_3_1_9_1
--org.glite.gpbox.version = glite-gpbox_R_1_3_0
-+org.glite.ce.version = HEAD
-+org.glite.data.version = HEAD
-+org.glite.dgas.version = HEAD
-+org.glite.gpbox.version = HEAD
- org.glite.info.version = HEAD
--org.glite.jdl.version = glite-jdl_R_3_1_11_1
--org.glite.jp.version = glite-jp_R_1_3_5_1
--org.glite.lb.version = glite-lb_R_1_4_1_1
-+org.glite.jdl.version = HEAD
-+org.glite.jp.version = HEAD
-+org.glite.lb.version = HEAD
- org.glite.overlay.version = HEAD
--org.glite.rgma.version = glite-rgma_R_5_0_66_1
--org.glite.security.version = glite-security_R_3_1_35_1
--org.glite.service-discovery.version = glite-service-discovery_R_2_0_14
--org.glite.templates-latex-style.version = glite-templates-latex-style_R_1_0_1
--org.glite.wms-ui.version = glite-wms-ui_R_3_1_17_1
--org.glite.wms-utils.version = glite-wms-utils_R_3_1_8
--org.glite.wms.version = glite-wms_R_3_1_56_1
-+org.glite.rgma.version = HEAD
-+org.glite.security.version = HEAD
-+org.glite.service-discovery.version = HEAD
-+org.glite.templates-latex-style.version = HEAD
-+org.glite.wms-ui.version = HEAD
-+org.glite.wms-utils.version = HEAD
-+org.glite.wms.version = HEAD
-
--org.gridsite.core.version = gridsite-core_R_1_1_18_1
-+org.gridsite.core.version = HEAD
- org.gridsite.ws.version = HEAD
-
-Index: org.glite.deployment/build.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment/build.xml,v
-retrieving revision 1.62
-diff -u -r1.62 build.xml
---- org.glite.deployment/build.xml 22 Aug 2005 17:00:02 -0000 1.62
-+++ org.glite.deployment/build.xml 24 Apr 2007 08:20:35 -0000
-@@ -814,6 +814,39 @@
- </if>
- </target>
-
-+ <target name="jpps" unless="setenvonly" depends="envset,config">
-+ <if>
-+ <isset property="small.memory"/>
-+ <then>
-+ <exec dir="${deployment.subsystem.dir}.jpps" executable="${antExec}" failonerror="${failonerror}">
-+ <arg line="${target} "-Dsmall.memory=true" "-Dbootstrap=${bootstrap}" "-Dfailonerror=${failonerror}" "-Ddo.cvs.tag=${do.cvs.tag}" "-Dbuild.name=${build.name}""/>
-+ </exec>
-+ </then>
-+ <else>
-+ <ant dir="${deployment.subsystem.dir}.jpps"
-+ target="${target}"
-+ inheritall="false" />
-+ </else>
-+ </if>
-+ </target>
-+
-+
-+ <target name="jpis" unless="setenvonly" depends="envset,config">
-+ <if>
-+ <isset property="small.memory"/>
-+ <then>
-+ <exec dir="${deployment.subsystem.dir}.jpis" executable="${antExec}" failonerror="${failonerror}">
-+ <arg line="${target} "-Dsmall.memory=true" "-Dbootstrap=${bootstrap}" "-Dfailonerror=${failonerror}" "-Ddo.cvs.tag=${do.cvs.tag}" "-Dbuild.name=${build.name}""/>
-+ </exec>
-+ </then>
-+ <else>
-+ <ant dir="${deployment.subsystem.dir}.jpis"
-+ target="${target}"
-+ inheritall="false" />
-+ </else>
-+ </if>
-+ </target>
-+
- <target name="io-server" unless="setenvonly" depends="envset,config">
- <if>
- <isset property="small.memory"/>
-@@ -891,6 +924,8 @@
- wn,
- wms,
- lb,
-+ jpps,
-+ jpis,
- io-server,
- io-client,
- ce,
-Index: org.glite.deployment/project/dependencies.properties
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment/project/dependencies.properties,v
-retrieving revision 1.529
-diff -u -r1.529 dependencies.properties
---- org.glite.deployment/project/dependencies.properties 21 Jun 2006 09:29:08 -0000 1.529
-+++ org.glite.deployment/project/dependencies.properties 24 Apr 2007 08:20:35 -0000
-@@ -33,6 +33,8 @@
- org.glite.deployment.wn.version = HEAD
- org.glite.deployment.wms.version = HEAD
- org.glite.deployment.lb.version = HEAD
-+org.glite.deployment.jpps.version = HEAD
-+org.glite.deployment.jpis.version = HEAD
- org.glite.deployment.io-server.version = HEAD
- org.glite.deployment.io-client.version = HEAD
- org.glite.deployment.ce.version = HEAD
-Index: org.glite.deployment/project/glite.deployment.csf.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment/project/glite.deployment.csf.xml,v
-retrieving revision 1.46
-diff -u -r1.46 glite.deployment.csf.xml
---- org.glite.deployment/project/glite.deployment.csf.xml 31 Jul 2006 09:53:53 -0000 1.46
-+++ org.glite.deployment/project/glite.deployment.csf.xml 24 Apr 2007 08:20:35 -0000
-@@ -392,6 +392,14 @@
- <equals arg1="${org.glite.deployment.lb.version}" arg2="HEAD" />
- </condition>
-
-+ <condition property="jpps.head">
-+ <equals arg1="${org.glite.deployment.jpps.version}" arg2="HEAD" />
-+ </condition>
-+
-+ <condition property="jpis.head">
-+ <equals arg1="${org.glite.deployment.jpis.version}" arg2="HEAD" />
-+ </condition>
-+
- <condition property="io-server.head">
- <equals arg1="${org.glite.deployment.io-server.version}" arg2="HEAD" />
- </condition>
-@@ -835,6 +843,28 @@
- tag="${org.glite.deployment.lb.version}" />
- </target>
-
-+ <!-- jpps component -->
-+ <target name="jpps" depends="get.jpps.head, get.jpps.tag"/>
-+ <target name="get.jpps.head" if="jpps.head">
-+ <cvs-co package="org.glite.deployment.jpps" />
-+ </target>
-+
-+ <target name="get.jpps.tag" unless="jpps.head">
-+ <cvs-co package="org.glite.deployment.jpps"
-+ tag="${org.glite.deployment.jpps.version}" />
-+ </target>
-+
-+ <!-- jpis component -->
-+ <target name="jpis" depends="get.jpis.head, get.jpis.tag"/>
-+ <target name="get.jpis.head" if="jpis.head">
-+ <cvs-co package="org.glite.deployment.jpis" />
-+ </target>
-+
-+ <target name="get.jpis.tag" unless="jpis.head">
-+ <cvs-co package="org.glite.deployment.jpis"
-+ tag="${org.glite.deployment.jpis.version}" />
-+ </target>
-+
- <!-- io-server component -->
- <target name="io-server" depends="get.io-server.head, get.io-server.tag"/>
- <target name="get.io-server.head" if="io-server.head">
-@@ -892,6 +922,8 @@
- wn,
- wms,
- lb,
-+ jpis,
-+ jpps,
- io-server,
- io-client,
- ce" />
-Index: org.glite.deployment.lb/config/scripts/glite-lb-config.py
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/config/scripts/glite-lb-config.py,v
-retrieving revision 1.66
-diff -u -r1.66 glite-lb-config.py
---- org.glite.deployment.lb/config/scripts/glite-lb-config.py 13 Mar 2006 15:22:31 -0000 1.66
-+++ org.glite.deployment.lb/config/scripts/glite-lb-config.py 24 Apr 2007 08:20:35 -0000
-@@ -121,6 +121,10 @@
- if not os.path.exists('/tmp/mysql.sock'):
- os.symlink('/var/lib/mysql/mysql.sock', '/tmp/mysql.sock')
-
-+ #-------------------------------------------------------------------
-+ # start bkserver
-+ #-------------------------------------------------------------------
-+
- pid = glib.getPID('bkserverd')
- if pid != 0:
- print 'The gLite LB Server service is already running. Restarting...'
-@@ -133,7 +137,7 @@
- pid = glib.getPID('bkserverd')
-
- if (pid != 0):
-- print "The gLite LB Server service has been started ",
-+ print "The gLite LB Server service has been started ",
- glib.printOkMessage()
- else:
- glib.printErrorMessage("Could not start the gLite LB Server service")
-@@ -142,6 +146,36 @@
- return 1
-
- #-------------------------------------------------------------------
-+ # start jp-importer, if enabled
-+ #-------------------------------------------------------------------
-+
-+ lb_import = 0
-+ if params.has_key('lb.import.enabled'):
-+ if params['lb.import.enabled'] == "true":
-+ lb_import = 1
-+
-+ if lb_import:
-+ pid = glib.getPID('jp-importer')
-+ if pid != 0:
-+ print 'The gLite JP Importer service is already running. Restarting...'
-+ os.system('%s/etc/init.d/glite-jp-importer stop' % os.environ['GLITE_LOCATION'])
-+ else:
-+ print 'Starting the gLite JP Importer service...'
-+
-+ os.system('%s/etc/init.d/glite-jp-importer start' % os.environ['GLITE_LOCATION'])
-+
-+ pid = glib.getPID('jp-importer')
-+
-+ if (pid != 0):
-+ print "The gLite JP Importer service has been started ",
-+ glib.printOkMessage()
-+ else:
-+ glib.printErrorMessage("Could not start the gLite JP Importer service")
-+ glib.printErrorMessage("Please verify and re-run the script "),
-+ glib.printFailedMessage()
-+ return 1
-+
-+ #-------------------------------------------------------------------
- # Start Servicetool
- #-------------------------------------------------------------------
-
-@@ -161,6 +195,10 @@
- if (pid != 0):
- os.system('%s/etc/init.d/glite-lb-bkserverd stop' % os.environ['GLITE_LOCATION'])
-
-+ #-------------------------------------------------------------------
-+ # Book Keeping Server
-+ #-------------------------------------------------------------------
-+
- pid = glib.getPID('bkserverd')
- if (pid != 0):
- print 'Could not stop the LB Server service ',
-@@ -171,6 +209,25 @@
- glib.printOkMessage()
-
- #-------------------------------------------------------------------
-+ # JP Importer
-+ #-------------------------------------------------------------------
-+
-+ pid = glib.getPID('jp-importer')
-+ if (pid != 0):
-+ os.system('%s/etc/init.d/glite-jp-importer stop' % os.environ['GLITE_LOCATION'])
-+
-+ pid = glib.getPID('jp-importer')
-+ if (pid != 0):
-+ print 'Could not stop the JP Importer service ',
-+ glib.printFailedMessage()
-+ error_level = 1
-+ else:
-+ if params.has_key('lb.import.enabled'):
-+ if params['lb.import.enabled'] == "true":
-+ print 'The JP Importer service has been stopped ',
-+ glib.printOkMessage()
-+
-+ #-------------------------------------------------------------------
- # MySQL
- #-------------------------------------------------------------------
-
-@@ -195,6 +252,10 @@
- if retval != 0:
- error_level = 1
-
-+ retval = os.system('%s/etc/init.d/glite-jp-importer status' % os.environ['GLITE_LOCATION'])
-+ if retval != 0:
-+ error_level = 1
-+
- #-------------------------------------------------------------------
- # Servicetool
- #-------------------------------------------------------------------
-@@ -325,7 +386,29 @@
- print "\n==> MySQL database %s already exist\n" % params['lb.database.name']
-
- self.mysql.stop()
--
-+
-+ # ------------------------------------------------------------------
-+ # export from bkserver to cron
-+ # ------------------------------------------------------------------
-+ if (params['GLITE_LB_PURGE_ENABLED'] == "true") or (params['GLITE_LB_EXPORT_ENABLED'] == "true"):
-+ file = open('%s/etc/glite-lb-export-cron-wrapper.sh' % os.environ['GLITE_LOCATION'], 'w')
-+ file.write('#! /bin/sh\n')
-+ file.write('. %s\n' % glib.getInstallerExportFile())
-+ file.write('$GLITE_LOCATION/sbin/glite-lb-export.sh\n')
-+ file.close()
-+ os.system('/bin/chmod 0755 %s/etc/glite-lb-export-cron-wrapper.sh' % os.environ['GLITE_LOCATION'])
-+
-+ file = open('/etc/cron.d/glite-lb-export.cron', 'w')
-+ file.write('# periodically run purge and export jobs from bkserver\n')
-+ file.write('00,30 * * * * %s %s/etc/glite-lb-export-cron-wrapper.sh 1>/dev/null\n' % (params['glite.user.name'], os.environ['GLITE_LOCATION']))
-+ file.close()
-+ os.system('/bin/chmod 0644 /etc/cron.d/glite-lb-export.cron')
-+ else:
-+ os.system('/bin/rm -f /etc/cron.d/glite-lb-export.cron')
-+
-+ # Touch cron spool directory to cause reloading of the crontabs
-+ os.system("/bin/touch /var/spool/cron")
-+
- #-------------------------------------------------------------------
- # RGMA servicetool: configure servicetool
- #-------------------------------------------------------------------
-@@ -411,6 +494,21 @@
- # Perl
- glib.addEnvPath("PERL5LIB", "%s/lib/perl:%s/lib/perl5" % (os.environ['GPT_LOCATION'],os.environ['GLITE_LOCATION']))
-
-+ # LB export
-+ glib.export('GLITE_LB_PURGE_ENABLED', params['lb.purge.enabled']);
-+ glib.export('GLITE_LB_EXPORT_ENABLED', params['lb.export.enabled']);
-+ glib.export('GLITE_LB_IMPORT_ENABLED', params['lb.import.enabled']);
-+ glib.export('GLITE_LB_EXPORT_JPPS', params['lb.export.jpps']);
-+ glib.export('GLITE_LB_EXPORT_JPREG_MAILDIR', params['lb.export.jpreg']);
-+ glib.export('GLITE_LB_EXPORT_JPDUMP_MAILDIR', params['lb.export.jpdump']);
-+ glib.export('GLITE_LB_EXPORT_DUMPDIR', params['lb.export.dump']);
-+ glib.export('GLITE_LB_EXPORT_DUMPDIR_KEEP', params['lb.export.dump.keep']);
-+ glib.export('GLITE_LB_EXPORT_JOBSDIR', params['lb.export.jobs']);
-+ glib.export('GLITE_LB_EXPORT_JOBSDIR_KEEP', params['lb.export.jobs.keep']);
-+ glib.export('GLITE_LB_EXPORT_PURGEDIR', params['lb.export.purge']);
-+ glib.export('GLITE_LB_EXPORT_PURGEDIR_KEEP', params['lb.export.purge.keep']);
-+ glib.export('GLITE_LB_EXPORT_PURGE_ARGS', '%s' % params['lb.export.purgeargs']);
-+
- # Set environment
- glib.setUserEnv()
-
-Index: org.glite.deployment.lb/config/templates/glite-lb.cfg.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/config/templates/glite-lb.cfg.xml,v
-retrieving revision 1.21
-diff -u -r1.21 glite-lb.cfg.xml
---- org.glite.deployment.lb/config/templates/glite-lb.cfg.xml 13 Mar 2006 15:19:21 -0000 1.21
-+++ org.glite.deployment.lb/config/templates/glite-lb.cfg.xml 24 Apr 2007 08:20:35 -0000
-@@ -17,9 +17,16 @@
- parameter. Leave it empty of comment it out to use the same as 'glite.user.name'"
- value="changeme"/>
-
-- <mysql.root.password
-- description="The mysql root password"
-- value="changeme"/>
-+ <mysql.root.password
-+ description="The mysql root password"
-+ value="changeme"/>
-+
-+ <lb.export.jpps
-+ description="Job Provenance Primary Storage.
-+ [Example: localhost:8901][Type: string]"
-+ value="changeme"/>
-+
-+
-
- <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
- <!-- Advanced parameters - Change them if you know what you're doing -->
-@@ -55,6 +62,28 @@
- [Example: 17M][Type: Integer][Unit: MB]"
- value="17M"/>
-
-+ <lb.purge.enabled
-+ description="Enables regular purge of LB database.
-+ Data are stored in lb.export.purge directory (specify below)
-+ [Example: true][Type: boolean]"
-+ value="true"/>
-+
-+ <lb.export.enabled
-+ description="Enables processing of purged data into lb.export.jpdump
-+ maildir directories (specify below) and export of job registrations
-+ from LB to lb.export.jpreg maildir directories (specify below).
-+ [Example: true][Type: boolean]"
-+ value="true"/>
-+
-+ <lb.import.enabled
-+ description="Enables import of data stored in maildirs to Job Provenance.
-+ lb.export.enabled must be set to true, to take any real effect.
-+ [Example: true][Type: boolean]"
-+ value="true"/>
-+
-+
-+
-+
- <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
- <!-- System parameters - You should leave these alone -->
- <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
-@@ -67,7 +96,44 @@
- <value>destination</value>
-
- </lb.index.list>
--
-+
-+ <lb.export.jpreg
-+ description="Spool directory where job registration requests are stored before delivered to JPPS.
-+ [Type: string]"
-+ value="/tmp/jpreg"/>
-+
-+ <lb.export.jpdump
-+ description="Spool directory where dump upload requests are stored before delivered to JPPS.
-+ [Type: string]"
-+ value="/tmp/jpdump"/>
-+
-+ <lb.export.purge
-+ description="Temporary directory for dumps of purged jobs.
-+ [Type: string]"
-+ value="/tmp/purge"/>
-+
-+ <lb.export.purge.keep
-+ description="Directory for dumps of jobs that were already handled (sent to JPPS).
-+ If empty, processed dumps of purged jobs are deleted.
-+ [Type: string]"
-+ value=""/>
-+
-+ <lb.export.jobs
-+ description="Exported events in file per job form before delivered to JPPS.
-+ [Type: string]"
-+ value="/tmp/lb_export"/>
-+
-+ <lb.export.jobs.keep
-+ description="Keep the already handled exported events in file per job form.
-+ If empty, processed job files are deleted.
-+ [Type: string]"
-+ value=""/>
-+
-+ <lb.export.purgeargs
-+ description="Arguments for LB purge process (a job in a given terminal state will be exported from the LB after timeouts defined here). See also glite-lb-purge documentation.
-+ [Example: -c 1h -a 1h -n 1h -o 1d][Type: string]"
-+ value="--cleared 2d --aborted 2w --cancelled 2w --other 2m"/>
-+
- </parameters>
-
- </config>
-Index: org.glite.deployment.lb/project/glite-lb.sdf.xml.template
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/project/glite-lb.sdf.xml.template,v
-retrieving revision 1.38
-diff -u -r1.38 glite-lb.sdf.xml.template
---- org.glite.deployment.lb/project/glite-lb.sdf.xml.template 13 Mar 2006 15:19:21 -0000 1.38
-+++ org.glite.deployment.lb/project/glite-lb.sdf.xml.template 24 Apr 2007 08:20:35 -0000
-@@ -15,7 +15,7 @@
- build="@org.glite.deployment.config.info.build@"
- arch="noarch"/>
-
-- <component name="glite-LB"
-+ <component name="glite-lb-config"
- version="@module.version@"
- age="@module.age@"
- build="@module.build@"
-@@ -57,6 +57,12 @@
- build="@org.glite.lb.server-bones.info.build@"
- arch="i386"/>
-
-+ <component name="glite-lb-client"
-+ version="@org.glite.lb.client.info.version@"
-+ age="@org.glite.lb.client.info.age@"
-+ build="@org.glite.lb.client.info.build@"
-+ arch="i386"/>
-+
- <component name="glite-wms-utils-jobid"
- version="@org.glite.wms-utils.jobid.info.version@"
- age="@org.glite.wms-utils.jobid.info.age@"
-@@ -105,6 +111,12 @@
- build="@org.glite.jp.ws-interface.info.build@"
- arch="i386"/>
-
-+ <component name="glite-jp-client"
-+ version="@org.glite.jp.client.info.version@"
-+ age="@org.glite.jp.client.info.age@"
-+ build="@org.glite.jp.client.info.build@"
-+ arch="i386"/>
-+
- <component name="gridsite"
- version="@org.gridsite.core.info.version@"
- age="@org.gridsite.core.info.age@"
-Index: org.glite.deployment.lb/project/properties.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/project/properties.xml,v
-retrieving revision 1.3
-diff -u -r1.3 properties.xml
---- org.glite.deployment.lb/project/properties.xml 13 Mar 2006 15:19:21 -0000 1.3
-+++ org.glite.deployment.lb/project/properties.xml 24 Apr 2007 08:20:35 -0000
-@@ -62,15 +62,15 @@
- Define extra properties here ...
- ====================================================== -->
-
-- <property name="build.package.name" value="glite-LB"/>
-+ <property name="build.package.name" value="glite-lb-config"/>
- <property name="build.package.summary" value="gLite Logging and Bookkeeping node configuration files" />
- <property name="build.package.description" value="gLite Logging and Bookkeeping node configuration files" />
- <property name="build.package.files" value="
- %attr(755,root,root) %{prefix}/etc/config/scripts/glite-lb-config.py\n
- %attr(600,root,root) %{prefix}/etc/config/templates/glite-lb.cfg.xml\n
--%attr(644,root,root) %{prefix}/share/doc/glite-LB/release_notes/release_notes.doc\n
--%attr(644,root,root) %{prefix}/share/doc/glite-LB/release_notes/release_notes.pdf\n
--%attr(644,root,root) %{prefix}/share/doc/glite-LB/release_notes/release_notes.html\n"/>
-+%attr(644,root,root) %{prefix}/share/doc/glite-lb/release_notes/release_notes.doc\n
-+%attr(644,root,root) %{prefix}/share/doc/glite-lb/release_notes/release_notes.pdf\n
-+%attr(644,root,root) %{prefix}/share/doc/glite-lb/release_notes/release_notes.html\n"/>
- <property name="build.package.obsolete" value="glite-lb-config"/>
-
- </project>
+++ /dev/null
-This patch was merged to deploy_all.diff, don't use it anymore
-
-Index: org.glite/project/global.dependencies.properties
-===================================================================
-RCS file: /cvs/jra1mw/org.glite/project/global.dependencies.properties,v
-retrieving revision 1.479.2.70.2.3.2.3.2.1
-diff -u -r1.479.2.70.2.3.2.3.2.1 global.dependencies.properties
---- org.glite/project/global.dependencies.properties 9 May 2006 16:17:50 -0000 1.479.2.70.2.3.2.3.2.1
-+++ org.glite/project/global.dependencies.properties 30 Jun 2006 11:13:49 -0000
-@@ -15,7 +15,7 @@
- # Authors: Joachim Flammer <joachim.flammer@cern.ch>
- #
- # Version info: $Id$
--# Release: $Name$
-+# Release: $Name$
- #
- # Revision history:
- # $Log$
- # Revision 1.3 2006/06/30 11:30:28 mmulac
- # actualized patches
- # - against org.glite a org.glite.deployment from glite_R_3_0_0
- #
-@@ -1562,7 +1562,26 @@
- ext.globus-sdk.rpm.name = vdt_globus_sdk
- ext.globus-sdk.rpm.version = ${ext.vdt.version}
- ext.globus-sdk.rpm.age = 1
--
-+
-+# Globus vdt data server - grid ftp server
-+ext.globus-data-server.name = ${ext.globus.name}
-+ext.globus-data-server.vendor = ${ext.globus.vendor}
-+ext.globus-data-server.version = ${ext.globus.version}
-+ext.globus-data-server.platform = ${platform}
-+ext.globus-data-server.subdir = ${ext.globus-data-server.name}/${ext.globus-data-server.version}/${ext.globus-data-server.platform}
-+ext.globus-data-server.rep.base = ${jra1.rep.base}
-+ext.globus-data-server.rep.file =
-+ext.globus-data-server.rep.subdir =
-+ext.globus-data-server.rep.url = ${ext.globus-data-server.rep.base}/${ext.globus-data-server.subdir}/${ext.globus-data-server.rep.subdir}/${ext.globus-data-server.rep.file}
-+ext.globus-data-server.files =
-+ext.globus-data-server.download = http://www.cs.wisc.edu/vdt/releases/1.2.2/installing-rpms.html
-+ext.globus-data-server.homepage = http://www.cs.wisc.edu/vdt//index.html
-+ext.globus-data-server.description = The Globus Toolkit(R). This is the version packaged by VDT.
-+ext.globus-data-server.rpm.name = vdt_globus_data_server
-+ext.globus-data-server.rpm.version = ${ext.vdt.version}
-+ext.globus-data-server.rpm.age = 1
-+
-+
- # GPT
- ext.gpt.name = gpt
- ext.gpt.vendor = gpt
-@@ -3266,8 +3285,9 @@
- org.glite.dgas.version = glite-dgas_R_1_1_16
- org.glite.gpbox.version = glite-gpbox_R_1_0_15
- org.glite.jdl.version = glite-jdl_R_1_0_0
--org.glite.jp.version = glite-jp_R_1_1_3
--org.glite.lb.version = glite-lb_R_1_2_9
-+org.glite.jp.version = glite-jp_R_1_3_0
-+org.glite.lb.version = glite-lb_R_1_2_11
-+
- org.glite.rgma.version = glite-rgma_R_5_0_26
- org.glite.security.version = glite-security_R_3_0_15
- org.glite.service-discovery.version = glite-service-discovery_R_2_0_12
-Index: org.glite.deployment/build.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment/build.xml,v
-retrieving revision 1.61.2.2.2.12.2.26
-diff -u -r1.61.2.2.2.12.2.26 build.xml
---- org.glite.deployment/build.xml 24 Apr 2006 13:39:27 -0000 1.61.2.2.2.12.2.26
-+++ org.glite.deployment/build.xml 30 Jun 2006 11:13:49 -0000
-@@ -9,7 +9,7 @@
- Authors: Alberto Di Meglio <alberto.di.meglio@cern.ch>
- Version info: $Id$
-
-- Release: $Name$
-+ Release: $Name$
-
- Revision history:
- $Log$
- Revision 1.3 2006/06/30 11:30:28 mmulac
- actualized patches
- - against org.glite a org.glite.deployment from glite_R_3_0_0
-
-@@ -1619,6 +1619,39 @@
- </if>
- </target>
-
-+ <target name="jpps" unless="setenvonly" depends="envset,config">
-+ <if>
-+ <isset property="small.memory"/>
-+ <then>
-+ <exec dir="${deployment.subsystem.dir}.jpps" executable="${antExec}" failonerror="${failonerror}">
-+ <arg line="${target} "-Dsmall.memory=true" "-Dbootstrap=${bootstrap}" "-Dfailonerror=${failonerror}" "-Ddo.cvs.tag=${do.cvs.tag}" "-Dbuild.name=${build.name}""/>
-+ </exec>
-+ </then>
-+ <else>
-+ <ant dir="${deployment.subsystem.dir}.jpps"
-+ target="${target}"
-+ inheritall="false" />
-+ </else>
-+ </if>
-+ </target>
-+
-+
-+ <target name="jpis" unless="setenvonly" depends="envset,config">
-+ <if>
-+ <isset property="small.memory"/>
-+ <then>
-+ <exec dir="${deployment.subsystem.dir}.jpis" executable="${antExec}" failonerror="${failonerror}">
-+ <arg line="${target} "-Dsmall.memory=true" "-Dbootstrap=${bootstrap}" "-Dfailonerror=${failonerror}" "-Ddo.cvs.tag=${do.cvs.tag}" "-Dbuild.name=${build.name}""/>
-+ </exec>
-+ </then>
-+ <else>
-+ <ant dir="${deployment.subsystem.dir}.jpis"
-+ target="${target}"
-+ inheritall="false" />
-+ </else>
-+ </if>
-+ </target>
-+
- <target name="io-server" unless="setenvonly" depends="envset,config">
- <if>
- <isset property="small.memory"/>
-@@ -1730,6 +1763,8 @@
- wn,
- wms,
- lb,
-+ jpps,
-+ jpis,
- io-server,
- io-client,
- ce,
-Index: org.glite.deployment/project/dependencies.properties
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment/project/dependencies.properties,v
-retrieving revision 1.526.2.5.2.127.2.415.2.22
-diff -u -r1.526.2.5.2.127.2.415.2.22 dependencies.properties
---- org.glite.deployment/project/dependencies.properties 9 May 2006 12:33:18 -0000 1.526.2.5.2.127.2.415.2.22
-+++ org.glite.deployment/project/dependencies.properties 30 Jun 2006 11:13:49 -0000
-@@ -80,6 +80,10 @@
-
- org.glite.deployment.lb.version = glite-deployment-lb_R_2_2_3
-
-+ org.glite.deployment.jpis.version = HEAD
-+
-+ org.glite.deployment.jpps.version = HEAD
-+
- org.glite.deployment.glite-WMSLB.version = glite-deployment-glite-WMSLB_R_2_4_2
-
- org.glite.deployment.wn.version = glite-deployment-wn_R_2_3_7
-Index: org.glite.deployment/project/glite.deployment.csf.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment/project/glite.deployment.csf.xml,v
-retrieving revision 1.44.2.1.2.11.2.24
-diff -u -r1.44.2.1.2.11.2.24 glite.deployment.csf.xml
---- org.glite.deployment/project/glite.deployment.csf.xml 18 Apr 2006 15:42:14 -0000 1.44.2.1.2.11.2.24
-+++ org.glite.deployment/project/glite.deployment.csf.xml 30 Jun 2006 11:13:50 -0000
-@@ -9,7 +9,7 @@
- Authors: Joachim Flammer <Joachim.Flammer@cern.ch>
-
- Version info: $Id$
-- Release: $Name$
-+ Release: $Name$
-
- Revision history:
- $Log$
- Revision 1.3 2006/06/30 11:30:28 mmulac
- actualized patches
- - against org.glite a org.glite.deployment from glite_R_3_0_0
-
-@@ -667,6 +667,14 @@
- <equals arg1="${org.glite.deployment.lb.version}" arg2="HEAD" />
- </condition>
-
-+ <condition property="jpps.head">
-+ <equals arg1="${org.glite.deployment.jpps.version}" arg2="HEAD" />
-+ </condition>
-+
-+ <condition property="jpis.head">
-+ <equals arg1="${org.glite.deployment.jpis.version}" arg2="HEAD" />
-+ </condition>
-+
- <condition property="io-server.head">
- <equals arg1="${org.glite.deployment.io-server.version}" arg2="HEAD" />
- </condition>
-@@ -1571,6 +1579,28 @@
- tag="${org.glite.deployment.lb.version}" />
- </target>
-
-+ <!-- jpps component -->
-+ <target name="jpps" depends="get.jpps.head, get.jpps.tag"/>
-+ <target name="get.jpps.head" if="jpps.head">
-+ <cvs-co package="org.glite.deployment.jpps" />
-+ </target>
-+
-+ <target name="get.jpps.tag" unless="jpps.head">
-+ <cvs-co package="org.glite.deployment.jpps"
-+ tag="${org.glite.deployment.jpps.version}" />
-+ </target>
-+
-+ <!-- jpis component -->
-+ <target name="jpis" depends="get.jpis.head, get.jpis.tag"/>
-+ <target name="get.jpis.head" if="jpis.head">
-+ <cvs-co package="org.glite.deployment.jpis" />
-+ </target>
-+
-+ <target name="get.jpis.tag" unless="jpis.head">
-+ <cvs-co package="org.glite.deployment.jpis"
-+ tag="${org.glite.deployment.jpis.version}" />
-+ </target>
-+
- <!-- io-server component -->
- <target name="io-server" depends="get.io-server.head, get.io-server.tag"/>
- <target name="get.io-server.head" if="io-server.head">
-@@ -1667,6 +1697,8 @@
- wn,
- wms,
- lb,
-+ jpis,
-+ jpps,
- io-server,
- io-client,
- ce" />
+++ /dev/null
-This patch was merged to deploy_all.diff, don't use it anymore.
-
-Index: org.glite.deployment.lb/config/scripts/glite-lb-config.py
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/config/scripts/glite-lb-config.py,v
-retrieving revision 1.65.2.3
-diff -u -r1.65.2.3 glite-lb-config.py
---- org.glite.deployment.lb/config/scripts/glite-lb-config.py 2 May 2006 10:36:16 -0000 1.65.2.3
-+++ org.glite.deployment.lb/config/scripts/glite-lb-config.py 30 Jun 2006 09:29:21 -0000
-@@ -127,7 +127,12 @@
-
- if not os.path.exists('/tmp/mysql.sock'):
- os.symlink('/var/lib/mysql/mysql.sock', '/tmp/mysql.sock')
--
-+
-+
-+ #-------------------------------------------------------------------
-+ # start bkserver
-+ #-------------------------------------------------------------------
-+
- pid = glib.getPID('bkserverd')
- if pid != 0:
- print 'The gLite LB Server service is already running. Restarting...'
-@@ -140,7 +145,7 @@
- pid = glib.getPID('bkserverd')
-
- if (pid != 0):
-- print "The gLite LB Server service has been started ",
-+ print "The gLite LB Server service has been started ",
- glib.printOkMessage()
- else:
- glib.printErrorMessage("Could not start the gLite LB Server service")
-@@ -149,6 +154,36 @@
- return 1
-
- #-------------------------------------------------------------------
-+ # start jp-importer, if enabled
-+ #-------------------------------------------------------------------
-+
-+ lb_export = 0
-+ if params.has_key('lb.export.enabled'):
-+ if params['lb.export.enabled'] == "true":
-+ lb_export = 1
-+
-+ if lb_export:
-+ pid = glib.getPID('jp-importer')
-+ if pid != 0:
-+ print 'The gLite JP Importer service is already running. Restarting...'
-+ os.system('%s/etc/init.d/glite-jp-importer stop' % os.environ['GLITE_LOCATION'])
-+ else:
-+ print 'Starting the gLite JP Importer service...'
-+
-+ os.system('%s/etc/init.d/glite-jp-importer start' % os.environ['GLITE_LOCATION'])
-+
-+ pid = glib.getPID('jp-importer')
-+
-+ if (pid != 0):
-+ print "The gLite JP Importer service has been started ",
-+ glib.printOkMessage()
-+ else:
-+ glib.printErrorMessage("Could not start the gLite JP Importer service")
-+ glib.printErrorMessage("Please verify and re-run the script "),
-+ glib.printFailedMessage()
-+ return 1
-+
-+ #-------------------------------------------------------------------
- # Start Servicetool
- #-------------------------------------------------------------------
-
-@@ -168,6 +203,10 @@
- if (pid != 0):
- os.system('%s/etc/init.d/glite-lb-bkserverd stop' % os.environ['GLITE_LOCATION'])
-
-+ #-------------------------------------------------------------------
-+ # Book Keeping Server
-+ #-------------------------------------------------------------------
-+
- pid = glib.getPID('bkserverd')
- if (pid != 0):
- print 'Could not stop the LB Server service ',
-@@ -178,6 +217,25 @@
- glib.printOkMessage()
-
- #-------------------------------------------------------------------
-+ # JP Importer
-+ #-------------------------------------------------------------------
-+
-+ pid = glib.getPID('jp-importer')
-+ if (pid != 0):
-+ os.system('%s/etc/init.d/glite-jp-importer stop' % os.environ['GLITE_LOCATION'])
-+
-+ pid = glib.getPID('jp-importer')
-+ if (pid != 0):
-+ print 'Could not stop the JP Importer service ',
-+ glib.printFailedMessage()
-+ error_level = 1
-+ else:
-+ if params.has_key('lb.export.enabled'):
-+ if params['lb.export.enabled'] == "true":
-+ print 'The JP Importer service has been stopped ',
-+ glib.printOkMessage()
-+
-+ #-------------------------------------------------------------------
- # MySQL
- #-------------------------------------------------------------------
-
-@@ -202,6 +260,10 @@
- if retval != 0:
- error_level = 1
-
-+ retval = os.system('%s/etc/init.d/glite-jp-importer status' % os.environ['GLITE_LOCATION'])
-+ if retval != 0:
-+ error_level = 1
-+
- #-------------------------------------------------------------------
- # Servicetool
- #-------------------------------------------------------------------
-@@ -332,7 +394,27 @@
- print "\n==> MySQL database %s already exist\n" % params['lb.database.name']
-
- self.mysql.stop()
--
-+
-+ # ------------------------------------------------------------------
-+ # export from bkserver to cron
-+ # ------------------------------------------------------------------
-+ if params['GLITE_LB_EXPORT_ENABLED'] == "true":
-+ file = open('%s/etc/glite-lb-export-cron-wrapper.sh' % os.environ['GLITE_LOCATION'], 'w')
-+ file.write('#! /bin/sh\n')
-+ file.write('. %s\n' % glib.getInstallerExportFile())
-+ file.write('$GLITE_LOCATION/examples/glite-lb-export.sh\n')
-+ file.close()
-+ os.system('/bin/chmod 0755 %s/etc/glite-lb-export-cron-wrapper.sh' % os.environ['GLITE_LOCATION'])
-+
-+ file = open('/etc/cron.d/glite-lb-export.cron', 'w')
-+ file.write('# periodically run purge and export jobs from bkserver\n')
-+ file.write('00,30 * * * * %s %s/etc/glite-lb-export-cron-wrapper.sh\n' % (params['glite.user.name'], os.environ['GLITE_LOCATION']))
-+ file.close()
-+ os.system('/bin/chmod 0755 /etc/cron.d/glite-lb-export.cron')
-+
-+ # Touch cron spool directory to cause reloading of the crontabs
-+ os.system("/bin/touch /var/spool/cron")
-+
- #-------------------------------------------------------------------
- # RGMA servicetool: configure servicetool
- #-------------------------------------------------------------------
-@@ -418,6 +500,17 @@
- # Perl
- glib.addEnvPath("PERL5LIB", "%s/lib/perl:%s/lib/perl5" % (os.environ['GPT_LOCATION'],os.environ['GLITE_LOCATION']))
-
-+ # LB export
-+ glib.export('GLITE_LB_EXPORT_ENABLED', params['lb.export.enabled']);
-+ glib.export('GLITE_LB_EXPORT_BKSERVER', params['lb.export.bkserver']);
-+ glib.export('GLITE_LB_EXPORT_JPPS', params['lb.export.jpps']);
-+ glib.export('GLITE_LB_EXPORT_JPREG_MAILDIR', params['lb.export.jpreg']);
-+ glib.export('GLITE_LB_EXPORT_JPDUMP_MAILDIR', params['lb.export.jpdump']);
-+ glib.export('GLITE_LB_EXPORT_DUMPDIR', params['lb.export.dump']);
-+ glib.export('GLITE_LB_EXPORT_DUMPDIR_OLD', params['lb.export.dump.old']);
-+ glib.export('GLITE_LB_EXPORT_EXPORTDIR', params['lb.export.export']);
-+ glib.export('GLITE_LB_EXPORT_PURGE_ARGS', '"%s"' % params['lb.export.purgeargs']);
-+
- # Set environment
- glib.setUserEnv()
-
-Index: org.glite.deployment.lb/config/templates/glite-lb.cfg.xml
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/config/templates/glite-lb.cfg.xml,v
-retrieving revision 1.21
-diff -u -r1.21 glite-lb.cfg.xml
---- org.glite.deployment.lb/config/templates/glite-lb.cfg.xml 13 Mar 2006 15:19:21 -0000 1.21
-+++ org.glite.deployment.lb/config/templates/glite-lb.cfg.xml 30 Jun 2006 09:29:21 -0000
-@@ -17,9 +17,16 @@
- parameter. Leave it empty of comment it out to use the same as 'glite.user.name'"
- value="changeme"/>
-
-- <mysql.root.password
-- description="The mysql root password"
-- value="changeme"/>
-+ <mysql.root.password
-+ description="The mysql root password"
-+ value="changeme"/>
-+
-+ <lb.export.jpps
-+ description="Job Provenance Primary Storage.
-+ [Example: localhost:8901][Type: string]"
-+ value="changeme"/>
-+
-+
-
- <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
- <!-- Advanced parameters - Change them if you know what you're doing -->
-@@ -55,6 +62,12 @@
- [Example: 17M][Type: Integer][Unit: MB]"
- value="17M"/>
-
-+ <lb.export.enabled
-+ description="Enables exports to Job Provenance.
-+ [Example: true][Type: boolean]"
-+ value="true"/>
-+
-+
- <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
- <!-- System parameters - You should leave these alone -->
- <!-- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -->
-@@ -67,7 +80,42 @@
- <value>destination</value>
-
- </lb.index.list>
--
-+
-+ <lb.export.bkserver
-+ description="Book Keeping Server service when differs from default port on localhost.
-+ [Example: localhost:9000][Type: string]"
-+ value=""/>
-+
-+ <lb.export.jpreg
-+ description="Maildir for job registrations.
-+ [Example: /tmp/jpreg][Type: string]"
-+ value=""/>
-+
-+ <lb.export.jpdump
-+ description="Maildir for job dumps.
-+ [Example: /tmp/jpdump][Type: string]"
-+ value=""/>
-+
-+ <lb.export.dump
-+ description="Dump directory for purged jobs.
-+ [Example: /tmp/dump][Type: string]"
-+ value=""/>
-+
-+ <lb.export.dump.old
-+ description="Dump directory for handled purged jobs.
-+ [Example: /tmp/dump.old][Type: string]"
-+ value=""/>
-+
-+ <lb.export.export
-+ description="Exported events divided to file per job.
-+ [Example: /tmp/lb_export][Type: string]"
-+ value=""/>
-+
-+ <lb.export.purgeargs
-+ description="Purge arguments (with timeouts).
-+ [Example: -a 1h -c 1h -n 1h -o 1d][Type: string]"
-+ value="-a 1d -c 1d -n 1d -o 7d"/>
-+
- </parameters>
-
- </config>
-Index: org.glite.deployment.lb/project/glite-lb.sdf.xml.template
-===================================================================
-RCS file: /cvs/jra1mw/org.glite.deployment.lb/project/glite-lb.sdf.xml.template,v
-retrieving revision 1.38.2.2
-diff -u -r1.38.2.2 glite-lb.sdf.xml.template
---- org.glite.deployment.lb/project/glite-lb.sdf.xml.template 2 May 2006 10:36:19 -0000 1.38.2.2
-+++ org.glite.deployment.lb/project/glite-lb.sdf.xml.template 30 Jun 2006 09:29:21 -0000
-@@ -57,6 +57,12 @@
- build="@org.glite.lb.server-bones.info.build@"
- arch="i386"/>
-
-+ <component name="glite-lb-client"
-+ version="@org.glite.lb.client.info.version@"
-+ age="@org.glite.lb.client.info.age@"
-+ build="@org.glite.lb.client.info.build@"
-+ arch="i386"/>
-+
- <component name="glite-wms-utils-jobid"
- version="@org.glite.wms-utils.jobid.info.version@"
- age="@org.glite.wms-utils.jobid.info.age@"
-@@ -105,6 +111,12 @@
- build="@org.glite.jp.ws-interface.info.build@"
- arch="i386"/>
-
-+ <component name="glite-jp-client"
-+ version="@org.glite.jp.client.info.version@"
-+ age="@org.glite.jp.client.info.age@"
-+ build="@org.glite.jp.client.info.build@"
-+ arch="i386"/>
-+
- <component name="gridsite"
- version="@org.gridsite.core.info.version@"
- age="@org.gridsite.core.info.age@"
+++ /dev/null
-These are the instructions how to build LB for VDT:
-
-$ mkdir lb4vdt
-$ cd lb4vdt
-$ export CVSROOT=:pserver:anonymous@jra1mw.cvs.cern.ch:/cvs/jra1mw
-$ cvs co org.glite.lb
-
-you may need to edit ./org.glite.lb/lb4vdt/Makefile.inc
-to specify some paths (some of them should be set automaticaly,
-e.g. by VDT_LOCATION)
-
-and then (still from the top directory) run
-
-$ ./org.glite.lb/lb4vdt/LB_install.sh 2>&1 | tee log
-
-:)
+++ /dev/null
-CLPR=1; for jobid in `./stage/sbin/glite-lb-perftest_logjobs -m scientific.civ.zcu.cz:10000 -f stage/examples/perftest/perf_simple_avg_events.log -n 1000 -p /tmp/perftest_michal.log -s /tmp/proxy_michal.perf|grep https`; do stage/bin/glite-lb-logevent -x -S /tmp/proxy_michal.perfstore.sock -c $SEQCODE -j $jobid -s UserInterface -e Abort --reason Purge; done
+++ /dev/null
-./stage/sbin/glite-lb-purge -j /tmp/perftest_1000.jobids -m scientific.civ.zcu.cz:10000 -s
+++ /dev/null
- REG=1; for jobid in `./stage/sbin/glite-lb-perftest_logjobs -m scientific.civ.zcu.cz:10000 -f stage/examples/perftest/perf_simple_avg_events.log -n 1000 -p /tmp/perftest_michal.log -s /tmp/proxy_michal.perf|grep https`; do stage/examples/glite-lb-job_reg -j $jobid -s UserInterface ; done
+++ /dev/null
-./shared/egee/jra1-head/stage/sbin/perftest_il.sh 10
--------------------------------------------
-Logging test:
- - events sent through IPC and/or files
- - events discarded by IL immediately
--------------------------------------------
-a) events sent only by IPC
-b) events stored to files and sent by IPC
-
- small_job big_job small_dag big_dag
-a) 154727793 11240340 101479915 621678
-[jobs/day]
-b) 11540156 594389 10416164 402240
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events discarded in IL
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 14323607 547755 10158371 375594
-[jobs/day]
-b) 6284230 364547 4554967 300055
-[jobs/day]
-c) 7540122 412971 3186381 300417
-[jobs/day]
-x) 9672327 418137 2567653 297477
-[jobs/day]
-d) this test is not yet implemented
-e) 9650719 410507 3651840 301687
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events consumed by empty BS
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 2639788 182196 2035014 246654
-[jobs/day]
-b) 1170308 45973 759842 74898
-[jobs/day]
-c) 1060595 42047 921386 76638
-[jobs/day]
-x) 1091863 42247 518302 82129
-[jobs/day]
-d) this test is not yet implemented
-e) 1147040 41790 489257 76627
-[jobs/day]
-
+++ /dev/null
-[michal@scientific jra1-head]$ ./stage/sbin/perftest_il.sh 10
--------------------------------------------
-Logging test:
- - events sent through IPC and/or files
- - events discarded by IL immediately
--------------------------------------------
-a) events sent only by IPC
-b) events stored to files and sent by IPC
-
- small_job big_job small_dag big_dag
-a) 149765990 10933663 100162299 619924
-[jobs/day]
-b) 11857056 479615 2753618 277679
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events discarded in IL
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 13813170 268900 6448242 244203
-[jobs/day]
-b) 4525621 255055 6147103 241153
-[jobs/day]
-c) 9338319 217855 5497442 248429
-[jobs/day]
-x) 9335090 232292 3989195 236341
-[jobs/day]
-d) this test is not yet implemented
-e) 3283323 216013 7284868 256479
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events consumed by empty BS
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 4019651 44496 766972 95556
-[jobs/day]
-b) 1366885 47501 564779 90055
-[jobs/day]
-c) 1152594 47656 603774 97465
-[jobs/day]
-x) 1049069 48779 607913 88692
-[jobs/day]
-d) this test is not yet implemented
-e) 942509 46271 523129 91103
-[jobs/day]
-
-
-*************************************************************************
-
-
-[michal@scientific jra1-head]$ ./stage/sbin/perftest_il.sh 100
--------------------------------------------
-Logging test:
- - events sent through IPC and/or files
- - events discarded by IL immediately
--------------------------------------------
-a) events sent only by IPC
-b) events stored to files and sent by IPC
-
- small_job big_job small_dag big_dag
-a) 157966907 0 0 620546
-[jobs/day]
-b) 13833450 558487 10210340 283454
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events discarded in IL
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 12884330 316703 4447489 151870
-[jobs/day]
-b) 7980713 469667 4641283 244463
-[jobs/day]
-c) 8458472 556919 5657712 253640
-[jobs/day]
-x) 8149836 549678 4765300 257375
-[jobs/day]
-d) this test is not yet implemented
-e) 9687868 503933 4461079 247092
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events consumed by empty BS
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 9389344 97159 450483 68610
-[jobs/day]
-b) 1195400 82681 560118 88216
-[jobs/day]
-c) 1351879 88207 830072 102285
-[jobs/day]
-x) 1173835 85897 562648 0
-[jobs/day]
-d) this test is not yet implemented
-e) 1205291 78355 567658 87770
-[jobs/day]
+++ /dev/null
-[michal@scientific jra1-head]$ ./stage/sbin/perftest_il.sh 10
--------------------------------------------
-Logging test:
- - events sent through IPC and/or files
- - events discarded by IL immediately
--------------------------------------------
-a) events sent only by IPC
-b) events stored to files and sent by IPC
-
- small_job big_job small_dag big_dag
-a) 153599999 11157889 101479915 539075
-[jobs/day]
-b) 10835893 1059003 2577803 351095
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events discarded in IL
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 14148626 772362 11498383 376986
-[jobs/day]
-b) 5348851 489142 5558879 292071
-[jobs/day]
-c) 9042670 441000 5911613 287842
-[jobs/day]
-x) 7730298 414784 6579748 289834
-[jobs/day]
-d) this test is not applicable
-e) 9288325 365701 7189156 299604
-[jobs/day]
------------------------------------
-Interlogger test:
- - events sent through IPC & files
- - events consumed by empty BS
------------------------------------
-a) disabled event parsing, the server address (jobid) is hardcoded
-b) disabled event synchronization from files
-c) disabled recovery thread
-x) disabled sync and recovery
-d) lazy bkserver connection close
-e) normal operation
-
- small_job big_job small_dag big_dag
-a) 2219003 185867 1785164 258615
-[jobs/day]
-b) 1795503 48283 309380 77422
-[jobs/day]
-c) 1201618 39001 850436 74771
-[jobs/day]
-x) 1134249 48039 447017 74244
-[jobs/day]
-d) 5335078 207059 2438095 96295
-[jobs/day]
-e) 1019269 36465 875966 65565
-[jobs/day]
-
-
+++ /dev/null
-michal:~/shared/egee/jra1-head> ./stage/sbin/perftest_ll.sh 10
-----------------
-Locallogger test
-----------------
-a) glite-lb-logd-perf-nofile --noParse --noIPC
-b) glite-lb-logd-perf-nofile --noIPC
-c) glite-lb-logd-perf --noIPC
-d) glite-lb-logd-perf
-
-Number of jobs: 10
-
- small_job big_job small_dag big_dag
-a) 14.544066 14.590504 14.681760 9.264801 [events/sec]
- 125660 8404 97577 25821 [jobs/day]
-b) 14.614844 14.408043 14.279216 9.600877 [events/sec]
- 126272 8298 94901 26758 [jobs/day]
-c) 0.000000 0.000000 0.000000 0.000000 [events/sec]
- 0 0 0 0 [jobs/day]
-d) 13.331568 13.530218 13.420780 8.363152 [events/sec]
- 115184 7793 89196 23308 [jobs/day]
+++ /dev/null
--------------------
-LB chain test
--------------------
-- proxy & interlogger (lazy variant) running at umbar
-- bkserver running at sci
-- test variants:
- a) 10 jobs
- b) 100 jobs
- c) 1000 jobs
-
-
-Results:
-
- small_job big_job small_dag big_dag
----------------------------------------------------------------
-a) 3.0 x x x [mjobs/day]
-b) 1.0 x x x [mjobs/day]
-c) 0.6 x x x [mjobs/day]
-
-
+++ /dev/null
--------------------
-LB chain test
--------------------
-- proxy & interlogger (lazy variant) running at umbar
-- bkserver running at sci
-- test variants:
- a) 100 jobs, no background queries
- b) 1000 jobs, no background queries
- c) 10000 jobs, no background queries
- d) 100 jobs, 10 parallel queries
- e) 1000 jobs, 10 parallel queries, perf interlogger
- f) 1000 jobs, 10 parallel queries, normal interlogger
-- in d)-f) the server was queried by 10 independent clients for states
- of all jobs periodically with random sleep between queries (0-5sec)
-
-Results:
-
- small_job big_job small_dag big_dag
----------------------------------------------------------------
-a) 1.0 x x x [mjobs/day]
-b) 0.6 x x x [mjobs/day]
-c) 0.5 x x x [mjobs/day]
-d) 0.8 x x x [mjobs/day]
-e) 0.45 x x x [mjobs/day]
-f) 0.4 x x x [mjobs/day]
+++ /dev/null
-----------------------------------
-LB Proxy test
-----------------------------------
-Events are consumed:
-1) before parsing
-2) after parsing, before storing into database
-3) after storing into db, before computing state
-4) after computing state, before sending to IL
-5) by IL
-
- small_job big_job small_dag big_dag
-1) 43005186.489600 2852512.156800 31859581.824000 502823.721600
-[jobs/day]
-2) 37764713.548800 2438483.961600 26108871.523200 340065.648000
-[jobs/day]
-3) 1754530.243200 272980.540800 2051218.684800 0.000000
-[jobs/day]
-4) 1267110.000000 176052.182400 1506470.486400 0.000000
-[jobs/day]
-5) 329471.452800 48787.747200 318152.275200 0.000000
-[jobs/day]
+++ /dev/null
- ./stage/bin/glite-lb-interlogd -d -s /tmp/perftest_michal.sock --file-prefix=/tmp/perftest_michal.log --lazy
+++ /dev/null
-./stage/bin/glite-lb-proxy -d --silent -p /tmp/proxy_michal.perf --proxy-il-sock /tmp/perftest_michal.sock --proxy-il-fprefix /tmp/perftest_michal.log
+++ /dev/null
-./stage/bin/glite-lb-bkserverd -d --perf-sink=4 -p 10000 -w 10003 -S /tmp/purge_michal -D /tmp/dump_michal --silent
+++ /dev/null
-TEST=1; ./stage/sbin/glite-lb-perftest_logjobs -d proxy -m scientific.civ.zcu.cz:10000 -f stage/examples/perftest/perf_simple_avg_events.log -n 1000 -p /tmp/perftest_michal.log -s /tmp/proxy_michal.perf
+++ /dev/null
-#!/bin/bash
-#$Header
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# -----------------------------------------------------------------------
-# This script searches source files for occurrence of EGEE copyright and
-# license. In case of either of them missing, the appropriate text is
-# added as comments.
-#
-# Argument (optional):
-# Directory to search. Default is '.'
-#
-# Modify the final section to search for other types of files.
-#
-# - ZS -
-#
-
-if [ "$1" = "" ]; then
- echo "No directory given. Using \".\""
- DIR="."
-else
- DIR=$1
-fi
-
-if [ "$TMPDIR" = "" ]; then
- echo TMPDIR not set. Using /tmp
- TMPDIR="/tmp"
-fi
-
-TOTALFOUND=0
-TOTALFIXEDLIC=0
-TOTALFIXEDCOP=0
-
-# Check is a specific binary exists
-function check_exec()
-{
- if [ -z $1 ]; then
- set_error "No binary to check"
- return $TEST_ERROR
- fi
- local ret=`which $1 2> /dev/null`
- if [ -n "$ret" -a -x "$ret" ]; then
- return $TEST_OK
- else
- return $TEST_ERROR
- fi
-}
-
-
-# Check the list of required binaries
-function check_binaries()
-{
- local ret=$TEST_OK
- for file in $@
- do
- printf "$file... "
- check_exec $file
- if [ $? -gt 0 ]; then
- echo "$file not found" > /dev/stderr
- ret=1
- else
- echo "OK"
- fi
-
- done
- return $ret
-}
-
-function check_file()
-{
-file=$1
-
-# strip file
-# - comment mark at the beginning of a line
-# - comment mark at the end of a line
-# - dates
-# - spaces
-
-stripped_contents=`cat ${file} |
-sed --posix --regexp-extended \
- -e 's:^[[:space:]]*(\#|//|/\*|\*|\%)[[:space:]]*::' \
- -e 's:[[:space:]]*(\#|//|\*/|\*|\%)[[:space:]]*$::' \
- -e 's/[[:digit:]]{4}( ?[,-] ?[0-9]{4})*//' |
-tr -d '[\/[:space:],]'`
-
-# is copyright present?
-echo ${stripped_contents} | grep -q "${stripped_copyright}" 2>/dev/null
-r1=$?
-if [ "$r1" -eq "1" ]; then
- # if not, try other known copyrights
- echo ${stripped_contents} | grep -q "${stripped_gpl_copyright}" 2>/dev/null
- r1=$?
- if [ "$r1" -eq "1" ]; then
- echo ${stripped_contents} | grep -q "${stripped_trio_copyright}" 2>/dev/null
- r1=$?
- fi
-fi
-
-# is license present?
-echo ${stripped_contents} | grep -q "${stripped_license}" 2>/dev/null
-r2=$?
-if [ "$r2" -eq "1" ]; then
- # if not, try other known licenses
- echo ${stripped_contents} | grep -q "${stripped_gpl_license}" 2>/dev/null
- r2=$?
- if [ "$r2" -eq "1" ]; then
- echo ${stripped_contents} | grep -q "${stripped_trio_license}" 2>/dev/null
- r2=$?
- fi
-fi
-
-ret=$(( r1 + r2 * 2 ))
-
-#echo ${file}:$((1 - r1)):$((1 - r2))
-return $ret
-}
-
-function fix_c_style_sources()
-{
-
-filelist=`find $DIR -type f -name "$1"`
-for srcfile in $filelist
-do
- check_file $srcfile
- checkresult=$?
- let TOTALFOUND=$TOTALFOUND+1
-
- if [ "$checkresult" -gt "0" ]; then
-
-
- lineno=`grep -n -E "\$H[e]ader: /cvs" $srcfile | sed 's/:.*$//'`
- if [ "$lineno" == "" ]; then
- lineno=0
- fi
- let nextlineno=$lineno+1
-
- printf "$srcfile: Needs fixing ($checkresult), lineno $lineno, $nextlineno\n"
-
- head -n $lineno $srcfile > $TMPDIR/egee_license.$$.swp
- printf "/*\n" >> $TMPDIR/egee_license.$$.swp
- if [ "$checkresult" == "1" ] || [ "$checkresult" == "3" ]; then
- printf "$COPYRIGHT\n\n" >> $TMPDIR/egee_license.$$.swp
- let TOTALFIXEDCOP=$TOTALFIXEDCOP+1
- fi
- if [ "$checkresult" -gt "1" ]; then
- printf "$LICENSE\n" >> $TMPDIR/egee_license.$$.swp
- let TOTALFIXEDLIC=$TOTALFIXEDLIC+1
- fi
- printf "*/\n\n" >> $TMPDIR/egee_license.$$.swp
- tail -n +$nextlineno $srcfile >> $TMPDIR/egee_license.$$.swp
-
- cp -f $TMPDIR/egee_license.$$.swp $srcfile
- else
- printf "$srcfile $checkresult [OK]\n"
- fi
-done
-}
-
-function fix_sh_style_sources()
-{
-filelist=`find $DIR -type f -name "$1"`
-prefix=$2
-for srcfile in $filelist
-do
- check_file $srcfile
- checkresult=$?
- let TOTALFOUND=$TOTALFOUND+1
-
- if [ "$checkresult" -gt "0" ]; then
-
- lineno=`grep -n -E "\$H[e]ader: /cvs" $srcfile | sed 's/:.*$//'`
- shlineno=`head -n 1 $srcfile | grep -n '^#! */' | sed 's/:.*$//'`
- if [ "$lineno" == "" ]; then
- lineno=0
- fi
- if [ "$shlineno" == "" ]; then
- shlineno=0
- fi
- if [ "$shlineno" -gt "$lineno" ]; then
- lineno=$shlineno
- fi
-
- let nextlineno=$lineno+1
-
- printf "$srcfile: Needs fixing ($checkresult), lineno $lineno, $nextlineno\n"
-
- head -n $lineno $srcfile > $TMPDIR/egee_license.$$.swp
- printf "$prefix\n" >> $TMPDIR/egee_license.$$.swp
- if [ "$checkresult" == "1" ] || [ "$checkresult" == "3" ]; then
- printf "$COPYRIGHT\n\n" | sed "s/^/$prefix /" >> $TMPDIR/egee_license.$$.swp
- let TOTALFIXEDCOP=$TOTALFIXEDCOP+1
- fi
- if [ "$checkresult" -gt "1" ]; then
- printf "$LICENSE\n" | sed "s/^/$prefix /" >> $TMPDIR/egee_license.$$.swp
- let TOTALFIXEDLIC=$TOTALFIXEDLIC+1
- fi
- printf "$prefix\n" >> $TMPDIR/egee_license.$$.swp
- tail -n +$nextlineno $srcfile >> $TMPDIR/egee_license.$$.swp
-
- cp -f $TMPDIR/egee_license.$$.swp $srcfile
- else
- printf "$srcfile $checkresult [OK]\n"
- fi
-done
-}
-
-
-##################################################
-# This is where the actual execution starts
-##################################################
-
-echo Checking binaries
-
-check_binaries head tail find grep sed tr cat
-
-if [ $? -gt 0 ]; then
- echo "$0: Unable to find all binaries" > /dev/stderr
- exit 1
-fi;
-
-LICENSE='Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.'
-
-COPYRIGHT='Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-See http://www.eu-egee.org/partners/ for details on the copyright holders.'
-
-GPLCOPYRIGHT='Copyright (C) 2000-2007, Robert van Engelen, Genivia Inc., All Rights Reserved.'
-GPLLICENSE='The contents of this file are subject to the gSOAP Public License'
-
-TRIOCOPYRIGHT='Copyright (C) 1998 Bjorn Reese and Daniel Stenberg.'
-TRIOLICENSE='Copyright (C) 1998 Bjorn Reese and Daniel Stenberg.'
-
-stripped_copyright=`printf "$COPYRIGHT" | sed --posix --regexp-extended -e 's/[[:digit:]]{4}( ?[,-] ?[0-9]{4})*//' | tr -d '[\/[:space:],]'`
-stripped_license=`printf "$LICENSE" | tr -d '[\/[:space:],]'`
-
-stripped_gpl_copyright=`printf "$GPLCOPYRIGHT" | sed --posix --regexp-extended -e 's/[[:digit:]]{4}( ?[,-] ?[0-9]{4})*//' | tr -d '[\/[:space:],]'`
-stripped_gpl_license=`printf "$GPLLICENSE" | tr -d '[\/[:space:],]'`
-
-# Specific treatment for TRIO!
-stripped_trio_copyright=`printf "$TRIOCOPYRIGHT" | sed --posix --regexp-extended -e 's/[[:digit:]]{4}( ?[,-] ?[0-9]{4})*//' | tr -d '[\/[:space:],]'`
-stripped_trio_license=`printf "$TRIOCOPYRIGHT" | sed --posix --regexp-extended -e 's/[[:digit:]]{4}( ?[,-] ?[0-9]{4})*//' | tr -d '[\/[:space:],]'`
-
-
-#ANSI C files
-echo Processing ANSI C files
-fix_c_style_sources "*.[chCH]"
-
-#CPP files
-echo Processing C++ files
-fix_c_style_sources "*.cpp"
-
-#Java files
-echo Processing Java files
-fix_c_style_sources "*.java"
-
-#c.T and h.T files
-echo Processing c.T and h.T files
-fix_c_style_sources "*.[ch].T"
-
-#cpp.T files
-echo Processing cpp.T files
-fix_c_style_sources "*.cpp.T"
-
-#sh files
-echo Processing shell files
-fix_sh_style_sources "*.sh" '#'
-
-#TeX files
-#echo Processing TeX files
-#fix_sh_style_sources "*.tex" '%%'
-
-#Perl files
-echo Processing Perl files
-fix_sh_style_sources "*.pl" '#'
-
-#LB configure files
-echo Processing configure files /Perl/ -- specific for LB
-fix_sh_style_sources "configure" '#'
-
-
-printf "\n\nTotal files found:\t $TOTALFOUND\nTotal copyrights fixed:\t $TOTALFIXEDCOP\nTotal licenses fixed:\t $TOTALFIXEDLIC\n";
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-
-$TMPDIR=$ENV{'TMPDIR'};
-$GLITE_LB_LOCATION="./org.glite.lb";
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-getopts('b:c:h');
-
-$module = shift;
-
-$usage = qq{
-usage: $0 -b <branch> [-c configuration] module.name
-
- -b Name of the 'b'ranch to base the configuration on.
- The branch must already exist in CVS!
-
- -c Use this configuration (\d+\.\d+\.\d+-\S+) rather than parsing
- version.properties. Bear in mind that this will only be used
- to set up the version and age in your configuration.
- Also, the existence of the branch will not be tested. with the
- -c option.
-
- -h Display this help
-
-};
-
- # **********************************
- # Interpret cmdline options
- # **********************************
-
- if (defined $opt_h) {die $usage};
- die $usage unless $module;
-
- #Clean possible trailing '/' (even multiple occurrences :-) from module name
- $module=~s/\/+$//;
-
- if (!(defined $opt_b)) {die "Mandatory argument -b <branch> missing"};
- $branch=$opt_b;
-
- if (defined $opt_c) {
-
- # **********************************
- # Parse the tag supplied by the user
- # **********************************
-
- if ($opt_c=~/(\d+)\.(\d+)\.(\d+)-(\S+?)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- $current_age=$4;
- }
- else {die ("tag not stated properly")};
-
- }
- else {
-
- # **********************************
- # Determine the most recent tag and its components from version.properties
- # **********************************
-
- open VP, "$module/project/version.properties" or die "$module/project/version.properties: $?\n";
-
- while ($_ = <VP>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $current_age=$1;
- }
- }
- close (VP);
-
- $current_prefix=$module;
- $current_prefix=~s/^org\.//;
- $current_prefix=~s/\./-/g;
- $current_prefix="$current_prefix" . "_R_";
- $current_tag="$current_prefix" . "$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
-
-
- # **********************************
- # Make sure the branch exists
- # **********************************
-
- if ( $branch ne "HEAD" ) {
- die "Branch $branch does not exist for this module\n" if system("cvs status -v $module/project/version.properties | grep \"(branch:\" | grep -w $branch");
- }
-
- }
-
- printf("Current tag: $current_tag\n\tprefix: $current_prefix\n\t major: $current_major\n\t minor: $current_minor\n\t rev: $current_revision\n\t age: $current_age\n\tbranch: $branch\n");
-
- # **********************************
- # Create the execution script
- # **********************************
-
- open EXEC, ">", "$TMPDIR/etics-tag-$module.$branch.sh" or die $!;
-
- printf (EXEC "#This script creates creates a _dev configuration for the $module module, branch $branch\n#Generated automatically by $0\n\n");
-
-
- # **********************************
- # Etics configuration prepare / modify / upload
- # **********************************
-
- $currentconfig="$module_$module" . "_R_$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
- $currentconfig=~s/^org.//;
- $currentconfig=~s/\./-/g;
- $newconfig="$module_$module" . "_$branch";
- $newconfig=~s/^org.//;
- $newconfig=~s/\./-/g;
-
- $module=~/([^\.]+?)\.([^\.]+?)$/;
- $subsysname=$1;
- $modulename=$2;
-
- # **********************************
- # Etics configuration prepare / modify / upload
- # **********************************
-
- printf("Module=$module\nname=$modulename\nsubsys=$subsysname\n");
- system("$GLITE_LB_LOCATION/configure --mode=etics --module $subsysname.$modulename --output $TMPDIR/$newconfig.ini.$$ --version $current_major.$current_minor.$current_revision-$current_age --branch $branch");
-
- printf (EXEC "#Find out if the configuration already exists in etics\n");
- printf (EXEC "echo Check if configuration exists\n\n");
- printf (EXEC "existconf=`etics-list-configuration $module | grep -w glite-$subsysname-${modulename}_$branch`\n\n");
- printf (EXEC "echo Found: \$existconf\n");
- printf (EXEC "if [ \"\$existconf\" = \"\" ]; then\n");
- printf (EXEC " echo New congiguration ... call etics-configuration add\n");
- printf (EXEC " etics-configuration add -i $TMPDIR/$newconfig.ini.$$\n");
- printf (EXEC "else\n");
- printf (EXEC " echo Congiguration already exists ... call etics-configuration modify\n");
- printf (EXEC " etics-configuration modify -i $TMPDIR/$newconfig.ini.$$\n");
- printf (EXEC "fi\n\n");
- printf (EXEC "etics-commit\n\n");
-
-
- # **********************************
- # Final bows
- # **********************************
-
- close(EXEC);
-
- system("chmod +x \"$TMPDIR/etics-tag-$module.$branch.sh\"");
-
- printf("\n\n---------\nDone!\n\nExecution script written in:\t$TMPDIR/etics-tag-$module.$branch.sh\n");
- printf("Old configuration stored in:\t$TMPDIR/$currentconfig.ini.$$\n") if (defined $opt_g);
- printf("New configuration written in:\t$TMPDIR/$newconfig.ini.$$\n\n");
-
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-
-$TMPDIR=$ENV{'TMPDIR'};
-$GLITE_LB_LOCATION="./org.glite.lb";
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-getopts('ch');
-
-$usage = qq{
-usage: $0 [-h] subsystem.name [subsystem.name] [...]
-
- This script checks the consistency of tags in CVS and version.properties
-
- -c also verify etics configurations
- -h Display this help
-
-};
-
- # **********************************
- # Interpret cmdline options
- # **********************************
-
- if (defined $opt_h) {die $usage};
- die $usage unless @ARGV[0];
-
- if (defined $opt_c) {
- printf ("\n\nYou have selected the -c option. Note that etics may require authetication.\n If you cannot see any progress in the script, it is probably waiting for your password. ;-)\n\n");
- }
-
- # **********************************
- # Iterate through subsystems
- # **********************************
-
- foreach $subsystem (@ARGV) {
-
- #Clean possible trailing '/' (even multiple occurrences :-) from subsystem name
- $subsystem=~s/\/+$//;
-
- printf("$subsystem\n");
-
- $subsystem=~/\.([^\.]+?)$/;
-
- @modules=split(/\s+/, `PATH=\$PATH:./:./org.glite.lb configure --listmodules $1`);
-
- unshift (@modules, $subsystem);
-
- foreach $module (@modules) {
-
- printf(" %-30s", $module);
-
-
- if (open VP, "$module/project/version.properties") {
-
- while ($_ = <VP>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $current_age=$1;
- }
- }
- close (VP);
-
- $current_prefix=$module;
- $current_prefix=~s/^org\.//;
- $current_prefix=~s/\./-/g;
- $current_prefix="$current_prefix" . "_R_";
- $current_tag="$current_prefix" . "$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
-
- if ($module eq $subsystem) { $subsystem_tag = $current_tag; }
-
- printf("\t $current_major.$current_minor.$current_revision-$current_age");
-
- unless (system("cvs log -h $module/project/version.properties | grep -E \"\\W$current_tag\\W\" > /dev/null"))
- { printf ("\t mod. OK"); }
- else {
- printf(STDERR "\nERROR: Tag $current_tag does not exist in module $module!\n");
- }
-
- if ($module ne $subsystem ) {
- unless (system("cvs log -h $module/project/version.properties | grep -E \"\\W$subsystem_tag\\W\" > /dev/null"))
- { printf ("\t subsys. OK"); }
- else {
- printf(STDERR "\nERROR: Tag $subsystem_tag does not exist in module $module!\n");
- }
-
- unless (-e "$module/project/ChangeLog") {
- printf(STDERR "\nERROR: The ChangeLog file for module $module does not exist!\n");
- }
- }
-
- unless (-e "$module/configure") {
- printf(STDERR "\nERROR: The configure script for module $module does not exist!\n");
- }
-
- if (defined $opt_c) {
- unless (system("etics-list-configuration $module | grep \"$current_tag\" &> /dev/null"))
- { printf ("\t etics OK"); }
- else {
- printf(STDERR "\nERROR: Configuration $current_tag for module $module does not exist!\n");
- }
- }
-
- printf("\n");
-
- }
- else {
- printf(STDERR "\nERROR: The version.properties file for module $module does not exist!\n");
- }
- }
- }
-
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-use File::Basename;
-
-$TMPDIR=$ENV{'TMPDIR'};
-$GLITE_LB_LOCATION=dirname $0;
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-getopts('i:c:m:gh');
-
-$module='org.gridsite.core';
-
-$usage = qq{
-usage: $0 -c <new configuration>
- -c Use this configuration (\d+\.\d+\.\d+-\S+)
- -h Display this help
-
-};
-
-# **********************************
-# Interpret cmdline options
-# **********************************
-
-if (defined $opt_h) {die $usage};
-die $usage unless $module;
-
-
-if (defined $opt_c) {
-
- # **********************************
- # Parse the tag supplied by the user
- # **********************************
-
- if ($opt_c=~/(\d+)\.(\d+)\.(\d+)-(\S+?)/) {
- $major=$1;
- $minor=$2;
- $revision=$3;
- $age=$4;
- }
- else {die ("tag not stated properly")};
-}
-else {
- die $usage;
-}
-
-printf("Tag: $tag\n\tprefix: $prefix\n\t major: $major\n\t minor: $minor\n\t rev: $revision\n\t age: $age\n");
-
-
-# **********************************
-# Create the execution script
-# **********************************
-
-open EXEC, ">", "$TMPDIR/etics-tag-gridsite.$major.$minor.$revision-$age.sh" or die $!;
-
-printf (EXEC "#This script registers tags for the $module module, version $major.$minor.$revision-$age\n#Generated automatically by $0\n\n");
-
-# **********************************
-# Update version.properties
-# **********************************
-
-## printf(EXEC "#Generate new version.properties\ncat >$module/project/version.properties <<EOF\n# generated for LB configure --mode=etics only\nmodule.version=$major.$minor.$revision\nmodule.age=$age\nEOF\n\n");
-
-# **********************************
-# Etics configuration prepare / modify / upload
-# **********************************
-
-$newconfig="$module" . "_R_$major" . "_$minor" . "_$revision" . "_$age";
-$newconfig=~s/^org.//;
-$newconfig=~s/\./-/g;
-
-$module=~/([^\.]+?)\.([^\.]+?)$/;
-$subsysname=$1;
-$modulename=$2;
-
-printf("Module=$module\nname=$modulename\nsubsys=$subsysname\n");
-system("$GLITE_LB_LOCATION/configure --mode=etics --module $subsysname.$modulename --output $TMPDIR/$newconfig.ini.$$ --version $major.$minor.$revision-$age");
-
-printf(EXEC "\n#Add new configuration\netics-configuration add -i $TMPDIR/$newconfig.ini.$$ -c $newconfig $module\n");
-
-$version="${major}_${minor}_${revision}_${age}";
-
-$template = qq{
-[Configuration-gridsite-MODULE_R_$version]
-profile = None
-moduleName = org.gridsite.MODULE
-displayName = gridsite-MODULE_R_$version
-description = gridsite-MODULE_R_$version
-projectName = org.glite
-age = $age
-vcsroot = None
-tag = None
-version = $major.$minor.$revision
-path = \${projectName}/org.gridsite.core/\${version}/\${platformName}/gridsite-core-\${version}-\${age}.tar.gz
-
-[Platform-default:VcsCommand]
-displayName = None
-description = None
-tag = None
-branch = None
-commit = None
-checkout = echo No checkout required
-
-[Platform-default:BuildCommand]
-checkstyle = None
-packaging = echo "building nothing, org.gridsite.core make rpm step will create this"
-displayName = None
-description = None
-doc = None
-publish = None
-postpublish = None
-compile = echo "building nothing, org.gridsite.core make rpm step will create this"
-init = None
-install = None
-prepublish = None
-test = None
-clean = None
-configure = None
-
-[Platform-default:DynamicDependency]
-org.glite|org.gridsite.core = B
-};
-
-
-for $mod (qw/apache commands shared/) {
- $conf = $template;
- $conf =~ s/MODULE/$mod/g;
-
- open CONF,">$TMPDIR/$subsysname-${mod}_R_$version.ini.$$";
- print CONF $conf;
- close CONF;
-
- print EXEC "etics-configuration add -i $TMPDIR/$subsysname-${mod}_R_$version.ini.$$\n";
-}
-
-printf(EXEC "etics-commit\n");
-
-open CONF,">$TMPDIR/${subsysname}_R_$version.ini.$$";
-
-print CONF qq{
-[Configuration-gridsite_R_$version]
-profile = None
-moduleName = org.gridsite
-displayName = gridsite_R_$version
-description = gridsite_R_$version
-projectName = org.glite
-age = $age
-vcsroot = None
-tag = None
-version = $major.$minor.$revision
-path = None
-
-[Hierarchy]
-org.gridsite.apache = gridsite-apache_R_$version
-org.gridsite.shared = gridsite-shared_R_$version
-org.gridsite.commands = gridsite-commands_R_$version
-org.gridsite.core = gridsite-core_R_$version
-};
-
-close CONF;
-
-print EXEC "etics-configuration add -i $TMPDIR/${subsysname}_R_$version.ini.$$\n";
-
-printf(EXEC "etics-commit\n");
-
-
-# **********************************
-# Final bows
-# **********************************
-
-close(EXEC);
-
-system("chmod +x \"$TMPDIR/etics-tag-gridsite.$major.$minor.$revision-$age.sh\"");
-
-printf("\n\n---------\nDone!\n\nExecution script written in:\t$TMPDIR/etics-tag-gridsite.$major.$minor.$revision-$age.sh\n");
-printf("New configuration written in:\t$TMPDIR/${subsysname}_R_$version.ini.$$\n\n");
-
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-
-$TMPDIR=$ENV{'TMPDIR'};
-$GLITE_LB_LOCATION="./org.glite.lb";
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-getopts('b:c:h');
-
-$module = shift;
-
-$usage = qq{
-usage: $0 -b <branch> [-c configuration] subsystem.name
-
- -b Name of the 'b'ranch to base the configuration on.
- The branch must already exist in CVS!
-
- -c Use this configuration (\d+\.\d+\.\d+-\S+) rather than parsing
- version.properties. Bear in mind that this will only be used
- to set up the version and age in your configuration.
- Also, the existence of the branch will not be tested. with the
- -c option.
-
- -h Display this help
-
-};
-
- # **********************************
- # Interpret cmdline options
- # **********************************
-
- if (defined $opt_h) {die $usage};
- die $usage unless $module;
-
- #Clean possible trailing '/' (even multiple occurrences :-) from module name
- $module=~s/\/+$//;
-
- if (!(defined $opt_b)) {die "Mandatory argument -b <branch> missing"};
- $branch=$opt_b;
-
- if (defined $opt_c) {
-
- # **********************************
- # Parse the tag supplied by the user
- # **********************************
-
- if ($opt_c=~/(\d+)\.(\d+)\.(\d+)-(\S+?)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- $current_age=$4;
- }
- else {die ("tag not stated properly")};
-
- }
- else {
-
- # **********************************
- # Determine the most recent tag and its components from version.properties
- # **********************************
-
- open VP, "$module/project/version.properties" or die "$module/project/version.properties: $?\n";
-
- while ($_ = <VP>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $current_age=$1;
- }
- }
- close (VP);
-
- $current_prefix=$module;
- $current_prefix=~s/^org\.//;
- $current_prefix=~s/\./-/g;
- $current_prefix="$current_prefix" . "_R_";
- $current_tag="$current_prefix" . "$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
-
-
- # **********************************
- # Make sure the branch exists
- # **********************************
- if ( $branch ne "HEAD" ) {
- die "Branch $branch does not exist for this module\n" if system("cvs status -v $module/project/version.properties | grep \"(branch:\" | grep -w $branch");
- }
-
- }
-
- printf("Current tag: $current_tag\n\tprefix: $current_prefix\n\t major: $current_major\n\t minor: $current_minor\n\t rev: $current_revision\n\t age: $current_age\n\tbranch: $branch\n");
-
-
- $module=~/\.([^\.]+?)$/;
-
- $subsysname=$1;
-
- @modules=split(/\s+/, `PATH=\$PATH:./:./org.glite.lb configure --listmodules $subsysname`);
-
- $newconfig="glite-$subsysname" . "_$branch";
-
- # **********************************
- # Create the execution script
- # **********************************
-
- open EXEC, ">", "$TMPDIR/etics-tag-with-subsystems-${subsysname}_$branch.sh" or die $!;
-
- printf (EXEC "#This script creates creates a _dev configuration for the $module subsystem, branch $branch\n#Generated automatically by $0\n\n");
-
-
- printf("\nNew configuration:\t$newconfig\n\nPreparing...\n");
-
- open NEWCONF, ">", "$TMPDIR/$newconfig.ini.$$" or die $!;
-
- printf (NEWCONF "[Configuration-$newconfig]\nprofile = None\nmoduleName = $module\ndisplayName = $newconfig\ndescription = None\nprojectName = org.glite\nage = $current_age\ntag = $branch\nversion = $current_major.$current_minor.$current_revision\npath = None\n\n");
-
-# printf (NEWCONF "[Platform-default:VcsCommand]\ndisplayName = None\ndescription = HEAD CVS commands\ntag = cvs -d \${vcsroot} tag -R \${tag} \${moduleName}\nbranch = None\ncommit = None\ncheckout = cvs -d \${vcsroot} co -r \${tag} \${moduleName}\n\n");
-
-# printf (NEWCONF "[Platform-default:Environment]\nHOME = \${workspaceDir}");
-
- printf (NEWCONF "\n\n[Hierarchy]\n");
-
- foreach $m (@modules) {
- open MOD, "$m/project/version.properties" or die "$m/project/version.properties: $?\n";
-
- $m_major=0; $m_minor=0; $m_revision=0; $m_age=0;
-
- while ($_ = <MOD>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $m_major=$1;
- $m_minor=$2;
- $m_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $m_age=$1;
- }
- }
-
- $modconfig="$m_$m" . "_$branch";
- $modconfig=~s/^org.//;
- $modconfig=~s/\./-/g;
-
-# system("echo $m = $modconfig >> $TMPDIR/$newconfig.ini.$$");
- printf(NEWCONF "$m = $modconfig\n");
-
- close (MOD);
- }
-
- close(NEWCONF);
-
-
- printf (EXEC "#Find out if the configuration already exists in etics\n");
- printf (EXEC "echo Check if configuration exists\n\n");
- printf (EXEC "existconf=`etics-list-configuration $module | grep -w glite-${subsysname}_$branch`\n\n");
- printf (EXEC "echo Found: \$existconf\n");
- printf (EXEC "if [ \"\$existconf\" = \"\" ]; then\n");
- printf (EXEC " echo New congiguration ... call etics-configuration add\n");
- printf (EXEC " etics-configuration add -i $TMPDIR/$newconfig.ini.$$\n");
- printf (EXEC "else\n");
- printf (EXEC " echo Congiguration already exists ... call etics-configuration modify\n");
- printf (EXEC " etics-configuration modify -i $TMPDIR/$newconfig.ini.$$\n");
- printf (EXEC "fi\n\n");
- printf(EXEC "etics-commit\n");
-
-
- # **********************************
- # Final bows
- # **********************************
-
- close(EXEC);
-
- system("chmod +x \"$TMPDIR/etics-tag-with-subsystems-${subsysname}_$branch.sh\"");
-
- printf("\n\n---------\nDone!\n\nExecution script written in:\t$TMPDIR/etics-tag-with-subsystems-${subsysname}_$branch.sh\nNew configuration written in:\t$TMPDIR/$newconfig.ini.$$\n\n");
-
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-
-$TMPDIR=$ENV{'TMPDIR'};
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-getopts('c:p:h');
-
-$module = shift;
-
-chomp($module);
-
-$usage = qq{
-usage: $0 [-c <current configuration>] module.name
-
- -c Use this configuration (\d+\.\d+\.\d+-\S+) rather than parsing version.properties
- -p Specify project ("org.glite" / "emi"). Default: autodetect.
- -h Display this help
-
-};
- if (defined $opt_h) {die $usage};
- die $usage unless $module;
-
- #Clean possible trailing '/' (even multiple occurrences :-) from module name
- $module=~s/\/+$//;
-
- if (defined $opt_c) {
-
- # **********************************
- # Parse the tag supplied by the user
- # **********************************
-
- if ($opt_c=~/(\d+)\.(\d+)\.(\d+)-(\S+?)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- $current_age=$4;
- }
- else {die ("tag not specified properly")};
-
- }
- else {
- # **********************************
- # Determine the most recent tag and its components
- # **********************************
-
- open VP, "$module/project/version.properties" or die "$module/project/version.properties: $?\n";
-
- while ($_ = <VP>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $current_age=$1;
- }
- }
- close (VP);
-
- $current_prefix=$module;
- $current_prefix=~s/^org\.//;
- $current_prefix=~s/\./-/g;
- $current_prefix="$current_prefix" . "_R_";
- $current_tag="$current_prefix" . "$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
- $current_tag=~s/^emi-/glite-/;
- }
-
- if (defined $opt_p) {
- $project=$opt_p;
- if (($project ne "emi")&&($project ne "org.glite")) {die "Only projects \"emi\" or \"org.glite\" are recognized";}
- }
- else {
- system("etics-list-configuration > $TMPDIR/etics-tag-proj_configs.$$.tmp");
-
- if ( !system("grep -x \"org.glite.HEAD\" $TMPDIR/etics-tag-proj_configs.$$.tmp > /dev/null") ) { $project = "org.glite"; }
- else {
- if ( !system("grep -x \"emi.HEAD\" $TMPDIR/etics-tag-proj_configs.$$.tmp > /dev/null") ) { $project = "emi"; }
- else { die "Unable to autodetect project. Run from workspace root or specify by -p" }
- }
-
- system("rm $TMPDIR/etics-tag-proj_configs.$$.tmp");
- }
-
- if ($project eq "emi") { $proj_suffix = "emi" }
- else { $proj_suffix = ""; }
-
-
- # According to the documentation, symbolic names in the 'cvs log' output are sorted by age so this should be OK
- #$current_tag=`cvs log -h $module/Makefile | grep \"_R_\" | head -n 1`;
- #$current_tag=~s/^\s//;
- #$current_tag=~s/:.*?$//;
- #chomp($current_tag);
-
- #$current_tag=~/(.*_R_)(\d*?)_(\d*?)_(\d*?)_(.*)/;
- #$current_prefix=$1;
- #$current_major=$2;
- #$current_minor=$3;
- #$current_revision=$4;
- #$current_age=$5;
-
- $module=~/\.([^\.]+?)$/;
-
- if ($project eq "emi") { $proj_switch = " --project=emi" }
- else { $proj_switch = ""; }
-
- @modules=split(/\s+/, `PATH=\$PATH:./:./org.glite.lb configure --listmodules $1$proj_switch`);
-
- my $incmajor=0;
- my $incminor=0;
- my $increvision=0;
- my $incage=0;
-
-
- # **********************************
- # Iterate through modules and find out what has changed
- # **********************************
-
- foreach $m (@modules) {
-
- if ($project eq "emi") {
- $m=~s/^emi\./org.glite./;
- }
- printf("***$m\n");
-
- if ($project eq "emi") {
- $m=~s/^emi\./org.glite./;
- }
-
- $old_major=-1; $old_minor=-1; $old_revision=-1; $old_age=-1;
- $new_major=-1; $new_minor=-1; $new_revision=-1; $new_age=-1;
-
- foreach $l (`cvs diff -r $current_prefix$current_major\_$current_minor\_$current_revision\_$current_age $m/project/version.properties | grep -E "module\.age|module\.version"`) {
- chomp($l);
-# printf("$l\n");
-
- if($l=~/<\s*module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $old_major=$1;
- $old_minor=$2;
- $old_revision=$3;
- }
- elsif($l=~/<\s*module\.age\s*=\s*(\S+)/) {
- $old_age=$1;
- }
- elsif($l=~/>\s*module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $new_major=$1;
- $new_minor=$2;
- $new_revision=$3;
- }
- elsif($l=~/>\s*module\.age\s*=\s*(\S+)/) {
- $new_age=$1;
- }
- }
-
-
-
- if ($old_major != $new_major) {
- $incmajor++;
- printf("Major change ($old_major -> $new_major)");
- }
- elsif ($old_minor != $new_minor) {
- $incminor++;
- printf("Minor change ($old_minor -> $new_minor)");
- }
- elsif ($old_revision != $new_revision) {
- $increvision++;
- printf("Revision change ($old_revision -> $new_revision)");
- }
- elsif ($old_age != $new_age) {
- $incage++;
- printf("Age change ($old_age -> $new_age)");
- }
- printf("\n");
-
- }
-
- printf("Current tag: $current_tag\n\tprefix: $current_prefix\n\t major: $current_major\n\t minor: $current_minor\n\t rev: $current_revision\n\t age: $current_age\n");
-
- # **********************************
- # Generate the new tag name
- # **********************************
-
- if($incmajor > 0) {
- $major=$current_major+1;
- $minor=0;
- $revision=0;
- $age=1;}
- elsif($incminor > 0) {
- $major=$current_major;
- $minor=$current_minor+1;
- $revision=0;
- $age=1;}
- elsif($increvision > 0) {
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision+1;
- $age=1;}
- elsif($incage > 0) {
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision;
- $age=$current_age+1;}
- else {
- printf("No change in either version component.\nAbort by pressing Ctrl+C or enter new age manually.\nUse a number or a word: ");
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision;
- $age=<STDIN>;}
-
- chomp($age);
-
- $tag="$current_prefix" . "$major" . "_$minor" . "_$revision" . "_$age";
- $tag=~s/^emi-/glite-/;
-
- printf("\nNew tag: $tag\n\n");
-
- die "This tag already exists; reported by assertion" unless system("cvs log -h $module/Makefile | grep \"$tag\"");
-
- # **********************************
- # Create the execution script
- # **********************************
-
- open EXEC, ">", "$TMPDIR/tag-with-subsystems-$module.$major.$minor.$revision-$age.sh" or die $!;
-
- printf (EXEC "#This script registers tags for the $module module, version $major.$minor.$revision-$age\n#Generated automatically by $0\n\n");
-
-
- # **********************************
- # Update version.properties
- # **********************************
- open V, "$module/project/version.properties" or die "$module/project/version.properties: $?\n";
-
- printf(EXEC "#Generate new version.properties\ncat >$module/project/version.properties <<EOF\n");
- while ($_ = <V>) {
- chomp;
-
- $_=~s/module\.version\s*=\s*[.0-9]+/module\.version=$major.$minor.$revision/;
- $_=~s/module\.age\s*=\s*(\S+)/module\.age=$age/;
-
- printf(EXEC "$_\n");
- }
- close V;
- printf(EXEC "EOF\n\n");
- printf(EXEC "cvs commit -m \"Modified to reflect version $major.$minor.$revision-$age\" $module/project/version.properties\n\n");
-
-
- $cwd=`pwd`;
- chomp($cwd);
-
- printf(EXEC "#Register the new tag\ncd $module\ncvs tag \"$tag\"\n");
- foreach $m (@modules) {
- printf (EXEC "cd \"$cwd/$m\"\ncvs tag \"$tag\"\n");
- }
- printf(EXEC "cd \"$cwd\"\n");
-
-
-
- # **********************************
- # Etics configuration prepare / modify / upload
- # **********************************
-
-# $currentconfig="$module_$module" . "_R_$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
-# $currentconfig=~s/^org.//;
-# $currentconfig=~s/\./-/g;
- $newconfig="$module_$module" . "_R_$major" . "_$minor" . "_$revision" . "_$age";
- $newconfig=~s/^org.//;
- $newconfig=~s/\./-/g;
- if ( $project eq "emi" ) { $newconfig=~s/^glite/emi/; }
-
- $moduleName=$module;
- if ( $project eq "emi" ) { $moduleName=~s/^org.glite/emi/; }
-
- printf("\nNew configuration:\t$newconfig\n\nPreparing...\n");
-
- open NEWCONF, ">", "$TMPDIR/$newconfig.ini.$$" or die $!;
-
- printf (NEWCONF "[Configuration-$newconfig]\nprofile = None\nmoduleName = $moduleName\ndisplayName = $newconfig\ndescription = None\nprojectName = $project\nage = $age\ntag = $tag\nversion = $major.$minor.$revision\npath = None\n\n");
-
- if ( $project eq "emi" ) { printf (NEWCONF "[Platform-default:Property]\n\n"); }
-
-# printf (NEWCONF "[Platform-default:VcsCommand]\ndisplayName = None\ndescription = HEAD CVS commands\ntag = cvs -d \${vcsroot} tag -R \${tag} \${moduleName}\nbranch = None\ncommit = None\ncheckout = cvs -d \${vcsroot} co -r \${tag} \${moduleName}\n\n");
-
-# printf (NEWCONF "[Platform-default:Environment]\nHOME = \${workspaceDir}");
-
- printf (NEWCONF "\n\n[Hierarchy]\n");
-
- foreach $m (@modules) {
- open MOD, "$m/project/version.properties" or die "$m/project/version.properties: $?\n";
-
- $m_major=0; $m_minor=0; $m_revision=0; $m_age=0;
-
- while ($_ = <MOD>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $m_major=$1;
- $m_minor=$2;
- $m_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $m_age=$1;
- }
- }
-
- $modconfig="$m_$m" . "_R_$m_major" . "_$m_minor" . "_$m_revision" . "_$m_age";
- $modconfig=~s/^org.//;
- $modconfig=~s/\./-/g;
- if ( $project eq "emi" ) {
- $modconfig=~s/^glite/emi/;
- $m=~s/^org.glite/emi/;
- }
-
-# system("echo $m = $modconfig >> $TMPDIR/$newconfig.ini.$$");
- printf(NEWCONF "$m = $modconfig\n");
-
- close (MOD);
- }
-
- close(NEWCONF);
-
- printf(EXEC "\n#Add new configuration\netics-configuration add -i $TMPDIR/$newconfig.ini.$$\n");
- printf(EXEC "etics-commit\n");
-
-
- # **********************************
- # Final bows
- # **********************************
-
- close(EXEC);
-
- system("chmod +x \"$TMPDIR/tag-with-subsystems-$module.$major.$minor.$revision-$age.sh\"");
-
- printf("\n\n---------\nDone!\n\nExecution script written in:\t$TMPDIR/tag-with-subsystems-$module.$major.$minor.$revision-$age.sh\nNew configuration written in:\t$TMPDIR/$newconfig.ini.$$\n\n");
-
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-
-$TMPDIR=$ENV{'TMPDIR'};
-$GLITE_LB_LOCATION="./org.glite.lb";
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-getopts('i:c:m:p:gh');
-
-$module = shift;
-
-$usage = qq{
-usage: $0 [-i maj|min|rev|age|none|<sigle_word_age>] [-g] [-c <current configuration> ] module.name
-
- -i What to increment ('maj'or version, 'min'or version, 'rev'ision, 'age')
- Should you fail to specify the -i option the script will open up a cvs diff
- output and ask you to specify what to increment interactively.
- 'none' means no change -- this basically just generates a configuration.
- -g Generate old configuration for comparison
- -c Use this configuration (\d+\.\d+\.\d+-\S+) rather than parsing version.properties
- -m Use this as a CVS commit message instead of the script's default.
- -p Specify project ("org.glite" / "emi"). Default: autodetect.
- -h Display this help
-
-};
-
- # **********************************
- # Interpret cmdline options
- # **********************************
-
- if (defined $opt_h) {die $usage};
- die $usage unless $module;
-
- #Clean possible trailing '/' (even multiple occurrences :-) from module name
- $module=~s/\/+$//;
-
- switch ($opt_i) {
- case "maj" {$increment="j"}
- case "min" {$increment="i"}
- case "rev" {$increment="r"}
- case "age" {$increment="a"}
- case "none" {$increment="n"}
- else {$increment=$opt_i};
- }
-
-
- if (defined $opt_c) {
-
- # **********************************
- # Parse the tag supplied by the user
- # **********************************
-
- if ($opt_c=~/(\d+)\.(\d+)\.(\d+)-(\S+?)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- $current_age=$4;
- }
- else {die ("tag not stated properly")};
-
- }
- else {
-
- # **********************************
- # Determine the most recent tag and its components from version.properties
- # **********************************
-
- open VP, "$module/project/version.properties" or die "$module/project/version.properties: $?\n";
-
- while ($_ = <VP>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $current_age=$1;
- }
- }
- close (VP);
-
- $current_prefix=$module;
- $current_prefix=~s/^org\.//;
- $current_prefix=~s/\./-/g;
- $current_prefix="$current_prefix" . "_R_";
- $current_tag="$current_prefix" . "$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
- }
-
- if (defined $opt_p) {
- $project=$opt_p;
- if (($project ne "emi")&&($project ne "org.glite")) {die "Only projects \"emi\" or \"org.glite\" are recognized";}
- }
- else {
- system("etics-list-configuration > $TMPDIR/etics-tag-proj_configs.$$.tmp");
-
- if ( !system("grep -x \"org.glite.HEAD\" $TMPDIR/etics-tag-proj_configs.$$.tmp > /dev/null") ) { $project = "org.glite"; }
- else {
- if ( !system("grep -x \"emi.HEAD\" $TMPDIR/etics-tag-proj_configs.$$.tmp > /dev/null") ) { $project = "emi"; }
- else { die "Unable to autodetect project. Run from workspace root or specify by -p" }
- }
-
- system("rm $TMPDIR/etics-tag-proj_configs.$$.tmp");
- }
-
- if ($project eq "emi") { $proj_opt = " --project=emi"; }
- else { $proj_opt = "--project=glite"; }
-
- # According to the documentation, symbolic names in the 'cvs log' output are sorted by age so this should be OK
- #$current_tag=`cvs log -h $module/Makefile | grep \"_R_\" | head -n 1`;
- #$current_tag=~s/^\s//;
- #$current_tag=~s/:.*?$//;
- #chomp($current_tag);
-
- #$current_tag=~/(.*_R_)(\d*?)_(\d*?)_(\d*?)_(.*)/;
- #$current_prefix=$1;
- #$current_major=$2;
- #$current_minor=$3;
- #$current_revision=$4;
- #$current_age=$5;
-
- printf("Current tag: $current_tag\n\tprefix: $current_prefix\n\t major: $current_major\n\t minor: $current_minor\n\t rev: $current_revision\n\t age: $current_age\n");
-
- # **********************************
- # Compare the last tag with the current source
- # **********************************
-
- unless (defined $increment) {
- printf("Diffing...\n");
-
- system("cvs diff -r $current_tag $module | less");
- }
-
- # **********************************
- # Generate the new tag name
- # **********************************
-
- printf("\nWhich component do you wish to increment?\n\n\t'j'\tmaJor\n\t'i'\tmInor\n\t'r'\tRevision\n\t'a'\tAge\n\t\'n'\tNo change\n\tfree type\tUse what I have typed (single word) as a new age name (original: $current_age)\n\nType in your choice: ");
-
- unless (defined $increment) {
- $increment=<STDIN>;
- }
-
- chomp($increment);
-
- switch ($increment) {
- case "j" {
- $major=$current_major+1;
- $minor=0;
- $revision=0;
- $age=1;}
- case "i" {
- $major=$current_major;
- $minor=$current_minor+1;
- $revision=0;
- $age=1;}
- case "r" {
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision+1;
- $age=1;}
- case "a" {
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision;
- $age=$current_age+1;}
- case "n" {
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision;
- $age=$current_age;}
- else {
- $major=$current_major;
- $minor=$current_minor;
- $revision=$current_revision;
- $age=$increment;}
- }
- $tag="$current_prefix" . "$major" . "_$minor" . "_$revision" . "_$age";
-
- printf("\nNew tag: $tag\n\n");
-
- die "This tag already exists; reported by assertion" unless (($increment eq 'n') || system("cvs log -h $module/Makefile | grep \"$tag\""));
-
- # **********************************
- # Create the execution script
- # **********************************
-
- open EXEC, ">", "$TMPDIR/etics-tag-$module.$major.$minor.$revision-$age.sh" or die $!;
-
- printf (EXEC "#This script registers tags for the $module module, version $major.$minor.$revision-$age\n#Generated automatically by $0\n\n");
-
-
- # **********************************
- # Update the ChangeLog
- # **********************************
-
- if (-r "$module/project/ChangeLog") { # ChangeLog exists (where expected). Proceed.
-
- $tmpChangeLog="$TMPDIR/$module.ChangeLog.$$";
- if ( $project eq "emi" ) { $tmpChangeLog=~s/org\.glite/emi/; }
-
- system("cp $module/project/ChangeLog $tmpChangeLog");
-
-
- unless ($increment eq "n") {system("echo $major.$minor.$revision-$age >> $tmpChangeLog");
-
- $editline=`cat $tmpChangeLog | wc -l`;
- chomp($editline);
-
- if ($increment eq "a") {system("echo \"- Module rebuilt\" >> $tmpChangeLog"); system("echo \"\" >> $tmpChangeLog");}
- else { system("cvs log -S -N -r" . "$current_tag" . ":: $module | egrep -v \"^locks:|^access list:|^keyword substitution:|^total revisions:|^branch:|^description:|^head:|^RCS file:|^date:|^---|^===|^revision \" >> $tmpChangeLog"); }
-
- $ChangeLogRet=system("vim +$editline -c \"norm z.\" $tmpChangeLog");
- }
- printf("Modified ChangeLog ready, ret code: $ChangeLogRet\n");
-
- printf(EXEC "#Update the ChangeLog\ncp $tmpChangeLog $module/project/ChangeLog\n\n");
- }
-
- unless ($increment eq "n") {
- # **********************************
- # Update version.properties
- # **********************************
- open V, "$module/project/version.properties" or die "$module/project/version.properties: $?\n";
-
- printf(EXEC "#Generate new version.properties\ncat >$module/project/version.properties <<EOF\n");
- while ($_ = <V>) {
- chomp;
-
- $_=~s/module\.version\s*=\s*[.0-9]+/module\.version=$major.$minor.$revision/;
- $_=~s/module\.age\s*=\s*(\S+)/module\.age=$age/;
-
- $_=~s/\$/\\\$/g;
- printf(EXEC "$_\n");
- }
- close V;
- printf(EXEC "EOF\n\n");
-
- }
-
-
- # **********************************
- # Update configure
- # **********************************
-
- printf(EXEC "#Update the \"configure\" script\ncp $GLITE_LB_LOCATION/configure $module/\n\n");
-
- # **********************************
- # Commit changes
- # **********************************
-
- if (defined $opt_m) {$commit_message=$opt_m;}
- else {$commit_message="Updating version, ChangeLog and copying the most recent configure from $GLITE_LB_LOCATION for v. $major.$minor.$revision-$age";}
-
-
- printf(EXEC "#Commit changes\ncvs commit -m \"$commit_message\" $module/project/ChangeLog $module/project/version.properties $module/configure\n\n");
-
-
- unless ($increment eq "n") {
- # **********************************
- # Run CVS Tag
- # **********************************
-
- $cwd=`pwd`;
- chomp($cwd);
-
- printf(EXEC "#Register the new tag\ncd $module\ncvs tag \"$tag\"\ncd \"$cwd\"\n");
- }
-
- # **********************************
- # Etics configuration prepare / modify / upload
- # **********************************
-
- $currentconfig="$module_$module" . "_R_$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
- $currentconfig=~s/^org.//;
- $currentconfig=~s/\./-/g;
- $newconfig="$module_$module" . "_R_$major" . "_$minor" . "_$revision" . "_$age";
- $newconfig=~s/^org.//;
- $newconfig=~s/\./-/g;
- if ( $project eq "emi" ) { $newconfig=~s/^glite/emi/; }
-
-
- $module=~/([^\.]+?)\.([^\.]+?)$/;
- $subsysname=$1;
- $modulename=$2;
-
- printf("Project=$project\nModule=$module\nname=$modulename\nsubsys=$subsysname\n");
- system("$GLITE_LB_LOCATION/configure --mode=etics --module $subsysname.$modulename --output $TMPDIR/$newconfig.ini.$$ --version $major.$minor.$revision-$age $proj_opt");
-
-# printf("\nCurrent configuration:\t$currentconfig\nNew configuration:\t$newconfig\n\nPreparing...\n");
-#
- if (defined $opt_g) {
- system("etics-configuration prepare -o $TMPDIR/$currentconfig.ini.$$ -c $currentconfig $module");
- }
-
-# open OLDCONF, "$TMPDIR/$currentconfig.ini.$$" or die $!;
-# open NEWCONF, ">", "$TMPDIR/$newconfig.ini.$$" or die $!;
-
-# while ($_ = <OLDCONF>) {
-# chomp;
-
-## $_=~s/module\.age\s*=\s*(\S+)/module\.age=$age/;
-# $_=~s/$currentconfig/$newconfig/;
-# $_=~s/^\s*version\s*=\s*[.0-9]+/version = $major.$minor.$revision/;
-# $_=~s/^\s*age\s*=\s*\S+/age = $age/;
-
-# printf(NEWCONF "$_\n");
-# }
-
-# close(OLDCONF);
-# close(NEWCONF);
-
- if ($increment eq "n") { # There was no version change and the configuration should already exist
- printf(EXEC "\n#Modify new configuration\netics-configuration modify -i $TMPDIR/$newconfig.ini.$$\n"); }
- else { # New configuration needs to be created
- printf(EXEC "\n#Add new configuration\netics-configuration add -i $TMPDIR/$newconfig.ini.$$\n"); }
- printf(EXEC "etics-commit\n");
-
-
- # **********************************
- # Final bows
- # **********************************
-
- close(EXEC);
-
- system("chmod +x \"$TMPDIR/etics-tag-$module.$major.$minor.$revision-$age.sh\"");
-
- printf("\n\n---------\nDone!\n\nExecution script written in:\t$TMPDIR/etics-tag-$module.$major.$minor.$revision-$age.sh\nChangeLog candidate written in:\t$tmpChangeLog\n");
- printf("Old configuration stored in:\t$TMPDIR/$currentconfig.ini.$$\n") if (defined $opt_g);
- printf("New configuration written in:\t$TMPDIR/$newconfig.ini.$$\n\n");
-
+++ /dev/null
-#!/usr/bin/perl
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-use Getopt::Std;
-use Switch;
-
-$TMPDIR=$ENV{'TMPDIR'};
-
-if ($TMPDIR eq "") {$TMPDIR="/tmp";}
-
-
-
-$usage = qq{
-usage: $0 [-p] -a|module.name [module.name ...]|-c configuration [configuration ...]
-
- -h Display this help
- -p Single line output for Etics web interface
- -a Process all subdirectories in . rather than getting lists
- -c Download subsystem configurations from Etics and parse hierarchy
-
-};
-
-if ($#ARGV < 0) {die $usage};
-
-getopts('phac');
-
-if (defined $opt_h) {die $usage};
-if (defined $opt_p) {
- $eq_separator = "=";
- $pair_separator_back = " ";
- $pair_separator_front = "-p "; }
-else {
- $eq_separator = " = ";
- $pair_separator_back = "\n";
- $pair_separator_front = ""; }
-
-sub GetDefault {
- # **********************************
- # Determine the most recent tag and its components from version.properties
- # **********************************
- my($mname) = @_;
-
- unless (open VP, "$mname/project/version.properties") {
- unless (defined $opt_a) { die "$mname/project/version.properties: $?\n"; }
- else { return 1; }
- }
-
- while ($_ = <VP>) {
- chomp;
-
- if(/module\.version\s*=\s*(\d*)\.(\d*)\.(\d*)/) {
- $current_major=$1;
- $current_minor=$2;
- $current_revision=$3;
- }
- if(/module\.age\s*=\s*(\S+)/) {
- $current_age=$1;
- }
- }
- close (VP);
-
- $current_prefix=$mname;
- $current_prefix=~s/^org\.//;
- $current_prefix=~s/\./-/g;
- $current_prefix="$current_prefix" . "_R_";
- $current_tag="$current_prefix" . "$current_major" . "_$current_minor" . "_$current_revision" . "_$current_age";
-
- printf "$pair_separator_front$mname.DEFAULT$eq_separator$current_tag$pair_separator_back";
-
-}
-
-if (defined $opt_a) { # All subdirectories
- opendir(LOCAL, ".");
- @contents = readdir(LOCAL);
- closedir(LOCAL);
-
- foreach $f (@contents) {
- unless ( ($f eq ".") || ($f eq "..") ) {
- if (-d $f) {
- GetDefault ($f);
- }
- }
- }
-}
-else {
-if (defined $opt_c) { # Configurations
- my $output = "";
- while ($subsys = shift) {
- $module = $subsys;
- $module =~ s/_[a-zA-Z]*_.*//;
- $module =~ s/^glite-/org.glite\./;
- $module =~ s/^gridsite-/org.gridsite\./;
- $module =~ s/^emi-/emi\./;
- system("etics-configuration prepare -o $TMPDIR/subsys.INI.$$.tmp -c $subsys $module");
- open FILE, "$TMPDIR/subsys.INI.$$.tmp" or die $!;
- $hierarchy = 0;
- while (my $line = <FILE>) {
- if ($line =~ /^\[Hierarchy\]/) { $hierarchy = 1; }
- else {
- if ($line =~ /^\[.*\]/) { $hierarchy = 0; }
- else {
- if ($hierarchy eq 1) {
- $line =~ /^(\S*)\s*=\s*(\S*)$/;
- unless ($1 eq "") {
- $output = $output . "$pair_separator_front$1.DEFAULT$eq_separator$2$pair_separator_back";
- }
- }
- }
- }
- }
- close FILE,
- system("rm -f $TMPDIR/subsys.INI.$$.tmp");
- }
- print $output;
-}
-else {
-# Listed subsystems
- while ($module = shift) {
- chomp($module);
- #Clean possible trailing '/' (even multiple occurrences :-) from module name
- $module=~s/\/+$//;
-
- $module=~/\.([^\.]+?)$/;
-
- @modules=split(/\s+/, `PATH=\$PATH:./:./org.glite.lb configure --listmodules $1`);
-
- foreach $m (@modules) {
- GetDefault ($m);
- }
- }
-} }
-
-if (defined $opt_p) { printf "\n"; }
+++ /dev/null
-#!/bin/sh
-#
-# Copyright (c) Members of the EGEE Collaboration. 2004-2010.
-# See http://www.eu-egee.org/partners for details on the copyright holders.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-
-set -e
-
-#OFFLINE=true
-TOPDIR=${PWD}
-
-export LB4VDTDIR=${TOPDIR}/org.glite.lb/lb4vdt
-export STAGEDIR=${TOPDIR}/stage
-mkdir -p ${STAGEDIR}
-
-if [ ! -f ${LB4VDTDIR}/Makefile.inc ]; then
- echo "Error: There is no ${LB4VDTDIR}/Makefile.inc. Exiting."
- exit 1
-fi
-
-if [ -z "${CVSROOT}" ]; then
- export CVSROOT=:pserver:anonymous@jra1mw.cvs.cern.ch:/cvs/jra1mw
-# export CVSROOT=:ext:jpospi@jra1mw.cvs.cern.ch:/cvs/jra1mw
- echo "Using CVSROOT=${CVSROOT}"
-fi
-
-dep_modules="org.glite.wms-utils.jobid
-org.gridsite.core"
-
-modules="org.glite.security.gsoap-plugin
-org.glite.lb.client-interface
-org.glite.lb.common
-org.glite.lb.client
-org.glite.lb.logger
-org.glite.lb.ws-interface
-org.glite.lb.server-bones
-org.glite.lb.server
-org.glite.lb.proxy"
-#org.glite.lb.utils
-
-for i in $dep_modules;
-do
- echo "*********************************************************"
- echo "* Module $i"
- echo "*********************************************************"
- cd ${TOPDIR}
- if [ -n "${OFFLINE}" ]; then
- echo "Working offline"
- else
- echo "Getting sources from CVS"
- cvs co -A $i;
- fi
- if [ -d $i -a -f ${LB4VDTDIR}/patches/$i.patch -a ! -f .$i.patched ]; then
- echo "Patching $i"
- patch -p0 < ${LB4VDTDIR}/patches/$i.patch
- touch .$i.patched
- fi
- if [ -d $i ]; then
- touch .$i.timestamp
- if [ -f ${LB4VDTDIR}/scripts/$i.build ]; then
- echo "Building"
- sh -x ${LB4VDTDIR}/scripts/$i.build
- fi
- cd ${TOPDIR}
- find ${STAGEDIR} -newer .$i.timestamp > .$i.filelist
- else
- echo "WARNING: directory $i not found"
- fi
-done
-
-for i in $modules;
-do
- echo "*********************************************************"
- echo "* Module $i"
- echo "*********************************************************"
- cd ${TOPDIR}
- if [ -n "${OFFLINE}" ]; then
- echo "Working offline"
- else
- echo "Getting sources from CVS"
- cvs co -A $i;
- fi
- if [ -d $i -a -f ${LB4VDTDIR}/patches/$i.patch -a ! -f .$i.patched ]; then
- echo "Patching $i"
- patch -p0 < ${LB4VDTDIR}/patches/$i.patch
- touch .$i.patched
- fi
- if [ -d $i ]; then
- touch .$i.timestamp
- echo "Entering directory ${TOPDIR}/$i"
- cd ${TOPDIR}/$i
- echo "Copying supporting files"
- cp -rv ${TOPDIR}/org.glite.lb/project/{at3,*.T,*.pm} ./project/
- mkdir -p build
- echo "Entering directory ${TOPDIR}/$i/build"
- cd build
- ln -fsv ../Makefile
-# ln -fsv ../../Makefile.inc Makefile.inc
- ln -fsv ${LB4VDTDIR}/Makefile.inc
- echo "Building"
- make LB_STANDALONE=yes
- make stage LB_STANDALONE=yes
- cd ${TOPDIR}
- find ${STAGEDIR} -newer .$i.timestamp > .$i.filelist
- else
- echo "WARNING: directory $i not found"
- fi
- echo "Done"
-done
-
-cd ${TOPDIR}
-echo "Creating filelists"
-cat .org.glite.wms-utils.jobid.filelist .org.gridsite.core.filelist .org.glite.security.gsoap-plugin.filelist .org.glite.lb.common.filelist | sort | uniq > LB-common.filelist
-cat .org.glite.lb.client-interface.filelist .org.glite.lb.client.filelist | sort | uniq > LB-client.filelist
-cat .org.glite.lb.logger.filelist | sort | uniq > LB-logger.filelist
-cat .org.glite.lb.logger.filelist .org.glite.lb.server-bones.filelist .org.glite.lb.proxy.filelist | sort | uniq > LB-proxy.filelist
-cat .org.glite.lb.ws-interface.filelist .org.glite.lb.server-bones.filelist .org.glite.lb.server.filelist | sort | uniq > LB-server.filelist
+++ /dev/null
-#
-# common setting
-#
-
-#vdt_location=/home/honik/egee/vdt-1.5.0
-vdt_location=${VDT_LOCATION}
-
-# missing packages could be for example downloaded to repository from
-# http://eticssoft.web.cern.ch/eticssoft/repository/externals
-
-repository=/home/honik/egee/repository/externals/
-platform=slc3_ia32_gcc323
-
-
-#
-# external dependencies that are already part of VDT (vdt-1.5.0):
-#
-
-#classads_prefix=${repository}/classads/0.9.8/${platform}
-classads_prefix=${vdt_location}/classads
-
-#globus_prefix=${repository}/globus/2.4.3-VDT-1.2.5/${platform}
-globus_prefix=${vdt_location}/globus
-
-#expat_prefix=/usr
-expat_prefix=${vdt_location}/expat
-
-#mysql_prefix=${repository}/mysql-devel/4.1.11/${platform}
-mysql_prefix=${vdt_location}/mysql
-mysql_version=4.1.21
-
-voms_prefix=${vdt_location}/glite
-#voms_prefix=/home/honik/egee/glite/stage
-
-
-#
-# external dependencies that are NOT (yet) part of VDT (vdt-1.5.0):
-#
-
-#cares_prefix=${repository}/c-ares/1.3.0/${platform}
-cares_prefix=/software/cares-1.3
-
-# probably not needed (used "only" for unit tests - 'make check'):
-#cppunit_prefix=${repository}/cppunit/1.10.2/${platform}
-cppunit_prefix=/software/cppunit-1.10.2
-
-# probably not needed:
-#gridsite_prefix=${stagedir}
-
-gsoap_default_version=2.7.6b
-gsoap_versions=${gsoap_default_version}
-#gsoap_prefix=${repository}/gsoap/${gsoap_default_version}/${platform}
-gsoap_prefix=/software/gsoap-${gsoap_default_version}
-
-
-#
-# some other defaults:
-#
-
-#PREFIX=${vdt_location}/glite
-PREFIX=/tmp/lb4vdt
-globalprefix=glite
-lbprefix=lb
-
-builddir=build
-distdir=${STAGEDIR}/../dist
-stagedir=${STAGEDIR}
-top_srcdir=..
-
-#thrflavour=gcc64dbgpthr
-#nothrflavour=gcc64dbg
-thrflavour=gcc32dbgpthr
-nothrflavour=gcc32dbg
-
-# needed by org.glite.lb.client:
-glite_location=${stagedir}
-
+++ /dev/null
-#!/bin/sh
-
-set -e
-
-TOPDIR=${PWD}
-source ${LB4VDTDIR}/Makefile.inc
-cd org.gridsite.core/src
-make build-lib OPENSSL_FLAGS=-I${globus_prefix}/include/${nothrflavour} OPENSSL_LIBS=-L${globus_prefix}/lib FLAVOR_EXT=_${nothrflavour}
-make install-lib prefix=${STAGEDIR}
-cd ${TOPDIR}
-
+++ /dev/null
-gLite Logging and Bookkeeping (LB) is a Grid service that keeps a short-term trace of Grid jobs as they are processed by individual Grid components.
+++ /dev/null
-gLite Logging and Bookkeeping
+++ /dev/null
-# : /cvs/glite/org.glite.lb/project/version.properties,v 1.164 2008/01/09 15:35:55 mmulac Exp $
-module.version=3.0.10
-module.age=1