Updated TeamCity: Now Won't Checkout Mercurial - version-control

Well I didn't do a correct backup of my settings when I updated Team City and somehow lost all of my VCS roots but the rest of my settings for my projects are still there.
When I re-add my mercurial root, I test the connection and it succeeds, however when I try to run a build, it fails on checkout. Anyone know what this error means?
[Updating sources: agent side checkout...] Failed to perform checkout on agent: 'cmd /c hg pull <MERCURIAL URL>' command failed.
stderr: transaction abort!
rollback completed
abort: connection ended unexpectedly
stdout: pulling from <MERCURIAL URL>
requesting all changes
adding changesets
adding manifests
adding file changes
This was working before I mistakenly updated without backing up :(
I am using agent side checkout with a specified checkout directory (just like I was using before the update)
Any help would be greatly appreciated.
[EDIT]: I updated tortoise hg / mercurial on the build server and got this error when trying to pull:
% hg --repository D:\Mercurial\Core pull --verbose https://<user email login>:<pw>#<kilnhg respository url>
pulling from https://<user email login>:<pw>#<kilnhg respository url>
requesting all changes
adding changesets
adding manifests
adding file changes
transaction abort!
rollback completed
abort: connection ended unexpectedly
[command returned code 255 Thu Aug 11 15:17:17 2011]
I just tried again from tortoise hg and the pull succeeded. This is very strange :-/

I've had the exact same problem. I have tried all available versions of TortoiseHG on my Windows 7 (64) machine. I can't clone or pull anything from anywhere :)
What solved it for me is the "Use uncompressed transfer" check box in TortoiseHG gui.
Equal to "hg clone --uncompressed"

I noticed a subtlety in your error message. You're using Kiln, right? I think this issue is explained on Kiln's support site. Can you manually pull from the repo to slowly pull chunks of revisions to see if it finishes with smaller sets using hg pull -r 200 as shown on Kiln's support site?

Related

Github FTP Deploy: fatal: Not a Git project? Exiting... On GitHub Actions Tab while running the workflow

I am trying to deploy my changes to live server using GitHub via ftp workflow but it keeps on failing on
'fatal: Not a Git project? Exiting...'
FTP-Deploy-Action Error Log:
Forced mode enabled.
Auto init if needed.
Using syncroot ./ if exists.
Insecure SSL/TLS connection allowed
fatal: Not a Git project? Exiting... <------------------------- fails from here
The process '/usr/bin/git' failed with exit code 8
>
I did 'git init' as stated in helpful articles but that didn't helped.
I re-clone the git repo and pushed the changes again and still having the same issue with the repo.
It was working fine until now.
Thank you for your time.
This was due to a docker image being updated and is now resolved. See the github issue for more information https://github.com/SamKirkland/FTP-Deploy-Action/issues/345
No updates to your github action are required to use the new (patched) version.
It's allready fixed :)
See here: https://github.com/SamKirkland/FTP-Deploy-Action/issues/345#issuecomment-1353339618

Error 500 checking out from github with svn

I try to checkout my repository user/bar on GitHub using the cli-version of svn. This fails with error 500.
Note: Similar questions have been asked before, but are either slightly different or have (for my case) unsatisfying answers:
Error Connecting to GitHub from SVN got a different error message
git svn gives 500 internal server error got the same error, but only with git svn clone not with native svn
Subversion Unexpected server error 500 on checkout had exactly the same problem, but it seemed to have been a temporary problem on GitHub
Community Forum describes exactly the same problem, but got no response
GitHub Documentation says: make an empty checkout of the repository,
$ svn co --depth empty https://github.com/user/repo
> Checked out revision 1.
$ cd repo
So I tried to check out my repositories of foo (created months ago) and bar (created recently), and - as a cross check - a non-existing repository baz:
$ svn co --depth empty https://github.com/user/foo
Checked out revision 4949.
$ svn co --depth empty https://github.com/user/bar
svn: E170013: Unable to connect to a repository at URL 'https://github.com/user/bar'
svn: E175002: Unexpected server error 500 'Internal Server Error' on '/user/bar'
$ svn co --depth empty https://github.com/user/baz
Authentication realm: <https://github.com:443> GitHub
Password for 'user': ****************************************
svn: E170013: Unable to connect to a repository at URL 'https://github.com/user/baz'
svn: E160013: '/user/baz' path not found
Findings:
basically it works, otherwise foo would not be fine
bar exists, otherwise the error would would be like baz
A temporary problem seems unlikely (becaus foo works), but to be sure I've waited for a couple of days - no change. Configuration of foo and bar is identical (to the best of my knowledge).
Any more ideas?
More than a week after the original attempt it suddenly works as expected. So if you happen to run into the same problem:
it might affect only selected repositories
the temporary failure might last for quite some time

cannot get remote repository refs in eclipse

