Trikang
Jenkins와 Bitbucket, Unity3D 엔진 연결하기 본문
현재 Unity3D 개발 환경 구축을 위해 Jenkins와 Bitbucket을 연결 중이다. 개발하며 겪었던 시행착오를 서술해 놓았다.
- 젠킨스에서 프로젝트를 생성할 때 소스 코드 관리 옵션을 Git으로 설정하고 Bitbucket으로 생성한 저장소의 URL을 Repository URL에 넣으면 Invalid username or password. If you log in via a third party service you must ensure you have an account password set in your account profile. 발생
분명 SSH 발급 제대로 했다. 이게 문제인가 싶어서 Git Bash로 Clone을 해봤더니...
잘 된다.
뭐가 문제인지 찾아봤더니, Jenkins는 기본적으로 로컬 시스템 계정으로 실행됨. 이는 SSH key를 가지고 있지 않거나, known_hosts가 설정되지 않음. 그래서 Admin 계정으로 실행했던 위와 결과가 달랐던 것.
그래서 속성에서 jenkins 서비스에 들어가 로그온 할 때의 계정을 관리자로 바꾸어 줌. 그랬더니 잘 작동함.
- Jenkins 내에서 Git 경로 설정
여러 문서에서는 http://젠킨스-경로/configure 에 들어가면 git 경로를 설정할 수 있다고 하였다.(예) 그러나, 현재는 Global Tool Configuration, 즉 http://젠킨스-경로/configureTools 에 있다.
참고 자료
ToDo
1-1. https://wiki.jenkins.io/display/JENKINS/Unity3dBuilder+Plugin의 prerequisite 절차를 보면, Editor에 Script를 적어줌. 이 스크립트가 하는 일을 정확히 파악하자
- using UnityEngine;
- using UnityEditor;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- class ProjectBuilder {
- static string[] SCENES = FindEnabledEditorScenes();
- static string APP_NAME = "YourProject";
- [MenuItem ("Custom/CI/Build Android")]
- static void PerformAndroidBuild ()
- {
- string target_filename = APP_NAME + ".apk";
- GenericBuild(SCENES, target_filename, BuildTarget.Android ,BuildOptions.None);
- }
- private static string[] FindEnabledEditorScenes() {
- List<string> EditorScenes = new List<string>();
- foreach(EditorBuildSettingsScene scene in EditorBuildSettings.scenes) {
- if (!scene.enabled) continue;
- EditorScenes.Add(scene.path);
- }
- return EditorScenes.ToArray();
- }
- static void GenericBuild(string[] scenes, string target_filename, BuildTarget build_target, BuildOptions build_options)
- {
- EditorUserBuildSettings.SwitchActiveBuildTarget(build_target);
- string res = BuildPipeline.BuildPlayer(scenes, target_filename, build_target, build_options);
- if (res.Length > 0) {
- throw new Exception("BuildPlayer failure: " + res);
- }
- }
- }
'개발 일기' 카테고리의 다른 글
Jenkins와 Bitbucket 연동하기 (2) | 2018.07.27 |
---|