
필자는 개발자로 이제 막 만 1년차를 지난 React Native 개발자 입니다.
앱 개발을 하면서 가장 힘든 점은 아마 변경사항이 있을 때마다 앱을 배포해야 하는 것이고 그 시간이 너무 유동적이라서(심사가 적게는 2시간에서 많게는 이틀) 힘든 경험을 많이 하였습니다.
이러한 단점을 없애기 위해 이번에 회사 프로젝트에 Code Push를 적용한 경험담을 적어보겠습니다.
본 시리즈는 4가지 편으로 나뉘어질 예정이며
에 관하여 작성하겠습니다.
참고로 아래 블로그를 바탕으로 code push 적용을 진행하였고 제가 진행하면서 겪었던 과정들을 설명하는 식으로 글을 쓰겠습니다.
https://velog.io/@minwoo129/React-Native%EC%97%90%EC%84%9C-CodePush-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
CodePush는 마이크로소프트의 Visual Studio App Center에서 제공하는 서비스 중 하나로, 클라우드 기반의 앱 원격 업데이트 서비스입니다.
CodePush에 배포 명령을 하게되면 앱을 bundle 파일로 변환 이후 CodePush 서버에 저장하게 됩니다.
CodePush 서버에 업데이트 여부를 확인하여 내용을 반영하는 원리 입니다.
Code Push를 설정하는 방법은 Cli를 통해서 하는 방법과 웹을 통해서 하는 방법이 있습니다. 우선 cli를 통한 방법을 알려드리고 두번째로 웹을 통해서 생성하는 법을 알려드리겠습니다.
npm install -g appcenter-cli

제대로 설치 되었다면 appcenter 라고 입력하면 위와 같이 사용 가능한 명령어들이 나오게 됩니다.
appcenter login
위 명령어를 치게 되면 아래와 같은 사이트가 뜨게 되고
해당 코드를 터미널에 넣으면 로그인이 완료됩니다.


위와 같이 로그인 되었다고 나온다면 성공입니다.
appcenter apps create -o <os> -d <이름> -p <플랫폼타입>
ex) appcenter apps create -o Android -d codepush_example_android -p React-Native
ex) appcenter apps create -o iOS -d codepush_example_ios -p React-Native
주의하실 점은 플랫폼 타입을 적는 공간에 대소문자를 구분하니 유의하여 타이핑 해주시기 바랍니다.
보통 앱의 키는 두 가지를 만듭니다.
Staging 키와 Production 키 입니다.
정해진 것은 없지만 필자는 디버그 모드에서는 Staging키를 테스트 한 후에 Production에 올리는 것을 택하였습니다.
키를 추가하는 코드 명령어는 다음과 같습니다.
*키를 추가하기 전에 appcenter apps list 명령어를 통해서 사용자의 아이디와 앱 프로젝트 이름을 확인 할 필요가 있습니다.

앞부분에는 필자의 이메일/앱 프로젝트 이름 으로 구성되게 됩니다.
appcenter codepush deployment add -a 사용자의 아이디/codepush_example_android Staging
appcenter codepush deployment add -a 사용자의 아이디/codepush_example_android Production
appcenter codepush deployment add -a 사용자의 아이디/codepush_example_ios Staging
appcenter codepush deployment add -a 사용자의 아이디/codepush_example_ios Production
위 작업을 마치게 되면 4개의 키가 성공적으로 발급되는 것을 볼 수 있습니다.
만약 키 값을 잃어 버리셨으면 아래의 명령어를 통해서 키를 확인하실 수 있습니다.
appcenter codepush deployment list -a <사용자의 아이디>/<앱 프로젝트 이름> -k
https://appcenter.ms/apps

위에서 cli를 통해서 만든 app 프로젝트들이 보입니다.

다음과 같이 상황에 맞는 값들을 입력하고 Add new app을 클릭합니다.

위와 같은 화면이 나온다면 성공적으로 app이 생성된 것입니다.

왼쪽 메뉴에서 Distribute -> CodePush를 클릭합니다.

Create standard deployments 버튼을 누르면 Staging 모드와 Production 모드가 생기게 됩니다.
긴 글 읽어주셔서 감사합니다.
다음 글에서는 Android 설정을 알아보도록 하겠습니다.