Combine olive oil, tomatoes, onions, garlic and salt and pepper in a bowl and toss well to coat.
Transfer to a sheet pan and oven roast for 25 minutes, or until browned.
Place tomato mixture and, vegetable stock in a soup pot. Bring to a boil. Reduce heat and simmer 5 minutes. Puree soup with yogurt. Add basil or pesto.