Sachverhalt: A. A._ bezog ab 1. Oktober 1998 eine ganze Rente der Invalidenversicherung (Verfügung der IV-Stelle des Kantons Solothurn vom 14. September 1999). Die Rente wurde mehrmals bestätigt, letztmals im März 2011. Anfang 2014 leitete die infolge Wohnsitzwechsel im November 2006 neu zuständige IV-Stelle des Kantons Aargau ein weiteres Revisionsverfahren ein, nachdem sie Kenntnis davon erhalten hatte, dass A._ in den Jahren 2008 bis 2012 verschiedentlich erwerbstätig gewesen war. Im Rahmen ihrer Abklärungen nahm sie Einsicht in die Akten der Sammelstiftung B._. Diese enthielten u.a. einen Bericht vom 7. Juli 2015 über die Observation der Versicherten im Zeitraum vom 20. Oktober 2014 bis 25. Juni 2015 sowie ein von Dr. med. D._, Fachärztin für Psychiatrie und Psychotherapie, erstelltes Gutachten vom 15. August 2015. Nachdem der Regionale Ärztliche Dienst (RAD) am 8. April 2016 dazu Stellung genommen hatte, hob die IV-Stelle nach durchgeführtem Vorbescheidverfahren mit Verfügung vom 6. Juli 2016 die ganze Rente rückwirkend auf den 20. Oktober 2014 auf. B. Die Beschwerde der A._ wies das Versicherungsgericht des Kantons Aargau nach zweifachem Schriftenwechsel und Beiladung der Sammelstiftung B._ sowie der Pensionskasse C._ zum Verfahren mit Entscheid vom 12. April 2017 ab. C. Mit Beschwerde in öffentlich-rechtlichen Angelegenheiten beantragt A._, die Verfügung der IV-Stelle des Kantons Aargau vom 6. Juli 2016 sei aufzuheben und es sei ihr weiterhin eine ganze Rente zuzusprechen; eventualiter sei die Sache an das kantonale Versicherungsgericht zwecks Durchführung einer ergänzenden Sachverhaltsabklärung, allenfalls einer gerichtlichen Begutachtung, zurückzuweisen, unter Gewährung der unentgeltlichen Rechtspflege.