Tuist
Tuist - Plugins
jaebijae
2024. 7. 13. 02:51
목차
Plugins
- 비대해지는 `ProjectDescriptionHelpers`의 기능을 이전하여 모듈로 사용하는 방식
- `Plugin` 타입
- Project description helper Plugin: `Plugin.swift`와 helper Swift 파일들이 있는 `ProjectDescriptionHelpers` 디렉토리 포함
- Resource accessor templates Plugin: `Plugin.swift`와 resource accessor 템플릿 파일들이 있는 `ResourceSynthesizers` 디렉토리 포함
- template 이름들은 페이지 확인: https://docs.tuist.io/guide/project/plugins#resource-accessor-templates-plugin
- 주의사항
- `Plugin`은 다른 `Plugin`에 의존할 수 없음
- Third-party Swift Packges도 의존할 수 없음
- `Plugin`을 사용하는 `ProjectDescriptionHelpers`를 사용할 수 없음
Plugin 사용
- `Config.swift`에서 `Plugin` 정의
// Config.swift
let config = Config(
plugins: [
.local(path: .relativeToRoot("Plugins/ConfigPlugin")),
.local(path: .relativeToRoot("Plugins/DependencyPlugin")),
.local(path: .relativeToRoot("Plugins/EnvPlugin")),
.local(path: .relativeToRoot("Plugins/UtilityPlugin"))
]
)
- Root에서 `mkdir Plugins`로 `Plugin` 디렉토리 생성, 안에 `Plugin.swift`파일 생성 및 `ProjectDescriptionHelpers` 디렉토리 생성
// Plugin.swift
// 모듈의 의존성, Library의존성 등을 정의할 Plugin
import ProjectDescription
let dependencyPlugin = Plugin(name:"DependencyPlugin")
- 생성된 `Plugin` 구조:
- `import DependencyPlugin`을 통해 해당 `Plugin`사용
Reference
Plugins | Tuist
docs.tuist.io
[iOS][Tuist 1.7.1] 프로젝트 생성/관리 도구 Tuist(4) - Plugin
Tuist 1.33.0에서 Plugin 이라는 기능이 생겼습니다. Celebrating Friday with a new release - 1.33.0, Plugin!🔌 Plugin support! Documentation is still in progress but will soon be available 📦 tuist graph for only subset of targets @adellibovi
minsone.github.io
Tuist 사용법 - 5. Plugin
이 글은 Tuist 버전 3.9.0 기준으로 작성되었습니다. Plugin? Tuist의 Plugin은 Tuist 기능을 확장하는 데 사용합니다. Plugin 사용법 Tuist에서 Plugin을 사용하기 위해서는 Config.swift에서 Plugin을 정의해야 합니
baegteun.tistory.com