コマンドラインからの実行

技術サポートが必要ですか?   お気軽にお問い合わせ下さい  

Sider Scan は、Jenkins などのCIツールと連携させて使用することを想定していますが、Docker が導入されている環境であれば、通常のパソコン上でコマンドラインアプリケーションとして実行可能です。Sider Scan を動作させるために、OS毎の具体的な事前準備は以下のとおりです:

Windows WSL2 (Windows Subsystem for Linux 2) のインストールが必要です。
WSL2 上でLinux ディストリビューションを起動し、Docker をインストール下さい。
Mac Docker Desktop for Mac をインストールして下さい。
Linux Docker をインストール下さい。Docker が動けばディストリビューションは問いません。
注意: 全ての環境で共通して、CPUがIntel/AMD製 (x86-64)であることが必要になります。

Docker がインストールできたらもう準備は完了です!以下の手順に沿って、早速使ってみましょう。Sider Scan 本体は、Docker Image としてDocker コマンドで取得されます。別途インストールする必要はありません。

1. 解析対象ディレクトリを用意する

解析したいソースコードを含むディレクトリを用意します。任意のディレクトリに配置して下さい。

是非、ご自身のプロジェクトを分析していただきたいですが、もし、適当なソースコードがなければ、こちらのサンプルディレクトリをダウンロードしてお使い下さい。解析前にzipファイルの解凍をお願いします。このファイルは、オープンソースプロジェクトのApache Kafkaから抜粋されたものです。

以下の例では、/target ディレクトリに解析対象のルートディレクトリがあるものとします。

2. 設定ファイル(.siderscan.json) を作成する

解析対象のルートディレクトリ(この例では /target ディレクトリ) 直下に、以下に示すような設定ファイル .siderscan.jsonを作成して配置して下さい。

{
    "report": {
        "method": "file"
    },
    "enableSiderScanTracing": {
        "userEmail": "yourname@example.com"
    }
}

ここで6行目の、ダブルクォーテーションで囲まれたyourname@example.comの文字列を、ご自身のメールアドレスに変更下さい。

3. 解析を実行する

いよいよ解析実行です。コンテナ内で以下のような docker コマンドを使用して解析開始します。このDocker コマンドでは、Sider Scan の最新版のイメージが自動で取得され、解析を行っています。解析が完了すると、結果ファイルが/target/scan_result ディレクトリに出力されます。

docker run --rm -v "$(pwd):/target" -w /target sider/sider_scan_runner:latest sider run /target

4. 解析結果を閲覧する

前節で解析が正常に完了していれば、/target/scan_result に解析結果が保存されています。保存されているファイルの内容は以下のとおりです。

  • <日付> + <指摘ID>.json : 指摘毎に分かれた解析結果を含むデータになります。テキスト形式です。
  • <日付> + <指摘ID>.png : 指摘部分のコードのスクリーンショットです。画像です。
  • index.html : 指摘のスクリーンショットをサムネイル表示するHTMLファイルです。

scan_result を閲覧するためには、scan_result をWeb サーバー上に置く必要があります。お手元に自由に使えるWeb サーバー環境がない場合は、例えば、Web Server for Chrome (https://chrome.google.com/webstore/detail/web-server-for-chrome/ofhbbkphhbklhfoeikjpcbhemlocgigb?hl=ja) などがお勧めです。通常ご使用のブラウザでWebサーバー上に置かれたscan_result ディレクトリを開いて下さい。指摘がサムネイル表示されます。スクリーンショットをクリックすると、ソースコードの詳細ビューワーが開きます。

Web Server for Chrome の使用例

注意: ローカルにダウンロードしたscan_result フォルダ内の、index.html をそのままダブルクリックしてしまうと404エラーになります。Webサーバー上に置いて、URLからアクセスして閲覧下さい。

5. より高度な使い方

以上、Sider Scan をコマンドラインから使用する方法について説明しました。Sider Scan には、様々な運用方法・設定項目があります。詳細については以下の資料

を参照ください。