04 使用github action完成自动部署 - xiaoxin01/Blog GitHub Wiki
本文介绍如何使用github action来完成项目的自动部署
要使用github的action功能,需要在项目的根目录建立文件夹:
.github/workflows
在后在此目录建立 yaml 文件
部署项目有多种方式,下面介绍直接使用ssh在自己的服务器上构建项目
name: CI
on: [push]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: build and deploy
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }}
port: ${{ secrets.PORT }}
script: ${{ secrets.SCRIPTS }}
上面的变量可以在项目的 settings/secrets 下面建立,避免暴露出来
script可以是提前编写好的部署脚本:
cd ~/deploy && \
bash deploy.sh
commit之后,就可以在项目的 action 下面查看历史:
点击某一次构建,可以查看详细的步骤及输出:
上述 yaml 文件,指定只要发生 push 动作,就会执行部署。
可以通过如下链接查看更多的控制方式:workflow-syntax-for-github-actions
当项目启用action以后,可以通过下面的地址得到某个 workflow 的状态图标:
https://github.com/<OWNER>/<REPOSITORY>/workflows/<WORKFLOW_FILE_PATH>/badge.svg