You can configure the right amount of memory, vCPU and storage to tailor your needs. Every application is different and Squash gives you flexibility to change these settings in multiple levels.
This gives you a default VM size that is used across all repos. You can still overwrite this setting by using one of the options below.
This will apply to all deployments within a given repository. You can still overwrite this setting for specific deployments or Dockerfiles.
This is the most specific option and applies to a given deployment tied to a branch of code.
The vm_size field of the .squash..yml is another way to define the VM size for deployments.
If you use Docker and have multiple docker files defined in the .squash.yml file then by using this option you might also define different VM sizes per Dockerfile or docker-compose file.