Take a wok, add oil and heat it.
Add the cinnamon stick, bay leaf, cloves and saute for for few seconds.
Add the sliced onions and let them cook until they turn slight brown in color.
Add ginger garlic paste and saute for few seconds.
Add the tomato puree into it.
Add dry spices such as salt, red chilli powder, turmeric powder, coriander powder, cumin powder, garam masala powder.
Mix well.
Cook the gravy on low flame until oil appears at the sides.
Add yogurt, mix and cook the gravy until oil releases.
Add water, add the boiled and squeezed soya chunks.
Mix well.
Cover and cook for about 5 to 8 minutes on low flame.
Lastly, add coriander leaves and cook for 2 minutes.
Serve hot with pulao.