The most common way I've seen this handled is with a doom clock (which I believe comes from Apocalypse World). The GM lays down an index card with 3-6 check boxes indicating the approaching doom, and uses a GM move to advance the doom clock by ticking off a check box. Once all the boxes are checked, the doom comes to pass.
This works well for a number of reasons. It ratchets up the tension at the table as the players see the doom approach. It can be used on a 7-9 as part of a hard choice ("focusing on the goblin is going to cost you time, but doing so means the wizard will live to cast another spell") or as a consequence ("doing that will take up precious time, are you sure?") or just a hard move in response to a failure.
If you want to be really creative, you can give the players a custom move that advances the doom clock on a 6- or even a 7-9; this works extra well with cursed items.
Most importantly, it fits well with the narrative flow without tying you to a specific timeline and is abstract and flexible enough to cover any kind of event or timespan. You could even use a doom clock as a front in its own right ("the great conjunction approaches!")
Of course, as @SevenSidedDie suggests, you should always think about whether tracking the passage of time is really necessary. But the doom clock is a useful tool when you choose to do so.