11
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AAA:AGL Assessment Automation Projectについて

Last updated at Posted at 2025-12-16

AGL CIAT-EG Member の川村(かわむら)です。
2025年10月より Automotive Grade Linux(AGL)の CIAT-EG に参加しております。

この記事では、CIAT -EG活動の一環として活動開始されたAGL Assessment Automation Project(AAA)について、今年の12月に開催されたOSS Summit Japan のセッションで発表された内容をベースに、概要を紹介します。

AGLとCIAT-EGについて

AGL(Automotive Grade Linux)は、Linux Foundation傘下で自動車メーカー、サプライヤー、テクノロジー企業が協力して、事実上の業界標準となり得る自動車アプリケーション向けの Linux ベースのオープン ソース ソフトウェア プラットフォームを構築することを目的としている共同オープンソースプロジェクトです。

AGLとは自動車業界での利用を目的としたオープンソースのLinuxディストリビューションで、自動車という特殊な環境では長期的なサポート(LTS: Long Term Support)が非常に重要となるため、LinuxシステムのビルドシステムとしてYocto Projectを採用しています 。これにより、車載システム開発に不可欠な信頼性と安定性を確保しつつ、OSSの力を活用することを目指しています。

そしてAGLのExpert Groupの一つとしてCIAT-EG(Continuous Integration and Automated Test Expert Group)があり、CIAT-EGはAGLのソフトウェア統合・検証インフラの要件とアーキテクチャを定義し、継続的インテグレーションと自動テストを運用するExpert Groupとなります。

AGL Assessment Automation (AAA)とは?

AGL Assessment Automation (AAA)は、CIAT-EG活動の一環として開始されたイニシアチブです。AGLの品質とコンプライアンスを継続的に確保するための自動化システムの構築を目指しています。

AAAの目的は、自動車および組み込みシステム向けのSBOM(Software Bill of Materials:ソフトウェア部品表)運用の模範となるシステムを誰でも利用できるようにオープンソースで構築し、そのベストプラクティスを広く共有することです。

OpenSSFのSBOMプラクティスは現在、クラウドベースのテクノロジー業界向けに最適化されていますが、自動車および組み込み分野への直接適用には特有の課題があります。AGLは、広く採用されているYoctoビルドシステムとJenkinsベースのCI/CDパイプラインを活用することで、組み込み環境に合わせた再利用可能なプラクティスとリファレンスシステムの開発を可能にします。

詳しくは AGL Assessment Automation Project(AAA)をご参照ください。

OSS Summit Japan 2025での発表内容について

OSS Summit Japan 2025で発表された内容について紹介します。
スピーカーは以下のお二人です。
image.png

1. プロジェクトの目的と背景

AAAプロジェクトの主な目的は、 自動車および組み込みシステム向けのSBOM(Software Bill of Materials:ソフトウェア部品表)運用の模範となるシステムを構築し、そのベストプラクティスを広く共有することです 。

この取り組みの背景には、以下のような切実なニーズがあります 。

  • 法規制とコンプライアンス: UNECE R155/R156、ISO/SAE 21434などの国際的な規制に対応するため
  • リスク管理: 脆弱性やライセンスコンプライアンスといったリスクを適切に管理するため
  • 技術標準の進化: 複雑化するシステムのトレーサビリティ向上を目的とした、SPDX (System Package Data Excahnge) 3.0 のような新しいSBOM標準への対応

2. アプローチ:「ポリシーベースの自動化」

AAAプロジェクトは、SBOMの生成から検証、リスク分析、公開に至るまでの一連のプロセスを自動化するパイプラインの構築を目指しています 。

特に重要なアプローチは以下の通りです 。

  • データとロジックの分離: ビルドシステム(Yocto)からSBOMデータを抽出し、ポリシー評価システムを分離することで、特定のビルドシステムに依存しない高い移植性を実現します
  • 標準データ形式の採用: SPDX 3.0 JSONをターゲットとし、オープンソースで再利用可能なツールチェーンを活用します

3. PoCの具体的な成果

今回の発表では、パイプラインの中でも特に「Verify(検証)」と「Analyze Risks(リスク分析)」に関するPoC(概念実証)の結果が紹介されました 。

A. 検証(Verify)のPoC

  • 課題と解決策 : SPDX 3.0はSPDX 2.xとはデータ構造が異なるため、検証ロジックもSPDX 3に特化させる必要があります 。また、ソフトウェアの実行に必要な推移的依存関係を正確に把握するため、Yoctoが生成するSPDX 3 JSONのruntimeスコープでdependsOn関係にある要素を抽出するアプローチが有効であると示されました

B. リスク分析(Analyze Risks)のPoC

  • ポリシーエンジンの採用: リスク分析のコアには、オープンソースの汎用ポリシーエンジンである OPA(Open Policy Agent) を採用しました 。OPAはJSONデータの扱いに優れており、Rego言語によって企業やプロジェクトごとに異なる複雑なポリシーを柔軟に実装できます

  • ポリシーの例:

    • GPL v3ファミリーライセンスの検出: 自動車製品では受け入れがたい「install information」条項を持つGPL v3ファミリーライセンスを自動的に検出し、エラーとして報告するポリシーの実装
      image.png
    • 要確認ライセンスのリストアップと管理: OSI承認ライセンス以外の「要チェック」なライセンスをリストアップし、特定のライセンスをプロジェクト承認リストに追加することで、チェック対象から自動的に除外できる柔軟な仕組みを実装
      image.png

4. 得られた知見

  • ベストプラクティスをオープンコードとして共有することは、複雑な自動車サプライチェーン全体でSBOMの品質と評価の一貫性を向上させるのに効果的である

  • ポリシーベースの自動化によって構築されたシステムは、特定のビルドシステムに依存しない高い移植性を持ち、各企業やプロジェクトの固有のポリシーを柔軟に実装できるリファレンスシステムとなる

引用:OSS Summit Japan 2025 AAA 発表資料

さいごに

AAAプロジェクトは自分のようにソフトウェア開発経験が少ない人でも参加しやすい活動ですので、ぜひ参加お待ちしています。
SBOM評価自動化のベストプラクティス構築に向けて、一緒に頑張りましょう!

Repository:
https://github.com/automotive-grade-linux/automation-playground

Confluence:
English
Japanese

Discord:
https://discord.gg/ZztCaVeQVG

image.png

AGLコミュニティへの参加方法:
https://lf-automotivelinux.atlassian.net/wiki/spaces/AGLJ/pages/681869314/AGL

11
0
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
11
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?