Although, for Release Management, Microsoft is focusing on agentless deployments, quite a lot of early-adopters are still bound to deployments using the Microsoft Deployment Agent. Debugging problems with these deployments is sometimes hard, because the error messages are not always descriptive for the actual problem.
Recently, at a customer, we were deploying to a new environment. The Deployment Agent stopped with the error message:
Communication with the deployer was lost during the deployment. Please make sure (1) the deployer machine has not rebooted during installation and (2) the component timeout is sufficient to copy the files from the drop location to the deployer machine and install the package.
We were 100% sure that the machine did not restart during the deployment (as this is not supported!). Then we checked the component timeout. I remembered setting this to 0, in order to achieve an endless timeout. However, apparently this does not work (it timeouts after 0 minutes). The only option available is to set it to a high number.
Be warned! Timeouts can be set in:
- Configure Apps > Components > [Component details] > tab “Deployment”
- Inventory > Actions > [Action details]
- Administration > Settings > System Settings
- Default component deployment timeout
- TFS-triggered deployment timeout
- Administration > Settings > Deployer Settings
- Set server’s HTTP(S) file transfer timeout to
Of course, after changing the Component timeout to a higher value, the problem was solved.
This may seem an obvious solution, but this setting did work in the Acceptance environment, but failed in Production (probably because the production systems need to cope with a higher load, so executing the component takes more time).