🍏/Xcode(13)
-
[Xcode Cloud] 토이프로젝트에 CI / CD 적용하기
현재 진행하고 있는 토이프로젝트에 Xcode Cloud를 적용해 보려고 합니다.이번 포스팅에서는 Xcode Cloud를 하나씩 차근차근 진행하는 것에 대해 다룹니다.이전에 진행한 Tuist + Fastlane + Github Action을 Xcode에서 진행하는 거라고 생각하시면 됩니다. command +9를 누르거나 좌측 상단에 있는 report navigator 버튼을 선택 합니다.선택하게 되면 Xcode Cloud 설명이 나오고 아래 Get Started 버튼이 나오는데 이걸 선택해줍니다.쭉쭉 Next를 선택하여 지나가면, GitHub와 Xcode Cloud를 연결하라고 하는데, 연결해주면 됩니다. Xcode Cloud 범위를 해당하는 레포로만 잡아줍니다. 나중에 필요하다면 깃허브에서 변경해주면 ..
2024.11.11 -
[Xcode / Swift] 빌드 시스템에 대한 이해 / 증분 빌드 / 병렬 처리 / Eager Linking / Incremental
이 글을 쓰게 된 이유.. 웅장해진다... [Architecture] Modular Architecture VS Clean Architecture어느날 문득 Modular Architecture와 Clean Architecture에 대한 생각을 하게 되었습니다. 모듈화나 클린이나 결국엔 개념적으로 레이어를 나누고 개발자들의 상황에 맞춰 선택적으로 사용할텐데, 둘은 어chanhhh.tistory.comModular Architecture와 Clean Architecture는 의존성 관리 방식에서 차이를 보입니다.Modular Architecture에서는 모듈 간 의존성이 명시적으로 설정됩니다. 즉, 하나의 모듈이 필요한 경우 다른 모듈에 의존성을 가지며, 이를 통해 기능별로 독립된 모듈들이 서로 필요한 부..
2024.10.29 -
[Tuist+Fastlane+GithubAction] App 배포 CI/CD 과정
이 글은 Tuist와 Fastlane, Github Action을 통하여 앱을 배포한 과정을 큰 맥락으로 공유하고 있습니다. 😊0. 버전tuist@3.36.2fastlane@2.220.0.ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin24]해당 버전을 쓰고 있습니다.1. Tuist 설치.curl -Ls https://install.tuist.io|bash2. Fastlane 설치 brew install fastlane3. Ruby 설치4. .cer, .p12, mobileprovision 발급 과 master.key를 이용한 tuist singing 아래 블로그 참조, 도움이 너무 많이 됐습니다. Tuist에서 CI/CD 구축하..
2024.04.28 -
[Tuist] Version 4 / config / package / dependencies
Tuist config 설정. 공식문서의 개요를 보시면 " Tuist는 공유 Config.swift 매니페스트를 통해 구성할 수 있습니다. 튜이스트가 실행되면 디렉토리를 탐색하여 Config.swift 파일이 포함된 튜이스트 디렉토리를 찾습니다. 구성 매니페스트 정의는 필수는 아니지만 저장소의 일부인 모든 프로젝트에서 일관된 동작을 보장하기 위해 권장됩니다. " 라고 적혀있습니다. 이 뜻은 config가 없어도 되지만 일관된 동작을 보장하려면 config를 작성하라고 권장하고 있습니다. ProjectDescription 확인해서 해당 하는 인스턴스들이 어떤 역할을 하는지 간단하게 살펴보았습니다. /// - Parameters: /// - compatibleXcodeVersions: List of Xcod..
2024.03.29 -
[Tuist] Version 4 / UIKit / AppDelegate / SceneDelegate
Tuist init UIKit without Storyboard with version 4 tuist init --platform ios tuist init --platform ios 4.8.0 버전에서는 default가 SwiftUI로 되어있으므로, 이를 UIKit으로 진행하기 위해 아래와 같은 프로세스를 따릅니다. Tuist init 이후 AppDelegate로 진행하는 경우 UIKit without Storyboard로 전환하는 방법은 간단합니다. 그냥 소스를 지워주시고 아래와 같이 앱델리게이트를 채택해 만들어 주시기만 하면 됩니다. AppDelegate.swift import UIKit @main class AppDelegate: UIResponder, UIApplicationDelegate { ..
2024.03.28