I have never seen that before. I'll take a look. It also seems like it
failed to get the change log description for 74865, which is why it's
attempting to log in again. Is there anything about that change that would
cause that command to output something non-standard?
On Aug 28, 2012 3:42 PM, "Richard J" <r...@columbia.edu> wrote:

> Thanks very much for your work on the p4 plugin! It has helped thousdansds
> of individuals,
>
> OK. It's a work in progress.  It's just that I spent several hours
> figuring out the polling and validation limitations
>
> This may also be related to the use of the EnvInject global password.
> This is in a non-polling job, so I have variable substituion for the
> password and in th emapping.
>
> Take a look at this job log output:
>
> *14:23:41*  [EnvInject] - Inject global passwords.
> *14:23:41*  Started by user *Richard 
> Otter*<http://ptjenkins.global.bio-rad.com/user/rotter>
> *14:23:41*  [EnvInject] - Loading node environment variables.
> *14:23:41*  [EnvInject] - Preparing an environment for the build.
> *14:23:41*  [EnvInject] - Keeping Jenkins system variables.
> *14:23:41*  [EnvInject] - Keeping Jenkins build variables.
> *14:23:41*  [EnvInject] - Adding build parameters as variables.
> *14:23:41*  [EnvInject] - Injecting as environment variables the
> properties content
> *14:23:41*  BranchName=Main
> *14:23:41*  DepotBranch=//depot/Projects/NGC/Main
> *14:23:41*
> *14:23:41*  [EnvInject] - Variables injected successfully.
> *14:23:41*  [EnvInject] - Injecting contributions.
> *14:23:41*  Building remotely on 
> *PT-Build-05*<http://ptjenkins.global.bio-rad.com/computer/PT-Build-05>in 
> workspace c:\Jenkins\workspace\NGC_VerDeploy
> *14:23:41*  Using remote perforce client: Jenkins-NGC_VerDeploy-1848380301
> *14:23:41*  [NGC_VerDeploy] $ p4 workspace -o
> Jenkins-NGC_VerDeploy-1848380301
> *14:23:41*  [NGC_VerDeploy] $ p4 login -p
> *14:23:41*  [NGC_VerDeploy] $ p4 -P C93CD4BFE0565DB3D05107EEDF54A37F
> workspace -o Jenkins-NGC_VerDeploy-1848380301
> *14:23:41*  Last build changeset: 74862
> *14:23:41*  [NGC_VerDeploy] $ p4 -P C93CD4BFE0565DB3D05107EEDF54A37F
> changes -s submitted -m 1 //...
> *14:23:41*  [NGC_VerDeploy] $ p4 -P C93CD4BFE0565DB3D05107EEDF54A37F -s
> changes -s submitted //Jenkins-NGC_VerDeploy-1848380301/...@74863,@74865
> *14:23:41*  [NGC_VerDeploy] $ p4 -P C93CD4BFE0565DB3D05107EEDF54A37F
> describe -s 74865
> *14:23:41*  [NGC_VerDeploy] $ p4 login -p
> *14:23:41*  [NGC_VerDeploy] $ p4 -P C93CD4BFE0565DB3D05107EEDF54A37F -P
> C93CD4BFE0565DB3D05107EEDF54A37F describe -s 74865
> *14:23:41*  Caught exception communicating with perforce. Password not
> allowed at this server security level, use 'p4
> login'com.tek42.perforce.PerforceException: Password not allowed at this
> server security level, use 'p4 login'
> *14:23:41*  at
> com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:382)
> *14:23:41*  at
> com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTemplate.java:292)
> *14:23:41*  at
> com.tek42.perforce.parse.Changes.getChangelist(Changes.java:71)
> *14:23:41*  at
> com.tek42.perforce.parse.Changes.getChangelistsFromNumbers(Changes.java:433)
> *14:23:41*  at
> hudson.plugins.perforce.PerforceSCM.checkout(PerforceSCM.java:924)
> *14:23:41*  at
> hudson.model.AbstractProject.checkout(AbstractProject.java:1226)
> *14:23:41*  at
> hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:586)
> *14:23:41*  at
> hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:475)
> *14:23:41*  at hudson.model.Run.run(Run.java:1438)
> *14:23:41*  at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
> *14:23:41*  at
> hudson.model.ResourceController.execute(ResourceController.java:88)
> *14:23:41*  at hudson.model.Executor.run(Executor.java:239)
> *14:23:41*  ERROR: Unable to communicate with perforce. Password not
> allowed at this server security level, use 'p4 login'
> *14:23:41*  Archiving artifacts
> Notice that at line 17 the plugin does a login and then successfully uses
> the ticket in the next several commands, but then does
> another login and issues the command-
> *14:23:41* [NGC_VerDeploy] $ p4 -P C93CD4BFE0565DB3D05107EEDF54A37F -P
> C93CD4BFE0565DB3D05107EEDF54A37F describe -s 74865
>
> Two -P parameters! I got the security level error.
> I'm using 1.3.17 P4plugin with server 1.466.1 on Windows x64
>
>
> On Tuesday, August 28, 2012 1:52:07 PM UTC-7, Rob Petti wrote:
>
>> Both validation and polling do not get full environments, which is why
>> they aren't being replaced. This means you can't use EnvInject for
>> that. I've been struggling with finding ways of fixing it, but as near
>> as I can tell, most plugins only support build parameters such as
>> those provided globally by jenkins or the masked passwords plugin.
>>
>> On Tue, Aug 28, 2012 at 2:42 PM, Richard J <rj...@columbia.edu> wrote:
>> >
>> >
>> > Well- almost confirmed....
>> >
>> > When I set an EnvInject global password for my P4 password, I can use
>> it in
>> > the perforce password entry field to successfully run jobs. That’s what
>> I
>> > originally confirmed.
>> >
>> > However, I have now seen two new problems-
>> >
>> >
>> >
>> > ·         The job cannot use the global password to poll the depot for
>> > changes. I get an invalid password message in the log (see below)
>> >
>> > ·         The job configuration UI shows messages that indicate
>> variable
>> > substitution is not performed.
>> >
>> > The first is a showstopper for CI jobs.
>> >
>> > The second I can live with, but I’d suggest that the warning include a
>> > disclaimer that says substitution is not done in the configuration
>> screen.
>> >
>> >
>> >
>> >
>> >
>> > Similarly, when I tried to use a variable in the perforce mapping, the
>> same
>> > kinds of problems were apparent:
>> >
>> > Polling does not work (see log entry below)
>> >
>> > The job configuration UI shows messages that indicate variable
>> substitution
>> > was not performed.
>> >
>> >
>> >
>> >
>> >
>> > Polling log contents:
>> >
>> > The polling log when using variable substitution in the password field
>> -
>> >
>> >
>> >
>> > Started on Aug 28, 2012 12:58:51 PM
>> >
>> > Looking for changes...
>> >
>> > Using master
>> >
>> > Using master perforce client: Jenkins-NGC_CI
>> >
>> > Caught Exception communicating with perforce.Login attempt failed:
>> Password
>> > invalid.
>> >
>> > FATAL: Unable to communicate with perforce.  Check log file for: Login
>> > attempt failed: Password invalid.
>> >
>> > java.io.IOException: Unable to communicate with perforce.  Check log
>> file
>> > for: Login attempt failed: Password invalid.
>> >
>> >         at
>> > hudson.plugins.perforce.**PerforceSCM.**compareRemoteRevisionWith(**PerforceSCM.java:1169)
>>
>> >
>> >         at hudson.scm.SCM._**compareRemoteRevisionWith(SCM.**java:356)
>> >
>> >         at hudson.scm.SCM.poll(SCM.java:**373)
>> >
>> >         at hudson.model.AbstractProject.**poll(AbstractProject.java:**1354)
>>
>> >
>> >         at 
>> > hudson.triggers.SCMTrigger$**Runner.runPolling(SCMTrigger.**java:420)
>>
>> >
>> >         at hudson.triggers.SCMTrigger$**Runner.run(SCMTrigger.java:**449)
>>
>> >
>> >         at
>> > hudson.util.**SequentialExecutionQueue$**QueueEntry.run(**
>> SequentialExecutionQueue.java:**118)
>> >
>> >         at java.util.concurrent.**Executors$RunnableAdapter.**call(Unknown
>>
>> > Source)
>> >
>> >         at java.util.concurrent.**FutureTask$Sync.innerRun(**Unknown
>> Source)
>> >
>> >         at java.util.concurrent.**FutureTask.run(Unknown Source)
>> >
>> >         at 
>> > java.util.concurrent.**ThreadPoolExecutor$Worker.**runTask(Unknown
>>
>> > Source)
>> >
>> >         at java.util.concurrent.**ThreadPoolExecutor$Worker.run(**Unknown
>>
>> > Source)
>> >
>> >         at java.lang.Thread.run(Unknown Source)
>> >
>> > Done. Took 0.44 sec
>> >
>> > No changes
>> >
>> >
>> >
>> >
>> >
>> > The polling log when using variable substitution in client mapping
>> (view map
>> > field)-
>> >
>> >
>> >
>> > Started on Aug 28, 2012 12:51:51 PM
>> >
>> > Looking for changes...
>> >
>> > Using master
>> >
>> > Using master perforce client: Jenkins-NGC_CI
>> >
>> > Warning: Client Spec line invalid, ignoring. (${DepotBranch}/Source/...
>> > //jenkins/ReadOnly/Source/...
>> >
>> > )
>> >
>> > Changing P4 Client View from:
>> >
>> > //depot/Projects/NGC/Main/**Source/... 
>> > //Jenkins-NGC_CI/ReadOnly/**Source/...
>>
>> >
>> >
>> >
>> > Changing P4 Client View to:
>> >
>> > Saving modified client Jenkins-NGC_CI
>> >
>> > No changes found.
>> >
>> > Done. Took 2.2 sec
>> >
>> > No changes
>> >
>> >
>> >
>> > The job configuration UI showed the following message:
>> >
>> > ·         when using variable substitution in the password field -
>> >
>> > Unable to check workspace against depot
>> >
>> >
>> >
>> >
>> >
>> > ·         When using variable substitution in client mapping (view map
>> > field)-
>> >
>> > Invalid mapping:${DepotBranch}/Source/**...
>> //jenkins/ReadOnly/Source/...
>> >
>> >
>> >
>> >
>> >
>> >
>> > On Monday, August 27, 2012 9:55:48 AM UTC-7, Richard J wrote:
>> >>
>> >> Confirmed- Both EnvInject and MaskPassword global passwords work as
>> >> advertised in Perforce plugin.
>> >> NOTE: Don't forget to mark the checkbox in the job config to allow use
>> of
>> >> the defined global passwords in that job!
>> >>
>> >>
>> >> On Saturday, August 25, 2012 4:18:00 PM UTC-7, Rob Petti wrote:
>> >>>
>> >>> If it doesn't work already (it should) then you can use the Mask
>> >>> Passwords plugin to set up a global password instead.
>> >>>
>> >>> On Friday, 24 August 2012 13:22:18 UTC-6, Richard J wrote:
>> >>>>
>> >>>> The newer versions of the plugin EnvInject can create a
>> GlobalPassword.
>> >>>> Since I have the same Perforce password entered separately in about
>> 100
>> >>>> jobs, it would be nice
>> >>>> to use this feature.
>> >>>> Any plans to support it in the Perforce plugin?
>> >>>>
>> >>>>
>>
>

Reply via email to