

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 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)로 바꿔야 합니다. 예를 들어 `My project name - 2020`는 `My_project_name_-_2020`으로 변경되어야 합니다.  
+ 유형: 문자열
+ required: true
+ minLength: 1
+ maxLength: 40  
**version**  
패키지의 버전입니다. 버전은 릴리스 버전 또는 버전 태그일 수 있습니다.  
+ 유형: 문자열
+ required: true
+ minLength: 1
+ maxLength: 30  
**description**  
사람이 읽을 수 있는 패키지 설명입니다. 이 설명은 패키지가 무엇이고 무엇을 제공하는지 명확하게 설명해야 합니다.  
+ 유형: 문자열
+ required: true
+ minLength: 30
+ maxLength: 255  
**종속성**  
사용자가 이 패키지를 성공적으로 빌드하는 데 필요하고 Git, Subversion 또는 Mercurial 소스 코드 호스트에서 검색할 수 있는 모든 1차 수준 종속성 목록입니다. Git, SVG 또는 hg를 통해 사용할 수 없는 종속성은 포함하지 마세요. 테스트, 문서 생성 또는 개발에 사용되는 종속성은 포함하지 마세요. 우수한 경험을 제공하려면 제한되거나 비공개인 종속성은 나열하지 않는 것이 좋습니다.  
+ 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이어야 합니다(예: 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

# Example 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"
```