CodePipelineの実行ログを自動トレースするCLIツール「pipeline-lens」を公開しました!

2022/01/13に公開

どんな記事?

  • CodePipelineの実行ログを自動トレースするCLIツール「pipeline-lens」の紹介記事
  • 実行中のStage/Actionを自動追尾して、ターミナルにログを出力してくれる
  • コンソールで画面を行ったり来たり、から開放されます

CodePipelineのつらさ

CodePipellineを日常使っていて、「ログ確認がめんどくさい!!!」と思ったことはないですか?

コンソールで見る場合、

  • CodePipelineのページでPipelineを選んで
  • 実行中のActionのCodeBuildのページに飛んで
  • Actionが終了したら、また次のActionのCodeBuildのページに飛んで

を永遠繰り返さなくてはならないので、めちゃめちゃめんどくさいんですよね。特に新しいPipelineを作っているときなんかは、何十回も遷移が必要でかなり苦しくなってきます。

というわけで、そんなつらさを解消するCLIツールを作ったのでご紹介です。

作ったもの

capture

$ pipeline-lens --name パイプライン名

で、いまCodePipelineのどのStageのどのAcitionが実行中かを特定して、コンソールにログを出力してくれるツールです。

一度実行すると、Pipelineが

  • 正常終了する
  • 異常終了する
  • Approve Stageに入る

まで、自動追尾してログを吐き出しつづけてくれます。

$ pipeline-lens --name パイプライン名 --run

とすれば、Pipelineの起動も合わせてできるのでコンソールいらずで楽チンです。

Installation

Homebrew

$ brew tap Jimon-s/pipeline-lens
$ brew install pipeline-lens

応用編

pecoと組み合わせるとさらに便利になります!

function pipeline-lens-with-peco(){
    PIPELINE_NAME=`aws codepipeline list-pipelines --query "pipelines[*].[name]" --output text | peco`
    if [ -n "$PIPELINE_NAME" ]; then
        pipeline-lens --name ${PIPELINE_NAME}
    fi
}
alias pl=pipeline-lens-with-peco

.zshrc に追記ください。

$ pl

で、アカウント内のCodePipelineを一覧から表示、インタラクティブに選択して状況をウォッチできます。

https://github.com/Jimon-s/pipeline-lens

Discussion