Make the filling, in large frying pan heat the oil then sauté the onions and garlic until lightly golden.
Add the beef and spices then cook on a high heat while stirring for 5-10 minutes until the meat is browned.
Add the diced tomatoes, tomato paste and herbs then simmer covered on a low heat for 15-20 minutes then remove from heat and set aside to cool.
Make the pastry, add the milk and butter into a small saucepan then over a low heat stir for 2-3 minutes until butter has melted and mixture is lukewarm then remove from heat and set aside.
Combine the sugar and 1/2 cup of lukewarm water in a small bowl then scatter in the yeast then set aside for 8 minutes to allow the yeast to become foamy.
Combine the milk and yeast mixtures into a large bowl then add the flour and 2 tsp salt then stir to form dough.
Place the dough on a lightly floured surface and knead for around 6 minutes until smooth and elastic then roll into a ball, place in an oiled bowl and turn to coat. Cover with plastic wrap and set aside in a warm place for 1 hour to rise.
Make an egg wash for the pastry, whisk egg yolk with 1 1/2 tblsp water then set aside.
Preheat oven to 180c.
Lightly grease 2 large oven trays.
On a lightly floured work surface, flatten dough and divide into 8.
Working with one portion at a time, roll into a 16cm x 25cm oval shape.
Place a small portion of feta cheese in the center (40g) then top with one-eighth of the filling, leaving a 3cm border around the edge.
Brush border with the egg wash then pull dough up and fold over to partially cover the filling.
Brush dough with egg wash and transfer to baking trays and bake for 20 minutes or until golden.