How to remove/rename file in clearcase with CM API? - clearcase

How to remove/rename file in clearcase with CM API?
I can't find any useful methods under CcFile or CcDirectory... any help appreciated

CM Api means ClearCase 8.x or more.
The ClearCase CM server API extends the WVCM (Workspace Versioning and Configuration Management) API, which is a standard Java API for configuration management.
Only CC 8.0.1.6 supports dynamic and snapshot views.
Considering cleartool mv is also available for rcleartool, using that would be easier than the CM API.
However, as noted by Brian Cowan in the comments:
The CM API is actually able to perform checkouts, mkelems, etc.
rcleartool and CTE actually use CM API, with rcleartool being the more "pure" CM API application.
So, in 90% of usecases, if rcleartool can do it, a CM API application should too.

Related

TinyVirtuoso: where is the documentation?

I found this NuGet package interesting: a embedded rdf database in C# based on OpenLink Virtuoso, with MIT licensing...
But, when I tried to find any instruction about usage, or the API reference, I couldn't find it...
I installed TinyVirtuoso.win v 7.2.1 from NuGet ...
Why doesn't the sample code in "First Steps" work?
It does not recognize VirtuosoConnection() nor IStore
using Semiodesk.TinyVirtuoso;
using Semiodesk.VirtuosoInstrumentation;
// Create a new Virtuoso store in a directory named 'Data', located in your app folder.
var virtuoso = new TinyVirtuoso("Data");
// You can have multiple separate database instances which contain different data.
// This will create a directory "Data/ExampleProject" in your app directory.
var instance = virtuoso.GetOrCreateInstance("ExampleProject");
// Start the embedded database server instance.
instance.Start();
// a) You can access the store using the Semiodesk Trinity graph database API.
// Please refer to our Trinity documentation and examples for more information.
IStore store = StoreFactory.CreateStore(instance.GetTrinityConnectionString());
// b) Alternatively, you can use it with plain ADO.Net to use the relational
// database features and SQL (make sure to install OpenLink.Data.Virtuoso).
var connection = new VirtuosoConnection();
connection.ConnectionString = instance.GetAdoNetConnectionString();
connection.Connect();
// When you are done, stop the embedded database server instance.
instance.Stop();
Looking it over quickly, I think TinyVirtuoso is not an "embedded RDF database in C#" (which is not surprising, as that would require portation of the entire C-based VOS (Virtuoso Open Source) project). Note that their wiki says —
TinyVirtuoso does not link against OpenLink Virtuoso in any way. It just provides a way to start, stop and configure the software.
Elsewhere in that wiki, they say they depend on the Open Source Virtuoso project, but it's not clear whether they fully install Virtuoso, just install the ADO.NET client library, or somewhere in between.
I did notice this advice --
The software is supported by Semiodesk. If you have any questions, suggestions or just want to tell us in which projects you are using the library, don't hesitate to hello#semiodesk.com.
-- which led me to a somewhat more informative (and I think more recently updated) page on Semiodesk's website, which suggests that they do indeed intend bundling the main Virtuoso binary, among other things, which I don't think you've installed yet.
Documentation of Virtuoso itself, and its ADO.NET Provider (both Installation/Configuration and Programming/API), are found on the OpenLink website.
I hope this is helpful...

Simple deployment from ClearCase on Unix

I have recently joined a team that has several applications that perform workload automation. They use ClearCase for version control but the development and test environments are (I surmise due to a lack of ClearCase expertise within the team) not checked out/deployed out of ClearCase but simply FTP-ed to respective Unix servers from Window. I said "simple deployment" because all the code is interpreted (Perl and shell) so no need to compile. Needless to say, many things are wrong with this approach, most specifically the lack of version management in these environments from the point of deployment onward.
So I would like to bind our deployments to the repository and start controlling changes but I am only a ClearCase novice. My specific question is: what is it that I deploy, a VIEW or a STREAM? I would say the latter cause views are user-specific while (according to my understanding) a stream is a project trunk off of each view is like a branch and views are integrated into their stream.
If anyone has any pointers on some useful yet succint and lightweight ClearCase tutorials for an "accidental" CM liason, please share.
Alternatively, if you think this task is suitable for Jenkins, despite being relatively simple (no build/compile involved) please chime in.
Thanks in advace
You would need to use the Jenkins ClearCase UCM plugin (in combination with Jenkins ClearCase plugin) in order to start jobs based on a ClearCase Stream
Jenkins will create an UCM snapshot view based on the stream you will specify in it.
See also, for more on the stream:
"Difference between branches and streams in ClearCase?"
"Integration stream vs integration view in ClearCase"

Graph Databases: standalone with java api

I am looking into graph database systems, but most of them seem to be either embedded or accessible via html request. I am searching for a standalone server, accessible via a java api, that supports acid (and clustering), preferrably open source.
I like neo4j, but I don't want to embed my db or access it with (slow) html requests, it has to be accessible by multiple systems. If I got it all wrong and neo4j is a super choice, please provide a link or name to a suitable driver, if you know one. Thank you.
Check out InfiniteGraph. It is not open source, but there is a free version for up to 1 million nodes and edges.

how to integrate bugzilla and HP quality center?

I'm working on integrating Bugzilla with HP Qc. I'm performing this by using perl script by directly manipulating the database using sql commands. I want to use the web services of Bugzilla. I have gone through the Bugzilla webservice API but tat wasn't enough to get started. I'm a beginner and this is the first project of my career. How do I go about this?
Check out the Perl script bz_webservice_demo.pl in Bugzilla's contrib directory, it shows how to talk to Bugzilla via XMLRPC.
There are a few things you could do:
Export defects from Bugzilla into a spreadsheet and upload it into Quality Center
Use the Open Test Architecture API (OTAClient.dll) to update defects in Quality Center
Use the HP Synchronization Server and build an adapter
Using the HP Synchronizer is probably the only "real" way to do it. Though you could potentially build your own sync mechanism, potentially using just OTA and a message queue.
There may be an existing adapter available from proficom-ag based on a presentation I found via a web search

How to migrate resources from proprietary CMS?

I need to migrate our website from a proprietary CMS that uses active server pages. Is there a tool or technique that will help download the resources from the existing site? I guess I'm looking for a tool that will crawl and scrape the entire site.
An additional challenge is that the site uses SSL and is protected with forms-based authentication. I have the necessary credentials and I can grab the cookie that validates the session but I'm not sure where to go from here and I don't want to reinvent the wheel if existing tools can help me.
EDIT - I'm using Windows OS
wget may be a good tool for you to use
wget --load-cookies cookies.txt --mirror --page-requisites http://example.com/
add --convert-links if you wish to make it more suitably for a local archive, rather than something you can re-upload somewhere.
A windows version of wget is available from the gnuwin32 project on sourceforge.net
http://gnuwin32.sourceforge.net/packages/wget.htm
wget --http-user:username --http-pass:password -r http://yoursite.com
This will fetch the entire site (recursively). If you're on windows, you'll want to install cygwin or something similar to use it, though I believe there are windows versions/clones of wget that you can download.
If you know Perl, you might like WWW::Mechanize. Depends on the level of automation you are trying to achieve – wget would probably do just fine for some cases.
You have a lot of options. One thing to consider is how complex the authentication is. Besides wget, you can look at curl (a very robust option with bindings for many different languages), Python's urllib, Apache HttpClient, WWW-Mechanize, etc.

Resources