Toss sweet potatoes in olive oil, garlic powder, salt, and pepper in a large mixing bowl.
Spread out potato pieces onto a baking sheet, and cook for 10 to 15 minutes or until they are fork-tender. Remove from the oven, set aside, and turn oven heat down to 350 degrees F.
Cook the pasta according to package directions while the potatoes bake. Drain and set aside once the pasta is al dente.
Cook the bacon in a large skillet over medium heat until it's almost crispy. Transfer to a para towel-lined plate to drain any excess grease. Once cool to the touch, chop into bite-sized pieces.
Drain the bacon grease from skillet, leaving 1 tablespoon in the pan. Add the turkey sausage to the skillet, and place over medium heat. Use a wooden spoon or spatula to break up the meat it up as it cooks.
Brown the turkey until it is no longer pink and cooked through. Then add in the onion and garlic, and allow to cook for 1 to 2 minutes. Remove turkey, onion, and garlic to a plate and set aside.
Melt butter in a medium-sized saucepan over medium heat. Whisk in the flour and allow to cook for 1 to 2 minutes. Stir in the salt and pepper.
In a bowl combine the chicken stock, milk, and heavy cream. Pour into the flour/butter mixture and stir until smooth. Allow to cook, stirring frequently, until the sauce becomes thick.
Once the sauce has thickened, remove from heat. Add in 1 cup of mozzarella and all of the Parmesan cheese. Stir until all the cheese has melted.
Spray a baking dish with non-stick cooking spray.
Add the pasta, sweet potatoes, bacon, turkey sausage, and sage to the dish. Toss with the cheesy sauce so everything is coated.
Spread into an even layer in the dish, and then top with remaining mozzarella cheese.
Bake a 350 degree F the oven for 30 minutes or until heated through and cheese on top is bubbly. Remove from oven and serve warm.