[p4] Managing administrative tasks
Rick Macdonald
rickmacd at shaw.ca
Thu Nov 22 21:43:47 PST 2007
You don't to to pay for a Perforce license for automated tasks such as
you describe. Contact Perforce and ask for an extra (free) license.
Rick
Ildefonzo Arocha wrote:
> Hello,
>
> I have some questions related on how to handle some administrative
> tasks for which I need to create scripts. I hope some of you gurus
> could give me some ideas.
>
> The first sitaution is related to automatically updating and syncing
> all developers workspace. This must be done it two ways:
> automatically during the night and on demand (double click on a
> shortcut in the desktop for each developer). All developers work in a
> central server via Citrix/RDP, so all workspaces are available in
> disk. I created a Perforce "batch" user who has "list" rights over
> all the depot, the script I wrote does the sync (and some other stuff)
> with this user. Since I am against to storing passwords in a script
> file, the first problem I run into was that I needed to create a
> non-expiring ticket for the user who starts the nightly process (as
> administrator), and also for each developer (for the on demand sync)
> ... most ennoying! And still, any developer can retrieve the ticket
> from the p4tickets file and user in any way they want. How can I get
> around this ?
>
> The second situation is similar to the one above. Imagine the
> following scenario: "Department A" uses CVS and "Department B" uses
> Perforce, the changes from "Department A" needs to be on a daily basis
> loaded into Perforce, in other words, open and copy or copy and add,
> then submit. Problem is that I can't use the 'batch' user for this as
> it only has 'list' rights and not 'write' rights. I honestly consider
> a waste of a Perforce license to create a user only for this task.
> The other possible solution is to setup another computer and limit the
> write access by IP address, which also seems absurd. Besides from
> granting to the 'batch' user 'write' rights, is there any other way to
> do this?
>
>
> The third situation I have is that I need to list missing changes (not
> yet integrated) from one branch to the other. I know that p4
> integrate -n does the trick, but why on earth do I need to have a
> workspace for this?? Suppose you have a really huge depot with
> developers that have workspaces mapped to different areas of it, each
> developer has its own development branch. You would like to send an
> email every night to each developer indicating changes from him branch
> not yet integrated in the main codeline, also this has to be a list of
> files with missing revisions, and not changelists like interchanges
> supplies.
>
> So suppose you have a branch spec "john_branch" that maps:
>
> //depot/accounting/ui/... //users/john
>
> The following gives me the results I need.
>
> p4 integrate -n -r -b john_branch
>
> This works nice, but only if the user who is running the script has
> //depot/accounting/ui mapped to his workspace, and since I want to
> this for all users and with a script, I need to create a workspace
> that maps everything ... or am I wrong? I was considering creating a
> workspace called "batch" that maps "//depot/... //batch/..." and
> simply never sync it to disk, however this does not prevent another
> user from doing it and since every developer has user's "batch"
> non-expiring ticket with 'list' rights over all the depot (first
> situation), he is well able to do so!!
>
> I tested with "p4 diff2 -b john_branch" but this also lists all
> changes in the main codeline not yet integrated in "john_branch", and
> I miss what is nice about p4 integrate which tells me which revisions
> are not yet integrated. p4 diff2 just shows me the head revision of
> both branches.
>
> Any ideas / suggestions / thought?
>
> Thanks,
> Ildefonzo
> _______________________________________________
> 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