2015-02-02 5 views
0

Groovy를 사용하여 빌드를 요약하는 빌드 단계를 추가하여 현재까지 생성 된 빌드 로그를 읽으 려합니다.Jenkins Groovy가 현재 빌드 로그에서 Regex를 추출하고 REST API를 호출합니까?

관련 주제에 관해서는 여러 가지 다른 질문이 있지만 API가 모두 혼동되지는 않습니다. 전체적으로 나는이 정확한 작업을 수행 할 수없는 것 같습니다.

다음은 현재 코드/결과 오류입니다.

여기에 모두 포함 시켜도 괜찮 으면 몇 가지 질문이 있습니다.

1. 콘솔 창에서 테스트하는 것이 안전합니까? 또는 달리 말하자면/스크립트 Groovy 콘솔 편집기 창에서 어떤 것이 작동하지만 Groovy 빌드 단계로 실패 할 수 있습니까? (나는 API가 두 가지로 다르다고 생각하지만 어떻게 명확하지는 않습니다.)

2. 거기에 Groovy Jenkins 스크립트 예제가 있습니까?

3. 어떻게하면됩니까?

  • 콘솔 로그를 읽습니다.
  • "step # 2 success"와 같이 관심있는 단어를 정규식으로 파싱합니다.
  • 새 단어를 멋진 문자열로 재 배열하십시오.
  • 내부 REST API를 호출하여 결과를 제출하십시오.

정말 고마워요! 앤

//Groovy command from SO Post#23139654 
def log = manager.build.logFile.text 
def summary = log =~ /(?ms)(TEST SUMMARY.*?failures)/ 

//From there you can extract the matches or as in my case further parse the match: 

def total = summary[0] =~ /\d+ tests/ 

결과에 포함됩니다.

ERROR: Build step failed with exception 
groovy.lang.MissingPropertyException: No such property: manager for class: Script1 

답변

0

내 대답은 다음과 같습니다. 코드 조각을 | "젠킨스, 그루비 시스템 스크립트 (메이븐을) : 그루비 대

1.Groovy 콘솔 단계는 Jenkins Packages on Groovy Classpath?

2.Examples 위키에 정체 불명의 날짜가 2011 년에 사용자에서 사용할 수 있으며, 같은 당 다를 구축 "https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+Script+Consolehttps://mriet.wordpress.com/2011/06/23/groovy-jenkins-system-script/

3.To 콘솔 로그 및 그렙 출력 편집 가능한 이메일 플러그인 [4] 빌드 후 단계의 입력으로 제공되는 웹 박스에 간단히 입력을 분석. dollar-curlyBrace 구문을 사용하지 마십시오 : 여기에 표시된 것과 같이 간단한 달러 변수 또는 달러 파렌 구문을 사용하십시오. 이는 '기본 컨텐츠'에서의 첫 번째 균열입니다.

 
STATUS=$BUILD_STATUS 
$DEFAULT_CONTENT 
GIT Changelog , Revision = $GIT_REVISION 
$CHANGES 
LOG-SNIPPETS: Regex Hits/Rules for words that give Unit Test Summaries, Error, Failure, etc = 
$BUILD_LOG_REGEX(regex="^.*?BUILD FAILED.*?$", linesBefore=0, linesAfter=10, maxMatches=5, showTruncatedLines=false, escapeHtml=true) 

는 REST 플러그인을 호출 3B.To, 그게 지금 내가 그렇게하지 않았다, 그래서 별도의 단계에서 수행 될 필요가있다.

전자 메일 확장 (일명 "편집 가능한 전자 메일 알림") 플러그인을 제대로 이해하지 못했기 때문에 Groovy에서이 작업을 직접 수행하려고했습니다.

4. [Email-ext plugin - Jenkins - Jenkins Wiki; ; https://wiki.jenkins-ci.org/display/JENKINS/Email-ext+plugin