We have had this discussion before. I believe it is American usage to always pronounce the indefinite article "a" to rhyme with "hay".
As I child I was taught that pronouncing "a" to rhyme with "hay" was correct if you were emphasising something, as in "There is a (ay) pencil on the table, but I do not know if it is yours, or not"
Otherwise "a" should always be pronounced "ah" with a short a, as opposed to "aah", which is what I say when surprised.
Having been brought up in Scotland I say "Once upon a (ah) time, not uh time, but I am willing to believe that there are different ways of saying it in other parts of the British Isles.