開発とテストが完了したら、最後のステップは本番環境へのデプロイです。デプロイは開発プロセスの終盤のように思えますが、実際には想像以上に多くの意思決定や設定が伴います。この記事では、ローカル環境から本番環境への完全なプロセスと、本番環境へのデプロイ後のメンテナンス方法について記録します。
ship skill:パッケージングとコミットの標準プロセス
このプロジェクトでは、変更を本番環境にプッシュするたびに、ship skill を使用して、コミット前の完全なチェックを行います。
ship skillが行う処理は以下の通りです:
git status を実行し、どのファイルが変更されたかを確認する
ビルドを実行し、コンパイルエラーがないか確認する
コミットすべきでないファイル(.envや一時ファイルなど)がないか確認する
構造化されたコミットメッセージを生成する
変更の概要を添えてプルリクエストを作成する
このプロセスの最大のメリットは一貫性です。大きな機能追加であれ小さな修正であれ、コミットするたびに同じチェック手順を踏みます。「ちょっとした変更だから」という理由でビルドチェックを省略し、結果として本番環境で不具合が見つかるような事態を防げます。
もう一つの利点は、コミットメッセージの品質です。ship skillが変更内容を自動的に分析するため、手書きよりも正確なメッセージが生成されます。後でgit logを確認した際、各コミットで何が変更され、なぜ変更されたのかが明確に把握できます。
land-and-deploy:デプロイの実行
PRのマージ後、land-and-deployスキルを使用してデプロイを実行します。このスキルは、マージから本番環境へのデプロイまでの全プロセスを調整します:
PRのすべてのチェックが通過していることを確認
PRをmainブランチにマージ
Vercelの自動デプロイをトリガーする
デプロイ完了を待機
本番環境での正常動作を確認
プロセス全体は自動化されていますが、各ステップには明確な確認ポイントがあります。もしあるステップで失敗した場合、プロセスは停止し、次のステップへ進みません。
Vercelプラットフォーム:自動化されたデプロイインフラ
このプロジェクトはVercelにデプロイされています。Vercelを選んだ理由は単純明快です。Next.jsをネイティブにサポートしており、追加の設定が不要だからです。
主な設定項目:
自動デプロイ:mainブランチにプッシュするたびに、Vercelが自動的にデプロイを実行します。手動操作も、追加のCI/CDパイプラインも不要です
プレビューデプロイ:各プルリクエスト(PR)に対して自動的にプレビューURLが生成され、マージ前にオンラインでの表示を確認できます。これは多言語サイトの視覚的なチェックに特に役立ちます
ISR(Incremental Static Regeneration):ページは最初のリクエスト時に静的HTMLが生成され、その後は定期的に再生成されます。このサイトでは、記事ページは60秒、シリーズページは3600秒の再検証間隔に設定されています。これにより、静的ページの高速性を保ちつつ、コンテンツ更新後の変更を自動的に反映できます
環境変数管理:データベース接続文字列やAPIキーなどの機密情報は、すべてVercelの環境変数管理を通じて管理されます。環境(development、preview、production)ごとに異なる値を設定できます
公開後のメンテナンス
サイトの公開は終わりではなく、新たな段階の始まりです。継続的に行われるメンテナンス作業は以下の通りです:
コンテンツの更新:管理画面から記事を追加または編集すると、ISRが自動的にキャッシュの更新を処理するため、再デプロイは不要です
パフォーマンス監視:Vercelに組み込まれたAnalyticsでCore Web Vitalsを追跡し、どのページの読み込みが遅く最適化が必要かを確認できます
エラー追跡:VercelのFunction Logsを使用してサーバーサイドのエラーを監視し、問題を早期に発見します
依存関係の更新:npmパッケージを定期的に更新し、セキュリティホールの蓄積を防ぎます
完全なサイクル
このシリーズ全体を振り返ると——構想、設計、アーキテクチャ、実装、開発の加速、品質検証、そしてデプロイと運用——これらが一体となって、完全なソフトウェア開発サイクルを形成しています。
各段階には対応するAIツールが支援していますが、ツールはあくまで手段であり、目的ではありません。brainstorming skillはアイデアを絞り込むのを助けますが、何をするかを決めるのはあなた自身です。Serenaはコード構造を理解するのを助けますが、技術的な意思決定はあなたが行います。Playwrightはテストの自動化を助けますが、テスト戦略を決めるのはあなたです。
AIツールが変えるのは、「誰が決定を下すか」ではなく、「決定を下す効率と品質」です。それらは大量の機械的な作業を排除し、あなたが真に判断を要する部分に集中できるようにします。
このウェブサイト自体が、この働き方の産物です。ゼロから、たった一人でAIツールチェーンを用いて、設計、開発、テスト、デプロイの全プロセスを完了させました。完璧ではありませんが、動作し、利用でき、継続的にイテレーションが可能です。これこそが、AI-Driven Developmentの最もリアルな姿なのでしょう。