社内の環境を徐々に変えていこうと動き出した話
みなさんこんにちは。ぐーどらです。
前回自社の辛み記事を上げ、やっていき!なことを整理し、一週間取り組んできたことを報告しようと思います。
前回記事↓ guldra-cranch.hatenablog.com
一週間でさらにやったこと
- とりあえずテストコードを更に実装
- 先の記事で上げた手動デプロイでは具体的にどんな作業が発生しているか同僚に聞いた
テストコードを実装
相変わらず続けてます。一通りのページで動作不良を起こしていないか、機械的な正常系テストを書き上げました。
ここからさらに個別のページで使えるよう、便利な動作をしてくれるようなコードを書き上げていけば、日々の業務が楽になるかなと思っています。
先の記事で上げた手動デプロイでは具体的にどんな作業が発生しているか同僚に聞いた
自分の中ではある程度整理できているつもりでしたが、やはり実際に作業をしている人にどんな作業が発生しているかを聞いてみると、更に違った状況が見えてくるものだと思いました。
弊社手動デプロイ苦行3ステップ
- 開発環境とデプロイ先環境の差分比較
- バックアップ取得
- SCPソフトによる手動アップロードや各種コマンド実行
差分比較
開発環境とデプロイ先環境の差分比較自体は必要な作業だと思います。が、ソースコードがコミットされる毎にはレビューを行っておらず、デプロイ前にまとめて差分比較&確認するという苦行が発生していました。
当然テストコードも存在していないため、SVNにコミットされているソースコードの正当性を誰も保証できていない、けれども目視しアップロードするという作業が発生しています。つらい。
バックアップ取得
社内にあるUSB3.0接続の外付HDに、デプロイ前の環境に配置されていたコードを全てコピーする作業をされていました。
SCPソフトによる手動アップロード&各種コマンド実行
デプロイ先のパスから、アップロード前のファイル、アップロード前のファイルのパスから大半の確認を経てアップロードが行われます。
どう考えても辛い
考えた解消法
どう考えてもGitHubですね。考えた理由は4つです。
- バックアップ作業が不要になる
- 手動アップロード作業がなくなりワンコマンド化
- プルリクエストで差分比較とコードレビューを行うことでデプロイ前に集中した差分比較を通常業務に組み込むことが可能
- 近況のデファクトとされるCIツールのソースコード管理はGitHubであり、CIツールを使うことで業務フローの改善に繋がる
以上の理由をもって、月曜日に同僚と共にCTOや経営層の説得にかかろうと思います。