#Haskell, 35 <s>38</s> bytes
List comprehension thanks to nimi:

 f x=unlines[[1..n]>>"*"|n<-[1..x]]

Old version:

 f 0=""
 f n=f(n-1)++([1..n]>>"*")++"\n"

Alternate version:

 g n=([1..n]>>"*")++"\n"
 f n=[1..n]>>=g