当前位置:首页 > 公众号精选 > 汽车嵌入式
[导读]德国的疫情越来越严重,周末闲来没事,在家想着,好久没有更新公众号了,为了一直默默关注欢乐马的小伙伴和不断增加的读者,这周加个班,把最新的想法写出来,希望可以帮助到有需要的朋友。这周的主题是 jenkins 服务器的配置。

德国的疫情越来越严重,周末闲来没事,在家想着,好久没有更新公众号了,为了一直默默关注欢乐马的小伙伴和不断增加的读者,这周加个班,把最新的想法写出来,希望可以帮助到有需要的朋友。


这周的主题是 jenkins 服务器的配置。


前言

汽车嵌入式由于其特殊的流程规范,比如 ASPICE 审核等,开发工作一般是常用的V模型。V模型也是功能安全的需要,感兴趣的朋友可以看看我的另外一个系列。到底啥是功能安全 - 5


V模型带来的缺点也显而易见,周期长不灵活,对顾客需求的响应慢等, 相比汽车软件开发,在新兴的IT行业,大部分公司已经都转型到了敏捷化开发,就是所谓的Agile。Agile的主旨是最大限度的满足顾客的需求。与之应运而生的是一系列的工具,这些工具可以帮助加速软件开发,使软件又快又高质量的送到客户手里。其中不得不提的就是我们今天的主角,Jenkins


正文

提起Jenkins,他的图标是一个管家的模样。寓意明确,就是一个自动化的管家,


帮你做一切可以自动化的事情。概括起来有两个,第一个是CI (Continues integration), 另一个是CD(continues delivery),此处划重点,面试中必问问题:CI和CD有什么区别。知道的小伙伴请留言,有彩蛋。


好了,言归正传,本文的目标是一步一步带读者了解,如何配置一台远程服务器,并且部署jenkins, 让它帮我们自动编译我们编写的代码。达到 continues intgration。


下面是步骤:


1. 在云服务器上下载,安装并配置Jenkins

我用的是Linux Centos7,根据目标系统的不一样使用的命令有区别,读者可以自行参考Jenkins安装手册。

    1. yum install jenkins

安装完之后,服务器8080端口为 jenkins 默认端口,如果将来如果有需要https 加密传输的话,应该设置成 443 端口并且配置 ssl 证书。


2. 下载Git 作为版本管理工具,将来jenkins会链接git,实现代码管理。

此处注意,请下载最新版的Git,在yum 库里还是1.x 版本的git,如果想要git 2.xx 版本的话,需要做一个更新,或者直接从git官网通过url链链接下载并解压安装。


git 和Jenkins 都安装完成以后,让我们来开始配置吧。


首先用浏览器登录 域名:8080, 此处是我的

http://kfz.plus:8080

注意第一次登录有一个起始密码,这个密码在linux系统的

/var/lib/jenkins/secrets/initialAdminPassword的这个位置,并且只有第一次会有,如果已经登录了,这个password就删除了。读者可以参考下图路径找到initialAdminPassword 这个文件。

注册并登录账户之后 jenkins的首页面:


设置第一个任务给它吧:

我没有选择常用的 Pipeline, 而是选择了freesytle 项目。、

drop job 之后在configuration里配置git 路径:


请注意,习惯用Github的用户千万不要配置自己的Github,因为国内的云服务自动封锁了Github的访问,每次都会返回Timeout 报错。


不信的话你看:

祖国的长城真是太坑了,我一直以为是我自己配置的问题,从头到尾查了一个多小时,经历了整整十次 build,才发现人家压根就不让你访问。


无奈只能拥抱祖国,注册了国行版github:Gitee, 不熟悉git命令的小伙伴可以参考下面:

git initgit commit -m "xxx"git pushgit fetch git pullgit clone ......


搞定了Git 配置,Jenkins就可以管理和下载你的代码了,但是为了实现编译,我们还需要在云服务器上下载编译器。为了简单演示,此处用免费开源的gcc 编译。触发编译的话选择用shell 执行git source 里的makefile


配置完成,开发编译吧


Jenkins有build的历史记录,前十次是因为github没法访问,换了gitee之后,就可以编译成功了。

现在我设置成每一个小时编译一次,我们的TC264项目状态 W 栏就变成了大太阳



后言:

jenkins作为一个管家可以帮助用户做的工作有很多,从CI的角度有很多人性化的功能,比如如何触发编译或者编译完之后做什么的配置,我目前的配置是,每一个小时或者每次在git 里有新的commit 的话,jenkins 会自动编译新的代码,确保每一次改动都没有影响软件的编译。如果编译有错误,会邮件提醒我错误的地方。还有很多有意思的配置,感兴趣的小伙伴可以去详细了解,。

当CI 做完之后,另一个功能CD,我们下回再见吧。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