26 TB.
checkFile(gSystem->Getenv(
"CWB_ROOTLOGON_FILE"));
27 TB.
checkFile(gSystem->Getenv(
"CWB_PARAMETERS_FILE"));
30 if(
TString(gSystem->Getenv(
"CWB_MKDIR_OPTION")).CompareTo(
"batch")==0) cwb_mkdir_batch=
true;
32 if(gSystem->Getenv(
"CWB_MKDIR_WRKDIR")!=NULL) {
36 cwb_mkdir_wrkdir=
TString(gSystem->Getenv(
"CWB_MKDIR_WRKDIR"));
37 if(cwb_mkdir_wrkdir!=
"") {
39 if(cwb_mkdir_wrkdir[cwb_mkdir_wrkdir.Sizeof()-2]==
'/') {
40 cwb_mkdir_wrkdir.Resize(cwb_mkdir_wrkdir.Sizeof()-2);
46 if(cwb_mkdir_wrkdir.Contains(
".M")) {
47 cout <<
"cwb_mkdir - Error : working directory name is not a valid name ..." << endl;
48 cout <<
"\"" << cwb_mkdir_wrkdir <<
"\"" << endl;
49 cout <<
"'.M' can not be used : it is used to label the merge data" << endl;
50 cout <<
"cwb_mkdir aborted" << endl << endl;
53 if(cwb_mkdir_wrkdir.Contains(
".V")) {
54 cout <<
"cwb_mkdir - Error : working directory name is not a valid name ..." << endl;
55 cout <<
"\"" << cwb_mkdir_wrkdir <<
"\"" << endl;
56 cout <<
"'.V' can not be used : it is used to label the vetoed data" << endl;
57 cout <<
"cwb_mkdir aborted" << endl << endl;
60 if(cwb_mkdir_wrkdir.Contains(
".C")) {
61 cout <<
"cwb_mkdir - Error : working directory name is not a valid name ..." << endl;
62 cout <<
"\"" << cwb_mkdir_wrkdir <<
"\"" << endl;
63 cout <<
"'.C' can not be used : it is used to label the cutted data" << endl;
64 cout <<
"cwb_mkdir aborted" << endl << endl;
70 if(gSystem->Getenv(
"SITE_CLUSTER")!=NULL) {
71 site_cluster =
TString(gSystem->Getenv(
"SITE_CLUSTER"));
78 if(cwb_mkdir_wrkdir!=
"") {
79 dir_name[nDIR++] = cwb_mkdir_wrkdir;
82 if(!overwrite) {cout <<
"cwb_mkdir aborted" << endl << endl; gSystem->Exit(1);}
92 #ifdef SYMBOLIC_CONDOR_LOG_DIR 93 if(site_cluster==
"ATLAS") {
96 if(cwb_mkdir_wrkdir!=
"") {
102 int estat = gSystem->GetPathInfo(dir_name[nDIR-1].Data(),&
id,&size,&
flags,&mt);
105 cout <<
"cwb_mkdir - Error : condor log directory ..." << endl;
106 cout <<
"\"" << dir_name[nDIR-1] <<
"\"" << endl;
107 cout <<
"already exist, select a unique name for the working directory" << endl;
108 cout <<
"cwb_mkdir aborted" << endl << endl;
120 dir_name[nDIR++] =
pp_dir;
129 bool overwrite=TB.
checkFile(dir_name[nDIR],
true,
"www report directory must be unique !!!");
130 if(!overwrite) {cout <<
"cwb_mkdir aborted" << endl << endl; gSystem->Exit(1);}
149 if(dir_name[
i]==
"")
continue;
151 sprintf(ldir,
"%s",dir_name[
i].Data());
157 int estat = gSystem->GetPathInfo(ldir,&
id,&size,&flags,&mt);
163 cout <<
"dir \"" << ldir <<
"\" already exist" << endl;
164 cout <<
"Do you want to remove the files ? (y/n) ";
165 if(cwb_mkdir_batch)
strcpy(answer,
"y");
else cin >>
answer;
167 }
while ((strcmp(answer,
"y")!=0)&&(strcmp(answer,
"n")!=0));
168 if (strcmp(answer,
"y")==0) {
169 sprintf(cmd,
"mkdir -p %s",ldir);
174 sprintf(cmd,
"mkdir -p %s",ldir);
183 if(
i==0 && cwb_mkdir_wrkdir!=
"") gSystem->ChangeDirectory(cwb_mkdir_wrkdir.Data());
186 #ifdef SYMBOLIC_CONDOR_LOG_DIR 187 if(site_cluster==
"ATLAS") {
190 if(cwb_mkdir_wrkdir!=
"") {
192 gSystem->BaseName(cwb_mkdir_wrkdir),
log_dir);
202 sprintf(cmd,
"ln -sf %s rootlogon.C",cwb_rootlogon_file.Data());
207 sprintf(cmd,
"ln -sf %s/README.cwb",cwb_dir_name.Data());
213 if(gSystem->Getenv(
"_USE_PEGASUS")!=NULL) {
220 sprintf(cmd,
"ln -sf %s/cwb_loudest.sh %s/loudest.sh",cwb_scripts.Data(),
condor_dir);
238 sprintf(www_label,
"%s",((TObjString*)token->At(token->GetEntries()-1))->GetString().Data());
239 if(cwb_mkdir_wrkdir!=
"") {
240 TObjArray* token2 =
TString(cwb_mkdir_wrkdir).Tokenize(
TString(
"/"));
241 sprintf(www_label,
"%s",((TObjString*)token2->At(token2->GetEntries()-1))->GetString().Data());
244 TString cwb_dir = cwb_mkdir_wrkdir.BeginsWith(
"/") ? cwb_mkdir_wrkdir :
TString(
work_dir)+
"/"+cwb_mkdir_wrkdir;
sprintf(cmd,"ln -sf %s rootlogon.C", cwb_rootlogon_file.Data())
TString cwb_rootlogon_file
strcpy(RunLabel, RUN_LABEL)