aws / aws-codedeploy-agent

Host Agent for AWS CodeDeploy
https://aws.amazon.com/codedeploy
Apache License 2.0
328 stars 188 forks source link

fix changedir when unpacking tar/tgz #396

Open andogq opened 3 months ago

andogq commented 3 months ago

Issue #, if available: N/A

Description of changes:

When running multiple deployments with a tar/tgz bundle on the same host with the same codeagent instance, there is a chance for a race condition at the DownloadBundle step where it may fail with a variety of error messages (eg):

This change removes the use of FileUtils.cd when spawning the tar command in favour for tar's -C option which sets the changes the directory when running the command. This resolves any contention on the current directory as the directory is changed within each process' respective shells.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

dnjohnson commented 3 months ago

Can confirm this problem is affecting us in production and the proposed patch addresses the issue. Highly recommend 👍