Trim off the roots off from the spring onions removing as little as possible, then cut them into 7cm (4in) in length. You will only need these tips for this recipe.
For the spice paste marinade - Place the spring onions tips, garlic and ginger into a food processor and pulse a few times until a chunky paste forms. Add in the remaining spice paste marinade ingredients and pulse to combine.
Dry your duck by patting it all over with paper towels. Using a spoon, place 2/3 of the spice mix into the cavity of the duck. Use steel or a wooden skewer to secure the opening of the duck's cavity. Rub the remaining spice mix all over the duck's skin, under the wings and legs. Place the duck in a large snap bag or on a large plate wrapped in plastic film. Allow the duck to marinate overnight in the fridge.
Take the duck out of the fridge and leave at room temperature on the kitchen bench for 30 minutes. Prepare the roasting tray - For easy cleaning, line the base of a large baking tray with baking paper (parchment paper) then line the entire inside of the tray with foil. Place the roasting rack on top.
Preheat oven to 180°C (360°F) or 160°C (320°F) for fan-forced ovens. Use paper towels to completely remove the marinade (spice paste) from the duck skin, but don't remove the skewer or the marinade in the cavity.
Make the glaze by mixing balsamic vinegar and soy sauce in a small bowl. Place the duck on the roasting rack with the breast down and brush the duck all over with the glaze.
Roast the duck for 30 minutes, then glaze the duck again. If any part of the duck looks dark, such as the wings or legs, cover it with foil. Rotate the baking tray and bake for another 30 minutes. Carefully turn the duck over so the breast is facing up and brush on the glaze, then bake for 30 minutes. Rotate the baking tray and glaze the duck and back for another 30 minutes. It should take approximately 2 hours in total to roast the duck.
Switch your oven to grill or broil mode on medium to high heat to crisp up the duck skin. This should take between 5 to 10 minutes on each side, but take care not to burn the duck.
Allow the duck to rest on the tray for 15 minutes. Remove the skewer and drain out the marinade in the cavity before chopping and serving.