Using Assets in the YAML file
When the Assets Storage is enabled Squash will automatically add a new /assets/
mount point for all deployments within the repository.
Using the copy_files_build_process feature in the YAML file
Here you would manually copy files or folders within the build process defined in the .squash.yml
file. This will essentially transfer data from the assets folder to a different location within your source tree. Then you can use the files as part of your application’s build process.
Example:
deployments: CRM: filename: ./src/crm/Dockerfile context_path: ./src vm_size: 1GB copy_files_build_process: - /assets/sanitized-db.zip ~/code/myapp/sanitized-db.zip
Docker volumes
WARNING: We do not recommend changing asset files permissions or file ownership within a Docker volume. This will essentially cause these permissions to propagate to the host deployment and will also affect any active deployments using the assets folder. Another side effect is the ability to upload files from the Squash UI, uploads/updates will be automatically blocked from the Squash interface for assets folders/files with custom ownership or permissions.
You can easily associate the Assets Storage with your deployments by defining a Docker volume from your .squash.yml
file as follows
run_options: -v /assets/pictures:/home/devel/pictures
For the example above, Squash will mount a new “pictures” folder within the “devel” home folder of all docker containers using the contents from the assets storage.
For more details, see run_options.