Question

I would like to host a project on AppHarbor. The project's Hg repository is hosted on BitBucket. The issue is that my repository contains a subrepo (also Hg on BitBucket). It seems there is no way for AppHarbor to pull subrepos, so the project fails to build.

AppHarbor is aware of the issue and states that the solution is up to BitBucket:

BitBucket has an open ticket, but no updates:

My question is, does anyone have a good workaround for this? I would be willing just to ftp the working directory to AppHarbor, but I don't see how to do that.

Was it helpful?

Solution

Bitbucket modifying archive tarballs to include subrepos probably wouldn't be appropriate.

You, however, could easily set up something that builds your own tarballs that app harbor can handle and making them available to appharbor. A cron job running somewhere that just does hg pull ; hg update ; tar -czvf /docroot/workingdir.tar.gz workingdir would be enough to create a web accessible tarball that app harbor could use.

The better fix is for app harbor to do a clone and and update instead of downloading a tarball. Mercurial and git have in-built ways to get code, and tarball is a fallback not a primary mechanism. For example popular CI systems like Jenkins use clone to get code, not tarball downloads, and resulting they work fine.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top