2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【CI/CD実習】GitLab→Jenkins→Artifactoryの動作検証 前半

Posted at

これまでGitLabとJenkinsとArtifactoryに触れてみましたので、3つのサービスを連携させてみました。
今回はGitLabにjavaファイルを格納してJenkinsからそのプロジェクトを参照してjarファイルにコンパイルして、その成果物をArtifactoryに格納まで実施してみます。

GitLabにてjavaファイル作成

まずはGitLab上で以下のjavaファイルを作成します。

test.java
class javatest{
        public static void main(String[]args){
                System.out.println("Hello World");
        }
}

jarファイルの生成には以下のmanifest.mfファイルが必要らしいので、GitLabのプロジェクトに以下ファイルも追加作成します。
Main-Class:の後ろに入力する値は、上記javaファイルに記載しているClass javatestのjavatestとなります。

manifest.mf
Main-Class: javatest

上記ファイルをGitLabのプロジェクトに作成しました。
test_01.png

#Jenkinsにプロジェクトを作成する
次に上記で作成したプロジェクトをJenkinsで動作させる準備として、プロジェクトの作成を実施します。
以下の通りまずは空のプロジェクトを作成しました。
test_02.png
JenkinsのプロジェクトでGitLabのプロジェクトを参照するためには、プロジェクトの設定から以下の項目を「Git」に変更します。
それから「リポジトリURL」にGitLabのプロジェクトのURLを入力します。
GitLabのプロジェクトにアクセスするための認証情報を設定する必要がありますので、以下画像の緑枠内にある「追加」ボタンを押します。
test_03.png
すると以下のような画面が表示されますので、各項目を設定していきます。
httpでGitLabにアクセスする場合は、「種類」はデフォルトの「ユーザー名とパスワード」のままです。
ユーザー名にGitLabのプロジェクトへのアクセス権をもつGitLab上のユーザー名を入力し、パスワードにはそのユーザーのパスワードを入力します。
以下画像の青枠内の項目を設定すれば最低限アクセス可能となります。
ユーザー名が重複してわかりづらくなってしまう可能性があるので、「説明欄」に追加した対象のユーザーアカウントについての説明文を任意で記載します。
設定が完了したらオレンジ枠内の「追加」をクリックします。
test_04.png
設定完了後、追加した認証情報を選択すると、正しく設定されていれば以下の通り「リポジトリURL」と「認証情報」の間に表示されていたエラーが消えます。
test_05.png
ちなみにエラーは以下の様に表示されます。
test_06.png
認証が通りましたので、次は設定画面の下の方にある「ビルド」からビルド手順の追加を行います。
今回は単純にシェルスクリプトのコマンドでjarファイルのビルドを実施しようと思いますので、「シェルの実行」を選択します。
test_07.png
実行するコマンドは以下の通りです。

javac javatest.java
java javatest
jar -cvfm javatest.jar manifest.mf javatest.class
ls -l

上記コマンドを「シェルスクリプト」の右側に入力して、「Apply」 - 「保存」をクリックします。
test_08.png

ジョブの実行テスト

設定完了後、一度ビルドを実行してみます。
「ビルド実行」をクリックし、少々待ちます。
test_09.png
ビルド結果画面に移動します。
以下の青枠内に青色の丸が表示されていれば成功です。
ジョブの出力結果を確認するので、「コンソール出力」をクリックします。
test_10.png
実行されたジョブの内容が表示されます。
以下青線部にjavatest.javaファイルをコンパイルして作成されたjavatest.classファイルの実行結果が表示されました。
また、オレンジ枠内にjavatest.classファイルとjavatest.jarファイルが表示されているため、想定していたコマンドは全て正常に実行完了しているようです。
test_11.png
これでGitLabからJenkinsまでの連携は成功しました。
次回はこのプロジェクトで作成されたjarファイルを自動でArtifactoryのリポジトリへデプロイする様に設定していきます。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?