

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# FreeRTOS マニフェストファイルの手順
<a name="afq-checklist-manifest-instr"></a>

が使用しているバージョンとライブラリを識別する AWS IoT Device Tester には、マニフェストファイルが必要です。これにより、お客様はバージョン、ライブラリ、依存関係、メタデータを把握しやすくなります。

マニフェストファイルは、以下の要件を満たしている必要があります。
+ ファイル名は、`manifest.yml` とする必要があります。
+ ライブラリまたはパッケージのベースフォルダにある必要があります。
+ YAML 形式であり、[YAML 1.2 仕様](https://yaml.org/spec/1.2/spec.html)に準拠している必要があります。

パラメータの順番は任意ですが、読みやすさを考慮し、以下の順番にすることをお勧めします。お客様がパッケージを使用する際に役立つコメントをファイルに追加します。

**ファイルパス**  
パッケージまたはライブラリのルートにあります。各パッケージに含まれるマニフェストファイルは 1 つのみです。取り込む依存関係に、独自のマニフェストファイルが含まれている場合があります。

**パラメータ**    
**名前**  
パッケージの名前。スペースはすべてアンダースコア (\$1) に置き換える必要があります。例えば、`My project name - 2020` は `My_project_name_-_2020` に変更する必要があります。  
+ 型: 文字列
+ required: true
+ minLength: 1
+ maxLength: 40  
**バージョン**  
パッケージのバージョン。リリースバージョンまたはバージョンタグを使用できます。  
+ 型: 文字列
+ required: true
+ minLength: 1
+ maxLength: 30  
**説明**  
人が読み取れるパッケージの説明。パッケージに関する説明とその提供内容を明確に記述する必要があります。  
+ 型: 文字列
+ required: true
+ minLength: 30
+ maxLength: 255  
**依存関係**  
ユーザーがこのパッケージを正常に構築するために必要な一次レベルの依存関係の一覧です。一覧にある依存関係はすべて Git、Subversion、または Mercurial のソースコードのホストで取得できます。Git、Subversion、または Mercurial から取得できない依存関係は含めないでください。また、テスト、ドキュメント生成、または開発に使用する依存関係も含めないでください。優れたエクスペリエンスを促進するために、制限付きの依存関係やプライベートの依存関係はリストに含めないことをお勧めします。  
+ type: array
+ required: false
+ minLength: 0  
**dependencies[].name**  
依存関係のパッケージ名。依存関係の `name` パラメータのパッケージ名と一致させる必要があります。  
+ 型: 文字列
+ required: true
+ minLength: 1
+ maxLength: 40  
**dependencies[].version**  
依存関係のバージョン。リリースバージョンまたはバージョンタグを使用できます。パッケージ自体に依存関係が含まれている場合、このバージョンと依存関係に含まれるマニフェストファイルが一致する必要があります。  
+ 型: 文字列
+ required: true
+ minLength: 1
+ maxLength: 30  
**dependencies[].repository**  
依存ソースコードの場所を示します。  
+ type: dictionary
+ required: true  
**dependencies[].repository.type**  
リポジトリのタイプ。  
+ 型: 文字列
+ required: true
+ enum: [git, svn, hg]  
**dependencies[].repository.url**  
リポジトリがある場所の URL。この URL は、プロトコルプレフィックス付きの完全な URL である必要があります (https://github.com/*ACCOUNT\$1NAME*/*REPO\$1NAME* など) 。  
+ 型: 文字列
+ required: true  
**dependencies[].repository.path**  
プロジェクトワークスペースからの依存関係の相対パス。  
+ 型: 文字列
+ required: true  
**dependencies[].repository.branch**  
使用される依存関係のブランチ。パッケージがライブラリのリリースブランチを使用する場合は、このパラメータを含めないようにし、マニフェストの長さを最小限に抑えてください。  
+ 型: 文字列
+ required: false  
**license**  
ライブラリの SPDX ライセンス識別子。詳細な一覧については、[https://spdx.org/licenses/](https://spdx.org/licenses/) を参照してください。リポジトリのルートに含まれる `LICENSE` ファイルが存在する場合は、それと一致します。  
+ 型: 文字列
+ required: true

# manifest.yml の例
<a name="afq-checklist-manifest-example"></a>

```
---
# This is an example of the manifest file that is included at the root of all FreeRTOS GitHub repositories.

name : "Project_Name"
version: "202012.00-LTS"
description: "Clear concise description of this project."         

dependencies:
  - name: "dependency_1"
    version: "v1.0.0"
    repository:
      type: "git"
      url: "https://github.com/account/dependency_1"
      path: "/relative/path/from/project/root/to/dependency_1"
      branch: "1.x"
  - name: "dependency_2"
    version: "v1.0.1_LTS"
    repository:
      type: "git"
      url: "https://github.com/account/dependency_1"
      path: "/relative/path/from/project/root/to/dependency_2"

license: "MIT"
```