Github操作仅通过ssh将scp导入VPS
这是我目前的工作流程Github操作仅通过ssh将scp导入VPS,github,github-actions,Github,Github Actions,这是我目前的工作流程 name: CI on: [push] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v1 with: node-version: '10.x' - run: npm install - run: npm install -g @angul
name: CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: '10.x'
- run: npm install
- run: npm install -g @angular/cli > /dev/null
- run: ng build --prod
- run: scp -o StrictHostKeyChecking=no -r ./dist/pwa/* user@domain.com://home/user/domain.com/pwa
以上是我对CircleCI的大致翻译。然而,显然上述方法是失败的
CircleCI允许将“SSH权限”添加到项目中,以便在设置要运行的构建时,将其附加到环境中,从而使VPS中的任何SSH
命令变得简单
如何在Github中实现类似的方法?Github操作支持SSH权限?如果没有,是否有解决办法
如何通过ssh(即scp)将工作流构建中的文件复制到外部服务器?将ssh密钥添加到github机密后,我会这样做:
run: |
mkdir -p ~/.ssh
echo "${{ secrets.SSH_KEY }}" > ~/.ssh/id_rsa
chmod 700 ~/.ssh/id_rsa
ssh-keyscan -H domain.com >> ~/.ssh/known_hosts
scp -o StrictHostKeyChecking=no -r ./dist/pwa/* user@domain.com://home/user/domain.com/pwa
我没有试过,但市场上有一些scp行动。它们可能值得一看。当然我会去看看的。谢谢