커밋을 푸시하지 않고 Travis-CI 재 구축을 트리거 하시겠습니까?
Travis-CI를 사용하면 GitHub에 새로운 커밋을 푸시하지 않고도 재 구축을 시작할 수 있습니까?
사용 사례 : 외부 성으로 인해 빌드가 실패합니다. 소스는 실제로 정확합니다. 단순히 다시 실행하면 빌드가 완료되고 전달됩니다.
예를 들어, apt-get
패키지 서버가 다운되어 장애가 발생했지만 서버가 다시 백업됩니다. 그러나 새 커밋이 푸시 될 때까지 "실패"상태에서 빌드 상태가 "고정되었습니다".
"더미"커밋을 푸시하는 것 외에 Travis-CI가 다른 빌드를 수행하도록하는 방법이 있습니까?
당신이 REPO에 대한 쓰기 액세스가있는 경우 : 빌드의 상세 화면을 버튼이 ↻ 툴팁 "다시 빌드"와 함께.
참고 : Ghostery와 같은 브라우저 확장 프로그램으로 인해 재시작 버튼이 표시되지 않을 수 있습니다. 확장 또는 화이트리스트 트래비스 CI를 비활성화하십시오.
참고 2 :
.travis.yml
업스트림에서 구성이 변경된 경우 다시 작성 버튼을 클릭하면 이전 구성으로 트래비스가 실행됩니다. 트래비스 구성에 업스트림 변경 사항을 적용하려면 PR에 커밋을 추가하거나 닫거나 다시 열어야합니다.풀 요청을 보낸 경우 : PR을 닫았다가 다시 열 수 있습니다 . 새로운 빌드가 시작됩니다.
당신이 열 경우 설정 GitHub의에서 저장소에 대한 탭을 클릭 통합 및 서비스 찾을 트래비스 CI를 클릭 편집을 당신이 볼 수, 시험 서비스 버튼을 누릅니다. 빌드가 시작됩니다.
커밋을하지 않고 말했지만 마스터 이외의 지점에서 작업하는 경우 빈 커밋을 커밋하는 것이 편리한 방법입니다.
git commit --allow-empty -m "Trigger"
결국 rebase하고 빈 커밋을 제거 / 제거하고 모든 자식 후크에서 작동합니다 :)
CI 빌드 및 기타 트리거를 다시 실행하는 다른 방법을 찾았습니다.
git commit --amend --no-edit
변경하지 않고 실행하십시오 . 현재 분기의 마지막 커밋을 다시 만듭니다.git push --force-with-lease origin pr-branch
.
Travis에 로그인하고 빌드 페이지로 이동하십시오. 오른쪽 상단의 톱니 바퀴 아이콘 옆에 '빌드 다시 시작'버튼이 표시됩니다.
참고 :이 작업을 수행하려면 연결된 GitHub 리포지토리에 대한 쓰기 권한이 있어야합니다.
GitHub에 .travis.yml을 가지고 있지만 테스트 된 적이없는 새 프로젝트가있는 경우 다음과 같이 커밋하지 않고 테스트를 실행할 수 있습니다.
- Travis CI 설정에서 테스트 가능
- GitHub에서 프로젝트 페이지 열기
- 설정 열기-> 웹 후크 및 서비스
- 서비스에서 Travis CI를 찾아 편집 버튼을 누릅니다
- "테스트 서비스"를 누르십시오
Travis CLI를 사용하여이 작업을 수행 할 수 있습니다 . 으로 문서에 설명 , 먼저는 CLI 도구를 설치 :
travis login --org --auto
travis token
이 토큰 TRAVIS_TOKEN
을 보관하는 파일이 공용으로 버전 제어되지 않는 한이 변수를 환경 변수에 보관할 수 있습니다 .
이 함수를 사용하여 트리거를 제출합니다.
function travis_trigger() {
local org=$1 && shift
local repo=$1 && shift
local branch=${1:-master} && shift
body="{
\"request\": {
\"branch\": \"${branch}\"
}
}"
curl -s -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-H "Travis-API-Version: 3" \
-H "Authorization: token $TRAVIS_TOKEN" \
-d "$body" \
"https://api.travis-ci.org/repo/${org}%2F${repo}/requests"
}
Travis는 이제 웹 UI에서 "사용자 정의"빌드를 트리거하는 방법을 제공합니다. 프로젝트 페이지 상단의 오른쪽에있는 "추가 옵션"메뉴 버튼을 찾으십시오.
그런 다음 분기를 선택하고 구성을 사용자 정의 할 수있는 대화 상자가 표시됩니다.
내가 쓰는 시점에서 베타 버전이며 약간 버그가있는 것으로 보입니다 (그러나 문제가 곧 해결 될 것으로 기대합니다).
Travis CI Client 를 설치 travis restart <job#>
하면 콘솔에서 빌드를 수동으로 다시 실행할 수 있습니다 . 당신은 지점의 마지막 직업을 찾을 수 있습니다travis show <branch>
travis show master
travis restart 48 #use Job number without .1
travis logs master
업데이트 : 슬프게도 최신 커밋을 사용하여 새 빌드를 시작하지 않고 대신 이전 상태의 레포를 사용하여 이전 빌드를 다시 시작하는 것처럼 보입니다.
I should mention here that we now have a means of triggering a new build on the web. See https://blog.travis-ci.com/2017-08-24-trigger-custom-build for details.
TL;DR Click on "More options", and choose "Trigger build".
If the build never occurred (perhaps you didn't get the Pull-Request build switch set to on in time), you can mark the Pull Request on Github as closed then mark it as opened and a new build will be triggered.
I just triggered the tests on a pull request to be re-run by clicking 'update branch' here:
Here's what worked for me to trigger a rebuild on a PR that Dependabot had opened, but failed due to errors in .travis.yml
:
- Close the PR
- Dependabot이 의견을 기다릴 때까지 기다립니다 ( "이 릴리스에 대해 다시 알려 드리지 않지만 새 버전이 나오면 연락을 드릴 것입니다."). 분기를 제거합니다.
- Dependabot이 제거한 분기를 복원하십시오 (예 :)
dependabot/cargo/tempfile-3.0.4
. - PR을 다시여십시오
쓰기 권한이 없으면 Simlpy가 PR을 닫았다가 다시여십시오.
참고 URL : https://stackoverflow.com/questions/17606874/trigger-a-travis-ci-rebuild-without-pushing-a-commit
'Programing' 카테고리의 다른 글
당신은 어떻게 사용합니까? (0) | 2020.02.25 |
---|---|
면도기에서 삼항 연산자를 사용하는 방법 (특히 HTML 특성)? (0) | 2020.02.25 |
jQuery로 5 초 동안 기다리는 방법? (0) | 2020.02.25 |
배열에서 고유하지 않은 모든 값 (예 : 중복 / 둘 이상의 발생)을 가져옵니다. (0) | 2020.02.25 |
Math.Round (2.5)가 3 대신 2를 반환하는 이유는 무엇입니까? (0) | 2020.02.25 |