Moving Hosted Domain

    We want to move seedteamtalks.hyper.media to a new subdomain at develop.seed.hyper.media

    Generally this requires a few steps. We have to be pretty careful because the team is relying on this site. But it will be good practice for customers who want to move domains.

    For example if a user publishes name-example.hyper.media and later wants to move to their own name-example.com, we should support this! And we should redirect from all of their old URLs to the new domain.

    Procedure

      1. Set new DNS

        We will do this by adding the new subdomain to the infra repo, and deploying on terraform

        1

        Risk: Low. This won't harm anything because nobody is using the new domain yet

      2. Re-Configure Hosting

        Tricky. Basically we need to change the postgres db inside the host service

        Risk: this is the most risky step because the host service doesn't have a workflow for this. When it succeeds, then the old domain will break temporarily

      3. Change p2p hm data

        This is very easy once the hosting change is complete.

        The production seed app has a workflow for this. First we would remove the domain from the site, then go through the "publish with custom setup URL workflow". By this time, the server is already set up, so we don't need to specify anything other than the new hostname. The Seed app will see that the server is already set up, and it will apply the change to the document metadata.

        Risk: Medium. There will be a few seconds during this process when the p2p data has no domain for our site. But I don't think this will cause any problems.

      4. Redirect from the old domain

        We should set up a HTTP(S) redirect so that all of our old URLs (in Discord, for example) stay working.

        Maybe we should properly build this redirect into our hosting infrastructure. We need some way to ensure that nobody claims a new site at seedteamtalks.hyper.media

        Risk: Medium, because this namespace is currently owned by our infrastructure.