Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Chu Peng 楚鹏
minikube
提交
2b025b17
M
minikube
项目概览
Chu Peng 楚鹏
/
minikube
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
minikube
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2b025b17
编写于
11月 11, 2019
作者:
T
Thomas Stromberg
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Retry GitHub status updates
上级
1d0ca6cd
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
70 addition
and
11 deletion
+70
-11
hack/jenkins/common.sh
hack/jenkins/common.sh
+36
-6
hack/jenkins/minikube_set_pending.sh
hack/jenkins/minikube_set_pending.sh
+34
-5
未找到文件。
hack/jenkins/common.sh
浏览文件 @
2b025b17
...
@@ -289,11 +289,41 @@ ${SUDO_PREFIX} rm -f "${KUBECONFIG}" || true
...
@@ -289,11 +289,41 @@ ${SUDO_PREFIX} rm -f "${KUBECONFIG}" || true
rmdir
"
${
TEST_HOME
}
"
rmdir
"
${
TEST_HOME
}
"
echo
">>
${
TEST_HOME
}
completed at
$(
date
)
"
echo
">>
${
TEST_HOME
}
completed at
$(
date
)
"
if
[[
"
${
MINIKUBE_LOCATION
}
"
!=
"master"
]]
;
then
if
[[
"
${
MINIKUBE_LOCATION
}
"
==
"master"
]]
;
then
readonly
target_url
=
"https://storage.googleapis.com/minikube-builds/logs/
${
MINIKUBE_LOCATION
}
/
${
JOB_NAME
}
.txt"
exit
$result
curl
-s
"https://api.github.com/repos/kubernetes/minikube/statuses/
${
COMMIT
}
?access_token=
$access_token
"
\
-H
"Content-Type: application/json"
\
-X
POST
\
-d
"{
\"
state
\"
:
\"
$status
\"
,
\"
description
\"
:
\"
Jenkins
\"
,
\"
target_url
\"
:
\"
$target_url
\"
,
\"
context
\"
:
\"
${
JOB_NAME
}
\"
}"
fi
fi
# retry_github_status provides reliable github status updates
function
retry_github_status
()
{
local pr
=
$1
local
context
=
$2
local
state
=
$4
local
token
=
$5
local
target
=
$6
# Retry in case we hit our GitHub API quota or fail other ways.
local
attempt
=
0
local timeout
=
2
local
code
=
-1
while
[[
"
${
attempt
}
"
-lt
6
]]
;
do
code
=
$(
curl
-s
-i
--write-out
"%{http_code}"
-L
\
"https://api.github.com/repos/kubernetes/minikube/statuses/
${
pr
}
?access_token=
$token
"
\
-H
"Content-Type: application/json"
\
-X
POST
\
-d
"{
\"
state
\"
:
\"
$state
\"
,
\"
description
\"
:
\"
Jenkins
\"
,
\"
target_url
\"
:
\"
$target
\"
,
\"
context
\"
:
\"
${
context
}
\"
}"
||
echo
999
)
# 2xx HTTP codes
if
[[
"
${
code
}
"
=
~ ^2
]]
;
then
break
fi
echo
"HTTP code
${
code
}
! Retrying in
${
timeout
}
.."
sleep
"
${
timeout
}
"
attempt
=
$((
attempt
+
1
))
timeout
=
$((
timeout
*
2
))
done
}
retry_github_status
"
${
MINIKUBE_LOCATION
}
"
"
${
JOB_NAME
}
"
"
${
status
}
"
"
${
access_token
}
"
"https://storage.googleapis.com/minikube-builds/logs/
${
MINIKUBE_LOCATION
}
/
${
JOB_NAME
}
.txt"
exit
$result
exit
$result
hack/jenkins/minikube_set_pending.sh
浏览文件 @
2b025b17
...
@@ -42,11 +42,40 @@ jobs=(
...
@@ -42,11 +42,40 @@ jobs=(
'none_Linux'
'none_Linux'
)
)
# retry_github_status provides reliable github status updates
function
retry_github_status
()
{
local pr
=
$1
local
context
=
$2
local
state
=
$4
local
token
=
$5
local
target
=
$6
# Retry in case we hit our GitHub API quota or fail other ways.
local
attempt
=
0
local timeout
=
2
local
code
=
-1
while
[[
"
${
attempt
}
"
-lt
6
]]
;
do
code
=
$(
curl
-s
-i
--write-out
"%{http_code}"
-L
\
"https://api.github.com/repos/kubernetes/minikube/statuses/
${
pr
}
?access_token=
$token
"
\
-H
"Content-Type: application/json"
\
-X
POST
\
-d
"{
\"
state
\"
:
\"
$state
\"
,
\"
description
\"
:
\"
Jenkins
\"
,
\"
target_url
\"
:
\"
$target
\"
,
\"
context
\"
:
\"
${
context
}
\"
}"
||
echo
999
)
# 2xx HTTP codes
if
[[
"
${
code
}
"
=
~ ^2
]]
;
then
break
fi
echo
"HTTP code
${
code
}
! Retrying in
${
timeout
}
.."
sleep
"
${
timeout
}
"
attempt
=
$((
attempt
+
1
))
timeout
=
$((
timeout
*
2
))
done
}
for
j
in
${
jobs
[@]
}
;
do
for
j
in
${
jobs
[@]
}
;
do
target_url
=
"https://storage.googleapis.com/minikube-builds/logs/
${
ghprbPullId
}
/
${
j
}
.txt"
update_github_status
"
${
ghprbActualCommit
}
"
"
${
j
}
"
"pending"
"
${
access_token
}
"
\
curl
"https://api.github.com/repos/kubernetes/minikube/statuses/
${
ghprbActualCommit
}
?access_token=
$access_token
"
\
"https://storage.googleapis.com/minikube-builds/logs/
${
ghprbPullId
}
/
${
j
}
.txt"
-H
"Content-Type: application/json"
\
-X
POST
\
-d
"{
\"
state
\"
:
\"
pending
\"
,
\"
description
\"
:
\"
Jenkins
\"
,
\"
target_url
\"
:
\"
${
target_url
}
\"
,
\"
context
\"
:
\"
${
j
}
\"
}"
done
done
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录