President Donald Trump says he has struck a deal with Vladimir Putin to obtain diesel from Russia, a stunning reversal of US pressure on Moscow over its war with Ukraine, in a bid to tackle soaring fuel prices ahead of the midterm elections.