Blog ブログ

サーバへのソースコードデプロイ

皆様お久しぶりです。
シニアプログラマの小田です。


最近の京都は朝と夜が寒くなってきました。
季節の変わり目ですので、体調の変化に気をつけてくださいね!
さて、今回は「サーバへのソースコードデプロイ」について話をしたいと思います。

まずは定義の話

今回話す「デプロイ」はサーバへの「ソースコード」のデプロイのみを話すと致します。

なぜデプロイの話?

自動化というのはいろいろ幅が広いですが、ソーシャルゲームでサーバ開発していると日常的に発生するのがデプロイ作業です。
そのため自動化しておかないと、日々の作業コストが累計で考えると馬鹿になりません。
例えば、1日3回のデプロイ作業(いろいろな環境へのデプロイがあると想定)で、1回5分かかるとすると、1日で15分もの時間が使われています。
これが1週間で考えると、1日15分x 5日=75分となります。(やばいっすね)

では、その中でデプロイにミスがあったらどうでしょうか?
・デプロイのやり直し
 ー ノーメンテでデプロイだけやった場合にエラーが大量発生
 ー 泣きを見るのはエンジニア
もう最悪ですよね。

どんな手段があるの?

ではそれらを回避するのにどのような方法があるでしょうか?

  1. シェルやバッチ処理でガリガリ処理を書く
    • rsyncやscpを使ってファイルを送る
    • Jenkinや管理ツールを使って処理を自動化
    • 一度作れば構成を変えるだけなので他案件にも使える
  2. GitHub(git)、svnから同期を行えるようにする
    • GitHubとの連携はAzureやAWSでもサポートされています
    • ガリガリと処理を書く必要が無いので、自分が書くよりミスもなく超安心

弊社では両方の実績がありますが、案件やプロジェクト体制の状況次第で使い分けています。
どちらでも数時間もあれば動作確認まで完了できるので、必ずプロジェクト発足時に用意するようにしております。

まとめ

いかがでしょうか?プロジェクトの開発、運用期間が長くなるとこういった環境周りはボディーブローのように効いてきます。
当たり前の機能として、開発発足時に作ることを提案いたします。
ぜひ、ご検討ください!

採用情報

クラウドクリエイティブスタジオではプログラマを募集しております。
ぜひ、一緒に面白いゲームを作りましょう!