提交 409a2d22 编写于 作者: L LinuxSuRen

Automated deployment to GitHub Pages on 1597310235

上级 dd3c73c0
......@@ -1846,32 +1846,32 @@ RU5ErkJggg==" />
<a href="/event/online-2020-04-22/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/hackthon.png"></img>
</a>
<a href="/event/beijing-2019-07-27/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/ci-cd.jpeg"></img>
</a>
<a href="/event/online-2020-04-22/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/hackthon.png"></img>
<a href="/event/beijing-2019-06-22/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/ci-cd.jpeg"></img>
</a>
<a href="/event/beijing-2019-08-24/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/kaiyuan.jpg"></img>
<a href="/event/beijing-2019-07-27/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/ci-cd.jpeg"></img>
</a>
<a href="/event/beijing-2019-06-22/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/ci-cd.jpeg"></img>
<a href="/event/beijing-2019-08-24/" class="tile lazyload cover dib f4 ml1 mr4 bg-black relative mw-100 shadow-5">
<img width="400px" height="200px" src="/images/meetup/kaiyuan.jpg"></img>
</a>
......
......@@ -25,6 +25,19 @@
"original": "",
"poster": ""
},
{
"uri": "https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-07-github-checks-api-plugin-project-coding-phase-1/",
"title": "GSoC: GitHub Checks API 项目第一阶段总结",
"type": "wechat",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": ["github", "api", "plugins", "developer", "gsoc", "gsoc2020"],
"description": "GitHub Checks API 插件项目 - 编码阶段 1",
"content": " 这篇博客将介绍 GSoC 项目 GitHub Checks API Plugin 在一阶段的相关进展。\n简单来说,GitHub Checks API 就是一套可高度定制化接受 CI 报告的接口。 CI 工具可以通过该接口反馈信息给特定的 Pull Request,随后,用户便可以直接在 GitHub 的 UI 界面上直观的浏览 CI 报告。\n更激动人心的是,它可以针对指定的代码行进行注释,这类似于开发者平时在代码审查时留下的评论。\n同时,在 Jenkins 这边,Warnings Next Generation Plugin 能通过源代码视图实现类似的功能。\n因此,通过使用 GitHub Checks API 将这些信息直接反馈给 GitHub 能使 Jenkins 对 GitHub 用户更加友好。\n阶段一实现的相关特性 在过去的一个月里,我们团队的工作主要集中在 General Checks API 和 GitHub Checks API 的实现上。\nGeneral Checks API 尽管 General Checks API 是基于 GitHub Checks API 的语义实现的,我们仍然希望能提供这样的泛化接口为其他平台的相关概念做好准备,例如:GitLab 上的 Commit Status API。 在今后,我们欢迎所有人贡献针对这些平台的相关实现。\nGitHub Checks API 实现 目前,我们对 GitHub Checks API 的支持工作已基本完成。 除此以外,我们还实现了一个用于表明当前 Jenkins 构建状况的功能。 在发布之后,通过调用我们的 API,Jenkins 的开发者们(特别是插件开发者们)能够为 GitHub Branch SCM 项目创建属于他们自己的 GitHub Checks。\n例子:要创建一个如下图所示的 check run: 用户需要如下地调用我们的接口:\nChecksDetails details = new ChecksDetailsBuilder() .withName(\u0026quot;Jenkins\u0026quot;) .withStatus(ChecksStatus.COMPLETED) .withDetailsURL(\u0026quot;https://ci.jenkins.io\u0026quot;) .withStartedAt(LocalDateTime.now(ZoneOffset.UTC)) .withCompletedAt(LocalDateTime.now(ZoneOffset.UTC)) .withConclusion(ChecksConclusion.SUCCESS) .withOutput(new ChecksOutputBuilder() .withTitle(\u0026quot;Jenkins Check\u0026quot;) .withSummary(\u0026quot;# A Successful Build\u0026quot;) .withText(\u0026quot;## 0 Failures\u0026quot;) .withAnnotations(Arrays.asList( new ChecksAnnotationBuilder() .withPath(\u0026quot;Jenkinsfile\u0026quot;) .withLine(1) .withAnnotationLevel(ChecksAnnotationLevel.NOTICE) .withMessage(\u0026quot;say hello to Jenkins\u0026quot;) .withStartColumn(0) .withEndColumn(20) .withTitle(\u0026quot;Hello Jenkins\u0026quot;) .withRawDetails(\u0026quot;a simple echo command\u0026quot;) .build(), new ChecksAnnotationBuilder() .withPath(\u0026quot;Jenkinsfile\u0026quot;) .withLine(2) .withAnnotationLevel(ChecksAnnotationLevel.WARNING) .withMessage(\u0026quot;say hello to GitHub Checks API\u0026quot;) .withStartColumn(0) .withEndColumn(30) .withTitle(\u0026quot;Hello GitHub Checks API\u0026quot;) .withRawDetails(\u0026quot;a simple echo command\u0026quot;) .build())) .build()) .withActions(Collections.singletonList( new ChecksAction(\u0026quot;formatting\u0026quot;, \u0026quot;format code\u0026quot;, \u0026quot;#0\u0026quot;))) .build(); ChecksPublisher publisher = ChecksPublisherFactory.fromRun(run); publisher.publish(details); 未来的工作 我们的下一步计划是将该接口集成到 Warnings Next General Plugin 和 Code Coverage API Plugin 当中。 在此之后,我们还会添加对流水线的支持:在创建 check run 时,用户可以直接在流水线中调用我们的接口而无需依赖其他插件的实现.\n相关资源 GitHub 仓库 项目主页 Gitter 聊天室 引用 GitHub 文档:使用 Checks API 创建 CI 测试 Warnings Next Generation Plugin:源代码视图 ",
"auhtor": "XiongKezhi",
"translator": "",
"original": "https://www.jenkins.io/blog/2020/07/09/github-checks-api-plugin-coding-phase-1/",
"poster": "jenkins-gsoc-logo_small.png"
},
{
"uri": "https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-05-ci-cd-with-argo-on-kubernetes/",
"title": "在 Kubernetes 上使用 Argo 实现 CI/CD",
......@@ -2885,6 +2898,19 @@
"original": "",
"poster": ""
},
{
"uri": "https://jenkins-zh.cn/tags/api/",
"title": "Api",
"type": "tags",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
"auhtor": "",
"translator": "",
"original": "",
"poster": ""
},
{
"uri": "https://jenkins-zh.cn/tags/argo/",
"title": "Argo",
......@@ -3396,7 +3422,7 @@
"uri": "https://jenkins-zh.cn/tags/developer/",
"title": "Developer",
"type": "tags",
"date": "2020-04-01 00:00:00 +0000 UTC",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
......@@ -3643,7 +3669,7 @@
"uri": "https://jenkins-zh.cn/tags/github/",
"title": "Github",
"type": "tags",
"date": "2020-06-17 00:00:00 +0000 UTC",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
......@@ -3708,7 +3734,7 @@
"uri": "https://jenkins-zh.cn/tags/gsoc/",
"title": "Gsoc",
"type": "tags",
"date": "2020-07-06 00:00:00 +0000 UTC",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
......@@ -3734,7 +3760,7 @@
"uri": "https://jenkins-zh.cn/tags/gsoc2020/",
"title": "Gsoc2020",
"type": "tags",
"date": "2020-07-06 00:00:00 +0000 UTC",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
......@@ -4540,7 +4566,7 @@
"uri": "https://jenkins-zh.cn/tags/plugins/",
"title": "Plugins",
"type": "tags",
"date": "2020-07-06 00:00:00 +0000 UTC",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
......@@ -5008,7 +5034,7 @@
"uri": "https://jenkins-zh.cn/wechat/",
"title": "Wechats",
"type": "wechat",
"date": "2020-08-05 00:00:00 +0000 UTC",
"date": "2020-08-07 00:00:00 +0000 UTC",
"tags": [],
"description": "",
"content": "",
......@@ -36,6 +36,21 @@
GitHub 请您使用同一个 GitHub 账号来与大家交流,不欢迎使用所谓的“小号”。</description>
</item>
<item>
<title>GSoC: GitHub Checks API 项目第一阶段总结</title>
<link>https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-07-github-checks-api-plugin-project-coding-phase-1/</link>
<pubDate>Fri, 07 Aug 2020 00:00:00 +0000</pubDate>
<guid>https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-07-github-checks-api-plugin-project-coding-phase-1/</guid>
<description>这篇博客将介绍 GSoC 项目 GitHub Checks API Plugin 在一阶段的相关进展。
简单来说,GitHub Checks API 就是一套可高度定制化接受 CI 报告的接口。 CI 工具可以通过该接口反馈信息给特定的 Pull Request,随后,用户便可以直接在 GitHub 的 UI 界面上直观的浏览 CI 报告。
更激动人心的是,它可以针对指定的代码行进行注释,这类似于开发者平时在代码审查时留下的评论。
同时,在 Jenkins 这边,Warnings Next Generation Plugin 能通过源代码视图实现类似的功能。
因此,通过使用 GitHub Checks API 将这些信息直接反馈给 GitHub 能使 Jenkins 对 GitHub 用户更加友好。
阶段一实现的相关特性 在过去的一个月里,我们团队的工作主要集中在 General Checks API 和 GitHub Checks API 的实现上。
General Checks API 尽管 General Checks API 是基于 GitHub Checks API 的语义实现的,我们仍然希望能提供这样的泛化接口为其他平台的相关概念做好准备,例如:GitLab 上的 Commit Status API。 在今后,我们欢迎所有人贡献针对这些平台的相关实现。</description>
</item>
<item>
<title>在 Kubernetes 上使用 Argo 实现 CI/CD</title>
<link>https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-05-ci-cd-with-argo-on-kubernetes/</link>
......
......@@ -11,6 +11,11 @@
<loc>https://jenkins-zh.cn/about/code-of-conduct/</loc>
</url>
<url>
<loc>https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-07-github-checks-api-plugin-project-coding-phase-1/</loc>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
</url>
<url>
<loc>https://jenkins-zh.cn/wechat/articles/2020/08/2020-08-05-ci-cd-with-argo-on-kubernetes/</loc>
<lastmod>2020-08-05T00:00:00+00:00</lastmod>
......@@ -1086,6 +1091,12 @@
<priority>0</priority>
</url>
<url>
<loc>https://jenkins-zh.cn/tags/api/</loc>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
<url>
<loc>https://jenkins-zh.cn/tags/argo/</loc>
<lastmod>2020-08-05T00:00:00+00:00</lastmod>
......@@ -1317,7 +1328,7 @@
<url>
<loc>https://jenkins-zh.cn/tags/developer/</loc>
<lastmod>2020-04-01T00:00:00+00:00</lastmod>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
......@@ -1428,7 +1439,7 @@
<url>
<loc>https://jenkins-zh.cn/tags/github/</loc>
<lastmod>2020-06-17T00:00:00+00:00</lastmod>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
......@@ -1458,7 +1469,7 @@
<url>
<loc>https://jenkins-zh.cn/tags/gsoc/</loc>
<lastmod>2020-07-06T00:00:00+00:00</lastmod>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
......@@ -1470,7 +1481,7 @@
<url>
<loc>https://jenkins-zh.cn/tags/gsoc2020/</loc>
<lastmod>2020-07-06T00:00:00+00:00</lastmod>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
......@@ -1819,7 +1830,7 @@
<url>
<loc>https://jenkins-zh.cn/tags/plugins/</loc>
<lastmod>2020-07-06T00:00:00+00:00</lastmod>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
......@@ -2028,7 +2039,7 @@
<url>
<loc>https://jenkins-zh.cn/wechat/</loc>
<lastmod>2020-08-05T00:00:00+00:00</lastmod>
<lastmod>2020-08-07T00:00:00+00:00</lastmod>
<priority>0</priority>
</url>
......
<!DOCTYPE html>
<html class="no-js" lang="zh-CN">
<head>
<meta charset="utf-8">
<link rel="preload" href="https://jenkins-zh.cn/files/muli-latin-200.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://jenkins-zh.cn/files/muli-latin-400.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://jenkins-zh.cn/files/muli-latin-800.woff2" as="font" type="font/woff2" crossorigin>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Api - Jenkins 中文社区</title>
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="description" content="共建开放、包容、活跃的 Jenkins 社区">
<meta name="keywords" content="Jenkins,Jenkins中文社区,Jenkins官方公众号,持续集成,持续交付,开源社区,DevOps">
<meta name="viewport" content="width=device-width,minimum-scale=1">
<meta name="generator" content="Hugo 0.53" />
<META NAME="ROBOTS" CONTENT="INDEX, FOLLOW">
<link rel="alternate" type="application/rss&#43;xml" href="https://jenkins-zh.cn/tags/api/index.xml">
<link href='/dist/main.css' rel='stylesheet' type="text/css" /><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link href="/images/favicon.ico" rel="shortcut icon" type="image/x-icon">
<link rel="icon" type="image/png" href="/images/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="/images/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="/manifest.json">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#0594cb">
<meta name="theme-color" content="#ffffff"><style>
img.avatar {
width: 32px;
display: inline;
}
</style>
<meta property="og:title" content="Api" />
<meta property="og:description" content="" />
<meta property="og:type" content="website" />
<meta property="og:url" content="https://jenkins-zh.cn/tags/api/" />
<meta property="og:updated_time" content="2020-08-07T00:00:00&#43;00:00"/>
<meta itemprop="name" content="Api">
<meta itemprop="description" content="">
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Api"/>
<meta name="twitter:description" content=""/>
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-4216293-5"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-4216293-5');
var trackOutboundLink = function(id, url) {
console.log("track:", id, url)
gtag('event', 'click', {
'event_category': 'outbound',
'event_label': id,
'transport_type': 'beacon',
'event_callback': function(){document.location = url;}
});
}
</script>
</head>
<body class="ma0 sans-serif bg-primary-color-light">
<nav class="bg-primary-color-dark pv4 w-100" role="navigation">
<div class="center flex-ns flex-wrap items-center justify-start mw9">
<h1 class="dim f3 lh-solid ml0-ns mr0 mr4-l mv0 pl3 pl4-ns">
<a href="https://jenkins-zh.cn" class="link white">
Jenkins 中文社区
</a>
</h1>
<ul class="list ma0 pa0 dn dib-l">
<li class="f5 dib mr4" role="menuitem">
<a href="/wechat/" class="dim link light-silver"
>
博客
</a>
</li>
<li class="f5 dib mr4" role="menuitem">
<a href="/tutorial/" class="dim link light-silver"
>
教程
</a>
</li>
<li class="f5 dib mr4" role="menuitem">
<a href="/event/" class="dim link light-silver"
>
活动
</a>
</li>
<li class="f5 dib mr4" role="menuitem">
<a href="/partner/" class="dim link light-silver"
>
合作伙伴
</a>
</li>
<li class="f5 dib mr4" role="menuitem">
<a href="/about/" class="dim link light-silver"
>
关于我们
</a>
</li>
<li class="f5 dib mr4" role="menuitem">
<a href="http://jenkins.io/zh" class="dim link light-silver"
target="_blank">
Jenkins 官网
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="10" height="10" viewBox="0 0 32 32" class="fill-current v-base" aria-label="External Link">
<path d="M25.152 16.576v5.696q0 2.144-1.504 3.648t-3.648 1.504h-14.848q-2.144 0-3.648-1.504t-1.504-3.648v-14.848q0-2.112 1.504-3.616t3.648-1.536h12.576q0.224 0 0.384 0.16t0.16 0.416v1.152q0 0.256-0.16 0.416t-0.384 0.16h-12.576q-1.184 0-2.016 0.832t-0.864 2.016v14.848q0 1.184 0.864 2.016t2.016 0.864h14.848q1.184 0 2.016-0.864t0.832-2.016v-5.696q0-0.256 0.16-0.416t0.416-0.16h1.152q0.256 0 0.416 0.16t0.16 0.416zM32 1.152v9.12q0 0.48-0.352 0.8t-0.8 0.352-0.8-0.352l-3.136-3.136-11.648 11.648q-0.16 0.192-0.416 0.192t-0.384-0.192l-2.048-2.048q-0.192-0.16-0.192-0.384t0.192-0.416l11.648-11.648-3.136-3.136q-0.352-0.352-0.352-0.8t0.352-0.8 0.8-0.352h9.12q0.48 0 0.8 0.352t0.352 0.8z"></path>
</svg>
</a>
</li>
</ul>
<div class="db dib-ns pl3"><form id="site-search-form" action="" role="search">
<fieldset class="bn ma0 pa0">
<label class="clip" for="email-address">Search</label>
<input type="search" id="search-input" class="needs-js bg-left bg-transparent bn f5 input-reset lh-solid mt3 mt0-ns pl4 pv2 w5 white"
placeholder="搜索文档" type="text"
name="email-address" value="" style="background-image:url('/images/icon-search.png');background-size:16px 16px;">
</fieldset>
</form>
</div>
<div class="list ma0 pa0 dn dib-l"></div>
<span class="absolute mt1 mt2-l pr3 right-0 top-0">
<a class="github-button needs-js link primary-color-dark" href="https://github.com/jenkins-zh/jenkins-zh/" data-size="large" data-show-count="false" aria-label="Star Jenkins WeChat GitHub">Star</a>
</span>
</div>
</nav>
<main role="main" class="content-with-sidebar min-vh-100 pb7 pb0-ns">
<div class="w-100 ph4 pb5 pb6-ns pt1 mt4 pt3-ns">
<div class="flex">
<div class="w-100 w-80-l ph0 ph4-l">
<article class="w-100 nested-copy-line-height nested-links nested-img">
<h1 class="primary-color-dark f2">
Tag: Api
</h1>
<div class=" mid-gray f5 f4-l">
</div>
</article>
<div class="flex flex-wrap">
<section class="flex-ns flex-wrap justify-between w-100">
<div class="relative weight-0" style="max-width: 350px">
<div class="bg-white mb2 pa3 pa4-l gray">
<h1 class="near-black f3">
<a href="/wechat/articles/2020/08/2020-08-07-github-checks-api-plugin-project-coding-phase-1/" class="link primary-color dim">GSoC: GitHub Checks API 项目第一阶段总结</a>
</h1>
<div class="lh-copy links">
GitHub Checks API 插件项目 - 编码阶段 1
<a href="/wechat/articles/2020/08/2020-08-07-github-checks-api-plugin-project-coding-phase-1/" class="f6 mt2 db link primary-color dim">
查看更多 &raquo;
</a>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
</div>
</main>
<footer class="bg-primary-color-dark ph4-ns pt4 relative w-100" role="contentinfo">
<div class="center flex-ns flex-wrap justify-between mw9 w-90">
<div class="pb3 pt4 w-100 w-50-ns">
<div class="b f3 light-gray mb3 nested-links tc">
<a href="https://github.com/jenkins-zh/jenkins-zh/graphs/contributors" target="_blank"
class="link">Jenkins 社区贡献者</a> 维护<br />
</div>
<ul class="center f6 list ma0 mv3 pa0 tc" style="display:none"><li class="dib mr3"><a href="https://github.com/jenkins-zh/jenkins-zh/issues/new" class="dim link light-gray pv2">File an Issue</a></li></ul>
<ul class="center f6 list ma0 mv4 pa0 tc">
<li class="dib mr3">
<a href="https://twitter.com/jenkinsci" target="_blank" class="dim link light-gray pv2">Twitter</a>
</li>
<li class="dib mr3">
<a href="https://www.youtube.com/channel/UC63xz3pq26BBgwB3cnwCoqQ" target="_blank"
class="dim link light-gray pv2">YouTube</a>
</li>
<li class="dib mr3">
<a href="https://space.bilibili.com/433584098" target="_blank" class="dim link light-gray pv2">哔哩哔哩</a>
</li>
<li class="dib mr3">
<a href="https://jcli.jenkins-zh.cn/" target="_blank" class="dim link light-gray pv2">Jenkins
CLI</a>
</li>
<li class="dib mr3">
<a href="https://community.jenkins-zh.cn/" target="_blank" class="dim link light-gray pv2">社区论坛</a>
</li>
</ul>
</div>
<div>
<div style="color: #ffffff; display: inline-block; text-align: center; margin-right: 5px; margin-left: 5px;">优酷视频
<div>
<a href="https://i.youku.com/jenkinszh" target="_blank">
<img src="/images/youku-qrcode.png" with="100" height="100">
</a>
</div>
</div>
<div style="color: #ffffff; display: inline-block; text-align: center; margin-right: 5px; margin-left: 5px;">微信公众号
<div>
<a href="https://mp.weixin.qq.com/s/vifdduC3kRGSIMpyL03yVA" target="_blank">
<img src="https://jenkins.io/images/jenkins-wechat.png" with="100" height="100">
</a>
</div>
</div>
<div style="color: #ffffff; display: inline-block; text-align: center; margin-right: 5px; margin-left: 5px;">微博
<div>
<a href="https://www.weibo.com/jenkinszh" target="_blank">
<img src="/images/weibo-qrcode.png" with="100" height="100">
</a>
</div>
</div>
</div>
</div>
<div class="f7 gray mb5 mb0-ns ph3 w-100"> 
<p class="dib mr4"><a href="http://www.beian.miit.gov.cn/" target="_blank" rel="nofollow" class="dim link light-gray pv2"><u>晋ICP备15000444号-2</u></a></p>
</div>
<div class="bg-primary-color-dark bottom-0 left-0 right-0 dn-l fixed pb3 ph3 w-100"><div class="globalmenu mobilemenu pb3 dn">
<ul class="list hidden dib ph0 ma0 scrolling-touch tc">
<li class="tl dib ma0 hover-bg-black w-100">
<a href="/wechat/" class="ttu f6 link primary-color-light overflow hover-white db brand-font ma0 w-100 pv3 ph4">
博客
</a>
</li>
<li class="tl dib ma0 hover-bg-black w-100">
<a href="/tutorial/" class="ttu f6 link primary-color-light overflow hover-white db brand-font ma0 w-100 pv3 ph4">
教程
</a>
</li>
<li class="tl dib ma0 hover-bg-black w-100">
<a href="/event/" class="ttu f6 link primary-color-light overflow hover-white db brand-font ma0 w-100 pv3 ph4">
活动
</a>
</li>
<li class="tl dib ma0 hover-bg-black w-100">
<a href="/partner/" class="ttu f6 link primary-color-light overflow hover-white db brand-font ma0 w-100 pv3 ph4">
合作伙伴
</a>
</li>
<li class="tl dib ma0 hover-bg-black w-100">
<a href="/about/" class="ttu f6 link primary-color-light overflow hover-white db brand-font ma0 w-100 pv3 ph4">
关于我们
</a>
</li>
<li class="tl dib ma0 hover-bg-black w-100">
<a href="http://jenkins.io/zh" class="ttu f6 link primary-color-light overflow hover-white db brand-font ma0 w-100 pv3 ph4">
Jenkins 官网
</a>
</li>
</ul>
</div>
<div class="flex dn-l justify-between">
<button class="js-toggle flex-auto dib dn-l f6 tc db mt4-ns ph3 pv2 link mr2 white bg-primary-color-dark hover-bg-primary-color ba b--white-40 w-auto" data-target=".globalmenu">菜单</button>
</div>
<script src="/dist/app.bundle.js" type="text/javascript"></script>
</div>
<script>
((window.gitter = {}).chat = {}).options = {
room: 'jenkinsci/chinese'
};
</script>
<script src="https://sidecar.gitter.im/dist/sidecar.v1.js" async defer></script>
</footer>
<link href="/dist/auto-complete.css" rel="stylesheet">
<script type="text/javascript">
var baseurl = "https:\/\/jenkins-zh.cn";
</script>
<script src="/dist/lunr.js"></script>
<script src="/dist/autocomplete.js"></script>
<script src="/dist/jquery-3.2.1.min.js"></script>
<script src="/dist/search.js"></script>
<script async defer src="https://buttons.github.io/buttons.js"></script>
<script>
var _hmt = _hmt || [];
(function() {
var hm = document.createElement("script");
hm.src = "https://hm.baidu.com/hm.js?6db234f713318730f0e5f6a95bdd8d47";
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(hm, s);
})();
</script>
<script>
(function(){
var src = (document.location.protocol == "http:") ? "http://js.passport.qihucdn.com/11.0.1.js?6276dcef5c15f276644151772390c1f9":"https://jspassport.ssl.qhimg.com/11.0.1.js?6276dcef5c15f276644151772390c1f9";
document.write('<script src="' + src + '" id="sozz"><\/script>');
})();
</script>
</body>