Skip to content

Conversation

@moliver-hemasystems
Copy link

When the application image comes from a custom build pack, loading all volumes from the container results in "/workspace" being overwritten. This results in the application files no longer being available, which can cause commands to fail (like running rake tasks in CloudBuild or via the appengine:exec rake task through the appengine gem).

I modified the app engine exec wrapper's execute shell script to replace the --volumes-from flag with a series of -v flags, allowing us to filter out any volumes from the container that would overwrite the "/workspace" path. This allows other volumes that contain useful helpers to continue to mount on the image, while also not losing the application files.

I made these changes, based on PR #229 seemingly having stalled out, in hopes the reason for it not being merged in was because there were other volumes that needed to continue to be included other than the "/cloudsql" one, such as "/builder/home", "/builder/outputs", and "/cloudbuild/scripts". This specifically targets "/workspace" to prevent the application files from being overwritten by the script.

@google-cla
Copy link

google-cla bot commented Aug 20, 2025

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

…he "/workspace" when including volumes from the container

When the application image comes from a custom build pack, loading all volumes from the container results in "/workspace" being overwritten. This results in the application files no longer being available, which can cause commands to fail (like running rake tasks in CloudBuild or via the `appengine:exec` rake task through the `appengine` gem).

I modified the app engine exec wrapper's execute shell script to replace the `--volumes-from` flag with a series of `-v` flags, allowing us to filter out any volumes from the container that would overwrite the "/workspace" path.  This allows other volumes that contain useful helpers to continue to mount on the image, while also not losing the application files.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant