Beanstalk is corrupting my files on my deployment. What’s happening?
From time to time, customers will have problems with files during a deployment. Since the file is fine in the repository, it can seem logical that Beanstalk is causing a problem while deploying the files to the end server.
However, that is rarely the true case. It’s important to note that Beanstalk does not perform any type of processing on files during a deployment. Our service connects to your server, then transfers files as they exist in the repository. We do not perform any write operations on files. In fact, the deployment workers on our servers that are responsible for processing deployments have read-only access to your files.
But it is possible for problems to occur during a deployment. Here are a few common scenarios where files can be corrupted:
- Line endings are the number one cause of issues of this type. File line endings can be different on various operating systems (Unix vs Windows for example). If your files have Windows line endings, but you are deploying to a Linux server, the server may attempt to perform a conversion that can cause problems. Your end result are files that do not work correctly. The fix? Use a Unix format that will be supported by most web servers, or review your server for options to leave line endings as they are.
- Problems with the (s)FTP software on a server. Occasionally, the software used on a server can be upgraded to a new version that includes bugs. The fix? Switch to another server provider, or review for updates to the software that address the bug.
- Last, a server with hardware issues can cause file corruption. Faulty RAM, hard drives, or network cards can all lead to this result. The fix? Ensure your host has reviewed the hardware for your server.
- Deploying to a Windows Server 2012 through FTP and seeing corrupted files? Try disabling TCP offloading in your network adapter advanced settings (details here)
If you suspect an issue of this nature, feel free to contact our support team. Contacting your hosting provider is also a good option.