この記事では、バグのないソフトウェアの迅速な提供に影響を与える統合の目的の達成、直面している問題、およびスムーズで定性的なソフトウェアを提供するための提案されたアップグレードについて説明します。ここでの主な目標は、コードを変更して迅速に検証する自信を養うこと、手作業を一切行わずに技術アップグレードを実行できる状態にすること、および手動テストの必要性をゼロにすることです。
導入
開発プロセス中は、Web アプリケーションのテスト スイートを頻繁に実行して、予期しない問題から戦略的に距離を保ち、すべてがスムーズに実行されていることを確認することが重要です。ただし、テストの実行を常に忘れないようにするのは難しい場合があります。また、テスト スイートが大きくなるにつれて、実行にかかる時間がますます長くなります。ここで継続的統合サーバーが登場します。 CI サーバーは、アプリケーションを自動的に構築し、変更を加えたときにテストを実行できます。さらに、エラーやテストの失敗も通知します。Jenkins は、Ubuntu 14 で人気のあるオープン ソース CI サーバーの 1 つです。
Jenkinsのセットアップ
Ubuntu 14 上で人気のオープンソース CI サーバーである Jenkins をセットアップします。次に、変更が GitHub にプッシュされたときに Ruby on Rails プロジェクトの Rspec 仕様とコード カバレッジ レポートを実行するように Jenkins を設定します。
Jenkinsのインストール
1. System Update – sudo apt-get update
2. Web Server – if any web server not installed on your system – sudo apt-get install nginx
3. Java – sudo apt-get install openjdk-7-jdk
4. wget -q -O – http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add –
5. sudo sh -c ‘echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list’
6. sudo apt-get update
7. sudo apt-get install jenkins
8. sudo service jenkins restart
9. Type ssh-keygen in your local system and add the key into your project repository in GitHub.
Jenkinsの構成
1. Go to http://localhost:8080
2. It will ask for Admin password get it from /var/lib/jenkins/secrets/initialAdminPassword
- フォルダーへのアクセス許可がない場合は、sudo chmod -R 777 /var/lib/jenkins/secrets
- vi /var/lib/jenkins/secrets/initialAdminPassword
3. 必要なプラグインをインストールするには、「Manage Jenkins」をクリックし、「Manage Plugins」をクリックします。 「Available」タブで、次のプラグインを確認します。
- ギット
- GitHub
- RVM
- レーキ
- ドックリンク
- メイビン
4. Next, select “Download now and install after restart”
5. Configure Global Security. Navigate back to “Manage Jenkins” and select “Configure Global Security”. On this screen, check “Enable Security”, then “Jenkins’ own user database” under “Security Realm”. After that, select “Project-based Matrix Authorization Strategy” under “Authorization”.
6. From there, add “admin” and “github” users, checking all permissions for admin and only “Read” for github. Confirm your settings with the screenshot below and save the changes.
プロジェクトの構成
1. From the home page, click on “New Item”, then select “Build a free-style software project” and click “OK”.
2. Fill in the “Project Name” and “GitHub project” fields.
3. Under “Source Code Management”, select “Git” and fill in the repo url. (If you need to authenticate with SSH, configure that here.)
4. Click Run the build in a RVM-managed environment and add rvm version.
5. In build, select “Execute Shell Commands” and specify the following commands:
- #!/bin/bash -e
- ソース ~/.bashrc
- RVMは2.3.0を使用します
- バンドルインストール
- エクスポート RAILS_ENV=テスト
- Rake データベース:作成
- rake db:スキーマ:ロード
- Rake テスト:準備
- rスペックスペック
6. To make sure that you know when a build fails, set up email notifications in “Add post-build action”. Configure SMTP on the “Configure System” page, found under “Manage Jenkins”.
7. In post build actions, select “Publish Document” and configure like below.
Jenkins を使用したテスト
- 利用可能なプロジェクトのリストから、ビルドするプロジェクトを選択します。
- 「今すぐビルド」をクリックします。
- 「ビルド履歴」に移動し、最新のビルド番号をクリックします。
ビルドが赤色の場合は、ビルドが失敗したことを意味します。
- セットアップ エラーがある場合は修正します。
- 失敗したテスト ケースを修正し、再度ビルドします。
ビルドが青色の場合は、ビルドが成功し、コードをデプロイする準備ができていることを意味します。
- 「コードカバレッジレポート」をクリックします。
- 作成したテスト ケースのコントローラーをクリックします。
- コードカバレッジの割合を確認します。
- 100% がカバーされていない場合は、行番号とカバーを確認してください。
参考文献
http://www.webascender.com/Blog/ID/522/Setting-up-Jenkins-for-GitHub-Rails-Rspec#.WG8_Lp6qq1F
レールカーマ has been offering Rails Development services for over past 8 years. Our developers are well versed with executing all kind of Ruby on Rails アプリケーション開発 プロジェクトを強化し、既存の Ruby on Rails アプリケーションの機能を強化します。当社の開発スキルやこれまでに取り組んできたプロジェクトについて詳しく知りたい場合は、お問い合わせください。