2017-10-04 9 views
1

합리적인 크기의 바이너리 파이썬 라이브러리 Parselmouth을 개발하고 있는데, 이는 대용량 코드베이스로 기존 프로그램을 래핑하기 때문에 주로 빌드에 시간이 걸립니다. 결과적으로, 이제 API 문서를 설정하려고하는데, 15 분 제한 시간 또는 1GB 메모리 제한 (빌드를 멀티 스레드하면 값 비싼 템플릿 인스턴스화가 발생하고 컴파일러 프로세스가 종료 됨)가 발생합니다. ReadTheDocs를 기반으로합니다.ReadTheDocs 프로젝트의 빌드 시간 최적화

그러나 Trac CI 빌드를 성공적으로 설정하여 ccache를 사용하여 큰 코드베이스를 다시 컴파일하지 않고 래퍼 코드의 변경된 부분 만 다시 컴파일합니다.

PyPI에서 설치하려고 생각했지만 버전 관리가 복잡해지고 중간 개발 빌드가 좋은 API 문서를 얻지 못합니다.

그래서 내가 궁금해 하던가 : Travis CI의 빌드를 사용하여 이런 종류의 경우에 대한 알려진 해결책이 있습니까?

답변

0

내가이 문제를 해결하기 위해 끝낸 것은 BinTray을 사용하여 트래비스 CI를 기반으로 제작 된 휠을 업로드하는 것이 었습니다. 이 빌드 및 업로드가 성공하면 수동으로 ReadTheDocs 빌드를 트리거 한 다음 BinTray에서 올바른 Python 휠을 사용하여 프로젝트를 설치합니다.

자세한 내용은 this commit