Hi guys, I've searched your forum for this, I've read the Dreamhost Wiki, and I've also contacted their support, but I'm left with incomplete answers.
I have what I consider a bulletproof plan for no-downtime transfers within Dreamhost, and I invite anyone here to lend me their criticism and advice (please shoot it full of holes, I'm a DH noob).
Objective: transfer www.example.com from account_a on DreamHost to account_b on DreamHost with no downtime for the site or email
[*]account_a is another web developer who originally created the site, they are onboard with working with me and my client
[*]account_b is the account for my client
[*]Site www.example.com is DNS and fully hosted with account_a on Dreamhost
[*]www.example.com is a static site with no databases or dynamic content, just some HTML and images, css, js, etc.
[*]mail is hosted by google (business apps account) - i.e. there are MX and other text records in the zone file
[*]Create a new folder in account_b's FTP where the site will reside after transfer, mirror content to that folder
[*]Prior to transfer I insert an A record to www.example.com which points to a third party server that will act as a fill-in during the transfer. Because the site is only static, it is easy for the content to be mirrored. I've confirmed that this third server works by editing my hosts file and connecting to www.example.com - the site that was returned was served by my third server as expected.
[*]I would normally confirm here that DNS propagation has occurred to my third server, however DreamHost does not seem to allow overriding the Fully Hosted DNS records, it is my understanding that when the hosting is removed that the DNS then falls back to whatever additional records you have added to the zone file. In this case I proceed with the hope that the DNS falls back as expected.
[*]Ensure the site's whois information is up to date on account_a
[*]Remove hosting from account_a on DreamHost
[*]Unlock domain from account_a on DreamHost
[*]Request site transfer from account_b on DreamHost using the site's unlock code accessed in account_a, existing whois information, and using DreamHost's nameservers as before
[*]Approve the incoming transfer after receiving the confirmation email from DreamHost to account_b's email
[*]Approve the release after receiving a confirmation from DreamHoust to account_a's email
[*]I don't expect any hiccups as I've done my homework up to this point, so once I see the domain pop up in account_b's control panel I activate "fully hosted" and wait to see the site being returned from its new address.
[*]After I've confirmed the site is being returned from its new DreamHost hosting I remove my custom A record pointing to a third server - it's no longer needed at this point.
I guess my big question here is: are the DNS records maintained during the transfer (address and mx records) or is there simply no way to avoid downtime for the website and email? I've come from using GoDaddy and I have transferred domains into my account from other registrars using a similar plan to what I've outlined above successfully. I need to ensure there is minimal impact to my client's site so I am unwilling to try this without a little insider knowledge. I'm also calling out to anyone who has done this before with google hosted mail - did you experience any disruptions to your email during the transfer?
By the way, how I am determining where the site is currently: I wrote a really basic PHP file that just spits out the server address and path to file. Whenever I go to that php page I can see what IP the site is being served from (e.g. www.example.com/dnsinfo.php). Here it is if you want it:
echo "Test Worked, Server Address is: ".$SERVER["SERVERADDR"];
This script filename is: ".FILE;
Thanks in advance to anyone who replies to my post