老师我的 GitHub Actions 自动发布失败了,是为什么
错误是这一段:
ssh-keyscan 192.168.30.133 >> ~/.ssh/known_hosts
我把这一段注释掉就没错了,但是后面会连不上服务器。
服务器是本地虚拟机 CentOS 7 x64
deploy.yml 文件
name: deploy myblog # 条件 on: push: branches: - "master" # 针对的是 master 分支,master 分支下 push的时候,触发下面写的东西 paths: # 那些文件被更改了,才触发 - ".github/workflows/*" - "src/**" - "bin/*" - "package.json" jobs: # 任务 deploy: # 任务,名字可以自定义,任务都是在临时的虚拟机服务器上运行的 runs-on: ubuntu-latest # centos 一样,也是linux发行版 steps: # 步骤 - uses: actions/checkout@v3 # 第三方的 action,拉取git仓库中所有代码 - name: set id_rsa # 设置 id_rsa run: | mkdir -p ~/.ssh/ echo "${{secrets.MY_ID_RSA}}" -> ~/.ssh/id_rsa chmod 600 ~/.ssh/id_rsa echo "-------fengexian--------" ssh-keyscan 192.168.30.133 >> ~/.ssh/known_hosts - name: deploy # 自动发布 run: | ssh root@192.168.30.133 " # 注意:服务器已经 git clone 代码到 /root/myblog/test-server 目录 cd /root/myblog/test-server git checkout . ; git checkout master; git pull origin master; # 重新下载最新的代码 # 重启服务 npm install; npm run prd; " - name: delete id_rsa #删除 id_rsa run: rm -rf ~/.ssh/id_rsa
从入门到实战,一站式掌握 Node.js+Express+Koa2
了解课程