move bundle generation to an explicit task