이 가이드를 완료하면 Toolkit의 구성 관리 도구를 빠르게 익히고 다음 방법을 배우게 됩니다.
- 활성 파이프라인 구성의 복사본을 안전하게 생성하는 방법
- 구성에 앱을 추가하는 방법
- 특정 환경에서 해당 앱을 사용하는 데 필요한 설정을 추가하는 방법
- 변경 사항을 활성 구성으로 다시 푸시하는 방법
About the guide
이 가이드에서는 기존 파이프라인 구성에 ShotGrid Toolkit 앱을 추가하는 방법을 보여줍니다. 구성 관리 도구를 빠르게 익힐 수 있습니다.
추가할 앱은 ShotGrid Python 콘솔 앱입니다. Maya 자체 Python 콘솔이 있지만 Toolkit 앱에는 Maya 콘솔에는 없는 몇 가지 기능이 있습니다.
이 가이드에서는 "파이프라인 구성 편집" 가이드에서 만든 파이프라인 구성을 사용합니다. 이 가이드를 완료하지 않은 경우 기존 파이프라인 구성을 사용하고 앱을 추가할 수 있습니다.
Using this document
이 가이드를 사용하고 Toolkit 앱을 설치하려면 다음이 필요합니다.
- 활성 ShotGrid 사이트.
- 식별된 프로젝트의 파이프라인 구성 또는 "구성 시작하기" 가이드를 완료하고 해당 연습에서 생성된 구성을 사용합니다.
- 파이프라인 구성이 저장된 파일 시스템에 대해 적절하게 설정된 읽기 및 쓰기 권한.
- 시스템에 ShotGrid Desktop이 설치되어 있어야 합니다.
- Maya의 활성 구독. 여기에서 Maya 30일 평가판을 받으세요.
참고: 이 가이드는 tk-config-default2 파이프라인 구성을 기반으로 합니다. 구성을 수정했다면 파일, 폴더 및 YAML 설정 블록의 위치가 여기에 설명된 내용과 다를 수 있습니다.
About ShotGrid Toolkit apps
How Toolkit apps work
파이프라인 구성에서 참조되는 앱은 다양한 위치에서 가져올 수 있습니다. 기본 구성에 포함된 표준 앱들은 ShotGrid 앱 스토어에서 가져옵니다. 파이프라인 구성의 파일들은 ShotGrid 통합이 앱에 어떻게 접근하는지를 지정합니다. 마치 Toolkit에게 "Python Console 앱의 주소를 주소록에서 찾아줄 수 있니?"라고 묻는 것과 비슷합니다. 파이프라인 구성 파일은 Toolkit에게 특정 앱에 사용되는 코드 번들을 어디서 찾을 수 있는지 알려줍니다.
Toolkit 앱의 "주소"는 기본 구성의 config/env/includes/app_locations.yml 파일에 나열되어 있으며, 코드를 찾는 방법을 지정합니다. 이러한 "주소"들을 디스크립터라고 합니다. ShotGrid 통합에는 앱의 코드 번들을 찾는 방법뿐만 아니라 어떤 환경에서 앱을 사용할지도 알려주어야 합니다.
다음은 앱을 설치하고 ShotGrid 통합에 앱을 어디서 사용할지 알려주는 방법에 대한 개념적 개요입니다. 구성을 확장하고, Toolkit에게 디스크립터를 찾도록 요청하고, ShotGrid에 앱을 어디서 사용할지 알려주는 단계를 설명합니다. 이러한 단계들은 이 가이드에 자세히 설명되어 있습니다:
- 추가하려는 앱의 디스크립터를 결정합니다.
- 앱 디스크립터를 추가하려는 활성 파이프라인 구성의 복사본을 만듭니다.
- 앱의 디스크립터가 구성에 존재하는지 확인하고, 없다면 추가합니다.
- YAML 파일을 들여쓰기할 때 탭이 아닌 공백을 사용하여 올바르게 포맷합니다.
- 앱을 사용할 환경을 결정합니다.
- 해당 환경 내에서 ShotGrid가 앱을 사용할 수 있도록 하는 설정을 추가합니다.
- 새로운 구성을 테스트합니다.
- 확장된 구성을 라이브로 푸시합니다.
Find the location descriptor for the Python Console App
1단계: 앱 및 엔진 페이지를 열고 Maya 아래에서 ShotGrid Python 콘솔에 대한 정보를 찾습니다. 제목을 선택합니다.
그러면 작은 검은 책에 필요한 모든 것을 포함하는 앱 정보가 나타납니다.
시스템 이름은 주요 식별자이며 tk-multi-pythonconsole입니다. 또한 최신 버전인 v1.1.2가 필요합니다.
Confirm that there’s no Python Console app in the Project environment in Maya
2단계: Maya를 실행하고 ShotGrid 메뉴에서 ShotGrid > Project the_other_side를 선택하면 해당 프로젝트의 프로젝트 환경에서 사용 가능한 앱 목록이 표시됩니다.
Extend the configuration
프로덕션 환경에 있는 구성을 편집하려면 먼저 복사본을 만들고 해당 복사본을 편집하는 것이 좋습니다. 이렇게 하면 라이브 구성에 영향을 주지 않고 라이브로 푸시하기 전에 안전하게 테스트할 수 있는 공간을 만들 수 있습니다. 스테이징 샌드박스를 만들면 현재 프로덕션에서 사용 중인 파이프라인 구성의 복사본을 가지고 작업할 수 있습니다. 샌드박스에서 구성 복사본을 변경하고 변경 사항을 프로덕션에 라이브로 푸시하기 전에 테스트합니다.
파이프라인 복제는 복사본 생성, 복사본으로 작업할 수 있는 샌드박스 구축, 새 구성을 라이브 프로덕션에 푸시하는 과정을 자동화합니다.
Clone the Pipeline Configuration you want to add an app to
Go to the Pipeline Configuration list.
3단계: ShotGrid를 열고 오른쪽 상단에서 Admin Menu (your avatar) > Default Layouts > Pipeline Configuration > Pipeline Configuration List을 선택합니다.
이 작업을 수행하면 ShotGrid 사이트의 모든 파이프라인 구성에 대한 자세한 목록이 표시됩니다.
4단계: 파이프라인 구성 목록이 표시되면 열 머리글의 맨 오른쪽에 있는 + 기호를 선택하고 프로젝트 열을 추가합니다.
Review where the project’s configuration is located
5단계: 또한 운영 체제에 맞는 적절한 경로 필드를 추가합니다.
그러면 구성 파일의 경로가 표시됩니다.
6단계: 기본 항목 옆의 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 " Clone this Configuration "를 선택합니다.
7단계: 구성 목록에서 구성 이름을 "Primary Clone Config 2"로 지정하고 디렉터리의 파일 이름을 "the_other_side_clone2"로 지정합니다. 확인을 선택합니다.
ShotGrid가 구성의 모든 파일과 폴더를 복사하고 앱에 대한 캐시를 생성하는 동안 기다리세요. 지금이야말로 완벽한 에스프레소 샷과 함께 입에서 녹는 가볍고 폭신한 크루아상을 만들어주는 앱을 사용하기에 좋은 시점입니다.
완료되면 구성 목록이 복제된 구성에 대한 정보로 업데이트되고 로컬 구성 폴더에 새 구성이 추가됩니다.
참고: 사용자 제한 아래에 사용자 이름이 추가되었습니다. ShotGrid는 자동으로 새 구성에 대한 액세스를 구성을 만든 사람으로만 제한합니다. 편집, 테스트 및 최종적으로 이 구성을 사용하려는 사람을 추가할 수 있습니다. 이는 ShotGrid가 유연성과 제어를 허용하는 또 다른 방법입니다.
Associate the cloned configuration with the project
8단계: ShotGrid Desktop을 열고 복제된 구성을 만든 프로젝트를 선택합니다. 오른쪽 상단에 있는 아래쪽 화살표를 선택하여 이 프로젝트와 연결된 구성을 표시하고 방금 만든 "Primary Clone Config 2"를 선택합니다.
이제 ShotGrid Desktop은 이 프로젝트에 복제된 구성을 사용합니다.
Edit the Pipeline Configuration
9단계: 파일 시스템에서 복제된 구성을 찾습니다. 경로는 생성 시 지정한 경로입니다. config/env/includes/app_locations.yml 파일을 확인합니다.
app_locations.yml 파일은 기본 구성의 작은 검은 책이며, 앱에 대한 설명자가 이 파일에 나열되어 있습니다. 이 파일은 앱이 있는 위치를 가리키며 앱에 대한 설정을 만들 수 있도록 합니다.
사용하려는 앱이 작은 검은 책에 참조되지 않은 경우 Toolkit에게 해당 앱을 찾을 위치를 알려줘야 합니다.
Tell Toolkit where to find the app
10단계: 파일에서 pythonconsole을 검색합니다. 프로젝트에 기본 구성을 사용했다면 Python 콘솔 앱에 대한 설명자가 이 파일에 나열되어 있는 것을 확인할 수 있습니다. 시작할 때 살펴본 Maya 앱 목록에서 찾은 설명과 일치해야 합니다. 버전이 Maya 앱 목록에서 확인한 버전과 일치하는지 확인하세요.
apps.tk-multi-pythonconsole.location:
type: app_store
name: tk-multi-pythonconsole
version: v1.1.2
참고: 다른 구성을 사용하는 경우 설명자를 파일에 추가해야 할 수 있습니다.
모든 앱과 엔진에는 설명자가 있습니다. 설명자가 어떻게 작동하는지, 그리고 type:을 설정하는 방법에 대해서는 다음에서 읽어볼 수 있습니다. (여기에 관련 문서 링크 또는 자료 위치를 표시해야 합니다.)
Descriptors — tk-core v0.22.0 documentation
Pointing Toolkit to an app that resides in the local file system is often very useful for managing your own bundles or doing development on an app or engine before releasing onto production. To allow for these scenarios, Toolkit provides the dev and path d
developers.shotgridsoftware.com
Tell Toolkit to use the descriptor
이제 Toolkit에게 설명자를 사용하여 Python 콘솔 앱을 찾고 Maya의 프로젝트 환경에 있을 때 사용하도록 지시해야 합니다.
11단계: 복제된 구성에서 config/env/project.yml 파일을 열고 tk-maya 엔진에 대한 설정을 찾습니다.
# configuration for all engines to load in a project context
engines:
tk-3dsmaxplus: "@settings.tk-3dsmaxplus.project"
tk-desktop: "@settings.tk-desktop.project"
tk-flame: "@settings.tk-flame.project"
tk-hiero: "@settings.tk-nuke.hiero.project"
tk-houdini: "@settings.tk-houdini.project"
tk-mari: "@settings.tk-mari.project"
tk-maya: "@settings.tk-maya.project"
tk-motionbuilder: "@settings.tk-motionbuilder.project"
tk-nuke: "@settings.tk-nuke.project"
tk-nukestudio: "@settings.tk-nuke.nukestudio.project"
tk-photoshopcc: "@settings.tk-photoshopcc.project"
tk-shell: "@settings.tk-shell.project"
tk-shotgun: "@settings.tk-shotgun.project"
tk-maya: “@settings.tk-maya.project” 줄의 @settings는 설정이 포함된 파일에 있음을 나타냅니다. tk-maya는 Maya 엔진을 식별하고 project는 환경을 식별합니다.
YAML files
ShotGrid Toolkit 파이프라인 구성은 YAML 파일의 간단한 용어를 사용하여 앱과 엔진의 위치는 물론 설정까지 식별합니다.
이 특정 블록의 경우:
- settings는 기본 구성에서 설정 폴더에 대한 참조로 선택된 것입니다.
- project는 기본 구성에서 프로젝트 환경에 대한 참조로 선택된 것입니다.
- tk-maya는 Maya용 Toolkit 엔진의 식별자입니다.
- @는 설정 값이 포함된 파일에서 가져온 것임을 나타내는 데 사용되는 Toolkit 용어입니다.
YAML 파일은 ShotGrid 통합을 보여주는 창이며 파이프라인의 요구 사항을 충족하는 작업 환경을 더 쉽게 구성할 수 있도록 합니다.
How the configuration references Toolkit bundles
ShotGrid 통합을 위한 코드는 앱, 엔진 및 프레임워크를 위한 번들로 구성됩니다. 번들은 tk-maya, tk-multi-pythonconsole 등과 같은 식별자를 사용하여 Toolkit의 YAML 파일에서 참조됩니다. 각 번들의 해당 YAML 블록에는 식별된 번들이 액세스되고 활용되는 방법을 제어하는 설정이 포함되어 있습니다.
Where to put settings for the Python Console
기본 구성의 이 특정 블록에서 'tk-maya.project'는 프로젝트 환경에 있는 Maya 엔진의 식별자입니다. 우리의 목표는 Python 콘솔 앱 코드 번들을 프로젝트 환경의 Maya 엔진에 추가하는 것입니다. 사용된 용어를 바탕으로 볼 때, tk-maya.yml은 프로젝트 환경에 대한 설정이 있는 YAML 파일의 이름이라고 추측할 수 있습니다. tk-maya.yml 파일에서 settings.tk-maya.project의 apps를 찾습니다.
13단계: 파일을 찾으려면 엔진 위의 includes 섹션에서 tk-maya.yml을 찾습니다. ./includes/settings/tk-maya.yml
14단계: 복제된 구성에서 텍스트 편집기로 config/env/includes/settings/tk-maya.yml을 열고 settings.tk-maya.project를 검색합니다.
15단계: 위치 설명자를 아래에 추가합니다
settings.tk-maya.project:
apps:
`about` 앱인 `tk-multi-about:`을 위치 디스크립터 추가 방법의 가이드로 사용한 다음, 파일을 저장하세요.
참고: YAML 파일을 포맷할 때 탭이 아닌 공백을 사용하여 올바르게 포맷되었는지 확인하세요.
# project
settings.tk-maya.project:
apps:
tk-multi-about:
location: "@apps.tk-multi-about.location"
tk-multi-pythonconsole:
location: "@apps.tk-multi-pythonconsole.location"
tk-multi-screeningroom: "@settings.tk-multi-screeningroom.rv"
tk-multi-shotgunpanel: "@settings.tk-multi-shotgunpanel"
tk-multi-workfiles2: "@settings.tk-multi-workfiles2.launch_at_startup"
ShotGrid 패널, 스크리닝룸, 그리고 Workfiles2 앱의 위치 식별자들은 About 앱과는 다른 방식으로 다른 포함 파일에 나열되어 있고 접근되는 것을 보실 수 있습니다. 이러한 앱들은 추가 설정들을 가지고 있기 때문에, 깔끔한 구성을 위해 포함된 설정 폴더로 분리되었습니다.
참고: Python Console 앱은 이미 기본 구성에 존재합니다. 하지만 이전에 구성에 추가된 적이 없는 앱을 추가하거나, 앱의 버전을 변경했고, 중앙 집중식 구성을 사용하는 경우에는 추가 단계가 필요합니다. 터미널을 열고 복제된 구성이 저장된 위치로 이동하세요. 복제된 구성의 루트 폴더에서 다음 명령을 실행하세요:
Linux나 Mac의 경우:
./tank cache_apps
Windows의 경우:
tank.bat cache_apps
이 명령은 구성에서 앱, 엔진 및 프레임워크를 스캔하여 모두 다운로드되었는지 확인합니다.
View the changes in Maya
16단계: ShotGrid Desktop을 열고, 작업 중이던 프로젝트를 선택한 다음, 복제된 구성을 사용하고 있는지 확인하세요.
프로젝트 이름 아래에 생성한 복제본의 이름이 표시된 파란색 바가 있을 것입니다.
참고: 기본 구성을 사용하는 경우에는 파란색 바가 없으며 구성 이름이 표시되지 않습니다.
17단계: Desktop에서 Maya를 실행하고 ShotGrid > Project > ... 메뉴를 선택하세요.
다음 조건들이 모두 충족된다면:
* 방금 편집한 복제된 구성을 사용하고 있음
* 복제된 구성이 올바르게 확장되었음
* 확장된 파일들을 저장했음
* 프로젝트를 복제된 구성과 연결하기로 선택했음
* ShotGrid Desktop에서 Maya를 다시 실행했음
Maya에서 Python Console 앱을 사용할 수 있게 됩니다.
Push the changes into production
Python Console 앱이 올바르게 추가되었는지 확인한 후, 변경 사항을 실제로 적용할 준비가 되었습니다.
18단계: 터미널을 열고 복제된 구성이 저장된 위치로 이동하세요. 복제된 구성의 루트 폴더에서 다음 명령을 실행하세요:
Linux나 Mac의 경우:
./tank push_configuration
Windows의 경우:
tank.bat push_configuration
프롬프트의 안내를 따라 변경 사항을 적용하고자 하는 프로젝트의 기본 구성 ID를 입력하세요.
$ ls
cache config install tank tank.bat
$ ./tank push_configuration
Welcome to the Shotgun Pipeline Toolkit!
For documentation, see https://developer.shotgridsoftware.com
Starting Toolkit for your current path
'/Users/michelle/Documents/Shotgun/configs/the_other_side_clone2'
- The path is not associated with any Shotgun object.
- Falling back on default project settings.
- Running as user 'Michelle'
- Using configuration 'Primary Clone Config 2' and Core v0.18.159
- Setting the Context to Project the_other_side.
- Running command push_configuration...
----------------------------------------------------------------------
Command: Push configuration
----------------------------------------------------------------------
This command will push the configuration in the current pipeline configuration
('Primary Clone Config 2') to another pipeline configuration in the project.
By default, the data will be copied to the target config folder. If pass a
--symlink parameter, it will create a symlink instead.
Your existing configuration will be backed up.
The following pipeline configurations are available to push to:
- [1] Primary (/Users/michelle/Documents/Shotgun/configs/the_other_side)
Please type in the id of the configuration to push to (ENTER to exit):
복제된 구성을 푸시할 수 있는 사용 가능한 파이프라인 구성 목록이 표시될 것입니다. 구성을 업데이트하고자 하는 프로젝트의 기본 파이프라인 구성 ID를 입력하세요.
참고: 이 가이드의 3단계에서 본 ShotGrid의 파이프라인 구성 페이지에서도 파이프라인 구성의 ID를 찾을 수 있습니다. 프로젝트 ID를 찾으려면 구성 목록으로 이동하여 ID 열을 추가하세요.
ShotGrid는 ID를 입력한 후 다음과 같은 작업을 수행합니다:
- 기본 구성을 백업합니다
- 복제된 구성을 복사합니다
- 복제본은 그대로 두고 복사된 복제 구성을 프로젝트와 연결합니다
- 기본 구성이 저장된 위치를 표시합니다
- 다운로드하고 캐시해야 할 앱이 있는지 확인합니다
View the changes you made in the primary configuration
19단계: ShotGrid Desktop에서 오른쪽 상단에 있는 화살표를 클릭하고 구성 목록에서 "기본"을 선택합니다.
20단계: ShotGrid Desktop에서 Maya를 실행하고 ShotGrid > Project > ... 메뉴에서 ShotGrid Python 콘솔을 찾습니다.
Python 콘솔 앱이 선택한 프로젝트의 프로젝트 환경에 추가되었습니다. 두 번째 가이드 "구성 편집"에서 논의했듯이 각 환경은 독립적이며 프로젝트에는 전용 구성이 있고 소프트웨어 통합은 프로젝트가 로드될 때 파이프라인 구성에서 설정을 수집합니다. Python 콘솔이 특정 환경에서 사용 가능하려면 해당 환경에서 app_locations.yml 파일에서 위치 설명자를 찾도록 지시해야 합니다. 따라서 파이프라인의 어느 시점에서든 Python 콘솔 앱을 사용 가능하게 하려면 "여기에서 Python 콘솔 앱을 사용하세요"라는 설정이 필요합니다.
Advanced topics
The ShotGrid developer community
Toolkit의 가장 멋진 점 중 하나는 누구나 Toolkit 앱을 만들 수 있다는 것입니다. 앱은 독점적으로 유지하거나 ShotGrid 커뮤니티 내에서 공유하여 ShotGrid의 무기고에 추가할 수 있습니다. ShotGrid 커뮤니티 페이지에서 공유하고 싶은 정말 멋진 앱을 만들었다면 지원 사이트를 방문하여 도움을 받으세요.
표준 Toolkit 앱과 ShotGrid 커뮤니티에서 만든 앱은 ShotGrid-dev Google 그룹에서 활발하게 논의됩니다. ShotGrid 커뮤니티의 기여로 지식과 도구 기반은 계속 성장하고 있습니다.
Investigate how to extend a configuration
프로젝트에 사용할 구성을 선택할 때 ShotGrid 데스크톱 드롭다운에서 Python Console App을 사용할 수 있다는 사실을 눈치채셨을지도 모릅니다.
만약 특정 환경에서 사용 중인 애플리케이션을 파이프라인 구성에 추가하려 한다면, 약간의 조사 작업을 통해 필요한 정보를 찾을 수 있습니다. 해당 애플리케이션이 사용되는 환경의 구성 파일을 살펴보면, 애플리케이션 위치 설명자와 설정을 추가하는 방법을 파악할 수 있습니다.
Desktop 애플리케이션은 프로젝트 환경에서 실행되므로, project.yml 파일에서 tk-desktop을 찾아야 합니다.
- config/env/project.yml 파일을 엽니다.
- engine 블록에서 tk-desktop이 포함된 내용을 확인합니다.
includes:
- ./includes/settings/tk-desktop.yml
engines:
tk-desktop: "@settings.tk-desktop.project"
"open config/env/includes/settings/tk-desktop.yml 파일을 열고 settings.tk-desktop.project 블록을 찾으세요. 해당 블록에서 다음 내용을 확인할 수 있습니다."
apps:
tk-multi-pythonconsole:
location: "@apps.tk-multi-pythonconsole.location"
이 블록들은 Python Console 애플리케이션을 Desktop 엔진에 추가하는 역할을 합니다.
이제 해당 include 항목을 따라가 ../includes/app_locations.yml 파일을 열고,
apps.tk-multi-pythonconsole.location 항목을 찾아보면 다음과 같은 내용을 확인할 수 있습니다.
# pythonconsole
apps.tk-multi-pythonconsole.location:
type: app_store
name: tk-multi-pythonconsole
version: v1.1.2
모든 애플리케이션, 엔진 및 프레임워크에는 위치 설명자(Location Descriptor)가 있어, Toolkit이 특정 번들을 어디에서 액세스해야 하는지 알려줍니다.
대부분의 애플리케이션 설명자는 app_locations.yml 파일에 존재하지만, 원하는 위치에서 참조되지 않을 수도 있습니다. 앞서 살펴본 Python Console 애플리케이션이 그 예입니다.
모든 표준 애플리케이션과 엔진 목록은 Apps and Engines 페이지에서 확인할 수 있습니다.
또한, ShotGrid가 지원하는 모든 소프트웨어 통합에 원하는 애플리케이션을 추가하거나, 자체 개발한 애플리케이션을 Toolkit에 통합할 수도 있습니다. 지원되는 모든 소프트웨어 애플리케이션 목록은 Integrations Apps and Engines 페이지에서 확인할 수 있습니다.
만약 원하는 애플리케이션을 찾지 못했다면, 직접 제작할 수도 있습니다. 다른 ShotGrid 사용자들도 같은 기능을 필요로 할 가능성이 크며, 새로운 애플리케이션을 공유하는 것은 ShotGrid 커뮤니티에 기여하는 좋은 방법입니다.
다음 가이드에서는 시설 구조에 맞춰 프로덕션 폴더 구조를 맞춤 설정하는 방법을 배워보겠습니다.
'Flow Production Tracking > Toolkit' 카테고리의 다른 글
Dynamic filesystem configuration (0) | 2025.02.14 |
---|---|
Editing a pipeline configuration (0) | 2025.02.13 |
Getting started with configurations (0) | 2025.02.13 |