보통 프로젝트 전용 유틸리티 스크립트는 Unreal Automation Tool(UAT) BuildCommand classes. 클래스로 구현됩니다. 하지만 가끔은 프로젝트의 커스텀 태스크를 자동화하고 싶을 때가 있습니다. 그럴 때 BuildGraph 가 도움이 될 수 있습니다. BuildGraph 는 요구에 맞는 방식으로 몇 개의 태스크로도 확장시킬 수 있습니다. 여기서는 BuildGraph 를 사용하여 커스텀 태스크를 만드는 방법과 아울러, 별도의 커스텀 태스크 제작에 참고가 되는 미리정의된 태스크 목록을 포함해서 알아보도록 하겠습니다.
커스텀 태스크
커스텀 태스크를 새로 만들려면, CustomTask 클래스에서 파생된 클래스를 구현하고 [TaskElement] 어트리뷰트를 적용합니다. TaskElement 생성자는 인수를 둘 받습니다. 하나는 그것이 표현하는 XML 요소 이름, 다른 하나는 그 파라미터가 들어있는 클래스 유형입니다 (이것이 로드 시간에 생성자에 전달됩니다).
XML 파일에서 파라미터 클래스 필드를 읽으려면, 태스크에 [TaskParameter] 어트리뷰트를 붙입니다. TaskParameter 어트리뷰트를 붙이면 파라미터가 필수인지 옵션인지를 나타내며, 여기에는 인수에 적용시킬 추가 인증까지
포함됩니다.
미리 정의된 태스크
별도의 태스크 제작을 위한 시작점으로, 미리 정의된 태스크를 템플릿으로 다양하게 제공하고 있으니, 여기서부터 작업을 하시면 됩니다. 미리 정의된 태스크 견본 간단한 것을 찾는 경우, LogTask 부터 시작해 보면 좋습니다. BuildGraph 최신 개선 사항 소식을 받아보시려는 경우, 이 페이지를 북마크 등록하세요. 주기적으로 미리 정의된 태스크 목록을 업데이트하겠습니다.
BuildCookRun은 태스크를 패키징할 때 일반적으로 사용되는 강력한 명령입니다. 자세한 내용은 빌드 작업의 개요 부분을 참고하세요.
AgeStore
파일 세트에서 심볼을 추출하는 태스크입니다. 이 태스크는 Microsoft 디버거 툴 SDK와 함께 제공되는 AGESTORE 유틸리티를 따라 이름이 지어졌지만 실제로는 별개의 구현입니다. 주된 차이점은 삭제할 파일을 결정할 때 마지막 액세스 시간이 아니라 마지막 수정 시간을 사용한다는 점입니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Platform | 언리얼 타깃 플랫폼 | 필수 | 심볼을 에이징할 타깃 플랫폼입니다. |
| StoreDir | 스트링 | 필수 | 심볼 서버 디렉터리입니다. |
| Days | Integer | 필수 | 심볼을 보관할 날짜 수입니다. |
| BuildDir | 스트링 | 선택 | buildversion 으로 명명된 기존 디렉터리를 확인할 수 있는 빌드 디렉터리의 루트입니다. |
| Filter | 스트링 | 선택 | 심볼을 삭제하기 전에 디렉터리 파일 이름에서 일치시킬 부분 스트링입니다. 여러 빌드가 동일한 심볼 서버를 공유하는 경우 'age store' 작업으로 인해 다른 빌드에서 심볼을 삭제하지 않도록 할 수 있습니다. 필터 값의 구체적인 사용은 플랫폼 툴 체인에 의해 정의된 심볼 서버 구조에 의해 결정됩니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Aws
AWS CLI를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Arguments | 스트링 | 선택 | 새로 생성된 프로세스의 실행인자입니다. |
| Environment | 스트링 | 선택 | 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경을 읽을 파일입니다. |
| LogOutput | 부울 | 선택 | 출력을 로그에 작성합니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Aws-AssumeRole
AWS 역할을 맡습니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Arn | 스트링 | 필수 | 맡을 역할입니다. |
| Session | 스트링 | 필수 | 이 세션의 이름입니다. |
| Duration | 인티저 | 선택 | 토큰의 길이(초)입니다. |
| Environment | 스트링 | 선택 | 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경 변수를 읽을 파일입니다. |
| OutputFile | 스트링 | 필수 | 새 환경에 대한 출력 파일입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Aws-EcsDeploy
새 AWS ECS 작업 정의를 생성하고 수정된 새 태스크 정의를 사용하도록 ECS 서비스를 업데이트합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| TaskDefinitionFile | 스트링 | 필수 | 사용할 작업 정의 파일입니다 |
| DockerImage | 스트링 | 필수 | 새 태스크 정의에서 설정할 Docker 이미지입니다. %%DOCKER_PATTERN%% 을 이 값으로 대체합니다. |
| Version | 스트링 | 선택 | 새 태스크 정의에서 설정할 앱 버전입니다. %%VERSION%% 을 이 값으로 대체합니다. |
| Cluster | 스트링 | 필수 | 작업할 AWS ECS 클러스터를 나타내는 Cluster ARN입니다. |
| Service | 스트링 | 필수 | 업데이트 및 디플로이할 서비스 이름입니다. |
| Environment | 스트링 | 선택 | 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경을 읽을 파일입니다. |
| LogOutput | Boolean | 선택 | 출력을 로그에 작성합니다. |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Command
지정된 명령을 실행할 자동화 툴(Automation Tool)의 자식 프로세스를 호출합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Name | 스트링 | 필수 | 실행할 명령 이름입니다. |
| Arguments | 스트링 | 선택 | 명령에 전달할 실행인자입니다. |
| MergeTelemetryWithPrefix | 스트링 | 선택 | null이 아닌 경우 지정된 접두사를 사용하여 명령의 원격 측정을 이 언리얼 자동화 툴(Unreal Automation Tool, UAT) 인스턴스의 원격 측정에 병합하도록 지시합니다. null이 아닌 빈 스트링일 수 있습니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Commandlet
커맨드릿을 실행할 에디터를 스폰합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Name | 스트링 | 필수 | 실행할 커맨드릿 이름입니다. |
| Project | 파일 사양 | 선택 | 에디터를 실행할 프로젝트입니다. |
| Arguments | 스트링 | 선택 | 커맨드릿에 전달할 실행인자입니다. |
| EditorExe | 파일 레퍼런스 | 선택 | 사용할 에디터 실행 파일입니다. 디폴트는 현재 플랫폼의 development UnrealEditor 실행 파일입니다. |
| ErrorLevel | Integer | 선택 | 오류로 취급되는 최소 종료 코드입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Compile
언리얼 빌드 툴(Unreal Build Tool, UBT)로 타깃을 컴파일합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Target | 스트링 | 선택 | 컴파일할 타깃입니다. |
| Configuration | 언리얼 타깃 환경설정 | 필수 | 컴파일할 환경설정입니다. |
| Platform | 언리얼 타깃 플랫폼 | 필수 | 컴파일할 플랫폼입니다. |
| Project | 파일 사양 | 선택 | 컴파일할 프로젝트입니다. |
| Arguments | 스트링 | 선택 | 언리얼 빌드 툴의 추가 실행인자입니다. |
| AllowXGE | 부울 | 선택 | 컴파일에 XGE 사용을 허용할지 여부입니다. |
| AllowParallelExecutor | 부울 | 선택 | 이 컴파일에 병렬 실행기의 사용을 허용할지 여부입니다. |
| Clean | Boolean | 선택 | 이 타깃의 정리를 허용할지 여부입니다. 지정하지 않으면 -Clean 실행인자가 명령줄로 전달될 경우에 타깃을 정리합니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
쿠킹
특정 플랫폼을 위해 일부 맵을 쿠킹합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Project | 스트링 | 필수 | 쿠킹할 프로젝트 파일입니다. |
| Platform | 스트링 | 필수 | 타깃으로 지정할 쿠킹 플랫폼입니다(예: Windows). |
| Maps | 스트링 | 선택 | 쿠킹할 맵 목록입니다. '+' 문자로 구분합니다. |
| Versioned | 부울 | 선택 | 쿠커로 전달할 추가 실행인자입니다. |
| Arguments | 스트링 | 선택 | 쿠커로 전달할 추가 실행인자입니다. |
| EditorExe | 스트링 | 선택 | 에디터 실행파일이 쿠킹을 위해 실행할 대상의 경로를 선택할 수 있습니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Copy
파일을 한 디렉터리에서 다른 디렉터리로 복사합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 선택 | 입력 파일 목록에 적용할 선택적 필터입니다. |
| From | 파일 사양 | 필수 | Engine/*.txt 와 같은 패턴 또는 패턴을 복사해 올 대상입니다. |
| To | 파일 사양 | 필수 | 복사할 대상 디렉터리입니다. |
| Overwrite | Boolean | 선택 | 기존 파일을 덮어쓸지 여부입니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 제품을 빌드하는 데 적용할 태그입니다. |
| ErrorIfNotFound | Boolean | 선택 | 복사할 파일을 찾을 수 없으면 오류를 발생시킬지 여부입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
CsCompile
C# 프로젝트 파일과 종속성을 컴파일합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Project | 스트링 | 필수 | 컴파일할 C# 프로젝트 파일입니다. 세미콜론을 사용하여 둘 이상의 프로젝트 파일을 지정할 수 있습니다. |
| Configuration | 스트링 | 선택 | 컴파일할 환경설정입니다. |
| Platform | 스트링 | 선택 | 컴파일할 플랫폼입니다. |
| Target | 스트링 | 선택 | 빌드할 타깃입니다. |
| Properties | 스트링 | 선택 | 명령의 프로퍼티입니다. |
| Arguments | 스트링 | 선택 | 컴파일러로 전달할 추가 옵션입니다. |
| EnumerateOnly | 부울 | 선택 | 빌드 제품을 열거하기만 합니다. 실제로 프로젝트를 컴파일하지 않습니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 제품을 빌드하는 데 적용할 태그입니다. |
| TagReferences | 태그 목록 | 선택 | 출력 디렉터리로 복사되지 않는 외부 레퍼런스와 같이, 프로젝트에 있으며 private이 아닌 레퍼런스에 적용할 태그입니다. |
| UseSystemCompiler | 부울 | 선택 | 번들링된 UE SDK가 아닌 시스템 툴체인을 사용할지 여부입니다. |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Delete
파일 세트를 삭제합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 선택 | *.cpp;Engine/.../*.bat 처럼 세미콜론으로 구분된 파일 사양 목록이나 태그 세트의 이름입니다. |
| Directories | 스트링 | 선택 | 디렉터리 이름 목록입니다. |
| DeleteEmptyDirectories | 부울 | 선택 | 파일을 삭제한 다음 빈 디렉터리를 삭제할지 여부입니다. 디폴트는 true입니다. |
| Verbose | 부울 | 선택 | 상세 로깅을 사용할지 여부입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Docker
Docker를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Arguments | 스트링 | 필수 | Docker 명령줄 실행인자입니다. |
| Environment | 스트링 | 선택 | 설정할 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경 변수를 읽을 파일입니다. |
| WorkingDir | 스트링 | 선택 | 명령을 실행할 베이스 디렉터리입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Docker-Build
Docker를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| BaseDir | 스트링 | 필수 | 빌드를 위한 베이스 디렉터리입니다. |
| Files | 스트링 | 필수 | 이미지 빌드 전에 스테이징할 파일입니다. |
| DockerFile | 스트링 | 선택 | Dockerfile 경로입니다. 지정되지 않으면 basedir의 루트를 사용합니다. |
| DockerIgnoreFile | 스트링 | 선택 | .dockerignore 경로입니다. 지정되면 basedir로 복사됩니다. |
| UseBuildKit | 부울 | 선택 | Docker에서 BuildKit을 사용합니다. |
| ProgressOutput | 스트링 | 선택 | 진행률 출력 타입입니다(--progress ). |
| Tag | 스트링 | 선택 | 이미지 태그입니다. |
| Arguments | 스트링 | 선택 | 선택적 실행인자입니다. |
| OverlayDirs | 스트링 | 선택 | 스테이징된 입력 파일로 오버레이할 추가 디렉터리 목록입니다. 크리덴셜 및 기타 유사 항목의 스테이징을 허용합니다. |
| Environment | 스트링 | 선택 | 설정할 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경 변수를 읽을 파일입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Docker-Compose-Down
Docker를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| File | 스트링 | 필수 | docker-compose 파일 경로입니다. |
| Arguments | 스트링 | 선택 | 명령에 대한 실행인자입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Docker-Compose-Up
Docker를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| File | 스트링 | 필수 | docker-compose 파일 경로입니다. |
| Arguments | 스트링 | 선택 | 명령에 대한 실행인자입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Docker-Push
Docker를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Repository | 스트링 | 필수 | 저장소입니다. |
| Image | 스트링 | 필수 | 푸시할 소스 이미지입니다. |
| TargetImage | 스트링 | 선택 | 타깃 이미지 이름입니다. |
| Environment | 스트링 | 선택 | 추가 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경을 읽을 파일입니다. |
| AwsEcr | 부울 | 선택 | AWS ECR에 로그인할지 여부입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
DotNet
Docker를 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Arguments | 스트링 | 선택 | Docker 명령줄 실행인자입니다. |
| BaseDir | 스트링 | 선택 | 명령을 실행할 베이스 디렉터리입니다. |
| Environment | 스트링 | 선택 | 설정할 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경 변수를 읽을 파일입니다. |
| ErrorLevel | 인티저 | 선택 | 오류로 취급되는 최소 종료 코드입니다. |
| DotNetPath | 파일 레퍼런스 | 선택 | dotnet 실행파일 경로를 오버라이드합니다. |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
FindModifiedFiles
C# 프로젝트 파일과 종속성을 컴파일합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Paths | 스트링 | 필수 | 컴파일할 C# 프로젝트 파일입니다. 세미콜론을 사용하여 둘 이상의 프로젝트 파일을 지정할 수 있습니다. |
| Change | 인티저 | 선택 | 컴파일할 환경설정입니다. |
| MinChange | 인티저 | 선택 | 컴파일할 환경설정입니다. |
| MaxChange | 인티저 | 선택 | 컴파일할 환경설정입니다. |
| Output | 파일 레퍼런스 | 선택 | 작성할 파일입니다. |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Git
Git을 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Arguments | 스트링 | 선택 | Git 명령줄 실행인자입니다. |
| BaseDir | 스트링 | 선택 | 명령을 실행할 베이스 디렉터리입니다. |
| ErrorLevel | 인티저 | 선택 | 오류로 취급되는 최소 종료 코드입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Git-Clone
Git 저장소를 로컬 경로로 복제합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Dir | 스트링 | 필수 | 저장소의 디렉터리입니다. |
| Remote | 스트링 | 선택 | 추가할 원격 저장소입니다. |
| Branch | 스트링 | 필수 | 원격 저장소에서 체크아웃할 브랜치입니다. |
| ConfigFile | 스트링 | 선택 | 저장소에 대한 환경설정 파일입니다. 원격 저장소를 가져오도록 구성 및/또는 크리덴셜 제공에 사용됩니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Helm
Helm을 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Chart | 스트링 | 필수 | Helm 명령줄 실행인자입니다. |
| Deployment | 스트링 | 필수 | 릴리즈 이름입니다. |
| Namespace | 스트링 | 선택 | Kubernetes 네임스페이스입니다. |
| KubeContext | 스트링 | 선택 | kubectl 컨텍스트입니다. |
| KubeConfig | 스트링 | 선택 | 사용할 kubectl 환경설정 파일입니다. |
| Values | 스트링 | 선택 | 차트 실행을 위해 설정할 값입니다. |
| ValuesFile | 스트링 | 선택 | 차트 실행을 위해 설정할 값입니다. |
| Environment | 스트링 | 선택 | 설정할 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 이 파일로부터 환경 변수를 파싱합니다. |
| Arguments | 스트링 | 선택 | 추가 실행인자입니다. |
| WorkingDir | 스트링 | 선택 | 명령을 실행할 베이스 디렉터리입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Kubectl
Kubectl을 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Arguments | 스트링 | 필수 | 명령줄 실행인자입니다. |
| BaseDir | 스트링 | 선택 | 명령을 실행할 베이스 디렉터리입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
로그
메시지(및 기타 옵션 진단 정보)를 출력 로그로 출력합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Message | 스트링 | 선택 | 출력할 메시지입니다. |
| Files | 파일 사양 | 선택 | 지정하면 지정된 파일 목록이 지정된 메시지 다음에 출력됩니다. |
| IncludeContents | 부울 | 선택 | 지정하면 지정된 파일의 콘텐츠가 출력됩니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
ModifyConfig
환경설정 파일을 변경합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| File | 파일 사양 | 필수 | 환경설정 파일의 경로입니다. |
| Section | 스트링 | 필수 | 수정할 섹션 이름입니다. |
| Key | 스트링 | 필수 | 설정할 프로퍼티 이름입니다. |
| Value | 스트링 | 필수 | 설정할 프로퍼티 값입니다. |
| Tag | 태그 목록 | 선택 | 압축을 해제한 파일에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
ModifyJsonValue
키 경로에 지정된 값을 설정하여 json 파일을 수정합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 필수 | 수정될 JSON 파일 경로입니다. |
| KeyPath | 스트링 | 필수 | 각 파일에서 찾을 JSON 키 경로입니다. |
| NewValue | 인티저 | 필수 | 적용할 새 값입니다. |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Move
파일을 한 디렉터리에서 다른 디렉터리로 이동합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 선택 | 입력 파일 목록에 적용할 선택적 필터입니다. |
| From | 파일 사양 | 필수 | Engine/*.txt 와 같은 패턴 또는 패턴을 복사해 올 대상입니다. |
| To | 파일 사양 | 필수 | 복사할 대상 디렉터리입니다. |
| Overwrite | 부울 | 선택 | 파일을 덮어써야 하는 경우 선택적으로 덮어씁니다. 기본적으로 False입니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
MsBuild
MsBuild를 실행합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Project | 스트링 | 필수 | 컴파일할 C# 프로젝트 파일입니다. 세미콜론을 사용하여 둘 이상의 프로젝트 파일을 지정할 수 있습니다. |
| Configuration | 스트링 | 선택 | 컴파일할 환경설정입니다. |
| Platform | 스트링 | 선택 | 컴파일할 플랫폼입니다. |
| Arguments | 스트링 | 선택 | 컴파일러로 전달할 추가 옵션입니다. |
| Verbosity | 스트링 | 선택 | MSBuild 출력의 세부 수준입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
PakFile
지정된 파일 세트에서 PAK 파일을 만듭니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 필수 | pak 파일에 추가할 파일, 와일드카드, 태그 세트 목록으로 ';' 문자로 구분됩니다. |
| Output | 파일 레퍼런스 | 필수 | 출력할 PAK 파일입니다. |
| ResponseFile | 파일 레퍼런스 | 선택 | 개별적으로 파일을 지정하는 대신 PAK 파일에 추가할 파일 목록이 있는 응답 파일의 경로입니다. |
| RebaseDir | 디렉터리 목록 | 선택 | 파일을 상대적으로 리베이스할 디렉터리입니다. 지정하면 각 파일에 대해 나열된 디렉터리에 대한 가장 짧은 경로가 사용됩니다. |
| Order | 파일 레퍼런스 | 선택 | 파일 순서를 제공하는 스크립트입니다. |
| Sign | 파일 레퍼런스 | 선택 | 이 PAK 파일의 암호화 키입니다. |
| Compress | 부울 | 선택 | 파일 압축 여부입니다. |
| Arguments | 스트링 | 선택 | UnrealPak으로 전달할 추가 실행인자입니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Rename
파일이나 파일 그룹의 이름을 변경합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 필수 | 이름을 변경할 파일입니다. |
| From | 스트링 | 선택 | 현재 파일 이름 또는 일치시킬 패턴입니다(예: *.txt). 경로 구분 기호를 포함해서는 안 됩니다. |
| To | 스트링 | 필수 | 파일의 새 이름입니다. 경로 구분 기호를 포함해서는 안 됩니다. |
| Tag | 태그 목록 | 선택 | 이름을 변경한 파일에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
SanitizeReceipt
*.target 파일에서 읽어 빌드 제품 및/또는 런타임 종속성을 태그하는 작업입니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 필수 | 와일드카드 및 태그 이름이 포함된 읽을 수령 파일 세트(*.target )입니다. 세미콜론으로 구분됩니다. |
| EngineDir | 디렉터리 레퍼런스 | 선택 | 수령 파일의 $(EngineDir) 프로퍼티를 확장하는 데 사용되는 Engine 폴더 경로입니다. 기본적으로 현재 워크스페이스의 Engine 디렉터리입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
SetVersion
지정된 버전 정보로 로컬 버전 파일(Engine/Source/Runtime/Launch/Resources/Version.h , Engine/Build/Build.version , and Engine/Source/Programs/Shared/Metadata.cs )을 업데이트합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Change | 인티저 | 필수 | 버전 파일에서 설정할 체인지리스트입니다. |
| CompatibleChange | 인티저 | 선택 | 버전 파일에서 설정할 엔진 호환 체인지리스트입니다. |
| Branch | 스트링 | 필수 | 분기 스트링입니다. |
| Build | 스트링 | 선택 | 빌드 버전 스트링입니다. |
| Licensee | 부울 | 선택 | IS_LICENSEE_VERSION 플래그를 True로 설정할지 여부입니다. |
| Promoted | 부울 | 선택 | ENGINE_IS_PROMOTED_BUILD 플래그를 True로 설정할지 여부입니다. |
| SkipWrite | 부울 | 선택 | 설정하면 파일에 작성하지 않습니다. 업데이트할 버전 파일만 반환합니다. 로컬 빌드에 유용합니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Sign
설치된 인증서를 사용하여 실행 파일 세트에 서명합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 필수 | *.cpp;Engine/.../*.bat 처럼 세미콜론으로 구분된 파일 사양 목록이나 태그 세트의 이름입니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Spawn
외부 실행 파일을 스폰하고 완료될 때까지 기다립니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Exe | 스트링 | 필수 | 스폰할 실행 파일입니다. |
| Arguments | 스트링 | 선택 | 새로 생성된 프로세스의 실행인자입니다. |
| WorkingDir | 스트링 | 선택 | 새 태스크 스폰을 위한 작업 디렉터리입니다. |
| Environment | 스트링 | 선택 | 설정할 환경 변수입니다. |
| EnvironmentFile | 스트링 | 선택 | 환경을 읽을 파일입니다. |
| LogOutput | 부울 | 선택 | 출력을 로그에 작성합니다. |
| ErrorLevel | 인티저 | 선택 | 오류로 취급되는 최소 종료 코드입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Stage
빌드 수령에 나열된 파일을 출력 디렉터리에 스테이징합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Project | 파일 레퍼런스 | 선택 | 타깃이 속한 프로젝트입니다. |
| Target | 스트링 | 필수 | 스테이징할 타깃 이름입니다. |
| Platform | 언리얼 타깃 플랫폼 | 필수 | 스테이징할 플랫폼입니다. |
| Configuration | 언리얼 타깃 환경설정 | 필수 | 스테이징할 환경설정입니다. |
| Architecture | 스트링 | 선택 | 스테이징할 아키텍처입니다. |
| ToDir | 디렉터리 레퍼런스 | 필수 | 수령 파일을 스테이징해야 하는 디렉터리입니다. |
| Overwrite | 부울 | 선택 | 기존 파일을 덮어쓸지 여부입니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Strip
파일 세트에서 정보를 디버깅할 스트립입니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Platform | 언리얼 타깃 플랫폼 | 필수 | 바이너리를 스트립할 플랫폼 툴 체인입니다. |
| BaseDir | 디렉터리 레퍼런스 | 선택 | 파일을 검색할 디렉터리입니다. |
| Files | 파일 사양 | 필수 | Engine/.../*.pdb 처럼세미콜론으로 구분된 파일 사양 목록이나 태그 세트의 이름입니다. |
| OutputDir | 디렉터리 레퍼런스 | 선택 | 스트립된 파일의 출력 디렉터리입니다. 디폴트값은 입력 경로이며 입력 파일을 덮어씁니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Submit
새 체인지리스트를 만들고 파일 세트를 Perforce 스트림에 제출합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Description | 스트링 | 필수 | 제출된 체인지리스트에 대한 설명입니다. |
| Files | 파일 사양 | 필수 | 제출할 파일입니다. |
| FileType | 스트링 | 선택 | 제출한 파일의 Perforce 파일 타입입니다(예: binary+FS32). |
| Workspace | 스트링 | 선택 | 워크스페이스 이름입니다. 지정하면 지정된 스트림 및 파일을 제출할 루트 디렉터리를 사용하여 새 워크스페이스가 생성됩니다. 그러지 않으면 현재 워크스페이스가 사용됩니다. |
| Stream | 스트링 | 선택 | 워크스페이스에 대한 스트림입니다. 기본적으로 현재 스트림입니다. Workspace 어트리뷰트도 지정되지 않으면 무시됩니다. |
| Branch | 스트링 | 선택 | 워크스페이스에 대한 브랜치입니다(레거시 P4 디포 경로). 스트림과 함께 사용하지 않습니다. |
| RootDir | 디렉터리 레퍼런스 | 선택 | 스트림의 루트 디렉터리입니다. 지정하지 않으면 기본적으로 현재 루트 디렉터리입니다. |
| RevertUnchanged | 부울 | 선택 | 제출하려 하기 전에 변경되지 않은 파일을 되돌릴지 여부입니다. |
| Force | 부울 | 선택 | 강제로 제출합니다. 문제를 해석해야 하는 경우에도 적용됩니다(항상 현재 버전을 수락). |
| P4Verbose | 부울 | 선택 | 상세한 P4 출력(spew)을 허용합니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
SymStore
파일 세트에서 심볼을 추출하는 태스크입니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Platform | 언리얼 타깃 플랫폼 | 필수 | 심볼 파일을 처리하는 데 필요한 플랫폼 툴 체인입니다. |
| Files | 스트링 | 필수 | 출력 파일 목록입니다. PDB는 이 목록에서 추출됩니다. |
| StoreDir | 스트링 | 필수 | 압축 심볼의 출력 디렉터리입니다. |
| Product | 스트링 | 필수 | 심볼 저장 레코드의 제품 이름입니다. |
| BuildVersion | 스트링 | 선택 | 이 심볼과 연결된 BuildVersion입니다. 이 버전을 빌드 공유의 디렉터리 이름과 매칭하여 AgeStore를 정리하는 데 사용됩니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Tag
지정된 파일 세트에 태그를 적용합니다. 파일 목록은 Files 파라미터에서 지정된 태그와 파일 사양을 열거하여 찾을 수 있습니다. 이 목록에서 Filter 파라미터와 일치하지 않는 파일은 모두 제거되고 Except 파라미터와 일치하지 않는 파일은 모두 제거됩니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| BaseDir | 디렉터리 레퍼런스 | 선택 | 베이스 디렉터리가 상대 경로와 패턴을 해석하도록 설정합니다. 설정하면 모든 절대 패턴(예 : /Engine/Build/... )이 이 경로에 상대 경로로 취급됩니다. 그러지 않으면 절대 경로로 취급됩니다. |
| Files | 파일 사양 | 선택 | 와일드카드 및 태그 이름이 포함된 태스크할 파일 세트입니다. 세미콜론으로 구분됩니다. 설정하면 BaseDir 의 상대 경로로 해석되고, 그러지 않으면 분기 루트 디렉터리로 해석됩니다. |
| FileLists | 파일 사양 | 선택 | 추가 파일을 추가할 텍스트 파일 세트입니다. 각 파일 목록에는 한 줄당 하나의 파일이 있어야 합니다. |
| Filter | 파일 사양 | 선택 | 태그 이름 또는 와일드카드를 포함하여 파일 목록을 필터링할 패턴입니다. 설정하면 베이스 디렉터리에 적용되는 패턴이 포함될 수 있습니다. 지정하지 않으면 기본적으로 모든 파일에 적용됩니다. |
| Except | 파일 사양 | 선택 | 일치 목록에서 제외할 패턴 세트입니다. 베이스 디렉터리에 적용되는 패턴의 태그 이름을 포함할 수 있습니다. |
| With | 태그 목록 | 필수 | 적용할 태그의 이름입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
TagReceipt
*.target 파일에서 읽어 빌드 제품 및/또는 런타임 종속성을 태그하는 작업입니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Files | 파일 사양 | 필수 | 와일드카드 및 태그 이름이 포함된 읽을 수령 파일 세트(*.target )입니다. 세미콜론으로 구분됩니다. |
| EngineDir | 디렉터리 레퍼런스 | 선택 | 수령 파일의 $(EngineDir) 프로퍼티를 확장하는 데 사용되는 Engine 폴더 경로입니다. 기본적으로 현재 워크스페이스의 Engine 디렉터리입니다. |
| ProjectDir | 디렉터리 레퍼런스 | 선택 | 수령 파일의 $(ProjectDir) 프로퍼티를 확장하는 데 사용되는 프로젝트 폴더 경로입니다. 기본적으로 현재 워크스페이스의 Engine 디렉터리입니다. (지원 중단되었습니다.) |
| BuildProducts | 부울 | 선택 | 수령 파일에 나열된 빌드 제품에 태그를 지정할지 여부입니다. |
| BuildProductType | 스트링 | 선택 | 태그할 빌드 제품의 타입입니다(유효한 값은 TargetReceipt.cs - UnrealBuildTool.BuildProductType 참조). |
| RuntimeDependencies | 부울 | 선택 | 수령 파일에 나열된 런타임 종속성을 태그할지 여부입니다. |
| StagedFileType | 스트링 | 선택 | 태그할 런타임 종속성의 타입입니다(유효한 값은 TargetReceipt.cs - UnrealBuildTool.StagedFileType 참조). |
| With | 태그 목록 | 필수 | 적용할 태그의 이름입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Unzip
ZIP 아카이브에서 파일을 추출합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| ZipFile | 파일 사양 | 필수 | 압축을 해제할 ZIP 파일의 경로입니다. |
| ToDir | 디렉터리 레퍼런스 | 필수 | 압축을 해제한 파일의 출력 디렉터리입니다. |
| UseLegacyUnzip | 부울 | 선택 | 레거시 압축 해제 코드를 사용할지 여부입니다. |
| Tag | 태그 목록 | 선택 | 압축을 해제한 파일에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Upload
향후 가져오기 위해 파일 세트를 Jupiter에 업로드합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| FromDir | 디렉터리 레퍼런스 | 필수 | 압축된 파일을 읽을 디렉터리입니다. |
| Files | 파일 사양 | 선택 | *.cpp;Engine/.../*.bat 처럼 세미콜론으로 구분된 파일 사양 목록이나 태그 세트의 이름입니다. 상대 경로는 FromDir에서 가져옵니다. |
| JupiterNamespace | 스트링 | 필수 | 빌드 업로드에 사용된 Jupiter 네임스페이스입니다. 누가 빌드에 액세스 가능한지 제어합니다. |
| JupiterKey | 스트링 | 필수 | 빌드를 다시 다운로드하는 데 사용되는 빌드의 키입니다. 이 특정 다운로드에 대해 전역에서 고유해야 합니다. |
| ArchiveType | 스트링 | 필수 | 이 파일의 출처인 아카이브의 타입입니다. 메타데이터에 추가됩니다. |
| ProjectName | 스트링 | 필수 | 이 파일 세트가 연결된 프로젝트의 이름입니다. 메타데이터에 추가됩니다. |
| Branch | 스트링 | 필수 | 이 파일이 생성된 소스 컨트롤 브랜치입니다. 메타데이터에 추가됩니다. |
| Changelist | 스트링 | 필수 | 이 파일이 생성된 소스 컨트롤 리비전입니다. 메타데이터에 추가됩니다. |
| JupiterUrl | 스트링 | 필수 | Jupiter 인스턴스를 업로드할 URL을 지정합니다. |
| AdditionalMetadata | 스트링 | 선택 | '='로 구분되는 키 값 매핑의 세미콜론으로 구분되는 목록입니다(예: Foo=bar;spam=eggs). 메타데이터에 추가됩니다. |
| LimitMemoryUsage | 부울 | 선택 | 활성화하면 파일 콘텐츠가 메모리에 저장되지 않아서 메모리 사용량이 줄어들지만 파일 콘텐츠를 여러 번 읽어야 하므로 io가 증가합니다(해싱 및 업로드 시). |
| If | 조건 | 선택 | 이 작업을 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Wait
정해진 초 동안 대기합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| Seconds | 인티저 | 필수 | 대기할 초입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
WriteTextFile
파일에 텍스트를 작성합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| File | 파일 레퍼런스 | 필수 | 작성할 파일의 경로입니다. |
| Append | 부울 | 선택 | 파일에 덮어쓰는 대신 추가할지 여부입니다. |
| Text | 스트링 | 선택 | 파일에 쓸 텍스트입니다. |
| Files | 파일 사양 | 선택 | 지정하면 지정된 파일 목록이 지정된 메시지 다음에 출력됩니다. |
| Tag | 태그 목록 | 선택 | 이 작업의 빌드 제품에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |
Zip
파일을 ZIP 아카이브로 압축합니다.
| 어트리뷰트 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
| FromDir | 디렉터리 레퍼런스 | 필수 | 압축된 파일을 읽을 디렉터리입니다. |
| Files | 파일 사양 | 선택 | *.cpp;Engine/.../*.bat 처럼 세미콜론으로 구분된 파일 사양 목록이나 태그 세트의 이름입니다. 상대 경로는 FromDir에서 가져옵니다. |
| ZipFile | 파일 레퍼런스 | 필수 | 만들 ZIP 파일입니다. |
| Tag | 태그 목록 | 선택 | 만들어진 ZIP 파일에 적용할 태그입니다. |
| If | 조건 | 선택 | 이 태스크를 실행할지 여부입니다. 이 조건이 False로 평가되면 무시됩니다. |