spree_themes
spree_themes copied to clipboard
After some time theme on frontend resets default
Hello. Installed theme-BigShop-3-3-bump to heroku. After deploy frontend theme skipped to default view, but on backend selected theme-BigShop-3-3-bump.
https://monosnap.com/file/RALPrBxdqvDB9qECumLaBm7yv1sTzX
We have the same issue. Theme was working on Heroku straight after install but then Heroku reset this to default spree template/theme. Can anyone tell us what to do to be able to use this theme on Heroku?
Eventually, I just deleted template completely and then uploaded its assets, images and views into main app folder pushed to heroku and it seems to be working fine now. Just do not use their install procedure for production if you are going to use heroku.
But the author's advise and guidance still would be appreciated. Thank you.
@55monkey Can you describe in detail all the actions?
@PareshGupta @himanshumishra31 @bansalakhil @mjuneja Give the answer please. Thank you.
Hi @elavretskiy , We were trying to replicate the issue since the day you posted. But we couldn't replicate it. Our application is working fine.
Can you please tell us the steps so that we could replicate it and help you with it.
I reproduced the problem. The reason is that heroku filesystem is not persistent, which means all the static assets (theme and uploaded images) will be lost on deploy. I tried pushing all the templates files in the public folder to the repository also I tried running theme.publish
from the command line but nothing worked.
As @radilr1 just said, Heroku works with an ephemeral system. So all uploaded files should be sent to AWS S3 or similar service.
All we need to know is about the Vinsol Spree Theme support for these services.
@radilr1 When the theme is published, a 'current' folder in public/vinsol_spree_themes is created with symlink to the theme folder which has been published. As you know the heroku filesystem is not persistent, thus the symlink data is lost. In order to make theme work with heroku, you need to publish the theme on your local system and change the symlink path to the current directory theme folder instead of the system path of the theme folder and then deploy that application to heroku. It will find the symlink directory theme and theme will be published. Hope this works.
Updating my .gitignore worked for me:
...
/public/assets/*
!/public/assets/vinsol_spree_theme
...
Seems like the settings of Vinsol precompile is putting files in the public/assets
instead public/assets/vinsol_spree_theme
.
The generated HTML fetchs from public/assets/vinsol_spree_theme
.