Jenkins配合github实现前端项目自动化构建部署

简介:

前言

大家以前写前端项目部署,可能都是手动运行命令,打包完,然后压缩,再利用FTP、Xshell等这类的工具上传到服务器解压。也或者你不会操作,你认为这些事情是运维做的,你只需要打包你的前端项目代码后发给运维你就不管了。这种方式确实有点low且效率也不高。

现在大家更关注的是Devops,关注如何来做持续集成,持续交付,如何来做CI/CD。

今天就拿Jenkins配合Github实现自动化集成打包部署。

系列文章:

CentOS 7 安装 JAVA环境(JDK 1.8)

CentOS 7 安装Node

Jenkins的安装这里就不在说明了,网上安装教程很多。

Jenkins介绍

引用百度百科的一句话:Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

在工作中部署jenkins的最大好处就是每次在开发、测试环境代码,都无须运维部署,而是相关的开发人员,测试人员登录jenkins构建需要部署的tag或者分支即可,整个部署过程无须运维参与,解放运维劳动力。

也不用担心部署在多个服务器,在家写代码也不用远程公司部署项目,提交代码后会自动为你部署。

部署方式

jenkins的构建方式常用分为三种。

jenkins触发式构建:push代码或者合并代码到项目的master或者其他分支,jenkins就部署代码到对应服务器。

jenkins参数化构建:push代码或者合并代码到项目的master或者其他分支之后,并不会部署代码,而是需要登录到jenkins的web界面,点击构建按钮,传入对应的参数(比如参数需要构建的tag,需要部署的分支)然后才会部署。

jenkins定时构建:多用于APP、自动化用例等自动打包,定时构建是在参数化构建的基础上添加的,开发人员可以登录jenkins手动传入tag进行打包,如果不手动打包,那么jenkins就定时从配置项目地址拉取最新的代码打包。

Jenkins + github持续集成

创建 github AccessToken

进入github 设置页,选择Developer settings

选择 Personal access tokens -> Generate new token

勾选如下配置

然后点生成就行了,切记一定要保存好这个token,只显示一次。

配置Jenkins

进入系统管理 => 管理插件 => 安装插件 Github Plugin

然后进入 系统管理 => 系统设置 => Github Server 添加信息

Credentials 那里再点击 Add 添加如下信息

添加完毕之后记得选择我们刚刚添加的信息

最后点击 Test Connection 如果配置正确应当有如下显示:

创建任务

创建一个自由风格的任务

勾选 Github Project 填入github仓库url

源码管理选择Git ,填写仓库git地址,选择需要构建的分支,我这里选择master (** 为选择所有分支)

构建触发器,这里你们可以根据上面所说的部署方式来选择,这里我选择 GitHub hook trigger for GITScm polling ,来完成 push 后自动构建

然后就是构建 => 增加构建步骤 => 执行shell 填入你自己的构建和部署的命令 我这里拿我的hexo博客举例

现在如果提交代码到对应的分支,就会自动触发构建,如果构建成功,也就自动部署在你的网站上了。其实这里就是咱们配置生效了,github监听到咱们push后,利用webhook通知Jenkins:大爷来玩呀,Jenkins就会根据咱们的配置自动完成构建部署。

总结

配置看似很繁琐,其实很简单,配置过一次,再配置第二次就是手到擒来,其他项目也是如此,如 vue + webpack类的,只是构建的shell命令不一样而已。还有,切记 rm -rf慎用慎用!233... o(╥﹏╥)o

