😊
Laravel8の終焉まであとわずか!
はじめに
公式のSupport Policyにあるように、Laravel8のEOLは2023/1/24となっています。本稿執筆時の2023/1/12において、あと2週間を切りました。Laravel8を利用している開発者・運用者の方はご留意いただき、Laravel9へのバージョンアップ対応の準備をしたいところですね。(いまさら感はありますが...)
以下は上記のSupport Policyからの抜粋です。
バージョン | PHPバージョン | リリース日 | バグフィックス | セキュリティフィックス |
---|---|---|---|---|
6 (LTS) | 7.2 - 8.0 | 2019/9/3 | 2022/1/25まで | 2022/9/6まで |
7 | 7.2 - 8.0 | 2020/3/3 | 2020/10/6まで | 2021/3/3まで |
8 | 7.3 - 8.1 | 2020/9/8 | 2022/7/26まで | 2023/1/24まで |
9 | 8.0 - 8.1 | 2022/2/8 | 2023/8/8まで | 2024/2/6まで |
10 | 8.1 | 2023/2/7 | 2024/8/6まで | 2025/1/4まで |
やること
- Upgrade Guideに丁寧にアップグレードの手順が記載されています。それに従って、まずはソースコードの修正を行いましょう。
- システムが問題なく動作するか、システム全体の統合テスト(回帰テスト)をステージング環境など本番環境と同等の環境で行いましょう。メジャーバージョンのバージョンアップは大規模なFWの改修となるので、広範囲の回帰テストは必須です。自動化されている場合は自動テストを実行するだけですが、そうでない場合は人力で確認するしかありません。
- リリース可という判断になればリリースしましょう。
回帰テストを人力で行う場合、工数やリソースの関係で全てのテストができないケースも考えられます。機能ごとに優先度を割り振り、重要でない機能は簡単なテストにするなどの工夫が必要です。
その他、利害関係者との認識合わせが必要です。受託などのケースでは発注者を説得する必要があるかもしれません。
バージョンアップしないとどうなるのか?
バージョンアップしないからといって、すぐにどうなるものでもありません。ただし、インパクトのある脆弱性が発生した場合、Laravel8ではセキュリティフィックスは行われません。したがって、その時点でLaravel9にバージョンアップしたとしても、メジャーバージョンのアップグレードは一筋縄ではできないため、その隙に攻撃される...といった最悪の自体を招く可能性もあります。
バージョンアップするだけでよいのか?
いいえ。オープンソースのセキュリティフィックスは日々行われています。Laravelも同様です。定期的にセキュリティの更新情報を監視し、常に最新のバージョンになるように努めましょう。(セキュリティパッチのアップグレードはそれほどの工数を必要としません)
次期Laravel10へのバージョンアップを見据える
Laravel9のEOLは2024/2/6です。直前になって慌てないためにも、余裕を持ったバージョンアップ計画を立てておきましょう。
まとめ
- Laravel8のEOLまで2週間を切りました。(2023/1/12時点)
- Laravel9へのバージョンアップ対応の準備をしましょう。
- バージョンアップはドキュメントの手順に従いましょう。
- システム全体の回帰テストを行いましょう。
- Laravel9へのバージョンアップで終わらず、定期的にセキュリティ対応を行いましょう。
- バージョン10への対応も見据えて早めの計画を立てておきましょう。
Discussion