js 监听iframe 内部接口是否请求完成_使用Github的Webhooks+Node完成网站的自动化部署...

news/2024/5/20 19:32:51/文章来源:https://blog.csdn.net/weixin_39724469/article/details/110747382

v2-3ccf1e5b868061e5024afd47b42ee548_1440w.jpg?source=172ae18b

目前我的博客网站的部署方式,是通过github的webhooks监听push事件来触发远程服务器的自动化部署脚本,如下:

本地环境->push到github仓库->触发远程自动化部署脚本->网站更新为最新的代码

1.配置github代码仓库的webhook

v2-02214a150e3aa845196b7e5d0f085619_b.jpg

如上图进入到项目仓库的settings下面,选中Webhooks选项进行配置即可:

Payload Url:服务器地址+端口+自定义接口地址
Content type: application/json
Secret: 自定义Which events would you like to trigger this webhook?
勾选 Just the push event
勾选 Active

配置好个选项后,点击Update webhook按钮即可。

2.服务器新增监听push事件的js脚本

定义服务脚本:deploy.js

deploy.js源码如下:

var 

js脚本使用到了github-webhook-handler的一个组件,可以通过: npm install -g github-webhook-handler来全局安装该组件,安装完组件后,直接启动该脚本时可能会遇到找不到该组件的错误,此时进入deploy.js脚本所在的目录下面执行:npm link github-webhook-handler

脚本中的secret需要跟刚才在github的webhook中secret的值一致。blog-start.sh是我博客的的启动脚本,稍后会展示源码。

脚本中的这段代码:

handler.on('push', function (event) {console.log('Received a push event for %s to %s',event.payload.repository.name,event.payload.ref);var shpath = './blog-start.sh';RunCmd('sh', [shpath], function(result) {console.log(result);})
})

是创建服务,并监听7777端口,这个端口可以根据个人情况自行调整。

2.2 定义启动脚本

下面是blog-start.sh脚本的源码,仅供参考:

## 进入博客目录

进行完以上步骤后,可以启动deploy.js脚本,执行以下指令,后台启动脚本:nohup node deploy.js > deploy.log &

2.3 配置nginx,做请求转发

因为为了服务器的安全性,服务器的7777端口我并未对外开放,此时需要配置服务器的nginx服务来转发对应的请求,配置参考如下:

server 

重启nginx是的配置生效: ./nginx -s reload

3. 验证配置结果

到此,当对应的代码仓库有新的push内容后,就回自动触发node启动的js脚本服务,并且通过blog-start.sh自动的从github拉去最新的代码并完成代码构建,此时我的博客内容就会加入最新新增的文章信息了。下面截图是我本片文章新增时的验证结果(截图内容都是提交后补充的):

3.1 提交本文章内容

v2-b5fb916a53333cd395d416f176fac708_b.jpg

3.2 查看webhook调用结果

进入github项目仓库的webhooks目录下,可以看到本次push触发了接口调用,接口返回:

v2-93b143b1cf9f998e3f65ff480d5ab1e0_b.jpg

3.3 查看服务器监听脚本日志

v2-b6d7ce4ca0dee3da2b8ccc634c1a2486_b.jpg

日志显示已经自动拉取刚刚提交的文章,并且重新构建完成.

3.4 访问博客网站,进行结果验证

v2-f268877a028711e3da17639b25338a10_b.jpg

截图中可以看到,文章已经发布到网站上了。

看完文章后尝试自己配置的小伙伴们,如果又遇到什么问题,可以在文章下方评论区留言交流,多谢!

更多文章可访问我的博客:

技术小白成长之路​www.itstabber.com
v2-593c0bbd291ac1358af87f3a707efe49_ipico.jpg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_787607.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网站打开速度多少毫秒为正常_SEO优化|虚拟主机与网站排名