目录
相关文章
|
11天前
|
测试技术 开发者 Python
自动化测试之美:从零构建你的软件质量防线
【10月更文挑战第34天】在数字化时代的浪潮中,软件成为我们生活和工作不可或缺的一部分。然而,随着软件复杂性的增加,如何保证其质量和稳定性成为开发者面临的一大挑战。自动化测试,作为现代软件开发过程中的关键实践,不仅提高了测试效率,还确保了软件产品的质量。本文将深入浅出地介绍自动化测试的概念、重要性以及实施步骤,带领读者从零基础开始,一步步构建起属于自己的软件质量防线。通过具体实例,我们将探索如何有效地设计和执行自动化测试脚本,最终实现软件开发流程的优化和产品质量的提升。无论你是软件开发新手,还是希望提高项目质量的资深开发者,这篇文章都将为你提供宝贵的指导和启示。
|
27天前
|
运维 监控 jenkins
运维自动化实战:利用Jenkins构建高效CI/CD流程
【10月更文挑战第18天】运维自动化实战:利用Jenkins构建高效CI/CD流程
|
1月前
|
运维 监控 测试技术
构建高效运维体系:从监控到自动化的实践之路
【10月更文挑战第9天】 在当今信息技术飞速发展的时代,运维作为保障系统稳定性与效率的关键角色,正面临前所未有的挑战。本文将探讨如何通过构建一个高效的运维体系来应对这些挑战,包括监控系统的搭建、自动化工具的应用以及故障应急处理机制的制定。我们将结合具体案例,分析这些措施如何帮助提升系统的可靠性和运维团队的工作效率。
51 1
|
1月前
|
运维 监控 安全
构建高效运维体系:从监控到自动化的全面指南在当今数字化时代,运维作为保障系统稳定性和效率的重要环节,其重要性不言而喻。本文将深入探讨如何构建一个高效的运维体系,从监控系统的搭建到自动化运维的实施,旨在为读者提供一套完整的解决方案。
本文详细介绍了高效运维体系的构建过程,包括监控系统的选择与部署、日志分析的方法、性能优化的策略以及自动化运维工具的应用。通过对这些关键环节的深入剖析,帮助运维人员提升系统的可靠性和响应速度,降低人工干预成本,实现业务的快速发展和稳定运行。
|
1月前
|
运维 jenkins 持续交付
自动化运维之路:构建高效CI/CD流水线
在软件开发的快节奏中,持续集成和持续部署(CI/CD)流水线是提升效率、保障质量的关键。本文将引导你理解CI/CD流水线的重要性,并手把手教你如何搭建一个高效的自动化运维系统。通过实际代码示例,我们将一步步实现从代码提交到自动测试、部署的全流程自动化,确保软件交付过程既快速又可靠。
|
1月前
|
机器学习/深度学习 运维 监控
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化时代,运维工作的重要性日益凸显。随着企业业务的不断扩展和技术的日新月异,传统的运维方式已难以满足现代企业的需求。因此,构建一个高效、智能的运维体系成为了企业发展的关键。本文将探讨如何从自动化逐步演进到智能化,以实现运维工作的高效化和智能化。
|
1月前
|
机器学习/深度学习 运维 监控
构建高效运维体系:从自动化到智能化的演进之路
在当今数字化浪潮中,运维作为信息技术的重要支柱,其重要性日益凸显。本文将探讨如何通过自动化和智能化手段,提升运维效率,保障系统稳定性,促进业务持续发展。
|
27天前
|
运维 监控 jenkins
运维自动化实践:利用Jenkins实现高效CI/CD流程
【10月更文挑战第18天】运维自动化实践:利用Jenkins实现高效CI/CD流程
|
1月前
|
JavaScript 前端开发 搜索推荐
Gulp:构建自动化与任务管理的强大工具
【10月更文挑战第13天】Gulp:构建自动化与任务管理的强大工具
68 0
|
1月前
|
机器学习/深度学习 运维 自然语言处理
构建高效运维体系:从自动化到智能化的演进之路
随着信息技术的飞速发展和企业数字化转型的加速,运维管理作为保障业务连续性和系统稳定性的关键环节,正面临着前所未有的挑战与机遇。本文深入探讨了如何通过引入自动化工具和技术,实现运维流程的标准化、自动化和智能化,进而提升整个组织的运维效率和响应速度。同时,文章也详细分析了在实施自动化运维过程中需要考虑的关键因素,如人员技能提升、流程优化和文化变革等,以期为企业提供一套全面、实用的运维管理升级方案。