There was a time when I spun a vinyl record 'round and 'round, and to do so, I used the script "RotatePropToSpeed." Maybe that works for you.
I do think the entity will need to be a specific type though.
RotatePropToSpeed("ts_vinyl_1", 5.0f, 5.0f, 0.0f, -360.0f, 0.0f, false, "");
This is the script I used, but yours would be different. First is the name, but the two next floats (the 5.0f's) determine the accelleration and optimal speed. The three next floats are X Y and Z axes. Since I spun it like a vinyl, it would spin around the Y axis, but yours probably needs either X or Z. The boolean is whether the speed is reset at max (bit unsure what they mean) and the last string is an offset area (the point you want it to rotate around). If you leave it empty like I did, it will rotate around its center.
Also, it says on the page that the entity must be a StaticObject entity, but it worked fine for me with a MoveObject entity. But in the entity itself (in User Defined Variables), I had to add this: