ビルドのクロスバージョンサポート

KlocworkKlocwork サーバーからのビルドサーバーバージョンを切り離しています。このため、古いビルドサーバーツールを、1 バージョン前のフルリリースに戻って Klocwork サーバーのより新しいバージョンで使用できます。これは、たとえばデータをインポートまたは移行することなく、Klocwork 2024.42025.3 の任意のバージョンから Klocwork 2025.4 に、Klocwork ビルドをロードできるということです。

大規模な組織にとって、この機能はサーバーやデスクトップのプラグインをアップデートしてより新しいリリースにおける改良を利用しながら、プロジェクトの一部または全部を Klocwork の以前のバージョンで解析できる柔軟性をもたらします。

このページの情報は、Klocwork バージョン 2025.3 以前に適用されます。リリース 2025.4 以降の複数のビルドツールバージョンとの下位互換解析については、「以前の解析ツールとの下位互換性の構成」を参照してください。

例: ビルドを古いバージョンの Klocwork から新しいバージョンの Klocwork サーバーにロードして、以前の構成にロックする

このシナリオでは、Klocwork の以前のバージョンで実行されるビルドが既にあり、それらを Klocwork サーバーのより新しいバージョンにロードしようとしています。他のビルドマシンからプロジェクトをインポートすることもでき、または新しいプロジェクトの作成から開始してビルドをロードすることができます。この例では、Klocwork 2025.1 で新しいプロジェクトを作成してから、バージョン 2024.1 の Klocwork を実行しているビルドマシンからビルドをロードします。
  1. Klocwork 2025.1 で、ポータルにログインし、たとえば demosthenes というプロジェクトを作成します。
  2. コマンドをビルドマシンから実行して、プロジェクトを 2024.1 構成にロックします。たとえば、以下のようにします。
    kwadmin lock-project-version --url http://my2025server.acme.com:8084 demosthenes

    このコマンドを実行すると、あらゆるカスタムチェッカーとチェッカーの有効/無効状態を含めた、ビルドマシン上のエンジンおよびチェッカー構成に関する情報が格納されているファイルが作成されます。サーバーはこの情報をプロジェクトの基本構成として使用します。

  3. Klocwork 2025.1 ポータルで、demosthenes プロジェクトを開きます。必要に応じて、2024.1 チェッカーを有効または無効にすることができます。

    プロジェクトがバージョン 2024.1 の製品にロックされているので、以降のバージョンで導入されたチェッカーは、いずれも使用することができません。

  4. 2024.1 ビルドマシンで、通常どおりプロジェクトをビルドします。たとえば、以下のようにします。
    kwbuildproject --url http://my2025server.acme.com:8084/demosthenes -o tablesdir buildspec.out
  5. 2024.1 ビルドマシンで、kwadmin load コマンドを使用してビルドを Klocwork 2025.1 サーバーにロードします。たとえば、以下のようにします。
    kwadmin load demosthenes tablesdir --url http://my2025server.acme.com:8084

プロジェクトが以前バージョンにロックされているかどうか確認する

プロジェクトを以前のバージョンにロックする場合は、lock-project-version コマンドを使用して、default_checkers_configuration.xml という構成ファイルを作成し、サーバー上の該当のプロジェクトディレクトリに移動させます。構成ファイルには、そのリリースで使用可能なチェッカーの情報を、そのビルドマシンに展開されたすべてのカスタムチェッカーも含めて格納します。

default_checkers_configuration.xml のプロジェクトディレクトリを検索し、プロジェクトが以前のバージョンにロックされているかどうか確認します。

以前のバージョンの Klocwork からのプロジェクト構成を使用しなくなるように、プロジェクトのロックを解除する

プロジェクトを、もはや Klocwork の以前のバージョンにロックしない場合は unlock-project-configuration コマンドを使用します。たとえば、

kwadmin unlock-project-version demosthenes --url http://my2025server.acme.com:8084
システムは、default_checkers_configuration.xml ファイルをプロジェクトフォルダーから削除します。

プロジェクトはまだ Klocwork の以前のバージョンにより解析されているので、どのチェッカーもそのリリース以降に削除されたり、名前を変更されると、ポータルにレポートが表示されません。同様に、プロジェクトはそのリリース以降に導入されたどの新しいチェッカーもレポートしません。全ての新しいチェッカーを活用するには、プロジェクトを Klocwork の現在のバージョンで解析する必要があります。