ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Xcode Cloud란
    Swift 2021. 12. 28. 11:03

    https://developer.apple.com/videos/play/wwdc2021/10267/

     

    Meet Xcode Cloud - WWDC21 - Videos - Apple Developer

    Get to know Xcode Cloud, Apple's continuous integration and continuous delivery (CI/CD) service for building apps and frameworks for all...

    developer.apple.com

    위 WWDC에서 활용법까지 알려준다. 실제 문서 : https://developer.apple.com/kr/xcode-cloud/

    Xcode Cloud

    Apple이 제공하는 CI/CD tool 이라니

    Xcode Cloud는 Xcode에 내장된 지속적인 통합 및 배포 서비스로, Apple 개발자를 위해 특별히 제작되었습니다. 앱을 빌드하고, 병렬로 자동화된 테스트를 실행하고, 테스터에게 앱을 배포하고, 사용자 피드백을 보고 관리하는 데 도움이 되는 클라우드 기반의 도구를 통합하여 고품질 앱을 개발하고 배포할 수 있도록 합니다.

    위의 그림으로 보면 기본적인 CI/CD tool 같은 특징


    장점

    장점 1.

    1. 클라우드 내 빌드

    Xcode Cloud 작업 흐름을 통해 자동으로 클라우드 내에서 앱을 빌드할 수 있어, 전용 빌드 인프라가 필요하지 않습니다.

     

    장점 2.

    그냥 Xcode 에서 쓸 수 있다는거 자체가 장점 (빌드 및 테스트 결과를 비롯하여 충돌에 대한 사용자 피드백도 Xcode 내에서 바로 볼 수 있습니다. 클라우드에서 빌드를 진행하므로 Xcode에 실시간 상태가 표시되고, 모니터링하려는 빌드 작업별로 필터링할 수 있습니다.)

     

    장점 3. 

    자동 작업 흐름

    개발 과정에 맞게 작업 흐름을 구성하거나, 내장된 작업 흐름으로 작업을 일단 시작하고 진행 과정에서 변화에 맞게 맞춤화할 수 있습니다. 커밋한 모든 코드 변경 사항을 빌드할 수 있으며, 변경 사항으로 인해 문제가 발생할 경우 팀 전체에 즉시 알림이 전달됩니다. 이를 통해 최종 사용자가 버그를 발견하기 전까지 낭비되는 시간을 잠재적으로 줄일 수 있습니다.

    이거는 현재 있는 CI/CD tool에도 있는 장점이지만, 장점임으로 포함

     

    장점 4.

    병렬 테스트

    프로젝트 상태를 빠르게 확인하기 위해 하나 또는 두 개의 기기 유형을 테스트하도록 Xcode Cloud를 구성하거나, 에지 케이스용으로 광범위한 기기 구성을 낮은 빈도로 테스트하도록 구성할 수 있습니다. Xcode Cloud에서는 리소스를 병렬로 할당하여 개발자가 Mac에서 코딩을 진행하는 동안 테스트 작업을 빠르게 완료합니다.

     

    장점 5.

    TestFlight과 연동

    테스터에게 즉시 배포

    Xcode Cloud는 TestFlight와 연동하여 성공적으로 빌드한 새로운 빌드를 최대 100명의 내부 품질 보증 팀에게 즉시 설치하므로 모든 사람이 즉시 테스트를 시작할 수 있습니다.

    맞춤형 테스터 그룹

    TestFlight와 Xcode Cloud를 연동하여 외부 테스터 그룹을 정의할 수 있습니다(공개 링크 또는 이메일 초대를 통해 최대 10,000명까지 초대 가능). 개발 중인 고유 기능이 포함된 앱의 특정 분기를 특정 테스터에게 보내거나 새로운 아이디어를 실험할 때 비교 테스트를 진행할 수 있습니다


    동작 흐름

    아래처럼 협업에도 다음과 같은 방식으로 동작한다고 설명

     

    실제로 화면은 다음과 같습니다. -> 워크 플로우

     

    AppstoreConnect 사이트에서 보는 Xcode Cloud

    참고로 당연히 슬랙 알림과 연동가능, Git 기반(현재 사용하는 BitBucket 등등) 에 코드가 있어야함.


    결론

    우리가 쓰고 있는 패스트레인(Fastlane)같은 업체에서 제공하던 CI/CD tool을 엑스코드와 통합해 만들어 낸 DevOps 시스템이다.

    특히 Xcode는 물론, TestFlight, App Stroe Connect 에서 앱 심사와 인증 도구까지 연결한게 포인트 같다. (너무 좋아보임)

    -> 또한 CI/CD의 장점이지만 코드 버전관리 및 자동화, 소스코드 정기적 통합을 바탕으로 문제를 조기에 파악하는 등 협업에서 여러 장점이 있을것으로 보인다. 손쉽고 연계된다는 부분에서 확실한 장점이 있어 보인다.

    728x90

    'Swift' 카테고리의 다른 글

    Associated type?  (0) 2022.01.04
    View의 life cycle (layoutsubviews에 대해)  (0) 2021.12.31
    Swift AsyncSequence (비동기 시퀀스에 대한 지원)  (0) 2021.12.22
    Feature flags in Swift  (0) 2021.12.22
    Swift nil, 왜 null이 아닐까?  (0) 2021.12.19

    댓글

Designed by Tistory.