[p4] Using current directory as client root?

Jeff Jensen jjensen at apache.org
Mon Jan 21 10:10:48 PST 2008


Indeed; Roy also commented the same, which is a perfectly 
valid use case!  :-)  Thanks for explaining your 
situation.  In my experience, the debugging occurs on 
developers own workstation, not on a shared one.


On Mon, 21 Jan 2008 10:01:23 -0800
  "Raja Aluri" <raja at azulsystems.com> wrote:
> Jeff,
> It's not about trust or reproducibility. It is just 
>about saving time for
> developers and qa to save the hassle of syncing to a 
>lable do debugging. It
> is just a matter of convenience, nothing else.
> 
> Raja
> -----Original Message-----
>From: Jeff Jensen [mailto:jjensen at apache.org] 
> Sent: Saturday, January 19, 2008 11:57 AM
> To: Raja Aluri; 'Roy Smith'
> Cc: 'Perforce-User at Perforce. Com'
> Subject: RE: [p4] Using current directory as client 
>root?
> 
> "Debuggers finding the right sources" is a changelist 
>number or a label in
> Perforce.  I have not found a need to leave the source 
>files for a build
> around for any duration "just in case" - they are all in 
>Perforce,
> obtainable from any client machine that can sync to that 
>changelist or
> label, including the build server itself (whether in the 
>usual build area or
> a new temp build area for troubleshooting).
> 
> If you cannot trust that changelist number or label, 
>then something else is
> wrong in your process (e.g. not all original files are 
>source controlled).
> 
> 
>> -----Original Message-----
>> From: Raja Aluri [mailto:raja at azulsystems.com]
>> Sent: Friday, January 18, 2008 11:39 AM
>> To: Jeff Jensen; Roy Smith
>> Cc: Perforce-User at Perforce. Com
>> Subject: RE: [p4] Using current directory as client 
>>root?
>> 
>> I do see the need for a separate directory.
>> We use a separate directory per build and leave the 
>>previous builds 'as it
>> is' (cleanup is a separate step), so that the debuggers 
>>can find the right
>> sources.
>> Raja
>> 
>> -----Original Message-----
>> From: perforce-user-bounces at perforce.com
>> [mailto:perforce-user-bounces at perforce.com] On Behalf Of 
>>Jeff Jensen
>> Sent: Friday, January 18, 2008 6:47 AM
>> To: 'Roy Smith'
>> Cc: 'Perforce-User at Perforce. Com'
>> Subject: Re: [p4] Using current directory as client 
>>root?
>> 
>> Is that a self-imposed requirement or inflicted by a 
>>build tool?
>> 
>> While following this thread, I have been wondering about 
>>your flexibility
> to
>> question that original requirement, as it seems the 
>>"easiest" solution is
> to
>> not have it!  I've been curious as to why a subsequent 
>>build of the same
>> codeline can't use the same dir location...
>> 
>> Instead, to have scorched earth builds, sync to none (p4 
>>sync #none) and
>> then remove the dir.  Then sync to the changelist of 
>>choice and proceed.
>> 
>> That works great if there is no "need" for the prior 
>>build source and
> target
>> dirs to remain for some reason.
>> 
>> 
>> > -----Original Message-----
>> > From: perforce-user-bounces at perforce.com 
>>[mailto:perforce-user-
>> > bounces at perforce.com] On Behalf Of Roy Smith
>> > Sent: Thursday, January 17, 2008 11:05 PM
>> > To: Slava Imeshev
>> > Cc: Perforce-User at Perforce. Com
>> > Subject: Re: [p4] Using current directory as client 
>>root?
>> >
>> > The basic idea we're looking at is for each build run 
>>to use a
>> > different working directory.
>> >
>> > On Jan 17, 2008, at 5:13 PM, Slava Imeshev wrote:
>> >
>> > >
>> > >  -------------- Original message 
>>----------------------
>> > > From: Roy Smith <smith_roy at emc.com>
>> > >> We're trying to stay away from copying.
>> > >
>> > > That's understandable.
>> > >
>> > > In your requirements, are repeatable build runs 
>>expected to use a
>> > > different working
>> > > directory/client root every time?
>> > >
>> > > Or, is every codebase supposed to use a different 
>>but stable client
>> > > root for its builds?
>> > >
>> > > Regards,
>> > >
>> > > Slava Imeshev
>> > > www.viewtier.com
>> > >
>> > >
>> > >>
>> > >>
>> > >> On Jan 17, 2008, at 3:59 PM, Slava Imeshev wrote:
>> > >>
>> > >>> Roy,
>> > >>>
>> > >>> Another solution could be having a build system to 
>>sync at a
>> > >>> default place and then copy the
>> > >>> workspace to the required on-demand location, 
>>passed as a parameter
>> > >>> to the build system at build
>> > >>> time.  Or, have each build a custom client root. 
>>Both are pretty
>> > >>> straightforward and don't require
>> > >>> any hacking. Is this something you are looking 
>>for?
>> > >>>
>> > >>> Regards,
>> > >>>
>> > >>> Slava Imeshev
>> > >>> www.viewtier.com
>> > >>>
>> > >>>
>> > >>>
>> > >>> --- Dave Lewis <dlewis78731 at gmail.com> wrote:
>> > >>>
>> > >>>> We generally just create a new client for each 
>>build.  If a
>> > >>>> build was
>> > >>>> certified by qa, you could label it as the 
>>release if
>> > >>>> necessary.  It
>> > >>>> never occurred to me that there was anything 
>>undesirable about it.
>> > >>>> Just my point of view.  Its interesting to 
>>rethink these sorts of
>> > >>>> things when somebody comes along and says they 
>>don't like that.
>> > >>>> There
>> > >>>> was the issue of cleaning up the clients at some 
>>point
>> > >>>> afterwards.  I
>> > >>>> think, though, that this is fairly 
>>straightforward usage
>> > >>>> compared to
>> > >>>> various other somewhat crooked approaches.
>> > >>>>
>> > >>>> dave
>> > >>>>
>> > >>>>
>> > >>>> On Jan 16, 2008 9:47 PM, Roy Smith 
>><smith_roy at emc.com> wrote:
>> > >>>>> Yeah, this sounds like mostly what I'm looking 
>>for.  It's still
>> > >>>>> annoying that you have to create a transient 
>>clientspec, though.
>> > >>>>>
>> > >>>>>
>> > >>>>>
>> > >>>>> On Jan 16, 2008, at 7:06 PM, Robert Cowham 
>>wrote:
>> > >>>>>
>> > >>>>>> Sounds like that might be addressed by:
>> > >>>>>>
>> > >>>>>> 
>>http://www.perforce.com/perforce/doc.072/user/relnotes.txt
>> > >>>>>>
>> > >>>>>> Release 2007.2.
>> > >>>>>>
>> > >>>>>> Major new functionality in 2007.2
>> > >>>>>>
>> > >>>>>> New 'p4 sync' option bypasses db.have updates - 
>>#111247 **
>> > >>>>>>
>> > >>>>>>           'p4 sync' now sports a '-p' option. 
>> This allows the
>> > >>>>>> user to
>> > >>>>>>           sync files without the server keeping 
>>track of it.
>> > >>>>>> This
>> > >>>>>>           option is very useful when populating 
>> build clients
>> > >>>>>> or when
>> > >>>>>>           publishing content when there is no 
>>requirement for
>> > >>>>>> saving
>> > >>>>>>           the client workspace state.
>> > >>>>>>           (Bug #22857).
>> > >>>>>>
>> > >>>>>> This would require the "create temporary client 
>>hack", but
>> > >>>>>> perhaps
>> > >>>>>> solve the
>> > >>>>>> problem??
>> > >>>>>>
>> > >>>>>> Robert
>> > >>>>>>
>> > >>>>>>> -----Original Message-----
>> > >>>>>>> From: perforce-user-bounces at perforce.com
>> > >>>>>>> [mailto:perforce-user-bounces at perforce.com] On 
>>Behalf Of Roy
>> > >>>>>>> Smith
>> > >>>>>>> Sent: 16 January 2008 19:58
>> > >>>>>>> To: Perforce User
>> > >>>>>>> Subject: [p4] Using current directory as 
>>client root?
>> > >>>>>>>
>> > >>>>>>> I have a requirement (as part of our build 
>>system) to be able
>> > >>>>>>> to get a set of files from the repository and 
>>have them
>> > >>>>>>> written to any arbitrary directory.  Because 
>>the root path is
>> > >>>>>>> embedded in the client spec, there doesn't 
>>seem to be any way
>> > >>>>>>> to do this.
>> > >>>>>>>
>> > >>>>>>> We've played with all sorts of hacks.  We can 
>>create a
>> > >>>>>>> symlink from the root path embedded in the 
>>client to where we
>> > >>>>>>> really want the
>> > >>>>>>> files.  We can create and destroy temporary 
>>client specs on
>> > >>>>>>> the fly.
>> > >>>>>>> But all these seem like hacks.  Surely there 
>>must be some
>> > >>>>>>> simple way to say, "just put the files HERE".
>> > >>>>>>>
>> > >>>>>>> We don't need the workspace to be managed by 
>>perforce.  We'll
>> > >>>>>>> never want to edit the files there, or submit 
>>any changes
>> > >>>>>>> from there.  We just want a read-only copy of 
>>the source tree
>> > >>>>>>> so we can build it.
>> > >>>>>>
>> > >>>>>>
>> > >>>>>
>> > >>>>> -------------------
>> > >>>>> Roy Smith <smith_roy at emc.com>
>> > >>>>> Software Guy, EMC Common Management Group
>> > >>>>> 44 South Broadway, 7th floor
>> > >>>>> White Plains, NY 10601
>> > >>>>> (914) 580-3427
>> > >>>>> AIM: roysmith649
>> > >>>>> _______________________________________________
>> > >>>>>
>> > >>>>> perforce-user mailing list  - 
>> perforce-user at perforce.com
>> > >>>>> 
>>http://maillist.perforce.com/mailman/listinfo/perforce-user
>> > >>>>>
>> > >>>> _______________________________________________
>> > >>>> perforce-user mailing list  - 
>> perforce-user at perforce.com
>> > >>>> 
>>http://maillist.perforce.com/mailman/listinfo/perforce-user
>> > >>>>
>> > >>>>
>> > >>>
>> > >>>
>> > >>
>> > >> -------------------
>> > >> Roy Smith <smith_roy at emc.com>
>> > >> Software Guy, EMC Common Management Group
>> > >> 44 South Broadway, 7th floor
>> > >> White Plains, NY 10601
>> > >> (914) 580-3427
>> > >> AIM: roysmith649
>> > >>
>> > >
>> > > _______________________________________________
>> > > perforce-user mailing list  - 
>> perforce-user at perforce.com
>> > > 
>>http://maillist.perforce.com/mailman/listinfo/perforce-user
>> > >
>> >
>> > -------------------
>> > Roy Smith <smith_roy at emc.com>
>> > Software Guy, EMC Common Management Group
>> > 44 South Broadway, 7th floor
>> > White Plains, NY 10601
>> > (914) 580-3427
>> > AIM: roysmith649
>> > _______________________________________________
>> > perforce-user mailing list  - 
>> perforce-user at perforce.com
>> > 
>>http://maillist.perforce.com/mailman/listinfo/perforce-user
>> 
>> 
>> _______________________________________________
>> perforce-user mailing list  - 
>> perforce-user at perforce.com
>> http://maillist.perforce.com/mailman/listinfo/perforce-user
> 
> 
> 
> 


More information about the perforce-user mailing list