上周我们提到标题决定网站长久排名,今天跟大家分享虚拟主机与SEO之间的知识点。网站是储存在虚拟主机上的,虚拟主机的性能直接影响到网站的性能,这是一个直接关联的问题。在操作SEO项目中,虚拟主机的选择甚至决定SEO的效果&#x…

无人机官方网站_无人机培训驾驶证,你了解多少?

无人机作为一个新的生成工具,确实创造了很多新的就业机会,比如、电力巡检、植保作业等,也打打破了好多的行业门槛如测绘、航拍。给了我们快速进入一个行业的机会。全新的行业有好处,门槛少,壁垒少。无人机作为一个飞行…

nginx php网站配置文件,nginx怎么配置文件路径

Nginx安装结束后,yum默认安装位置在/etc/nginx中。配置文件位于:/etc/nginx/nginx.conf,可以修改处理器数量、日志路径、pid文件路径等,默认的日志。错误日志 /var/log/nginx/error.log访问日志 /var/log/nginx/access.lognginx.c…

php跳转动画源码,网站go链接跳转动画

这篇文章上次修改于 642 天前,可能其部分内容已经发生变化,如有疑问可询问作者。蓝色页面加载中,请稍候...页面加载中...黑色加载中var msg document.title;msg "" msg;pos 0;function scrollMSG() {document.title msg.substring(pos, m…

请求php网页的过程示意图,php网站打开访问慢,排查过程案例!

问题描述:客户反馈昨天网站访问还是正常的,今天访问特别慢,环境源码什么都没动过 请求需要1分钟拿到机器资料后检查负载一切正常,查看客户使用的是宝塔linux面板,lnmp环境,可以通过slow log追踪到问题点我们…

PHP设计网站的框架,用PHP制作静态网站的模板框架(三)

用PHP制作静态网站的模板框架(三)更新时间:2006年10月09日 00:00:00 作者:避免页面元素重复“这确实不错”,你也许会想,“我的网站主要就是由大量的静态页面构成。现在我可以从所有页面中删除它们的公共部分,要更新这…

php在线视频网站,GitHub - unkaer/olvideos: 简易 PHP 在线视频网站,搜索并播放资源站视频。...

olviedos简易 PHP 在线视频网站,无需数据库,占用空间小。基本原理 搜索(API或爬取)资源站视频 在线播放。演示演示站点:️在线视频站 (彩虹云cfCDN)备用站点 (HerokucfCDN 自动更新最新版)结构.├── README.md├── index.php 搜索首页├─…

php】微趣网源码_腾讯微博应用网站系统_病毒式放大流量_,腾讯微博应用网源码 腾讯微趣网app源码整站程序自助下载...

腾讯微博应用网源码 腾讯微趣网app源码整站程序自助下载腾讯微博应用微趣网源码安装说明:第一步 我们先要申请腾讯的APP访问 http://dev.open.t.qq.com/developer/add 注册一个自己的账户,并且注册完毕之后登录自己的邮箱选择右键的连接进行账号确认&…

android 怎么实现手机网站支付_支付宝手机网站支付签约不了、签约评分不足等问题处理,强开支付宝产品功能权限!...

一、如何开通支付宝手机网站支付正常来说,按照官方的指引要求填写相关资料,即可开通支付宝手机网站支付。但是,更多的时候我们的申请都会碰到一些阻力,常见的阻力就是“系统综合评估签约条件不满足,谢谢您的支持”&…

为什么选择spring security oauth2_SpringBoot入门建站全系列(三十五)整合Oauth2做单机版认证授权...

SpringBoot入门建站全系列(三十五)整合Oauth2做单机版认证授权一、概述OAuth 2.0 规范定义了一个授权(delegation)协议,对于使用Web的应用程序和API在网络上传递授权决策非常有用。OAuth被用在各钟各样的应用程序中&am…

telnet3389能通但是不能远程桌面_自我建站记录-一次不能发送验证BUG

本人一直从事JAVA后端开发,但一直想做一个自己的网站.为了学习和了解更多.所以没用建站程序,是自己一行一行敲HTLM和JS码出来的.本人码后端还行,但是前端真的是太水了.截至目前,前端在移动端显示效果还是非常糟糕.当然,我也一直在改.也希望知乎大佬多给我意见和指导.好了,说说今…

vb.net access 打开程序数据没了_【巨阵科技】网站打开速度很慢的原因

如今,大多数的企业都有在建设自己的企业网站,网站是建设好了,但有很多毛病却不知道是怎么造成的。比如说网站打开的速度很慢。影响网站打开速度的因素是有很多的,发现网站打开慢,那就分析网站建设中的原因,…

php asp网站本地调试,php/asp网站程序本地调试软件

这是php/asp网站程序本地调试软件,网站程序本地调试软件对网站程序有很大帮助,许多站长对编程不太熟悉,当自己的php/asp网站程序需要修改时,修改后的文件,本地电脑无法看到自己的修改效果,因为本地安装调控…

日语输入法电脑版_【狐狸专栏】日语学习必备网站一览

新的一年到啦~初心联盟全体成员给大家拜年啦!祝大家在新的一年里学业进步,身体健康,万事顺利~今天为大家推荐几个日语学习网站,活用这些网站收获多多哟!1Yahoo日文字典网址: http://dic.yahoo.co.jp/网页上…

wordpress yoast调用自定义类型_适合WordPress自建站卖家使用的15个SEO插件

从小型个人博客到一众大公司的复杂网站,WordPress拥有全球近1/3的网站,此外WordPress是许多自建站卖家首选的网站构建器和内容管理系统。WordPress插件数据库中有超过18000个插件,包括SEO、控件等等。本文为自建站卖家盘点了针对搜索引擎优化…

我的家乡网站_《家乡》票房失守2亿,《姜子牙》高开低走,今年国庆档没有黑马...

国庆假期期间除了出去游玩之外,怎么可能少得了去电影院看电影呢?作为电影票房的突出贡献时期,每年的国庆档可以说是大片云集、群星荟萃了,尤其是去年开始“我和我的XX”系列电影问世后,每年的国庆档几乎可以集齐圈内大…

find_all可以连续使用_Python爬虫使用正则爬取网站,正则都不会就别玩爬虫了!...

本文章的所有代码和相关文章, 仅用于经验技术交流分享,禁止将相关技术应用到不正当途径,滥用技术产生的风险与本人无关。本文章是自己学习的一些记录。欢迎各位大佬点评!源码在GitHub上面,且相关介绍更加全面。链接如下…

学术英语视听说2听力原文_推荐一个神仙级免费英语学习网站,自学英语从零基础到精通!...

提起大名鼎鼎的 British Council (英国文化教育协会)相信许多英语学习者尤其是雅思烤鸭都不会陌生。作为雅思考试的三大主办方之一,British Council 在全球100多个国家开展英语教育领域的工作,组织各类英语语言及职业资格考试。Br…

zip直链生成网站_防止赖床的闹钟软件、免费好用的看图软件、色卡生成器 今天有什么?...

产品皆活物 用者无机心使命闹钟 - 防止赖床的闹钟软件使命闹钟是一款非常有趣的手机闹钟应用 。软件除了提供了震耳欲聋的吵闹铃声以外 ,还有拍照指定照片 、用力甩手机 、完成数学计算等多种解除闹铃的任务 ,只有完成任务手机才能停止响铃 。此外 &am…

jsp管理系统页面模板_JSP+Spring+SpringMVC+Hibernate+Mysql实现的校园失物招领网站

项目简介项目来源于:https://github.com/wenlongup/LostAndFound因源github仓库无数据库文件,经过本人修改,现将该仓库重新上传至个人gitee仓库。张有路/LostAndFound​gitee.com本系统基于JSPSpringSpringMVCHibernateMysql的校园失物招领网…