목록전체 글 (15)
도대체뭐가문제임
https://beryl-stilton-90e.notion.site/Deeplink-ea1aa2aee5c847f798c8be0dd9b848ee
https://beryl-stilton-90e.notion.site/OOP-Object-Oriented-Programming-c16996aa786b4687b1a6821816bea1e6
이번 단계에서는 Docker 컨테이너에 설치된 Jenkins에서 앱을 빌드하고 구글 플레이스토어에 게시하도록 구성하는 방법에 대해 설명한다. Jenkins에서 자동으로 게시까지 이루어지게 하기 위해선 앱이 이미 출시가 되어있는 상태여야한다.(신규앱 출시는 불가) 프로덕션, 비공개 테스트, 공개 테스트, 내부 테스트 버전의 출시가 모두 가능하다. 프로덕션 출시의 경우 출시노트를 작성해서 출시할 수 있다. 1. Google Play Console에서 좌측 메뉴 중 API 엑세스 메뉴로 이동해 연결할 프로젝트 선택 버튼을 클릭하고 서비스 약관에 동의한다. 2. 새 프로젝트 만들기를 선택하고 프로젝트 연결 버튼을 클릭한다. 3. Google Play Console Developer라는 이름의 프로젝트가 자동으로..
이번 단계에서는 Jenkins의 앱 빌드 결과를 Slack으로 전달하고 그와 동시에 빌드된 APK를 Slack의 특정 채널에 업로드 하는 법을 설명한다. 기존에 테스트를 위해 앱을 빌드하고 빌드한 APK를 직접 공유하던 방식을 자동화하는 것이다. Slack의 채널에 Jenkins의 빌드결과를 받아보기 위해서는 빌드결과를 받고 채널에 알리는 기능을 하는 앱을 추가해야한다. 단순히 빌드 시작, 성공, 실패 등의 알림을 받기만 원한다면 Jenkins CI 라는 앱을 추가하면 되고 알림도 받고 빌드된 APK도 업로드하고싶다면 파일쓰기권한이 추가된 커스텀 앱을 만들어 추가해야한다. Jenkins CI앱을 추가해서 알림을 받는 방식은 다음과 같다. 1. Slack을 열어 알림을 제공할 채널 세부정보로 이동한다. 2..
이번 단계에서는 Git에 저장된 안드로이드 프로젝트 소스를 가져와 Jenkins에 앱을 빌드할 수 있도록 환경을 구성할 것이다. 먼저 좌측 메뉴에서 새로운 아이템을 클릭한다. 아이템의 이름을 입력하고 Freestyle project를 선택한 뒤 OK를 클릭한다. 소스 코드 관리에서 Git을 체크하고 Repository URL 을 입력한다. 공개된 Repository라면 URL만 작성해두면 되지만 Gitlab에 게시되어있거나 비공개 Repository라면 Credentials에 키를 접근가능한 계정을 등록해야한다. Branches to build에는 빌드를 수행할 Branch를 입력한다. Credential을 등록하려면 Add 버튼을 누르고 Username에 Github의 Username 혹은 Email,..
젠킨스로 안드로이드 앱을 빌드하기 위해 몆가지 환경 설정이 필요하다. 젠킨스 설치 후 첫 화면이다. 잠금해제 패스워드는 젠킨스를 실행한 터미널에서 확인할 수 있다. 플러그인 설치 화면이다. 권장 플러그인을 설치하면 대부분의 필요한 플러그인들이 설치된다. 빠른 진행을 위해 권장 플러그인 설치를 진행했다. 관리자 계정을 만든다 마지막으로 URL을 설정하고 초기설정을 마친다. 젠킨스 메인화면으로 이동했다. 다음으로 JDK, SDK, GRADLE 환경변수를 등록한다. Android SDK를 설정하기 위해 좌측 메뉴에서 Jenkins관리 -> 시스템 설정 으로 이동해서 Global properties에 Environment variables를 체크하고 키-값 추가를 클릭한다. 이름 : ANDROID_HOME 값 ..
Docker이미지를 만들기 위해 Docker라는 폴더 안에 다음과 같이 파일이 구성되어있다. 터미널을 실행하고 해당 디렉토리로 이동한다. 다음 명령어를 실행한다. 맨 뒤 ubuntu-jenkins 는 이미지의 이름이다. 적절하게 바꿔도 상관없다. docker build -t ubuntu-jenkins . 약 20분정도 소요되는것으로 보인다. 이미지 생성에 성공했다면 다음 명령어로 현재 생성된 이미지를 확인한다. docker images Docker앱을 실행해서 확인할 수도 있다. 생성이 완료되었다면 다음 명령어를 통해 Docker를 실행한다. 포트번호를 바꾸고싶다면 8080:8080에서 왼쪽 8080을 변경해주면 된다. 나머지는 도커엔진에서 사용하는 포트이다. docker run --name ubuntu..
Docker는 일종의 가상머신이다. VirtualBox, VMware와 같은 가상머신에서 OS를 가상화하여 사용하는 것처럼 Docker도 Container를 가상화하여 사용한다. 도커로 Jenkins를 사용하면 Docker Engine에서 호스트의 커널을 공유하면서 Jenkins를 구동하는데 필요한 바이너리만 올라가게 된다. 역시 일반적인 가상머신처럼 Host OS 위에 Guest OS를 올려 사용하는 방식보다는 가벼울 수 밖에 없다. Jenkins를 사용해 앱을 빌드하려면 JVM, Android SDK, Gradle이 필요하다. 호스트 OS에 JVM, Android SDK, Gradle이 설치되어있고 환경변수가 등록되어있다면 사용할 수 있는것이다. 하지만 그렇게 하면 Docker를 목적대로 온전히 사용..