Bitbucket (git) deployments fail on sync operation "Unable to create file. No such file or directory"
Category: azure git
Yossarian21 on Wed, 05 Jun 2013 14:26:46
I have a Git repository on BitBucket and I'm trying to set up continuous deployment for my Azure website. I can deploy this website from Visual Studio to Azure without any issues.
I successfully linked the Bitbucket repository, but the deployments are failing on the sync operation. I have a few service references which created .datasource autogen files, and the Azure deployment log says "error: unable to create file [filename omitted].datasource (No such file or directory)" for each of the .datasource files.
I wonder if I'm hitting some kind of Azure file system limit? The filenames are 112+ characters long, and the entire subpath (from the root of my BitBucket repository) is over 300 characters.
Any advice is appreciated.
David Ebbo on Wed, 05 Jun 2013 15:20:09
I think you may indeed be hitting paths limits. I think msysgit only supports paths up to 260 chars (even though Windows supports much longer paths).
The only thing a bit different on Azure is that the base path is somewhat long, which unfortunately uses up a bigger chunk of the 260 than is typical on dev machines.
We should see if we can shorten this path, but that would only buy a few more characters and not really solve the issue.
There may be alternatives we can think through.
ginny-d on Wed, 19 Jun 2013 03:30:38
Any alternatives for this? I believe I have something similar where a node library (less-middleware) I'm using is suddenly giving me the same error when it is trying to install the node_modules files.
David Ebbo on Wed, 19 Jun 2013 14:56:38
The msysgit limitation does not look easy to get around. Is your local machine where you have your repo on a non-Windows platform?
ginny-d on Wed, 19 Jun 2013 17:36:04
It is, the dev is being done on a Mac.
David Ebbo on Thu, 20 Jun 2013 01:27:42
Unfortunately, we have not been able to find a workaround, given that the limitation is in git itself (on Windows). Of course, ideally msysgit would fix this, but it's hard to say if/when they would. It's mentioned in their faq.
I'd suggest making your paths shorter, but clearly, that's not much of a solution! :(
ginny-d on Thu, 20 Jun 2013 04:03:02
Hmm, I'll have to think on that one, I'm not even sure how I can do that with node_modules, that is not code that I write, its more of the dependencies for the libraries I use...
David Ebbo on Thu, 20 Jun 2013 04:09:45
So are you currently committing your npm packages to the repo? Once option is to only commit your package.json, and let Azure install the modules for you. This way, git never has to deal with the long paths, which should help resolve the issue.
Can you share your the contents of your package.json, so I can try with the same module as you?