copilot-cli
copilot-cli copied to clipboard
domain mapping support
Hi, I've been using and advocating for Copilot now for 2+ years at a C level capacity with multiple organizations and teams. It's been a game changer for small startups.
My biggest pain point is that the domain has to be chosen before deploying (at copilot app creation time). This is okay until we start rolling things out to the public. As infra becomes more sophisticated it's a real pain to redeploy behind a new domain because Business is changing the LLC name or the vanity component of the URL frequently. It really does cost multiple days of time and given how frequently domains change with my current team, I end up sacrificing entire weekends of my time to change the domain.
Surely there's a way to use route53 to map a second domain on top of my Copilot app, or as many have mentioned before, a way to modify the domain after app deployment. From what I can see here, the latter looks pretty impossible.
Looking for any advice from the community or from devOps wizards.
Thanks so much!
@str11ngfello how have you approached this in the past?
@str11ngfello Thanks for supporting Copilot - sharing your pain points is truly appreciated ❤️!
I am also curious to learn what people's approach are! Meanwhile I'd like to share some idea - that you are probably already aware of, but just in case 💭 .
https://github.com/aws/copilot-cli/issues/3293 is a related proposal that suggests Copilot to support environment-level domain. With this, I imagine you at least wouldn't need to rebuild the whole app, but instead build a new environment using the new domain 💭.
Given that your domain changes frequently, I'd suggest trying out importing certificates. You'd be able to just swap out the certificate that validates your new domains, and then update each services to use the new domains. The pain of managing the Route53 ALIAS records yourselves can be alleviated by the http.alias.hosted_zone field. This is an existing solution and might be easier than swapping the entire app.