티스토리 뷰

반응형

 

안녕하세요 :) Zedd입니다. 

Xcode Cloud (1) - Setup 에서 정말 맛만 봤다면...오늘은 Workflow를 살펴볼게요! 

Workflow는 크게 

 

- General

- Environment

- Start Condition

- Actions

- Post-Actions

가 존재하는데요. 오늘 글에서는 General과 Environment만 살펴보겠습니다!

(Start Conditions,  Actions, Post-Actions은 다른글에서..! 같이 쓰고 있었는데 너무 길어지고 눈에도 잘 안들어오네요@_@..)

 

🚨 Xcode Cloud (Beta)를 사용하시는 분들...🚨

언제부터인지는 모르겠지만.. Xcode 13.2(13C90)에서 Xcode Cloud가 안되네요 ㅠ

Xcode 13.2.1(13C100)을 다운받아 줍니다..! 


자! 이미 한번 Workflow를 만들었다면, 

Product > Xcode Cloud에 여러가지 옵션들이 생긴 것을 볼 수 있어요. 

흥미로운 것들이 많지만, Manage Workflows부터! (Manage Workflows에서 Create도 가능해서) 

 

# Manage Workflows > Workflow 만들기

Manage Workflows에 들어가면 우리가 이 글에서 만들었던 가장 기본적인 workflow가 있네요. 

그리고 만든 workflow에 우클릭을 하면 여러 옵션들을 볼 수 있습니다.

Edit해도 되지만....저는 하나 더 만들어볼게요. 

왼쪽 하단의 + 버튼을 눌러 Workflow를 만들기 시작해봅시다. 

 

⚙️ [General]

Name - Workflow 이름

(알아보기 쉬운 이름으로 할 것! ex. 매일 밤 새 버전의 앱을 배포하는 경우 이름을 'Nightly Builds'로 지정하는 식..) 

Description - Workflow의 목적을 설명하는 추가 Context. 

Restrict Editing - 내 팀의 admin이나 App Manager만 이 workflow를 수정할 수 있게 할건지. 

Primary Repository - git 주소

Project or workspace - 제곧내 


🧰 [Environment]

 Environment쪽에서는 빌드 환경을 설정한다고 보면 될듯. 

 

Xcode Version - 어떤 Xcode 버전으로 빌드할건지

(현재 및 나중에 나오는 Xcode버전에서 성공적으로 빌드할 수 있는지 확인해야 하기 때문.

제품이 프레임워크인 경우, 프레임워크가 이전 Xcode버전을 지원하는지 확인해야 할 수도 있으니)

macOS Version - 어떤 macOS 버전으로 빌드할건지(?)...

(실제로 내 macOS는 빅서인데, lastest release로 지정하면 몬터레이 환경에서 빌드하는 것 같음 .) 

Clean - 

 

1. 빌드를 수행하는 데 걸리는 시간을 줄이기 위해 Xcode Cloud가 캐시된 정보를 저장하여 재사용할 수 있음(안전하게 비공개로..)

2. 근데 데이터를 캐시하지 않는 Clean Build를 수행해야 할 수도 있음.

이때! Clean을 체크하면 됩니다! 

 

Clean이 enable되어있으면, Xcode Cloud는 derived data or 캐시에 빌드를 저장하지 않게되지만,

빌드 시간이 상당히(significantly) 길어질 수 있다고 합니다. 

그래서 꼭 필요할 경우에만 하라고 하는데,

문서에서는 TestFlight를 사용하여 외부 테스터에게 새 버전을 배포하는 경우에 Clean Build를 수행하도록 Workflow를 구성해야한다고 하네요.

 

Environment Variable - 

custom build scripts를 위한 환경변수를 정의하는 곳입니다. 

예를 들어, 만들어진 아티팩트를 서버에 업로드하는 custom build scripts가 있을 수 있잖아요?

그 custom build scripts에서 사용하는 API key같은 걸 이쪽에 정의하면 된다고합니다! 

환경 변수를 안전하게 저장하고, 로그에 표시되지 않도록 하려면 Secret란을 선택하면 됩니다.

 

환경 변수 관련해서는..

Environment Variable Reference

Writing Custom Build Scripts

공식 문서를 참고하시길! 

 

[참고]

- Xcode Cloud Workflow Reference

 

 

 

 

반응형

'Xcode > Xcode Cloud' 카테고리의 다른 글

Xcode Cloud (1) - Setup  (1) 2021.12.18