LCLの開発者ブログ2018-07-31ジョインメンバーのためにmacOSの初回セットアップをチョットダケ自動化するTips効率化モバイルエンジニアの山下です。iMacを購入しています。その際、ジョインメンバーには初日にmacOSの初回セットアップをしてもらう必要があるのですが、手動でのセットアップでは以下の問題が度々発生しました。セットアップ項目を思い出す必要があるセットアップ項目がメンバーによってバラバラインストールの手順が面倒で時間が掛かるインストール漏れがあったりする面倒くさいその他にも既存メンバーによる最低限必要なツール類の洗い出しと共有が発生するなど、このままでは、毎回手間と時間が掛かってしまうためインストール周りを自動化することにしました。今回使うパッケージ管理ツールは以下となります。本記事ではパッケージ管理ツールやその他インストール対象の説明は省きます。HomebrewHomebrew-Caskmas今回はsetup.shという名前のシェルを作りました。インストール対象は分野によって異なるため、引数で判断するようにしました。web)とすれば、$1に引数の値が保持されます。次にHomebrewをインストールします。https://raw.githubusercontent.com/Homebrew/install/master/install)"fiHomebrewをインストールできたので、これを使ってツールをインストールします。インストール対象は下記で言うbrew_$1.txtに書かれています。allを引数に保たせた場合はbrew_all.txtを読み込みます。brew_all.txtの一部gitgit-flowhubmasnodeそれぞれのテキストデータでツール名を羅列しているため、ループで回してインストールコマンドを実行しています。fidone以下、同じ要領でcaskとmasから各アプリケーションをインストールしています。fidonecask_all.txtの一部google-chromegoogle-drive-file-streamgoogle-japanese-imeforkdockeriterm2『setup』リポジトリを作成してこれらのファイルをGitHub上で管理するようにしました。最初にこのリポジトリをクローンしてシェルを叩くだけで各種インストールが終わります。その他ジョイン時に必要な情報を『setup』リポジトリと一緒に管理しています。ブックマーク以下のブックマークをフォルダ毎にまとめて、HTML形式でエクスポートして管理しています。社内イントラ利用しているサービス本番環境ステージング環境など各ドキュメントLCLでは、働き方からサービスの仕様まで全てドキュメント化して誰でも閲覧できるようにしています。入社後に最初に読むドキュメントも用意しているのですが、この記事の共有するために部長やメンバーが都度検索していました。数日経つと本格的に仕様のドキュメントを探す必要があり、その都度に共有する動作が発生していました。そのため、最初の方に読むドキュメントをREADME.mdにまとめて情報の起点になるようにしました。最後にこれにより、初回セットアップの手間とそれに掛かる時間が格段に減りました。各内容が可視化されたため、既存メンバーが別の分野に挑戦する際も同じ環境を作れるようになりました。自動化とは関係ないですが、ドキュメントを探す手間がなくなったのもよかったです。macOSのシステム環境設定など、セットアップは自動化できないものはドキュメントで残すようにしました。シェルをついては、理解が浅いため難しいことはしていません。賢い書き方はいくらでもあるかもしれませんが、現状では問題なく動いているので少しずつ改善していきたいです。14:00ジョインメンバーのためにmacOSの初回セットアップをチョットダケ自動化するTipsTweet関連記事2019-02-14最近1ヶ月間で行ったフロントエンド開発環境プチ改善フロントエンドエンジニアの岡田です。今日は、最近1ヶ月間に...2018-10-12CodePipeline/CodeBuild/ECR/ECS/Fargateのコンテナデプロイ基盤を...モバイルアプリエンジニアの山下(@yamshta)です。今回は、AW...2018-07-05地味に面倒なブランチ作成〜WIPプルリクエストまでをコマンド1つで行うフロントエンドエンジニアの岡田です。やる気がでない時の最良...2018-06-29SwiftFormatで機械的にコーディングルールを統一するモバイルアプリエンジニアの山下です。W杯開幕からほぼ全ての...2018-04-20自動タイムトラッキングツールのGTMを手動のTogglの結果と比較してみたフロントエンドエンジニアの岡田です。(1)執筆者リストid:oss-rdbmsid:kabrgid:hoshtid:ktx_kuid:yamshtaid:kavis777id:ytkr0813id:shymstid:kasei_sanid:lcl-engineer月別アーカイブ検索はてなブログをはじめよう!lcl-engineerさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。