Championship side Blackburn Rovers have agreed a deal of £1.75m, potentially rising to £3m, for the 21-year-old.
Armstrong spent the second-half of last season on loan at Ewood Park and scored nine goals in 21 matches as the Lancashire club returned to the Championship.
The English forward has also enjoyed loan spells at Coventry City, Barnsley and Bolton Wanderers.
Blackburn begin their campaign away to Ipswich Town at Portman Road on Saturday, though have added to their squad by bringing in Jacob Davenport from Manchester City and Joel Rothwell from Oxford United, as well as securing Chelsea's Kasey Palmer on a season-long loan deal.