[p4] problem with programming perforce via python
David Weintraub
qazwart at gmail.com
Mon Jan 8 10:39:17 PST 2007
I don't know anything about Python, but I did use Perl in attempting
to access Perforce via "exec" instead of the P4/Perl interface.
The biggest problem I had is that Perforce commands "fail", but still
return an error code of "0". That makes testing whether or not
something happened as expected almost impossible to tell. For example,
maybe you're not getting anything because the user running the script
isn't "logged in"
The best thing to do is get the P4/Python interface package, and write
your Python scripts using that. That will give you a better way of
checking for errors, and for making sure you actually are logged in
and have a connection.
On 1/8/07, Roger Day <roger.day at globalgraphics.com> wrote:
> I'm trying to do the following
>
> log = logging.getLogger("hope2p4")
> cmd =self.p4+' change -i -o'
> p = Popen(cmd, stdout=PIPE, stdin=PIPE, close_fds=True, bufsize=1,
> shell=True)
> lcmd = 'Change: new\n'
> (author, reason, bugnr)=metadata
> lcmd += 'Description:\n\t['+ bugnr+'] '+reason+'\n'
> lcmd += 'Files: \n\t'+f+'\n\n'
> log.info("lcmd: "+lcmd)
> p.stdin.write( lcmd )
> p.stdin.close()
> out =p.stdout.read()
> (pre, nr, end)=out.split(' ')
> return nr
>
> A changelist number is returned, but the changelist doesn't contain any
> files.
>
> Once I've created the change-list I then go on to submit in a similar
> fashion but can't because the changelist contains no files.
>
> Any help gratefully received.
>
> Roger
>
> _______________________________________________
> perforce-user mailing list - perforce-user at perforce.com
> http://maillist.perforce.com/mailman/listinfo/perforce-user
>
--
--
David Weintraub
qazwart at gmail.com
More information about the perforce-user
mailing list