Contributing to GitLab with OSS Gate

68139fbc12ae51c0a56cae151fc8c85f?s=47 ogom
January 13, 2018

Contributing to GitLab with OSS Gate

68139fbc12ae51c0a56cae151fc8c85f?s=128

ogom

January 13, 2018
Tweet

Transcript

  1. Contributing to GitLab with OSS Gate ୈ80ճ Rubyؔ੢ ษڧձ

  2. Agenda • OSS։ൃ ʹࢀՃ͠Α͏ • GitLab ͷ։ൃ؀ڥߏங • GitLab ͷΞʔΩςΫνϟ

  3. ࣾ಺Ͱ Git Λීٴ͢ΔͨΊʹ GitLab Λେྔʹ
 Πϯετʔϧ͢Δඞཁ͕͋ͬͨ

  4. Chef ͷ GitLab Cookbook Λ ࡞ͬͯͩΕͰ΋؆୯ʹ
 ΠϯετʔϧͰ͖ΔΑ͏ʹͨ͠

  5. ͜ͷ GitLab Cookbook ͕ GitLab ͷ։ൃݩʹ࠾༻͞Εͨ ʢVer.4 ʙ Ver.6·Ͱʣ https://gitlab.com/gitlab-org/cookbook-gitlab

  6. ։ൃ؀ڥͷߏஙʹ΋ Cookbook ͕࠾༻͞Εͨ࣌ظ͕͕͋ͬͨ Docker ͕ొ৔

  7. Ͱ΋ Docker ͸౰࣌͸Ϩεϙϯε ͕ѱͯ͘Ծ૝؀ڥΛ࢖Θͳ͍ GDK ͕Ͱ͖ͨ

  8. GitLab Development Kit Ͱ OSS։ൃʹࢀՃ͠·ͤΜ͔ʁ

  9. OSS։ൃ ͳʹͦΕʁ

  10. ϥΠηϯε͕Φʔϓϯιʔε ͷιϑτ΢ΣΞΛ։ൃ͢Δ https://opensource.org/licenses

  11. OSS։ൃ ʹ
 ࢀՃ͢Δʹ͸ʁ

  12. ͍ͭͰ΋ɺͩΕͰ΋
 ࢀՃͰ͖·͢

  13. OSS։ൃ ʹࢀՃͨ͜͠ͱ͕
 ͳ͍ํʹ͸ϑΟʔυόοΫ͕ Φεεϝ

  14. ϑΟʔυόοΫ
 Λ͢Δʹ͸ʁ

  15. Ϣʔβʔͱͯ͠ 
 OSS Λ࢖͏

  16. ؾ͍ͮͨࣄΛ։ൃݩʹ ϑΟʔυόοΫ

  17. GitLab ΛϢʔβʔ
 ͱͯ͠࢖͏

  18. GitLab ͷΠϯετʔ ϧ͸ͱͯ΋؆୯ https://about.gitlab.com/installation/

  19. ৗ࣌SSL΋ Let’s Encrypt Ͱ؆୯ʹ҉߸Խ௨৴ https://qiita.com/ogomr/items/ 238d8649b36bcc8c14ba

  20. GitLab ͷ։ൃ؀ڥΛ ߏங͢Δ

  21. GitLab Development Kit Ͱ؆୯ʹߏங https://qiita.com/ogomr/items/ cc404bf9373408663b11

  22. GDK ͷखॱΛ࡞੒தʹϑΟʔ υόοΫϙΠϯτΛൃݟ https://gitlab.com/gitlab-org/gitlab-ce/issues/41513

  23. ࡞ۀϝϞ͔Βใࠂ಺༰ Λ੔ཧ͢Δ

  24. ։ൃݩʹͱͬͯΘ͔Γ΍ ͘ͳΑΔΑ͏ฤू͢Δ https://gitlab.com/gitlab-org/gitlab-development-kit/ blob/master/CONTRIBUTING.md

  25. ద੾ͳ৔ॴʹใࠂ͢Δ
 GitLab ͸ gitlab.com ͷ issues

  26. ͳΜͱͳ͘ෑډ͕ߴ͍ ͱײ͡·͔͢ʁ

  27. ͍ͬ͠ΐʹ
 ମݧ͠·͠ΐ͏ʂ

  28. OSS Gateେࡕ ϫʔΫ γϣοϓ 2018-03-10 https://oss-gate.doorkeeper.jp/events/69160

  29. GitLab ͬͯͲΜͳ
 ٕज़Ͱಈ͍͍ͯΔͷʁ

  30. GitLab Application Architecture https://docs.gitlab.com/ce/development/ architecture.html

  31. None
  32. Frontend Development Guidelines > Architecture https://docs.gitlab.com/ce/development/fe_guide/ architecture.html

  33. gdk run Ͱ
 ىಈ͢Δϓϩηε gitlab-workhorse, gitaly, sshd, rails-web, rails- background-jobs,

    webpack, registry, redis, postgresql
  34. Gitlab Workhorse Smart reverse proxy language Go

  35. Gitaly Git RPC(Remote procedure call) service language Ruby, Go

  36. GitLab Shell (sshd) SH access and repository management language Ruby,

    Go
  37. GitLab Rails Web (unicorn) Manage Git repositories with access controls

    
 language Ruby, JavaScript
  38. GitLab Rails Background Jobs (sidekiq) Async background processing 
 language

    Ruby
  39. GitLab Frontend Web (webpack) Complex frontend features 
 language JavaScript

  40. GitLab Community Edition ͷґଘύοέʔδ • Gemfile.lock 226 • rails, pg,

    devise, grape, seed-fu, unicorn, sidekiq, rspec … • yarn.lock 1098 • babel, jquery, vue, vuex, webpack, eslint, jasmine, karma …
  41. ຋༁ͷΠγϡʔ͸
 Ϛʔδ͞Ε΍͍͢ https://github.com/mperham/sidekiq/pull/3720/files