Ответ:

Сочетания «не холодно» и «тепло» противопоставлены союзом «а», поэтому перед ним ставится запятая.

На улице было не холодно, а тепло.