CircleCIでdotfilesリポジトリのコード品質管理する
最近は投稿していなかったので、久しぶりとなります。
2013~2016年はゲームプログラマーでしたが、2017年からサーバーサイド業務するようになりました。
ここ一年半はvim設定ファイルのカスタマイズに熱を入れてましたね。
dotfilesの設定ファイルが増えてきたのでコード品質を維持したい
vim設定ファイルが1000行を超えて肥大化、shellファイル、zsh設定のファイルが増えてきたのでコード品質を保つ必要があるなと思いました。
今まではローカルのDockerコンテナを起動してパッケージが正常にインストールできているかテストしていました。
簡単な修正ならローカルのコンテナで確認せず、リモートで確認できたら便利だなと思いました。
CircleCIがお手軽そうなのでこちらを使います。(無料プラン)
出来たこと
コミット単位でコード品質を可視化できるようになった!
CircleCIの設定は2~3時間ででき、思ったより簡単にできました!
ビルド成功させるまでに10時間ぐらいかかりました。今まではエラーが出ても手作業でコマンド実行していた箇所を修正する必要がありました。
緑のチェックがビルド成功で赤のバツが失敗です。黄色がビルド中。
リポジトリ https://github.com/rainbow23/dotfiles
CircleCI管理画面
準備
dockerイメージの用意
dotfilesリポジトリで必要なパッケージが含まれたDockerfileを作成
vim8, tmux, zsh等が動作する環境。
パスワードなしでSudoできるユーザーも作成している
https://github.com/rainbow23/dotfiles/blob/develop/docker/base/Dockerfile
CircleCIからDockerイメージを使えるようにDockerHubにpushする
CircleCI設定ファイルを作る
https://github.com/rainbow23/dotfiles/blob/develop/.circleci/config.yml
- image: rainbow23/base_dotfiles:latest
がDockerHubにアップロードしたDockerイメージ
- run:
の後ろにテストしたいファイルを記述 runにある5つのシェルが全て成功したらCircleCIのビルド成功になります。
version: 2
jobs:
build:
docker:
# specify the version
- image: rainbow23/base_dotfiles:latest
working_directory: /home/rainbow23/dotfiles
steps:
- checkout
#deploy
- run: ./symlink.sh
# install
- run: ./install_python.sh
- run: ./install_vim.sh
- run: ./install_tools.sh
- run: ./gitclone_list.sh
CircleCI管理画面でconfig.ymlのrunで記載したシェルファイルの実行結果が見れます。
まとめ
コミットごとにリポジトリのコード品質が可視化できたのでよかったです。
これから各ファイルをフォルダに整理する予定なのでデグレードしていないか確認できるのが嬉しいですね。
次回はvimの便利プラグインの記事を書く予定です。
Author And Source
この問題について(CircleCIでdotfilesリポジトリのコード品質管理する), 我々は、より多くの情報をここで見つけました https://qiita.com/rainbow2333/items/71e71f8d1fb06800c07a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .