The entire build process is performed without an active database connection. However, for theme builds, Shopware needs to access the theme configuration. We make it available by checking it into our VCS repository. This process must be performed after you first installed Shopware in your PaaS environment because it runs a command that requires an existing database that was not created on the first run.
Set up theme configuration
First, set up the correct sales channels and configure their themes.
Use the command below to change the theme for the sales channels. Add the
--no-compile flag to disable compilation in this step, as this is not possible in a read-only environment after project deployment. The compilation will happen automatically in the next build step ( at the last step of this guide).
bin/console theme:change --no-compile
To dump the theme configuration, use the below command :
shopware ssh -A app 'bin/console theme:dump'
This will connect to the application through an SSH tunnel and run a command which dumps the theme configuration into the remote
Because we want to check the theme configuration into our VCS repository, we have to download it first.
shopware mount:download --mount 'files' --target 'files' -A app
This will download the remote directory
files into our local directory
-A parameter specifies the app name, which is just
app in our case.
Eventually, we add the downloaded configuration and add it to our repository.
git add files/theme-config git commit -m 'Update theme configuration' git push # platform main
Again, if you push changes to
platform main, it will trigger a redeploy. After this, your theme assets will be compiled properly and the deployed store will look fine.