OK so no one has used ruby to drive clearcase... might have to be a pet project to create a gem for this; gem's gem. heh
Now my problem is a very simple one and I don't seem to be typing the right things into google or looking up the right things in anvil to find it so I thought I could ask you guys for some ideas...
Problem:
I want to parse the STDIN generated when I do a clearcase update and for every line that contains:
Loading "path_to_a_file.txt" (0 bytes)
What I want to get from this line is the filename (stuff in the quotes) so I can send it to a method to be zipped. Initially before I try to zip the file it would be nice to do some debugging by printing the filenames into a text file. This is what I have so far:
def updateView
Dir.chdir("f:")
Dir.chdir(getPathToView)
system("cleartool update -rename #{getPathToView}") if viewCreated?
parseOutput
print "\nUpdated #{getPathToView}\n"
end
def parseOutput
$stdin.each { |line|
if line =~ [^Loading]
file = line.match(/".*"/)
zipUp(file)
puts "matched!"
end
}
end
def zipUp(file)
Zip::ZipFile::open("updated.zip", true) { |zf|
zf.add(file, file)
}
end
Ta in anticipation of the flood of help/abuse to ensue, ( ;
Gem
Regards
Gemma Cameron
···
-----Original Message-----
From: Cameron, Gemma (UK)
Sent: 22 August 2006 10:09
To: ruby-talk ML
Subject: Ruby and ClearCase...
*** WARNING ***
This mail has originated outside your organization,
either from an external partner or the Global Internet.
Keep this in mind if you answer this message.
Hi Guys,
Has anyone used Ruby (or Rake) to interface with cleartool or Rational ClearCase? I googled the problem and found the following project at rubyforge which looks promising... or at least would be if there were any released files (or am I missing reference to a gem somewhere?)
http://rubyforge.org/projects/basketcase/
What I'm wanting to do is to parse the output from cleartool after I've updated a snapshot in order to zip up the new files it's loaded (seeing as ClearCase insists on retaining the entire directory structure when you load folders - I'm used to svn...).
If not are there any suggestions as to how I could go about this or should I just use ruby as a means to sending commands to the shell (system "cleartool -mkview...") followed by somesort of STDIN/OUT? I'm on Windows NT4 and ClearCase 3.2 by the way...
Thanks in advance!
Gem
Regards
Gemma Cameron
********************************************************************
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
********************************************************************