Couple of points raised in posts -
Firstly, the invasion and seizure of Crimea by Russia actually started in the Autumn of 2013, prior to the Sochi games in Feb 2014. Just as the current events in the Ukraine have been building up since last year. In both cases the "invasions" were well anticipated months before. In the case of the Sochi games the IOC could have acted beforehand.
Secondly, Gazprom is not just a sponsor of the CL, it is the anchor sponsor for several UEFA events, the the CL being the flagship. Gazprom is a very significant UEFA partner and source of funds. Gazprombank is a major bank to the Russian state. If St.Petersburg were to lose the 2022 CL final Putin is sure to take it as a very personal snub, an insult deserving of retribution to the UEFA.
It is significant that the Beijing Winter Olympics were held with all major sponsors in place, global brands such as Coca Cola, Samsung, Bridgestone, Intel, Panasonic, Visa, Toyota. This is despite Western governments not sending officials, boycotting, because of China's actions in Hong Kong and the Uighur region.