Architecture
stripe.devはGitHub Pagesを利用して、10以上のマイクロサイトを持つ構成でした。
しかし運用方針の変更などにより、メインサイトをVercelに移すことになります。ただし各SDKチームなどが所有するマイクロサイトの移行まで行うのは現実的ではなく、サブディレクトリにあるサイトはGitHub Pagesへ残すことを決定しました。
現行サイトの影響を最小限にする必要があるものの、Vercelへstripe.devのDNSレコードを変更する必要があるため、全サイトのリライトルールを設計、一部サイトで特殊な構成があったため、Next.jsのmiddlewareなども活用して移行を実現させました。Vercel CLIの機能も活用し、事前にSSL証明書の発行を済ませることで、当日はゼロダウンタイムでの切り替えを実現させています。
また、副次的な成果として、稼働しているマイクロサイトとリポジトリ、所有者などのインベントリ整理と、すでに稼働していないサイトの停止措置なども実現しました。

Hidetaka Okamoto
Developer Experience Engineer
Developer Experience Engineer. A developer specialized in serverless application development on AWS and Cloudflare. Former Stripe Developer Advocate / AWS Samurai 2017. Skilled in creating content and presentations that introduce service usage and best practices. You can follow me on Twitter at @hidetaka_dev