Nelson Cruz, a seven-time All-Star who has 459 career home runs, agreed to a one-year, $1 million deal with the San Diego Padres, sources told ESPN.