StarTeam SCM plugin

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

StarTeam SCM plugin

Ilkka Laukkanen
Hi,

Happy to be included as a Hudson contributor, I just committed the
first working version of my StarTeam SCM plugin for Hudson into CVS,
and also uploaded it to the downloads section on the project page.


--
Ilkka Laukkanen
http://ilkankuvat.blogspot.com
"And unto this, Conan;"

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: StarTeam SCM plugin

Kohsuke Kawaguchi
Administrator
2007/11/12, Ilkka Laukkanen <[hidden email]>:
> Happy to be included as a Hudson contributor, I just committed the
> first working version of my StarTeam SCM plugin for Hudson into CVS,
> and also uploaded it to the downloads section on the project page.

Cool!

It appears that you posted a version manually.

Did "Releasing to hudson.dev.java.net" on
http://hudson.gotdns.com/wiki/display/HUDSON/Plugin+tutorial not work?

That's supposed to automate the whole thing completely.

--
Kohsuke Kawaguchi

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: StarTeam SCM plugin

Ilkka Laukkanen
In reply to this post by Ilkka Laukkanen
Incidentally, I'd really appreciate a quick how-to on changelog
generation in SCM plugins, so that I might implement it in mine. I did
read the svn and cvs code, but I can't say I really got the hang of
it.

On Nov 12, 2007 10:06 PM, Ilkka Laukkanen <[hidden email]> wrote:

> Hi,
>
> Happy to be included as a Hudson contributor, I just committed the
> first working version of my StarTeam SCM plugin for Hudson into CVS,
> and also uploaded it to the downloads section on the project page.
>
>
> --
> Ilkka Laukkanen
> http://ilkankuvat.blogspot.com
> "And unto this, Conan;"
>



--
Ilkka Laukkanen
http://ilkankuvat.blogspot.com
"And unto this, Conan;"

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: StarTeam SCM plugin

Ilkka Laukkanen
In reply to this post by Kohsuke Kawaguchi
On Nov 13, 2007 8:55 AM, Kohsuke Kawaguchi <[hidden email]> wrote:
> It appears that you posted a version manually.
>
> Did "Releasing to hudson.dev.java.net" on
> http://hudson.gotdns.com/wiki/display/HUDSON/Plugin+tutorial not work?
>
> That's supposed to automate the whole thing completely.

Darn, I should've gotten a night's sleep in before, then maybe I'd've
remembered having read that bit about the release automation. I'll get
0.1.1 in using Maven later today then, just for completeness' sake.

On that subject, does the release automation transform the POM to be a
child of the plugins POM, like all the plugins in CVS seem to be? I'm
just wondering because the plugin project as created with the
tutorial's instructions is standalone, which lead to some confusion on
my part as I was committing my work. In the end I decided to change
the POM to match all the other plugins.

I also created a very quick and dirty wiki page[1] for the plugin,
with a bit of info on how to install the required StarTeam and JSafe
jars.

1. http://hudson.gotdns.com/wiki/display/HUDSON/StarTeam+SCM+plugin


--
Ilkka Laukkanen
http://ilkankuvat.blogspot.com
"And unto this, Conan;"

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: StarTeam SCM plugin

Erik Ramfelt
In reply to this post by Ilkka Laukkanen
I had some problems with that also when I started with the clear case
SCM. Info like this should be available in the wiki for "Building SCM
plugin", so it is easier to add other SCMs. As you are currently
creating such a plugin could you start a page in the wiki, and then we
others could fill in the blanks?

I looked at both CVS and SourceSafe SCM when I worked with CC. THe CVS
is good since it is quite advanced, and the SS is good because it is a
very simple implementation.

What you need to do is:
* Create an class that extends ChangeLogSet.Entry, override
getAuthor(), getAffectedPaths(), getMsg(), setParent(). Add properties
to this class that are specific for Startteam

* Create an class that extends ChangeLogSet<YourEntryHere>. It should
contain one or several change log entries
  * This class should then serialize your entries back and forth from
an XML file.
   * Reading can be helped with using Digester (see CVS, SS and CC plugins)
   * Writing is just outputing an XML file, can be done manually or
any other way

* The ScmPlugin method createChangeLogParser() should return a class
that can parse an XML file (most of the SCM plugins relay this to the
ChangeLogSet class)
  * The method returns a log set containing entries that is used when
displaying the change log web page.

* The SCM plugin is responsible for writing the changelog xml when it
has done a check out. There is a helper method to create an empty
change log file if there are no changes in the checkout.

* Store formatted Date strings in the XML, I forgot so I have to code
around it today

* Try to group the changes together, I dont remember if ST supports
change sets, but the plugin should be able to group changes from a
committer together into a change set. The CVS does this, and Im adding
this in the CC plugin.

There are other things that Ive forgotten, so if you have any
questions just ask!

//Erik

On Nov 13, 2007 8:03 AM, Ilkka Laukkanen <[hidden email]> wrote:

