はじめに
本記事はCI/CDツールを導入してみたいけどやり方がわからない方向けにとりあえずJenkinsを導入してテストの自動実行を行う方法を伝えるために作成しております。
前提条件
- GitHubの管理下にJavaプロジェクトが存在する
- JUnitを利用したテストケースがかけている
- awsを使ってec2インスタンスを作成することができる
よくわからない人は以下のサイトを参考にしていただけるとよいかと思います
目次
Jenkinsの導入と実行
EC2インスタンスの作成
AWSでEC2インスタンスを作成します(AMI:Amazon Linux 2023、セキュリティグループでポート番号8080、80、443、22の接続を許可します)
以降の作業はすべて作成したAmazon Linux 2023上で行ってください
Gitの導入
以下のコマンドを実行
sudo yum install git
Javaのインストール
以下のコマンドでJavaのインストール
sudo yum install java-11-amazon-corretto-headless
Jenkinstのインストールと初期設定
以下のコマンドでJenkinsのインストール
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
以下のコマンドを入力
sudo vi /etc/yum.repos.d/jenkins.repo
jenkins.repoの内容を以下のとおり変更
[jenkins]
name=Jenkins-stable
baseurl=https://pkg.jenkins.io/redhat-stable
gpgcheck=1
以下のコマンドを順に実行
sudo yum upgrade
sudo yum install -y jenkins
以下のコマンドでJenkinsを起動
sudo systemctl start jenkins
http://[パブリック IPv4 アドレス]:8080にアクセス
以下のコマンドでパスワードを確認してコピー
sudo less /var/lib/jenkins/secrets/initialAdminPassword
Install suggested pluginsをクリック
必要事項を入力→Save and Continueをクリック
URLは初期状態のままSave and Finishをクリック
Start using Jenkinsをクリック
自動化するタスクを登録
Manage Jenkinsをクリック
Toolsをクリック
Add JDKを以下の通り入力
Git Installationsを以下の通り入力
Add Mavenを以下の通り入力
Saveをクリック
TOP画面からCreate a jobをクリック
name入力Freestyle projectクリック→OKクリック
パブリックリポジトリのURLを入力
Add→Jenkinsをクリック
ユーザ名・パスワードを入力
Credentialsで先ほど作成した情報を選択
Build Stepsを以下の通り入力
This project is parameterizedにチェックを入れてString Parameterを選択
Saveをクリック
テストを自動で実行する設定
作成したユーザを選択
トークン名を入力してGenerateをクリック→トークンをコピーして保存
GitHubにアクセス→Settings
http://[Jenkinsのユーザー名]:[JenkinsのAPIトークン]@[サーバのIPアドレス:ポート]/job/[Jenkinsのジョブの名前]/buildWithParameters?token=[JenkinsのAPIトークンの名前]
参考文献
本記事は以下のサイトを参考に作成しました