Hudson以外の何か with 任意

3,511 views

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,511
On SlideShare
0
From Embeds
0
Number of Embeds
594
Actions
Shares
0
Downloads
15
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Hudson以外の何か with 任意

  1. 1. Hudson with bleis-tift May 28, 2011
  2. 2. id:bleis-tift / @bleis
  3. 3. id:bleis-tift / @bleis
  4. 4. id:bleis-tift / @bleisGit Jenkins
  5. 5. id:bleis-tift / @bleisGit JenkinsF# Scala
  6. 6. 1 CI. 2.
  7. 7. 1 CI. 2.
  8. 8. 1 CI. 2. Perl Git Groovy Ruby F#
  9. 9. 51
  10. 10. 51XFD eXtreme Feedback Device CI
  11. 11. XFD
  12. 12. XFD
  13. 13. XFD
  14. 14. CI
  15. 15. CIContinuous Integration
  16. 16. CIContinuous Integrationcommit push
  17. 17. CIContinuous Integrationcommit push Jenkins
  18. 18. CI
  19. 19. CI
  20. 20. CI
  21. 21. CI
  22. 22. CI
  23. 23. CI Reject
  24. 24. Private System Build
  25. 25. Private System Build
  26. 26. IM
  27. 27. IM
  28. 28. IMRSS
  29. 29. IMRSS
  30. 30. IMRSSXFD
  31. 31. IMRSSXFD Private System Build
  32. 32. IMRSSXFD Private System Build
  33. 33. SSTP Sakura Script Tranfer Protocol
  34. 34. SSTP Sakura Script Tranfer Protocol Secure Socket Tunneling Protocol
  35. 35. SSTP Sakura Script Tranfer Protocol Secure Socket Tunneling Protocol SSTP
  36. 36. SSTP
  37. 37. SSTP
  38. 38. SSTP
  39. 39. SSTP
  40. 40. 1. push
  41. 41. 1. pushpush CI
  42. 42. 1. pushpush CIGit
  43. 43. 1. pushpush CIGit Perl
  44. 44. 1. pushpush CIGit Perl Git PerlPerl
  45. 45. 2. CI
  46. 46. 3.
  47. 47. 3.Notification Plugin
  48. 48. 3.Notification PluginGroovy Postbuild Plugin
  49. 49. 3.Notification PluginGroovy Postbuild PluginGroovy Runtime Jenkins
  50. 50. 4.
  51. 51. 4.Jenkins Windows
  52. 52. 4.Jenkins Windows
  53. 53. 4.Jenkins Windowscygrunsrv
  54. 54. 4.Jenkins WindowscygrunsrvRuby Perl Python
  55. 55. 4.Jenkins WindowscygrunsrvRuby Perl Python TCP 100
  56. 56. 5. 6.
  57. 57. 5. 6. Job Build
  58. 58. 5. 6. Job BuildRuby
  59. 59. 5. 6. Job BuildRubyScala F# JVM F #
  60. 60. Ruby IP
  61. 61. Ruby IPF# 1 Job
  62. 62. Ruby IPF# 1 JobRuby 3 IP
  63. 63. bleis-tift
  64. 64. F#
  65. 65. F#
  66. 66. F#F#
  67. 67. F#F#
  68. 68. F#
  69. 69. F#use provider = new FSharpCodeProvider()let src = "module Tempn let body (arg: " + argType + "): " + retType + " =n" + exprlet param = CompilerParameters( GenerateInMemory=true)let res = provider .CompileAssemblyFromSource(param, src)let asm = res.CompiledAssemblylet t = asm.GetType("Temp")t.GetMethod("body").Invoke(null, arg)
  70. 70. fsi
  71. 71. fsi
  72. 72. fsi
  73. 73. fsi-r fsi.exe dll
  74. 74. fsi-r fsi.exe dll dll fsi
  75. 75. fsi-r fsi.exe dll dll fsi REPL
  76. 76. fsi-r fsi.exe dll dll fsi REPL
  77. 77. fsi
  78. 78. fsi–lib:path dll
  79. 79. fsi –lib:path dll-r asmfile dll
  80. 80. fsi –lib:path dll-r asmfile dll –use:file fsi
  81. 81. fsi –lib:path dll-r asmfile dll –use:file fsi fsi
  82. 82. fsi –lib:path dll-r asmfile dll –use:file fsi fsi lib
  83. 83. fsi –lib:path dll-r asmfile dll –use:file fsi fsi lib dll r
  84. 84. fsi –lib:path dll-r asmfile dll –use:file fsi fsi lib dll r open use
  85. 85. GUI
  86. 86. Git
  87. 87. GitGit DVCS
  88. 88. GitGit DVCS
  89. 89. GitGit DVCS Git
  90. 90. http://github.com/bleis-tift/Git-Hooks
  91. 91. http://github.com/bleis-tift/Git-Hooks rewrite
  92. 92. Groovy Postbuild Plugin
  93. 93. Groovy Postbuild PluginJenkins
  94. 94. Groovy Postbuild PluginJenkinsJenkins Groovy
  95. 95. Groovy Postbuild PluginJenkinsJenkins Groovy Post build task
  96. 96. Groovy Postbuild PluginJenkinsJenkins Groovy Post build task Job
  97. 97. manager.hudson manager.build
  98. 98. Groovy?
  99. 99. Groovy?JVM
  100. 100. Groovy?JVM
  101. 101. Groovy?JVMJVM
  102. 102. Groovy?JVMJVM Jenkins
  103. 103. Groovy?JVMJVM Jenkins Scala
  104. 104. push or reset push reset
  105. 105. push or reset
  106. 106. push or reset
  107. 107. push or reset push reset
  108. 108. push or reset push reset reset
  109. 109. push or reset push reset reset push
  110. 110. push or reset push reset reset pushpush
  111. 111. push or reset push reset reset pushpushpush
  112. 112. push or reset push reset reset pushpushpushpush
  113. 113. push or resetif (manager.build.result == hudson.model.Result.SUCCESS) { def res = "git push origin master".execute().waitFor() if (res == 0) return manager.buildFailure()}def commits = manager.build.changeSet.itemsif (commits.length == 0) returndef scm = manager.build.project.scmdef repo = scm.repositories[0].getURIs()[0].toString()def parent = commits[0].parentCommitdef reset = "git --git-dir=$repo/.git reset --soft $parent"reset.execute().waitFor()
  114. 114. Ruby
  115. 115. Ruby
  116. 116. Rubys = new java.net.Socket("localhost", 10000)s << (manager.build.project.name + "n" + manager.build.number + "n")s.close()
  117. 117. Cygwin Windows
  118. 118. Cygwin WindowsWindows F# C#
  119. 119. Cygwin WindowsWindows F# C#cygrunsrv Cygwin
  120. 120. Cygwincygrunsrv -I JobNotifier -p /usr/bin/ruby.exe -a /home/bleis/notifier.rb
  121. 121. Cygwincygrunsrv -I JobNotifier -p /usr/bin/ruby.exe -a /home/bleis/notifier.rb
  122. 122. S
  123. 123. SSakura Script
  124. 124. SSakura Script
  125. 125. EXECUTE/1.0
  126. 126. EXECUTE/1.0EXECUTE SSTP/1.0Sender: JobNotifierCommand: GetName
  127. 127. EXECUTE/1.0EXECUTE SSTP/1.0Sender: JobNotifierCommand: GetName
  128. 128. Sakura Scriptdefault/ default.txt / abort/ failure/ success/ unstable/
  129. 129. Sakura Scriptdefault/ default.txt / abort/ failure/ success/ unstable/
  130. 130. PluginSSTP
  131. 131. Notifier.fsmodule Notifieropen JobNotifier.Guilet notify (app: App) (job: Jenkins.Job.t) (build: Jenkins.Build.t) _ _ = let icon = match build.Result with | "SUCCESS" -> App.Icon.Info | "FAILURE" -> App.Icon.Error | _ -> App.Icon.Warning app.ShowBalloonTip(icon, job.Name + " : " + build.Result)
  132. 132. Plugin XFD
  133. 133. Plugin XFD
  134. 134. Plugin XFDmzp
  135. 135. Plugin XFDmzp

×