> Incidentally, I'd really appreciate a quick how-to on changelog
> generation in SCM plugins, so that I might implement it in mine. I did
> read the svn and cvs code, but I can't say I really got the hang of
> it.
>
>
> On Nov 12, 2007 10:06 PM, Ilkka Laukkanen <[hidden email]> wrote:
> > Hi,
> >
> > Happy to be included as a Hudson contributor, I just committed the
> > first working version of my StarTeam SCM plugin for Hudson into CVS,
> > and also uploaded it to the downloads section on the project page.
> >
> >
> > --
> > Ilkka Laukkanen
> > http://ilkankuvat.blogspot.com
> > "And unto this, Conan;"
> >
>
>
>
> --
> Ilkka Laukkanen
> http://ilkankuvat.blogspot.com
> "And unto this, Conan;"
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: StarTeam SCM plugin

Ilkka Laukkanen
Thanks a lot for the pointers, they'll definitely help me get along.
As for the wiki page, excellent idea. I'll just go ahead and put the
page under "extending hudson", I think, once I have a half-hour to
cobble it together in.

On Nov 13, 2007 11:34 AM, Erik Ramfelt <[hidden email]> wrote:

> I had some problems with that also when I started with the clear case
> SCM. Info like this should be available in the wiki for "Building SCM
> plugin", so it is easier to add other SCMs. As you are currently
> creating such a plugin could you start a page in the wiki, and then we
> others could fill in the blanks?
>
> I looked at both CVS and SourceSafe SCM when I worked with CC. THe CVS
> is good since it is quite advanced, and the SS is good because it is a
> very simple implementation.
>
> What you need to do is:
> * Create an class that extends ChangeLogSet.Entry, override
> getAuthor(), getAffectedPaths(), getMsg(), setParent(). Add properties
> to this class that are specific for Startteam
>
> * Create an class that extends ChangeLogSet<YourEntryHere>. It should
> contain one or several change log entries
>  * This class should then serialize your entries back and forth from
> an XML file.
>   * Reading can be helped with using Digester (see CVS, SS and CC plugins)
>   * Writing is just outputing an XML file, can be done manually or
> any other way
>
> * The ScmPlugin method createChangeLogParser() should return a class
> that can parse an XML file (most of the SCM plugins relay this to the
> ChangeLogSet class)
>  * The method returns a log set containing entries that is used when
> displaying the change log web page.
>
> * The SCM plugin is responsible for writing the changelog xml when it
> has done a check out. There is a helper method to create an empty
> change log file if there are no changes in the checkout.
>
> * Store formatted Date strings in the XML, I forgot so I have to code
> around it today
>
> * Try to group the changes together, I dont remember if ST supports
> change sets, but the plugin should be able to group changes from a
> committer together into a change set. The CVS does this, and Im adding
> this in the CC plugin.
>
> There are other things that Ive forgotten, so if you have any
> questions just ask!
>
> //Erik
>
>
> On Nov 13, 2007 8:03 AM, Ilkka Laukkanen <[hidden email]> wrote:
> > Incidentally, I'd really appreciate a quick how-to on changelog
> > generation in SCM plugins, so that I might implement it in mine. I did
> > read the svn and cvs code, but I can't say I really got the hang of
> > it.
> >
> >
> > On Nov 12, 2007 10:06 PM, Ilkka Laukkanen <[hidden email]> wrote:
> > > Hi,
> > >
> > > Happy to be included as a Hudson contributor, I just committed the
> > > first working version of my StarTeam SCM plugin for Hudson into CVS,
> > > and also uploaded it to the downloads section on the project page.
> > >
> > >
> > > --
> > > Ilkka Laukkanen
> > > http://ilkankuvat.blogspot.com
> > > "And unto this, Conan;"
> > >
> >
> >
> >
> > --
> > Ilkka Laukkanen
> > http://ilkankuvat.blogspot.com
> > "And unto this, Conan;"
> >
>
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [hidden email]
> > For additional commands, e-mail: [hidden email]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [hidden email]
> For additional commands, e-mail: [hidden email]
>
>



--
Ilkka Laukkanen
http://ilkankuvat.blogspot.com
"And unto this, Conan;"

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: StarTeam SCM plugin

Kohsuke Kawaguchi
Administrator
In reply to this post by Ilkka Laukkanen
Ilkka Laukkanen wrote:

> On Nov 13, 2007 8:55 AM, Kohsuke Kawaguchi <[hidden email]> wrote:
>> It appears that you posted a version manually.
>>
>> Did "Releasing to hudson.dev.java.net" on
>> http://hudson.gotdns.com/wiki/display/HUDSON/Plugin+tutorial not work?
>>
>> That's supposed to automate the whole thing completely.
>
> Darn, I should've gotten a night's sleep in before, then maybe I'd've
> remembered having read that bit about the release automation. I'll get
> 0.1.1 in using Maven later today then, just for completeness' sake.
>
> On that subject, does the release automation transform the POM to be a
> child of the plugins POM, like all the plugins in CVS seem to be?
No, that's done manually once. I went ahead and made an adjustment to
match other plugins.

 > I'm
> just wondering because the plugin project as created with the
> tutorial's instructions is standalone, which lead to some confusion on
> my part as I was committing my work. In the end I decided to change
> the POM to match all the other plugins.

Yes. The plugins in Hudson CVS and plugins in wild is little different.


> I also created a very quick and dirty wiki page[1] for the plugin,
> with a bit of info on how to install the required StarTeam and JSafe
> jars.
>
> 1. http://hudson.gotdns.com/wiki/display/HUDSON/StarTeam+SCM+plugin

Thanks.


--
Kohsuke Kawaguchi
Sun Microsystems                   [hidden email]

smime.p7s (4K) Download Attachment