美文网首页
webhooks 实现自动部署

webhooks 实现自动部署

作者: consolelog | 来源:发表于2022-10-20 15:20 被阅读0次

webhook 允许生成或设置集成,例如 GitHub AppsOAuth Apps,以订阅 GitHub.com 上的某些事件。 当触发其中某个事件时,我们将向 web 挂钩的配置 URL 发送 HTTP POST 有效负载。 Web 挂钩可用于更新外部议题跟踪器、触发 CI 构建、更新备份镜像,甚至部署到生产服务器。 您只受想象力的限制。

这是一个通用的解决方案,用户可以自己根据不同的需求,来编写自己的脚本程序(比如发邮件,自动部署等)。

GitHub实现


image.png

nodejs代码

const express = require('express')
const { exec } = require('child_process');
const app = express()
app.use(express.json())
const port = 9997

app.post('/', (req, res) => {
  //验证密码
  if (req.body.password == 'Mc2SajhBp5LTnJ') {
    res.send('success: ' + new Date())
    
    //执行打包命令
    exec('cd /root/home/web/music-react && npm i && npm run build', (error, stdout, stderr) => {
      console.log(error, stdout, stderr)
    })
  }
})

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`)
})

相关文章

网友评论

      本文标题:webhooks 实现自动部署

      本文链接:https://www.haomeiwen.com/subject/bvyuzrtx.html