Skip to content

Latest commit

 

History

History
33 lines (26 loc) · 1.61 KB

README_v1.md

File metadata and controls

33 lines (26 loc) · 1.61 KB

Java Springbootで簡単なAPIを作成し、Code PipelineでCI/CD化

  • 参画中の案件にてPipelineを使用する予定みたいなので、動作確認してみる。
  • 本番環境での運用を考えるとELB、ECS Fargateを使用すべきなので、その辺も今後確認予定。
  • CircleCIとの比較もしてみたい。

構成図

image

  1. GitHubにpush
  2. Code Pipelineの設定で対象リポジトリ内のブランチ変更を検知
  3. GitHubに資材を取りに行く
  4. Code Pipelineを介してCode Buildスタート
  5. Code Buildでビルドしたjar+αをS3にput
  6. Code Deployスタート
  7. Code Deployの指示を受け、EC2(Codedeploy Agent)で処理実行
  8. EC2にてCodeDeploy AgentがS3から資材を取得し、デプロイ

CI/CDに用いた主要ファイル

  • buildspec.yml

    • ビルドの仕様を記載したYaml形式のファイル。実行するLinuxのコマンドやS3にアップロードするファイルパスなどを記述。
  • cddedeploy/appspec.yml

    • デプロイの仕様を記載したYaml形式のファイル。S3から取得したモジュールの配置場所、各フェーズで実行する処理を記述。
  • deploy/backendProject-restart.sh

    • アプリケーションをSystemdサービスとして常駐させるためのシェルスクリプト。デプロイ時、モジュールを配置後にサービスを再起動させる。

参考

Spring Bootを使ったWebAPIの作成