ข้อมูลเมตาของแพ็กเกจบริการ

หน้านี้อธิบายวิธีใช้ฟิลด์ข้อมูลเมตาของแพ็กเกจบริการที่จำเป็นและไม่บังคับ

ข้อมูลเมตาที่ต้องระบุ

รูปแบบการดำเนินการของชุดบริการกำหนดให้ชุดบริการแต่ละชุดต้องกำหนดข้อมูลเมตาต่อไปนี้

sdv_service_bundle_metadata {
  # Name of the service bundle.
  #
  # Must follow SDV service naming convention rules.
  # Ref: https:/automotive/sdv/core-areas/naming-conventions
  #
  # When using VSIDL catalog and middleware generation, this name must be
  # equal to the service bundle name defined in the catalog.
  name: "TheNameOfTheServiceBundle"

  # Service Bundle Version Number.
  # Must be non-negative number.
  version_number: 1

  # Service Bundle Version Name.
  # Must be non-empty string.
  version_name: "1.0 alpha"

  # Path to the native library to be loaded as service bundle.
  # Must be the relative path from the APEX root directory
  native_library_path: "lib64/libservice_bundle.so"
}
# Service bundle one.
sdv_service_bundle_metadata {
  name: "ServiceBundleOne"
  ...
}
# Service bundle two.
sdv_service_bundle_metadata {
  name: "ServiceBundleTwo"
  ...
}

ข้อมูลเมตาที่ไม่บังคับ

การรองรับข้อมูลเมตาที่ไม่บังคับจะช่วยให้ใช้ความสามารถเฉพาะของ SDV ได้

ข้อมูลเมตาการจัดระเบียบ

การกำหนดค่าการจัดสรร SDV มีกลไก สำหรับการควบคุมลักษณะการทำงานของการเริ่มต้นและปิดกลุ่มบริการ การกำหนดค่าการจัดสรร SDV จะกำหนดชุดกฎที่กำหนด เวลาและวิธีการดำเนินการกับอินสแตนซ์กลุ่มบริการ กฎเหล่านี้อิงตามโหมดรถยนต์ โหมดพลังงาน และโหมดที่กำหนดเอง

หากต้องการเชื่อมโยงการกำหนดค่าการจัด Orchestrate กับแพ็กเกจบริการ ให้ระบุเส้นทางไปยังโมดูล prebuilt_etc ในฟิลด์ orchestration_config_path ที่ไม่บังคับ

sdv_service_bundle_metadata {
  ...
  # Path to the orchestration config file.
  # Warning: Shall be relative path to the APEX root directory.
  orchestration_config_path: "etc/configuration/orchestration/configuration.textproto"
}

เส้นทางนโยบายการให้สิทธิ์

นโยบายการให้สิทธิ์ SDV มีกลไกในการประกาศสิทธิ์สำหรับ ชุดบริการ นโยบายการให้สิทธิ์จะกำหนดการดำเนินการที่ชุดบริการ ทำได้ (เช่น เผยแพร่ ติดตาม แสดง หรือเรียก)

หากต้องการเชื่อมโยงนโยบายการให้สิทธิ์กับแพ็กเกจบริการ ให้ระบุเส้นทางไปยังprebuilt_etcโมดูลในฟิลด์authorization_policy_pathที่ไม่บังคับ

sdv_service_bundle_metadata {
  ...
  # Path to the authorization policy file.
  # Warning: Shall be relative path to the APEX root directory.
  authorization_policy_path: "etc/authz/permissions.textproto"
}

ข้อมูลเมตาของผู้ให้บริการ VSIDL

ข้อมูลเมตาของผู้ให้บริการ VSIDL เป็นส่วนหนึ่งของกลไกการผสานรวมชุดบริการ กับเอเจนต์แพลตฟอร์มการวินิจฉัยและ SOME/IP

หากต้องการเชื่อมโยงข้อมูลเมตาของผู้ให้บริการ VSIDL กับแพ็กเกจบริการ ให้ ระบุเส้นทางไปยังไฟล์ prebuilt_etc ที่มีไฟล์ข้อมูลเมตาที่สร้างขึ้น ในฟิลด์ vsidl_schemas_path / diagnostics_config_path / (การกำหนดค่า SOME/IP APEX เท่านั้น) external_service_bundle_metadata_path ที่ไม่บังคับ

