How can I slowly pivot the player?

I am trying to make a Roblox hockey game, and for the turning, I would like to slowly pivot the player a maximum of 30 degrees over the course of 4 seconds when they hold A. How would I go about making a system like this?