【发布时间】:2022-01-28 01:38:26
【问题描述】:
我已经为 github 操作上的部署创建了一个操作。这一切都适用于 composer install 和 git 拉主分支。但是在我的数字海滴上,我遇到了问题
bash: line 4: npm: command not found
如果我 ssh 进入我的服务器,我可以完美地使用 npm。这是通过 nvm 安装的并使用最新版本,但由于某种原因,它无法通过操作访问。
我的部署脚本是
on:
push:
branches: [master]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Deploy Laravel APP
uses: appleboy/ssh-action@v0.1.4
with:
host: ${{secrets.SSH_HOST}}
key: ${{secrets.SSH_KEY}}
username: ${{ secrets.SSH_USER }}
script: |
cd /var/www/admin
git pull origin master
composer install
npm install
npm run prod
我认为这更多地与 nvm 的设置有关,因为我可以通过 ssh 使用它,但由于他们使用同一个用户通过 ssh 登录,我似乎看不到问题。
有什么想法可以解决此问题以授予访问权限/允许 github 操作使用 npm?
【问题讨论】:
-
您需要先在运行器中使用setup/node 设置节点。在使用 appleboy/ssh-action 之前的一步。
-
我不相信这是问题所在,我刚刚尝试过,但仍然无法访问 npm。那不会在操作上启用 npm 而不是在服务器上启用 npm 吗?我认为问题在于服务器上的 npm 安装。
-
这可能是因为您还需要使用
action/checkout以及通过npm install命令访问package.json 文件 -
原来是服务器上的 npm install。
标签: node.js ubuntu npm github-actions nvm