Postpublished at 15:25 British Summer Time 28 April
Donegal 0-13 Tyrone 0-14
Three to go and Tyrone still hold that slender advantage!
Donegal are pressing though...
Donegal v Tyrone - 14:00 BST
Donegal last won the Ulster final in 2019.
Tyrone last lifted the Anglo-Celt in 2017.
The winner will face Armagh in the Ulster final on Sunday 12 May.
Andy Gray
Donegal 0-13 Tyrone 0-14
Three to go and Tyrone still hold that slender advantage!
Donegal are pressing though...
Donegal 0-13 Tyrone 0-14
Donegal 0-13 Tyrone 0-14
Darragh Canavan lands a free and Tyrone edge in front once again.
Donegal 0-13 Tyrone 0-13
Ciaran Thompson with a chance to level it......and he absolutely nails it!
Six to go and we're level once again!
Donegal 0-12 Tyrone 0-13
Orla Bannon
BBC Sport NI at Celtic Park
Every time Tyrone have nudged in front in this half, Donegal have responded and drawn level twice. It is so tight.
Donegal haven't led since the fifth minute and there's a sense that if they can get their noses in front, it could be massive going into the final 10 minutes. So far Tyrone are hanging on.
Donegal 0-12 Tyrone 0-13
Don't forget, Tyrone had to go through an exhausting extra-time period in their quarter-final win.
Will that show in the closing stages?
Donegal 0-12 Tyrone 0-13
Tyrone are not making their lives easier for themselves as every time they get a two or three point lead they're letting Donegal back in it.
The longer this goes on the more it's in Donegal's hands.
Donegal 0-12 Tyrone 0-13
Michael McKernan sends one over from range and the scales tip in Tyrone's favour once more.
Ten minutes to play and this is anyone's game!
Donegal 0-12 Tyrone 0-12
Donegal win a free in just outside the square, and Oisin Gallen does the rest.
Level once again with 15 minutes to play.
Donegal 0-11 Tyrone 0-12
Now the momentum is with Jim McGuinness' side! Caolan McGonagle with a fine effort!
Donegal 0-10 Tyrone 0-12
Peadar Mogan pulls off a big score to bring it back to two. We don't know where to look, the scores are flying over.
Donegal 0-9 Tyrone 0-12
In the blink of an eye it's three!
Darragh Canavan puts a goal between the sides!
Donegal 0-9 Tyrone 0-11
Ciaran Daly punishes a poor kick out and Tyrone's lead is up to two!
Donegal 0-9 Tyrone 0-10
Philly McMahon
Eight-time All-Ireland winner with Dublin on BBC Sport
It's one of those games that needs a goal to spark something but we're not really getting goal chances. All we have to hope for is that there's momentum building at both ends.
Donegal 0-9 Tyrone 0-10
Tyrone win a free and Niall Morgan strolls up to take it...and he lands it!
That's the Red Hands into double figures and three of those are from the keeper.
Donegal 0-9 Tyrone 0-9
Daire O Baoill does what he does best and we're level for the fifth time this afternoon!
That's his last contribution and Jamie Brennan is on in his place.
Donegal 0-8 Tyrone 0-9
Back to one! Niall O'Donnell fires it over after a nice shimmy in the middle.
Donegal 0-7 Tyrone 0-9
Donegal 0-7 Tyrone 0-9
And just like that, the lead is back up to two.
Niall Morgan is up from his goal to curl it between the posts.
Donegal 0-7 Tyrone 0-8
Conal Devlin is down receiving treatment but play continues and Donegal have a man advantage.
Oisin Gallen looks to pull them level but it's narrowly wide and Tyrone survive!