Steve Clarke’s side, decimated by injuries and suspension, needed only a point to finish top of Group B1 and they had to ride their luck at times before celebrating a massive result in the Cracovia Stadium.
Ukraine, beaten 3-0 at Hampden Park last week, missed two great chances in particular in the goalless first half and keeper Craig Gordon looked in unbeatable form.
Scotland finished two points clear of Oleksandr Petrakov’s side at the top of Group B1 and aside from promotion to the top tier, a place among the second seeds for the European Championship qualifiers and a play-off spot for that competition if the normal qualification campaign does not go to plan was also secured.
Clarke’s squad was shorn of several certain starters, mostly in defence.
Grant Hanley, Liam Cooper and skipper Andy Robertson had failed to make the squad for the triple-header due to injury and they were joined on the sidelines by, among others, Kieran Tierney, Nathan Patterson, Scott McKenna and Scott McTominay, the latter suspended, while a virus had also affected the camp.
In the event, there were six changes from the weekend’s win over the Republic of Ireland with 23-year-old Hibernian defender Ryan Porteous pitched in for his debut and Kenny McLean, Greg Taylor, Ryan Jack, Ryan Fraser and Che Adams back in the side.
The match was played in Poland due to Russia’s ongoing war on Ukraine and officially there were 3,000 Tartan Army inside the 15,000-capacity stadium making plenty of noise as the Scots started purposefully.
In the second minute Ukraine keeper Andriy Lunin saved Adams’ strike down at his right-hand post for a corner which was defended.
Ukraine settled and should have gone ahead in the seventh minute when speedy winger Mykhailo Mudryk picked out unmarked captain Andriy Yarmolenko at the back post but he volleyed high over the bar with only Gordon to beat.
There was another let-off for the Scots in the 22nd minute when Artem Dovbyk ran on to Yarmolenko’s wonderful pass and past Porteous but the veteran Hearts keeper was equal to the shot.
There was drama minutes later when Greek referee Tasos Sidiropoulos awarded Scotland a penalty for a Taras Stepanenko handball in the box from a Fraser shot but ruled it out after a VAR check.
In the 31st minute Jack fired over the bar from 16 yards after the Blue and Yellow struggled with another corner, before the unmarked Stepanenko headed over at the other end from a Ukraine corner.
Gordon had two good saves early in the second half, from Mudryk and Danylo Ihnatenko.
Ukraine continued to be foiled by the offside flag but they looked the more likely to make the breakthrough with the sliding Illia Zabarnyi knocking a shot over the bar from close range.
In the 70th minute, as the rain continued to drizzle, Stuart Armstrong, Ryan Christie and Stephen Kingsley came on for Taylor, Fraser and Jack before Lyndon Dykes replaced Adams.
Scotland had to repel increasing pressure from Ukraine – Stepanenko fired a drive wide – and they battled with everything they had through four minutes of added time to keep the point which has so many positive ramifications.
Additional reporting from PA