bitrise.yml을 리포지토리에서 관리하는 방법
3399 단어 iOSreactnative시Bitrise안드로이드
무료 범위에서 iOS 빌드를 할 수 있기 때문에 개인 프로젝트에는 고맙다. 이번에는 ReactNative 프로젝트의 리포지토리를 설정하고 움직여 보았다.
bitrise.yml에서 워크플로 설정
Bitrise에 리포지토리를 설정한 초기 단계에서 bitrise.yml은 서비스 측(bitrise.io)에서 관리되지만 프로젝트 리포지토리 내에서 관리하고 싶습니다. 그럴 때.
당연히 공식에는 지침이있다 => Use bitrise.yml from repository
영어를 아는 사람이라면 아무 일도 없이 실현할 수 있지만, 자신은 공식 안내를 100% 이해할 수 없었기 때문에 약간 빠져 버렸다. 위의 가이드의 개요를 정리하면서, 빠진 포인트를 남겨두고 싶다.
트리거 맵은 bitrise.io에서 가지며, 이후에는 리포지토리에서
공식 가이드에 따르면, bitrise.yml의 트리거 맵은 bitrise.io에서 가진 것이 좋다는 것. 그 이유는 리포지토리 내에 트리거 맵을 가지면 복제 후가 아니라면 트리거의 패턴을 판정할 수 없게 되기 때문이다.
bitrise.io에서 트리거 맵을 설정하면 아래 그림의 워크플로가 시작되기 전에 트리거의 패턴에 따라 처리를 하지 않는다는 흐름도 만들 수 있지만, 모든 것을 리포지토리 내에서 가지면 반드시 클론해야 한다.
그래서 공식에서는 bitrise.yml을 나누어 가지는 것이 추천되고 있다.
위 그림의
Git Clone Repository
까지를 bitrise.io 로 설정해, 그 이후의 워크플로우를 리포지토리내에서 설정하는 느낌.작업 절차
steps
에 있는 activate-ssh-key
및 git-clone
설정 삭제 작업을 한 후 bitrise.io의 WorkFlows는 아래와 같은 느낌이 든다.
흠집
위의 단계를 따라 이동해 보았지만
continue from repo
에서 오류가 발생했습니다. 에러 내용은 『ci
라는 workflow는 정의되어 있지 않다』같은 느낌이었다.자신이 이 시점에서 Bitrise 문서를 읽지 않았기 때문에 제대로 공부 한 후 다시 돌아 오면 아마도 bitrise.io의 bitrise.yml에서 설정했을 것입니다
bitrise run "${BITRISE_TRIGGERED_WORKFLOW_ID}"
붙었다.직전에
printenv
를 넣어 확인해 보면, 이 변수에 ci
라는 값이 들어 있었다.이 변수는 bitrise.io의
trigger_map
에 설정되어있는 workflow
의 값이 들어있는 것 같습니다.공식 가이드에도 제대로 쓰여 있었다(초보로 이해할 수 없었던 자신에게 에일을)
The trick is bitrise run "\${BITRISE_TRIGGERED_WORKFLOW_ID}". The BITRISE_TRIGGERED_WORKFLOW_ID environment variable is set to the "entry"workflow, the one which started the build. So, by running the ciK BI command will be the same as bitrise run "ci".
따라서 해법으로서는, bitrise.io의
trigger_map
의 workflow
로 설정하고 있는 값과, 리포지토리내의 workflows
로 설정하고 있는 값을 대응시켜 주면 된다.이상
Reference
이 문제에 관하여(bitrise.yml을 리포지토리에서 관리하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mqtsuo02/items/a547eab6fa6486613198텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)