See Washington Post 2004 [2], and leaks of the Nuland transcript in 2014 [3]. They tell the same story. The U.S. has potentially always intended to renege on our stance at the end (pause?) of the Cold War.[4] Even if agree that the U.S. never promised to enlarge NATO, Putin's repeated warnings that he views U.S. adventurism in Ukraine as a provocation were clear. Personally I see the rationality of his stance. [5]
Putin is reacting the the same way Biden would if China moved nukes to Cuba. Those are the stakes our interference in Ukraine threatens in his view. No wonder Russia is spending hundreds of thousands of lives to forestall it.
This statement from Yanukovych upon his resignation is telling:
On 14 February, Yanukovych had said: "I want to say that I was incited, and I'm incited to use various methods and ways how to settle the situation, but I want to say I don't want to be at war. I don't want any decisions made using such a radical way." He called on all politicians to refrain from radicalism and to understand that "there is a line that shouldn't be crossed, and this line is law".[6] A statement made in regard to his circumstances but I wonder if his government hadn't fallen, would Ukraine would be at war now.
Ultimately I do not justify or condone Putin's invasion. Neither do I justify or condone the U.S.'s involvement in Ukraine post USSR. Insofar as we are arguing about root causes to the war, the 2021 international environment seems to rival the national entanglements that precipitated WWI. Blaming Putin or NATO totally is both too much and too little.
[1] https://www.msnbc.com/opinion/msnbc-opinion/russia-s-ukraine...
[2] https://www.americanprogress.org/article/meddling-in-ukraine...
[3] https://www.bbc.com/news/world-europe-26079957
[4] https://www.latimes.com/opinion/op-ed/la-oe-shifrinson-russi...
[5] https://www.brookings.edu/articles/did-nato-promise-not-to-e...
Ukraine couldn't have joined NATO as long as it was in a civil war anyway. I'm pretty sure most non Ex-Varsovie-pact NATO nations would've voted against anyway (sweet Russian gas).
This was a war decided by Putin because he could do it.