-
Bug
-
Resolution: Duplicate
-
Minor
-
None
We use a global property called "RepoRoot" to specify where our Git repositories live, so our repository URL's look similar to:
${RepoRoot}/RepoA.git
${RepoRoot}/RepoB.git
This works fine when jobs actually run:
... Fetching changes from the remote Git repository > git.exe config remote.origin.url https://github.com/Foo/RepoA.git # timeout=10 Cleaning workspace > git.exe rev-parse --verify HEAD # timeout=10 Resetting working tree > git.exe reset --hard # timeout=10 > git.exe clean -fdx # timeout=10 Fetching upstream changes from https://github.com/Foo/RepoA.git > git.exe --version # timeout=10 using .gitcredentials to set credentials > git.exe config --local credential.helper store --file=\"C:\Users\FOO\AppData\Local\Temp\git6742298409525835661.credentials\" # timeout=10 > git.exe -c core.askpass=true fetch --tags --progress https://github.com/Foo/RepoA.git +refs/heads/*:refs/remotes/origin/* ...
But we're seeing errors similar to the following in our polling log:
Fetching upstream changes from ${RepoRoot}/RepoA.git
> git.exe --version # timeout=10
> git.exe -c core.askpass=true fetch --tags --progress ${RepoRoot}/RepoA.git +refs/heads/*:refs/remotes/origin/*
FATAL: hudson.plugins.git.GitException: Failed to fetch from ${RepoRoot}/RepoA.git
hudson.util.IOException2: hudson.plugins.git.GitException: Failed to fetch from ${RepoRoot}/RepoA.git
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:518)
at hudson.scm.SCM.compareRemoteRevisionWith(SCM.java:380)
at hudson.scm.SCM.poll(SCM.java:397)
at org.jenkinsci.plugins.multiplescms.MultiSCM.compareRemoteRevisionWith(MultiSCM.java:92)
at hudson.scm.SCM.poll(SCM.java:397)
at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1462)
at hudson.model.AbstractProject._poll(AbstractProject.java:1433)
at hudson.model.AbstractProject.poll(AbstractProject.java:1344)
at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:515)
at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:544)
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.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: hudson.plugins.git.GitException: Failed to fetch from ${RepoRoot}/RepoA.git
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:695)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWithImpl(GitSCM.java:598)
at hudson.plugins.git.GitSCM.compareRemoteRevisionWith(GitSCM.java:516)
... 16 more
Caused by: hudson.plugins.git.GitException: Command "git.exe -c core.askpass=true fetch --tags --progress ${RepoRoot}/RepoA.git +refs/heads/*:refs/remotes/origin/*" returned status code 128:
stdout:
stderr: fatal: repository 'https://github.com/Foo/RepoA.git/' not found
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1457)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1245)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.access$300(CliGitAPIImpl.java:85)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl$1.execute(CliGitAPIImpl.java:280)
at hudson.plugins.git.GitSCM.fetchFrom(GitSCM.java:693)
... 18 more
Done. Took 2.3 sec
If I hard-code the repo root rather than use the global property reference, polling starts working.
From the polling log, it appears as though the polling code is:
1. Not resolving global property references in repo URLs when assembling git command lines
2. Possibly incorrectly appending trailing forward slash characters to repo URLs
Thanks folks, love your work.
- duplicates
-
JENKINS-21886 Push notifications don't work if JOB_NAME variable is in repository URL
-
- Open
-