Jenkins study 7 2013-01-28

6,252 views

Published on

第7回Jenkins勉強会発表スライド
「Jenkinsを使うようになったきっかけ、EclipseのC++プロジェクトを簡単にJenkinsでビルドする方法」

0 Comments
15 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,252
On SlideShare
0
From Embeds
0
Number of Embeds
894
Actions
Shares
0
Downloads
0
Comments
0
Likes
15
Embeds 0
No embeds

No notes for slide

Jenkins study 7 2013-01-28

  1. 1. @atotto第7回         勉強会 2013.1.28
  2. 2. 自己紹介• id:atotto / @atotto• どこぞのメーカーでソフト書いてます• 個人的に golang とかとか
  3. 3. 本日の内容• Jenkinsを使うようになったきっかけ• EclipseのC++プロジェクトを簡単に Jenkinsでビルドする方法
  4. 4. きっかけ
  5. 5. 昔々、• 以前のプロジェクトでは、ビルドを 持ち回り、しかも手作業で実施• テストコードをまともに書いている ひとが少数派• リグレッションテストで違うところに 障害。デグレ祭り
  6. 6. ビルドが手作業• 作業に1日かかる• だれもやりたくない• いまさらスクリプト化できないほどに GUIの手順だらけ。
  7. 7. テストコードがない• デバッガベースで一度テストしただけ で、テストコードがないコードは、も う触れない。• リグレッションで違うモジュールに影 響がでてるのに気づかない。
  8. 8. 悲惨。
  9. 9. そんなところに
  10. 10. すごいCrontab
  11. 11. Crontabが通じなくても• Jenkinsさんが毎日仕事してくれるんです• Jenkinsさんが結果を集計してくれるんです• Jenkinsさんがミスを教えてくれるんです
  12. 12. と、説明すれば
  13. 13. 部署内でのJenkinsさんの知名度が上がります
  14. 14. 開発は?
  15. 15. 基本的にC++
  16. 16. C++をEclipseで
  17. 17. Eclipse CDT
  18. 18. Eclipse CDT http://www.eclipse.org/cdt/• C++のためのEclipse• Eclipseの強力なアシストが使える• emacs/vimのプラグインもあるよ
  19. 19. EclipseでC++• Javaと同じ感覚でプロジェクトを作成• プロジェクトをまるごとリポジトリへ
  20. 20. Jenkinsとの連携
  21. 21. 普通は?Javaとか→ AntやMavenC++とか→ Makefileとか?
  22. 22. だったら
  23. 23. Makefile?
  24. 24. 面倒。。
  25. 25. なぜ??• Eclipse CDTでプロジェクト作ってれ ばMakefileを勝手に処理してくれる し、依存関係もEclipseプロジェクトに 設定するだけで簡単。• JenkinsのためだけにMakefileを書き たくない。
  26. 26. コマンドラインで プロジェクトをビルドできれば…
  27. 27. できれば。。
  28. 28. できるんです
  29. 29. Eclipse CDTHeadless Build
  30. 30. へっどれすびるど?
  31. 31. ヘッドレスビルドGUIありきなツールで GUIを立ち上げずに ビルドすること
  32. 32. Eclipse CDT Headless Build• コマンドライン上からEclipseを起動• EclipseのGUIを表示せずに指定した プロジェクトをビルド
  33. 33. これでJenkinsに 入れられる
  34. 34. 使い方$ eclipse --launcher.suppressErrors -nosplash -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data $WORKSPACE -import $WORKSPACE/hello -build all eclipse : Eclipse本体(Windows版は eclipsec.exe を指定) --launcher.suppressErrors : ポップアップ画面を抑制 -nosplash : スプラッシュ画面を抑制 -application org.eclipse.cdt.managedbuilder.core.headlessbuild :     headless buildの指定 -data : workspaceとなるディレクトリを指定 -import : ビルド対象のプロジェクトを指定(複数指定可) -build : ビルド対象(allなら全て)
  35. 35. 字が小さくて すみません
  36. 36. くわしくは
  37. 37. ブログをどうぞ http://htn.to/iyFo9q
  38. 38. それで?
  39. 39. 導入後、 リポジトリ ビルドマシン
  40. 40. だいぶラクになる
  41. 41. 手順はJenkinsさん が知ってる
  42. 42. 何かあればJenkins様に聞け
  43. 43. Jenkinsに導入で やっていること• C++プロジェクトをビルド• google testのコードを入れ、 それもビルド&テスト実行• カバレッジ計測は gcov で。
  44. 44. 使ってるプラグイン
  45. 45. TODO管理
  46. 46. Task Scanner• コード中のTODOタグを集計
  47. 47. ログ解析
  48. 48. Warnings Plugin• gccの警告解析• 自分で定義して解析できる
  49. 49. 困ってること
  50. 50. テストの完全自動化
  51. 51. 製品に組み込む。
  52. 52. ドライバとか
  53. 53. シリアル通信とか
  54. 54. 外界と接するとこ例えば。
  55. 55. ムズカシイ
  56. 56. 今後やりたいこと
  57. 57. eXtremeFeedback Device
  58. 58. 楽しい開発
  59. 59. Raspberry Pi + + ?
  60. 60. 最後にひとこと
  61. 61. コンピュータは作業を、人はクリエイティブな活動を出典: http://yshibata.blog.so-net.ne.jp/2011-02-08

×