How does Netflix build code before it’s deployed to the cloud? While pieces of this story have been told in the past, we decided it was time we shared more details. In this post, we describe the tools and techniques used to go from source code to a deployed service serving movies and TV shows to more than 75 million global Netflix members. The above diagram expands on a previous post announcing Sp
Rails アプリを Docker で稼動させる際に、 Gemfile と Gemfile.lock を先に ADD して bundle install してからアプリケーション全体を ADD することで、 bundle install の結果をキャッシュする手法はよく知られています。 ADD Gemfile /app/Gemfile.lock ADD Gemfile /app/Gemfile WORKDIR /apps RUN bundle -j4 ADD . /app こういうやつ。 ところがこの手法は Jenkins のように毎回リポジトリが clean にチェックアウトされる環境では全く無効です。 何故なら、 Docker は ADD するファイルが更新されているかどうかを、ファイルの中身そのものではなく、タイムスタンプなどのメタデータで確認しているからです。 git checko
はじめに あんまり理解せずに cron ジョブを Jenkins に投げて監視していたけどそのポイントをメモ 結局、ドキュメントに書かれていることの焼きまわしになってしまうけど... 参考 Monitoring external jobs 外部ジョブの監視も使ってみよう! こちらの記事で初めて Jenkins で外部ジョブの監視をするということを知りました。有難う御座いました! ポイント 動作確認の環境 動作確認にあたっては docker コンテナに Jenkins をインストールして確認を行った。以下は Dockerfile と起動手順。 docker build -t ${your_container_name} . docker run -t -d -p 8080 ${your_container_name} /usr/bin/java -jar /usr/share/jenkins
はじめに JenkinsでJVM上で動かない言語(PythonやRubyなど*1)を使っていると、ジョブごとに環境が分離されていないことが問題になる場合があります。 Pythonにおける virtualenv やRubyにおける Bundler を使えば、ジョブごとに利用するライブラリを分離することができます。しかし、C拡張ライブラリをインストールするためには、ジョブが実行されるノードに開発用のファイルが存在している必要があります。例えば、Pythonモジュールの lxml のインストールにはlibxml2やlibxsltの開発用ファイルが必要です。 *2 このようなファイルが必要になるたびにJenkinsのノードにインストールするのはスマートじゃないですし、実行に必要な環境はコードの形で明文化されているべきです。 ジョブでaptやyumを使ってインストールするのもセキュアじゃないですし、
はじめまして。 アメーバ事業本部でアメーバピグの開発/運用を担当しております、丸山と申します。 去る6月18日、CROOZ株式会社主催の勉強会テックヒルズにて第6回はJenkinsをテーマにして開催されました。そこでアメーバピグにおけるJenkinsの活用事例について登壇の機会を頂きました。 当日は、すでにローンチして2年以上経った状態でのアメーバピグにおいて、 * コード品質管理 * バッチ制御 * オペレーションの自動化 の3点をJenkinsを利用して如何に実現してきたかを実例を交えて話させていただきました。 が、あまりにも内容が赤裸々すぎたので後で会社から怒られないか若干心配です。 なお、発表時の資料をslideshareに上げておりますので、これからJenkinsを導入する方にとってで少しでも参考になれば幸いです。
Androidアプリのビルド/テストはCIでここまで変わる:グリーはいかにしてJenkinsを導入したのか(3)(1/2 ページ) グリーのサービス開発における継続的インテグレーションと、CIツールであるJenkinsの導入について、CI導入のモチベーション、進め方のポイントを中心に説明します。今回は、apkの作成までの自動化を手始めに、徐々に自動化の資産を積み上げていくことで開発ワークフローを改善していく過程を紹介します。 前回の「JenkinsでCIすればiOSアプリのビルドは、もう面倒くさくない」に続き、今回はAndroidアプリ開発とJenkinsについて紹介します。 Androidアプリのビルド Android開発の継続的インテグレーションの第一歩として、まずはAndroidアプリをJenkinsでビルドしてapkファイルを作成してみましょう。あらかじめJenkins、Andro
In this second iOS TDD howto video, Robert van Loghem from Xebia Mobile, shows you how to setup Jenkins Continous Integration Server to run GHUnit unit tests which were developed in XCode 4 and committed in git. This is an integral part of doing Test Driven Development for iOS (iPhone, iPod touch and iPad)
これまで、あまりテスト駆動開発がうまく出来ていなかったので、JenkinsでのCIサーバ(継続的インテグレーションサーバ)を構築しつつ、テスト駆動開発をマスターしていきたいと思って、Jenkinsのインストールを行いました。意外と情報が少なく、まとまっていないので、備忘のために記録しておきます。 インストール オフィシャルサイトからpkgのインストール こちら簡単なのですが、Welcome to Jenkins CI! | Jenkins CI こちらのMac OSXのリンクからダウンロードして、インストールする方法があります。でも、後述のHomebrewを使った方法に移行するために、アンインストールしました。 pkg版のJenkinsのアンインストール なかなか探してもうまく見つからなかったのですが、ちゃんと、アンインストール用のスクリプトファイルがインストールされていたため、それを実行
ローカルのMacBook ProにJenkinsを入れて色々試したくなりました。 サイトに行ったらMac OS X用のインストーラがあったので、これはラクチンだと入れてみたら少しハマったので回避方法を書いておきます。 まず、pkgをダウンロードしてインストールしてpsを見てみると既に起動してます。 コマンドオプションが何も指定されていないので、http://localhost:8080/を叩いてみると404 Not Found orz システム環境設定を見てもJenkinsの設定などなく一旦終了しようとkill -KILLしても自動再起動してしまう... 調べたところLaunchDaemonで起動されているようです。 ここにドキュメントがインストールされてました。 しかしまず起動と停止の方法が知りたいのですが書いてません。LaunchDaemonで調べると下記コマンドで行える事が分かりまし
最近、iOSアプリの開発でも継続的インテグレーション(CI)を取り入れていくプロジェクトが増加傾向にあるようで、各種ツールやライブラリ、ノウハウが出回ってきているように感じられます。そこで私も早速iOSアプリ開発でのCI導入を試してみることにしました。今回の導入試験では、以下のような環境を想定して行いました。 iOSアプリの開発を、Xcode 4.X系のプロジェクトとして行う。 VCSにはgitを採用し、githubの公開リポジトリをリポジトリサーバーとして使用する。 CIサーバにはMacを採用し、プロジェクトをビルドするためにXcode 4.Xをインストールしておく。 ■必要なツールを準備する CIといったら、まずは何はなくともJenkinsです。 http://jenkins-ci.org/ ここでは導入について詳しくは挙げませんが、私は以下の本を参考にしました。 https://gi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く