LoginSignup
7
8

More than 5 years have passed since last update.

VSCode上でのJenkinsfileのチェック(lint)

Last updated at Posted at 2019-04-11

背景・概要

JenkinsでのパイプラインはJenkinsfileを用いて作成することが多くなっています。

ただ、JenkinsfileはGitHub、GitLabなどのSCMにpushされ、それをベースにJenkinsのジョブが実行される(ことが多い)ため、Jenkinsfileの構文がvalidであることのチェックのためにGitHub、GitLabなどに反映する必要があり、コミットの履歴が汚れがちでした。

当記事では、Jenkinsで動かす前にJenkinsfileがvalidであることをチェック(lint)する手段として、VSCodeのプラグイン「Jenkins Pipeline Linter Connector」を紹介します。

このプラグインは、Jenkinsに用意されているPipelineスクリプトのlintをVSCodeから実行するためのものになります(プラグイン自体がlintするのではない)。

※上記プラグインを使用しない方法(コマンドライン)もあります。以下をご参照ください。
Jenkinsfile、書いてますか?

前提

  • ローカル環境にVisual Studio Code(VSCode) が導入されていること
  • ローカル環境にJenkinsが導入されていること
  • JenkinsfileはDeclarative Pipelineであること

制限事項

  • チェックできるのは構文のみ。内容が正しいかどうかはチェックされない

導入手順

  1. VSCodeのExtensionsビューを開く
  2. 「Jenkins Pipeline Linter Connector」で検索する
  3. 「Jenkins Pipeline Linter Connector」を選択し、「Install」ボタンを押下する

設定内容

  1. VSCodeのSettingsを開く
  2. 「jenkins」で検索する。「Jenkins Pipeline Linter Connector」の設定項目が5つ出てくる
  3. 各項目を以下の通り設定する
設定項目 settings.jsonのキー 設定内容
Jenkins › Pipeline › Linter › Connector: Url jenkins.pipeline.linter.connector.url Jenkins上のvalidaterのURL。以下を設定。

http://localhost:[Jenkinsのポート]/pipeline-model-converter/validate
Jenkins › Pipeline › Linter › Connector: Crumb Url jenkins.pipeline.linter.connector.crumbUrl Jenkins側でCSRF protectionを有効に設定している場合に設定が必要。以下を設定。

http://localhost:[Jenkinsのポート]/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,%22:%22,//crumb)
Jenkins › Pipeline › Linter › Connector: User jenkins.pipeline.linter.connector.user Jenkinsにログインするためのユーザ名
Jenkins › Pipeline › Linter › Connector: Pass jenkins.pipeline.linter.connector.pass Jenkinsにログインするためのパスワード
Jenkins › Pipeline › Linter › Connector: Strictssl jenkins.pipeline.linter.connector.strictssl JenkinsでSSLの自己署名証明書を使用している場合、「false」を設定(「false」にすることでinvalidなSSL接続を許容する)

使用方法

  1. チェック対象のJenkinsfileを開く
  2. VSCodeでコマンドパレットを開く(Win:Ctrl+Shift+P、Mac:⌘+⇧+P)
  3. 「validate jenkinsfile」と入力(途中まで入力すればよい)し、「Validate Jenkinsfile」を実行
  4. Outputビューに「Jenkinsfile successfully validated.」と表示されれば、構文が正しい

以上。

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8