Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-48503

Environment property not parsed propery by TFVC

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Minor
    • Resolution: Won't Fix
    • Component/s: tfs-plugin
    • Labels:
      None
    • Environment:
      Jenkins LTS 2.73.3
       RHEL 6.7
       tfs-plugin:5.126.0
      envinject-api:1.4
    • Similar Issues:

      Description

      Using EnvInject plugin,
      [ X ] Prepare an environment for the run
      Properties Content : branch=main_dev
      Using SCM: TFS
      TFVC Project path:
      works:$/BT/ITSuppt/sampleApplication/scm_demo
      fails: $/BT/ITSuppt/sampleApplication/${branch}

      Per EnvInject Plugin:

      • Executes a setup script before or/and after a SCM checkout for a run
      • Injects environment variables before or/and after a SCM checkout for a run

      Variable is not being resolved before processing.

      Note: performing a similar task using TFS hosted Git repo (and variable in branch specifier)  works.

      FATAL: hudson.remoting.ProxyException: com.microsoft.tfs.core.exceptions.TECoreException: TF10122: The path '$/path/to/sampleApplication/${branch}' contains a '$' at the beginning of a path component. Remove the '$' and try again.
      hudson.remoting.ProxyException: com.microsoft.tfs.core.ws.runtime.exceptions.SOAPFault: TF10122: The path '$/path/to/sampleApplication/${branch}' contains a '$' at the beginning of a path component. Remove the '$' and try again.
      at com.microsoft.tfs.core.ws.runtime.client.SOAP12Service.examineResponseDOMForFault(SOAP12Service.java:117)
      at com.microsoft.tfs.core.ws.runtime.client.SOAPService.examineBodyForFault(SOAPService.java:987)
      at com.microsoft.tfs.core.ws.runtime.client.SOAPService.executeSOAPRequestInternal(SOAPService.java:665)
      at com.microsoft.tfs.core.ws.runtime.client.SOAPService.executeSOAPRequest(SOAPService.java:444)
      at ms.tfs.versioncontrol.clientservices._03._RepositorySoap12Service.queryHistory(_RepositorySoap12Service.java:1503)
      at com.microsoft.tfs.core.clients.versioncontrol.internal.WebServiceLayer.queryHistory(WebServiceLayer.java:1573)
      at com.microsoft.tfs.core.clients.versioncontrol.internal.WebServiceLayerLocalWorkspaces.queryHistory(WebServiceLayerLocalWorkspaces.java:1254)
      at com.microsoft.tfs.core.clients.versioncontrol.VersionControlClient.queryHistory(VersionControlClient.java:4264)
      at hudson.plugins.tfs.model.MockableVersionControlClient.queryHistory(MockableVersionControlClient.java:255)
      at hudson.plugins.tfs.commands.RemoteChangesetVersionCommand.call(RemoteChangesetVersionCommand.java:66)
      at hudson.plugins.tfs.commands.RemoteChangesetVersionCommand.call(RemoteChangesetVersionCommand.java:34)
      at hudson.remoting.UserRequest.perform(UserRequest.java:208)
      at hudson.remoting.UserRequest.perform(UserRequest.java:54)
      at hudson.remoting.Request$2.run(Request.java:360)
      at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
      at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at java.lang.Thread.run(Thread.java:748)
      Caused: hudson.remoting.ProxyException: com.microsoft.tfs.core.exceptions.TECoreException: TF10122: The path '$/path/to/sampleApplication/${branch}' contains a '$' at the beginning of a path component. Remove the '$' and try again.

      This is related to:https://issues.jenkins-ci.org/browse/JENKINS-48443

       

        Attachments

          Issue Links

            Activity

            Hide
            ianw Ian Williams added a comment -

            Is the folder path being passed as a literal value to handle the leading '$' rather than escaping it and processing the result as an evaluated string?

            Show
            ianw Ian Williams added a comment - Is the folder path being passed as a literal value to handle the leading '$' rather than escaping it and processing the result as an evaluated string?
            Hide
            jpricketmsft Jason Prickett added a comment -

            This appears to be an issue with EnvInject. While debugging our SCM provider, I don't see change in the environment produced by EnvInject. There are no changes to the Computer env and they don't provide a VariableResolver implementation that would hold the values.

            I would recommend opening an issue with that plugin. However, it doesn't look like it is being kept up to date.

            I am resolving this issue, since we are doing what we can to replace variables in the mappings.

            Note that Build Parameters do work - not sure if that helps or not

            Show
            jpricketmsft Jason Prickett added a comment - This appears to be an issue with EnvInject. While debugging our SCM provider, I don't see change in the environment produced by EnvInject. There are no changes to the Computer env and they don't provide a VariableResolver implementation that would hold the values. I would recommend opening an issue with that plugin. However, it doesn't look like it is being kept up to date. I am resolving this issue, since we are doing what we can to replace variables in the mappings. Note that Build Parameters do work - not sure if that helps or not

              People

              • Assignee:
                redsolo redsolo
                Reporter:
                ianw Ian Williams
              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: