Greinke agreed to a contract with the Diamondbacks on Friday, pending a physical, Ken Rosenthal of FOX Sports reports.
Details are still somewhat scarce, but multiple outlets are reporting that it's a done deal, with Jon Heyman of CBS Sports adding that it's a six-year contract. It was believed Greinke had narrowed his decision down to the Dodgers and Giants, but Arizona swooped in and landed the ace it so desperately coveted.