I would like to add "some code" (like not persisted ramcache setting, etc.) when a plone instance has started and is ready.
I tried a subscriber on "zope.processlifetime.IProcessStarting", but it is too early.
Where is the best place to put this code ?
Thanks in advance
What do you mean by "too early" ?
Did you check
This works for me:
Note that you have to commit your changes!
ramcache = queryUtility(IRAMCache)
ramcache.update(maxEntries=100000, maxAge=2400, cleanupInterval=600)
Does not work because ramcache is yet changed after that.
Tried a time ago but don't remember: I think some plone config (registry ?) wasn't yet loaded...
Other problem, we don't have a plone context.
zope.processlifetime.IDatabaseOpenedWithRoot is notified before IProcessStarting
You might want to pass a context to your
Otherwise you could call
zope.component.hooks.setSite (I guess it will work as well).
Thanks @alert for your suggestions and the code references.
The ram cache setup is well kept after a commit.
I have added a product-config declaration with the site path.
Other operations work well after a setSite.
Thanks a lot