Introduction:
Main Repo: Repo1.
After forking it, my repo is : ForkedRepo1
In Eclipse-Git, I cloned my ForkedRepo1.
Until Thursday, I was able to commit & push without any issue.
Then suddenly, on Thursday, I got the error:
Cannot get remote repository refs
Reason:
ssh://<forkedrepo1: session.connect:
java.netSocketTimeoutException: Read timed out
I have a SSH key.
Nothing as altered in my system, so I am not sure what happened.
To make matters worse, I deleted my Remote(origin) in eclipse-git and when I try to add it back, I get the same error - java.net.SockettimeoutException: Read timed out.
However, via git bash, I can commit a file and push it to the local branch in GitHub.
I hope this info is enough to give me some idea.
FYI: I am working on a existing project, so when I push a file up for review, it worked successfully. It is just that I cannot now do it in eclipse.
Then try, as described here, to switch to an HTTPs URL.
You can then cache your GitHub credentials (GitHub username/password) in a credential helper, generally already configured (see git config credential.helper)
It is probably caused by the removal of weak cryptographic standards.
You need a recent Java 8 revision (i.e. 1.8.0_161), a recent version of EGit (such as 4.10.0.201712302008-r) and you probably need also to restart (just once) Eclipse with the -clean parameter.

Jenkins Mercurial plugin gives error: partial pull cannot be done because other repository doesn't support changegroupsubset

I'm having an issue with setting up jenkins for build automation, we use the source control host codebasehq, with mercurial, however it is failing to pull from the repo.
The plugin seems to connect fine with the supplied credentials (at the moment we're simply using the in http url credentials) but then gives the following error:
Building in workspace /home/ubuntu/jenkins/jobs/testJob/workspace
$ hg clone --rev tip --noupdate https://foo:bar#initech.codebasehq.com/foo/bar.hg /home/ubuntu/jenkins/jobs/testJob/workspace
abort: partial pull cannot be done because other repository doesn't support changegroupsubset.
I've tried running the command in the error message, but it simply returns the same abort message.
I have limited experience with mercurial, and google doesn't seem to return much on the error message, which makes me think it might either be an issue with the jenkins plugin, or codebasehq's mercurial setup.
Any information on the error or if anyone has experience with setting up this kind of thing on codebasehq successfully and could share any advice would be fantastic.
After a response from the codebasehq support team, it seems that 'changegroupsubset' refers to a feature that is unsupported by the https version of their mercurial repository. It is however, supported by the ssh version of their repository, so I was able to fix this by simply replacing
hg clone --rev tip --noupdate https://foo:bar#initech.codebasehq.com/foo/bar.hg /home/ubuntu/jenkins/jobs/testJob/workspace
with
hg clone --rev tip --noupdate ssh://foo:bar#initech.codebasehq.com/foo/bar.hg /home/ubuntu/jenkins/jobs/testJob/workspace
And this worked successfully.

Mercurial abort: index ... is corrupted

I get the following error when trying to clone from the production repo.
abort: index data/HR3/globals.php.i is corrupted!
After which mercurial promptly farts out on me and fails to clone. I've tried removing the file in question from the production repo, and that failed. I also tried deleting the .hg directory in the production repo and re-adding and committing all of the files. This produces the same error.
Just fyi, I'm trying to clone the current production copy of our app to our test server. Our test server is running in Virtual Box.
UPDATE
I fixed the issue by deleting the globals file and then deleting the .hg directory and re-running "hg init" and "hg add ." and "hg commit."
Now I get an Internal server error when I try to clone. The following is the clone command I used.
sudo hg clone http://10.1.1.25/ www
Oddly enough, mercurial tells me that the "real" url is "10.1.1.25/HR3/index.php" which is most definitely not my mercurial repository. I do not know why it is doing this. I checked in my server logs, and the following error is what Apache crapped out.
[Thu Dec 16 12:25:30 2010] [error] [client 10.1.1.102] PHP Parse error: syntax error, unexpected T_STRING in /var/www/.hg/store/data/_h_r3/includes/_b_n_a_s/_b_n_a_s-_h_r_s201.php.i on line 22
Apparently the clone command is causing Mercurial to kick off PHP and make it try to parse something in Mercurial's data store?
RESOLUTION
I suspect this was caused by the fact that I have an index.php file at the root directory of my repository that does redirects. If you try and navigate directly to http:10.1.1.25 on our network, you're automatically directed to the index page, which is not the index.php page in the root directory. Somehow I think that this was causing php to kick off and try to parse items in the mercurial store. I've resolved this issue by cloning over ssh.
I have faced such an error before. Try to run
hg verify
on your corrupted repository. Then follow the instructions from here:
http://www.softwareprojects.com/resources/programming/t-how-to-fix-mercurial-corrupt-repository-1926.html
It seems that you publish your repo with the static-http method, from the same server as your development project lives. This method only works if the web server does not mess with $URL/.hg, which your one seems to do. check if you can download the .hg folder with wget -r -np $URL/.hg in a fresh folder and run hg verify there.
Oddly enough, mercurial tells me that the "real" url is "10.1.1.25/HR3/index.php" which is most definitely not my mercurial repository.
I guess that your web server redirects some mercurial requests to your index.php url.
You may try to do that:
hg forget HR3/globals.php
hg commit
hg add HR3/globals.php
hg commit