Perforce settings suggestion

In the perforce settings interface 'Depot' and 'Port' are required
fields and 'Client' is optional. I think that the requirement should
be port and either depot or client. It seems to me that if you have
port and client, the depot line is superfluous at best and could
possibly be in conflict.

--
-- Steve

6 comments
Comment actions Permalink

Do you mean client spec has to contain all directories to be used for the
project ant only them?
So I will not be able to use the same client for another project. I think
the restriction (use one client per one project, create new client for new
project) also causes conflict...

BTW 'Teas connection' informs you about conflict, doesn't it?

"Steve Allan" <takezowest@yahoo.com> wrote in message
news:uy7uyepy9.fsf@attachmate.com...

In the perforce settings interface 'Depot' and 'Port' are required
fields and 'Client' is optional. I think that the requirement should
be port and either depot or client. It seems to me that if you have
port and client, the depot line is superfluous at best and could
possibly be in conflict.

>

--
-- Steve



0
Comment actions Permalink

"Olesya Smirnova" <Olesya.Smirnova@jetbrains.com> writes:

>Do you mean client spec has to contain all directories to be used for the
>project ant only them?
>So I will not be able to use the same client for another project.

That's the way our projects are set up. A specific release of a
product has a client spec associated with it which defines all the
source required to build that release. So we need to be able to
provide teamcity with a client spec name and get all the source within
that client, othewise we can't use it. That was what I tried (poorly)
to explained in

http://www.jetbrains.net/jira/browse/TW-502

which was fixed in eap 1438. But it's still not doing what I expect.

I'll be specific. For my teamcity project, I specified a single
perforce setup. In it, I provide a port, user and client spec with
these mappings:


//x/trunk/dev/misc/rgb.txt //stevea-rxtrunk/dev/misc/rgb.txt
//x/trunk/binaries/fonts/75dpi/... //stevea-rxtrunk/binaries/fonts/75dpi/...
//x/trunk/binaries/fonts/misc/... //stevea-rxtrunk/binaries/fonts/misc/...
//x/java/JRX/trunk/... //stevea-rxtrunk/JRX/...
//tools/jakarta/ant/1.6.5/... //stevea-rxtrunk/JRX/tools/ant/...
//tools/sun/jdk1.5.0/... //stevea-rxtrunk/JRX/tools/java/...
//tools/java/binding-1.1.1/... //stevea-rxtrunk/JRX/temp/binding-1.1.1/...

I put

//x/java/JRX/trunk/...

in the Depot box, but just because something is required. What I
really want are all the files specified by my client, but that's not
happening. I'm only getting files from //x/java/JRX/trunk/...
I also tried change the depot path to //x/..., hoping it would overlay
my client spec, but instead it tried to download everything under //x/...

So, while I can see where you might want to have an uber-client which
is then filtered by the Depot line, I think more perforce users follow
the model of having a separate client specs for each project, and some
of those client specs can be quite complex. I think teamcity needs to
be able to consume a client spec without the need for a Depot path.

How about this approach:

case
depot only : use that path
depot and client : filter client spec using depot path
client only : use client spec
esac

--
-- Steve

0
Comment actions Permalink

Steve Allan schrieb:

"Olesya Smirnova" <Olesya.Smirnova@jetbrains.com> writes:

>> Do you mean client spec has to contain all directories to be used for the
>> project ant only them?
>> So I will not be able to use the same client for another project.


That's the way our projects are set up.


Same here.

I put

//x/java/JRX/trunk/...

in the Depot box, but just because something is required. What I
really want are all the files specified by my client, but that's not
happening. I'm only getting files from //x/java/JRX/trunk/...
I also tried change the depot path to //x/..., hoping it would overlay
my client spec, but instead it tried to download everything under //x/...


I created a script than generates the XML for the <vcs-roots> from my
client view template and I've now a project with 52 perforce VCS
entries, but it's working quite well.

So, while I can see where you might want to have an uber-client which
is then filtered by the Depot line, I think more perforce users follow
the model of having a separate client specs for each project, and some
of those client specs can be quite complex.


I second that.

I think teamcity needs to
be able to consume a client spec without the need for a Depot path.


I second that, too.

Stefan

0
Comment actions Permalink

I just wanted to follow up on this and see if you understand my
problem and what you thought of my proposal. It's a critical issue for
us because we can't use the perforce interface the way it's currently
designed.

Thanks.

--
-- Steve

Steve Allan <takezowest@yahoo.com> writes:

>"Olesya Smirnova" <Olesya.Smirnova@jetbrains.com> writes:
>
>>Do you mean client spec has to contain all directories to be used for the
>>project ant only them?
>>So I will not be able to use the same client for another project.
>
>That's the way our projects are set up. A specific release of a
>product has a client spec associated with it which defines all the
>source required to build that release. So we need to be able to
>provide teamcity with a client spec name and get all the source within
>that client, othewise we can't use it. That was what I tried (poorly)
>to explained in
>
>http://www.jetbrains.net/jira/browse/TW-502
>
>which was fixed in eap 1438. But it's still not doing what I expect.
>
>I'll be specific. For my teamcity project, I specified a single
>perforce setup. In it, I provide a port, user and client spec with
>these mappings:
>
>
>//x/trunk/dev/misc/rgb.txt //stevea-rxtrunk/dev/misc/rgb.txt
>//x/trunk/binaries/fonts/75dpi/... //stevea-rxtrunk/binaries/fonts/75dpi/...
>//x/trunk/binaries/fonts/misc/... //stevea-rxtrunk/binaries/fonts/misc/...
>//x/java/JRX/trunk/... //stevea-rxtrunk/JRX/...
>//tools/jakarta/ant/1.6.5/... //stevea-rxtrunk/JRX/tools/ant/...
>//tools/sun/jdk1.5.0/... //stevea-rxtrunk/JRX/tools/java/...
>//tools/java/binding-1.1.1/... //stevea-rxtrunk/JRX/temp/binding-1.1.1/...
>
>I put
>
>//x/java/JRX/trunk/...
>
>in the Depot box, but just because something is required. What I
>really want are all the files specified by my client, but that's not
>happening. I'm only getting files from //x/java/JRX/trunk/...
>I also tried change the depot path to //x/..., hoping it would overlay
>my client spec, but instead it tried to download everything under //x/...
>
>So, while I can see where you might want to have an uber-client which
>is then filtered by the Depot line, I think more perforce users follow
>the model of having a separate client specs for each project, and some
>of those client specs can be quite complex. I think teamcity needs to
>be able to consume a client spec without the need for a Depot path.
>
>How about this approach:
>
>case

depot only : use that path
depot and client : filter client spec using depot path
client only : use client spec

>esac
>
>--
>-- Steve

--
-- Steve

0
Comment actions Permalink

Please submit request to jira.

"Steve Allan" <takezowest@yahoo.com> wrote in message
news:usll05dg8.fsf@attachmate.com...
>I just wanted to follow up on this and see if you understand my

problem and what you thought of my proposal. It's a critical issue for
us because we can't use the perforce interface the way it's currently
designed.

>

Thanks.

>

--
-- Steve

>

Steve Allan <takezowest@yahoo.com> writes:

>
>>"Olesya Smirnova" <Olesya.Smirnova@jetbrains.com> writes:
>>
>>>Do you mean client spec has to contain all directories to be used for the
>>>project ant only them?
>>>So I will not be able to use the same client for another project.
>>
>>That's the way our projects are set up. A specific release of a
>>product has a client spec associated with it which defines all the
>>source required to build that release. So we need to be able to
>>provide teamcity with a client spec name and get all the source within
>>that client, othewise we can't use it. That was what I tried (poorly)
>>to explained in
>>
>>http://www.jetbrains.net/jira/browse/TW-502
>>
>>which was fixed in eap 1438. But it's still not doing what I expect.
>>
>>I'll be specific. For my teamcity project, I specified a single
>>perforce setup. In it, I provide a port, user and client spec with
>>these mappings:
>>
>>
>>//x/trunk/dev/misc/rgb.txt //stevea-rxtrunk/dev/misc/rgb.txt
>>//x/trunk/binaries/fonts/75dpi/...
>>//stevea-rxtrunk/binaries/fonts/75dpi/...
>>//x/trunk/binaries/fonts/misc/... //stevea-rxtrunk/binaries/fonts/misc/...
>>//x/java/JRX/trunk/... //stevea-rxtrunk/JRX/...
>>//tools/jakarta/ant/1.6.5/... //stevea-rxtrunk/JRX/tools/ant/...
>>//tools/sun/jdk1.5.0/... //stevea-rxtrunk/JRX/tools/java/...
>>//tools/java/binding-1.1.1/... //stevea-rxtrunk/JRX/temp/binding-1.1.1/...
>>
>>I put
>>
>>//x/java/JRX/trunk/...
>>
>>in the Depot box, but just because something is required. What I
>>really want are all the files specified by my client, but that's not
>>happening. I'm only getting files from //x/java/JRX/trunk/...
>>I also tried change the depot path to //x/..., hoping it would overlay
>>my client spec, but instead it tried to download everything under //x/...
>>
>>So, while I can see where you might want to have an uber-client which
>>is then filtered by the Depot line, I think more perforce users follow
>>the model of having a separate client specs for each project, and some
>>of those client specs can be quite complex. I think teamcity needs to
>>be able to consume a client spec without the need for a Depot path.
>>
>>How about this approach:
>>
>>case
>> depot only : use that path
>> depot and client : filter client spec using depot path
>> client only : use client spec
>>esac
>>
>>--
>>-- Steve
>

--
-- Steve



0
Comment actions Permalink

"Olesya Smirnova" <Olesya.Smirnova@jetbrains.com> writes:

>Please submit request to jira.

Ok, here it is. I hope it makes sense. Thanks.

http://www.jetbrains.net/jira/browse/TW-619

--
-- Steve

0

Please sign in to leave a comment.