sdv_service_bundle_metadata {
  ...
  # Path to the file with protobuf schemas extracted from bundle's VSIDL definition.
  # Warning: Must be relative path to the APEX root directory.
  vsidl_schemas_path: "etc/vsidl_provider/TheNameOfTheServiceBundle-vsidl-config.binpb"

  # Path to the diagnostics config file.
  # Warning: Shall be relative path to the APEX root directory.
  diagnostics_config_path: "etc/vsidl_provider/TheNameOfTheServiceBundle-diag-config.binpb"

  # Path to the SOME/IP config file. To be used in SOME/IP configuration apex only.
  # Warning: Must be relative path to the APEX root directory.
  external_protocol_mapping_path: "etc/vsidl_provider/someip-config.binpb"
}

ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมของผู้ให้บริการ VSIDL

ข้อมูลเมตาของแท็กล็อก

แอตทริบิวต์แท็กล็อกจะระบุตัวระบุที่ไม่ซ้ำกันสำหรับบันทึกที่สร้างขึ้นโดย ชุดบริการ หากไม่ได้กำหนดแอตทริบิวต์นี้ ระบบจะสร้างแท็กเริ่มต้นโดยอัตโนมัติ โดยใช้ชื่อแพ็กเกจ ชื่อแพ็กเกจบริการ และชื่ออินสแตนซ์ กำหนดแท็กบันทึกที่กระชับและไม่ซ้ำกันเพื่อให้มีความชัดเจนสูงสุด

ข้อมูลเมตาที่กำหนดเอง

ข้อมูลเมตาที่กำหนดเองช่วยให้ OEM และผู้ให้บริการกำหนดข้อมูลเมตาของแพ็กเกจบริการที่เฉพาะเจาะจงได้

sdv_service_bundle_metadata {
  ...
  # Custom service bundle metadata map.
  # Key is a string, value is a string.
  #
  # 1st custom metadata value.
  custom_metadata {
    key: "question"
    value: "Answer to the Ultimate Question of Life, the Universe, and Everything"
  }
  # 2nd custom metadata value.
  custom_metadata {
    key: "answer" value: "42"
  }
}
sdv_service_bundle_metadata {
  ...
  # Custom metadata values are stored in etc/.
  custom_metadata {
    key: "path_to_custom_metadata"
    value: "etc/configuration/file"
  }
}

ตัวอย่างแบบเต็ม

# proto-file: //system/software_defined_vehicle/core_services/service_bundles_registry/proto/sdv_service_bundles_manifest.proto
# proto-message: SdvServiceBundleManifestEntry

# SDV service bundle.
sdv_service_bundle_metadata {
  # Name of the service bundle.
  # Must follow SDV service naming convention rules.
  name: "TheNameOfTheServiceBundle"

  # Service Bundle Version Number.
  # Must be non-negative number.
  version_number: 42

  # Service Bundle Version Name.
  # Must be non-empty string.
  version_name: "42.0.beta"

  # Path to the native library to be loaded as service bundle.
  # Must be the relative path from the APEX root directory.
  native_library_path: "lib64/libservice_bundle.so"

  # The log tag used for Android logging for the service bundle.
  # If not specified, a tag derived from service bundle FQIN will be used.
  log_tag: "current_service_bundle"

  # Path to the orchestration config file.
  # Warning: Shall be relative path to the APEX root directory.
  orchestration_config_path: "etc/configuration/orchestration/configuration.textproto"

  # Path to the file with protobuf schemas extracted from bundle's VSIDL definition.
  # Warning: Must be relative path to the APEX root directory.
  vsidl_schemas_path: "etc/vsidl_provider/TheNameOfTheServiceBundle-vsidl-config.binpb"

  # Path to the diagnostics config file.
  # Warning: Must be relative path to the APEX root directory.
  diagnostics_config_path: "etc/vsidl_provider/TheNameOfTheServiceBundle-diag-config.binpb"

  # Path to the SOME/IP config file. To be used in SOME/IP configuration apex only.
  # Warning: Must be relative path to the APEX root directory.
  external_protocol_mapping_path: "etc/vsidl_provider/someip-config.binpb"

  # Custom service bundle metadata string.
  # Key is a string, value is a string.
  custom_metadata {
    key: "key" value: "value"
  }

  # Custom metadata values are stored in etc/.
  custom_metadata {
    key: "path_to_custom_metadata"
    value: "etc/configuration/file"
  }
}

ข้อมูลอ้างอิง