「第59回 Ruby/Rails勉強会@関西」で「GitLabとAnsible」について発表してきた

 はい、Ruby関西10周年ってことで、Ruby関西のお誕生日が判明した勉強会でした。

第59回 Ruby/Rails勉強会@関西

2014年1月25日(土)

お仕事でgitlab構築してみました(仮)

お仕事でgitlab構築してみました(仮)

  1. お仕事でgitlab構築してみたいですね(仮)
  2. お仕事でgitlab構築する予定はありますよ(仮)
  3. お仕事でgitlab構築まだ出来ていません(仮)
  4. お仕事でgitlab構築2月末までに作らねば(本)

はい、すみません。出来ませんでした><

お前、誰よ?

murase_syuka
  • お仕事

Android of Java on Linux of Driver of C

  • 出没地帯

C++ from C++テンプレート完全ガイド勉強会
Ruby from Minami.rb
Debian from 関西 Debian 勉強会

最初に

目次
  • what gitlab
  • what ansible

what gitlab

gitlabとは

GigLab.org

 GitLabとは、OSSGitHubクローンです。

**** githubとは

    GitHub(ギットハブ)は
    ソフトウェア開発プロジェクトのための
    共有ウェブサービスであり、
    Gitバージョン管理システムを使用する。
    
    Ruby on RailsおよびErlangで記述されており、
    GitHub社によって保守されている。
    
    主な開発者は
    Chris Wanstrath、PJ Hyett、Tom Preston-Wernerである。
    
    GitHub商用プランおよび
    オープンソースプロジェクト向けの
    無料アカウントを提供している。
    
    2009年のユーザー調査によると、
    GitHubは最もポピュラーなGitホスティングサイトとなった。

    by [http://ja.wikipedia.org/wiki/GitHub:title=ウィキペディア]

**** なぜgitlabなのか

貧者のGitHub Enterprizeを読め

***** その他のgitのWebUI
     
     |           | lang | framework |
     |-----------+------+-----------|
     | Gitorious | ruby | rails     |
     | gitlab    | ruby | rails     |
     | gitblit   | java |           |

what ansible

 chef, puppet, ansibleについて知っている人で挙手を求めると
あまり手が上がらなかったので軽く補足説明を口頭で行なったが
ここに書くには余りに空白が少ないため、以下略)

Ansibleとは

Q.なぜAnsibleなのか
A.レガシー依存の悪循環こわい

**** gitlabのインストール方法

GitLab 6.0をインストールする

      上記ブログの最後に、「インストールに3日かかった」とあるように((いろいろ手探りされて3日でしょうから、この人がもう一回すれば半日で終わるでしょうが、まあ参考に))
     とまあ、手作業でインストールは大変です

**** chef + knife-solo

    chefはtarget環境にinstallが必要だが、
    Ansibleは必要ない

    |               | Ansible | Chef |
    | local work    | yes     | yes  |
    | remote target | no      | yes  |

**** yum/apt

     ansibleは呼び出す側でredhat系かdebian系かを切り分けてやる処理が必要だが、
     chefはこの辺抽象化されているのでtargetのsystemを意識する必要は余りない。

     ansibleも出来なくは無いでしょうけど現状出来ない。

    #+BEGIN_SRC bash
    ansible-doc yum
    ansible-doc apt
    #+END_SRC

実演

ここで以下のansible-playbookを使用させてもらって
私が環境構築が失敗する様を実演する><

- 20分(くらい)で GitLab をインストールする方法Add Star
-- gitlab playbook for github



ひとまずこちらの記事で書いたようにroot権限等の問題で失敗する。


仕方なくsshでtarget systemに入って、ansibleで自動で行おうとしている作業を、手作業で行って
もう一度ansibleのplaybookを実行。


ansibleの羃等性が満たされていることをデモった。

ふたたびAnsibleとは

で、手作業でgitlabを構築でそうな事が分かった所でもう一度再確認。


Q.なぜAnsibleなのか
A.レガシー依存の悪循環こわい


レガシー依存こわい(((゚Д゚)))
という冗談はさておいて、羃等がみたされているのでansibleは動く手順書としては十分である。


動く仕様書はもちろんserver spec等なんだろうけど、勉強します><


ご清聴ありがとうございましたm(_ _)m


続きはWebで