【发布时间】:2020-11-03 15:26:18
【问题描述】:
我正在尝试使用 Github 操作将我的 laravel 应用程序部署到我的服务器以进行构建和测试,然后通过 ssh 进行部署。
我有一个用于开发的主存储库,然后我有一个附加到操作脚本的生产存储库。
我尝试关注this tutorial 进行 github 操作部署。
我的构建工作正常,但在部署时找不到我的部署脚本,即 server_deploy.sh
这是我的 main.yml 文件
name: CD
on:
push:
branches: [ production ]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.PUSH_TOKEN }}
- name: Set up Node
uses: actions/setup-node@v1
with:
node-version: '12.x'
- run: npm install
- run: npm run production
- name: Commit built assets
run: |
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git checkout -B deploy
git add -f public/
git commit -m "Build front-end assets"
git push -f origin deploy
- name: Deploy to production
uses: appleboy/ssh-action@master
with:
username: ${{ secrets.SSH_USERNAME }}
host: ${{ secrets.SSH_HOST }}
password: ${{ secrets.SSH_PASSWORD }}
script: 'cd /home/admin/web/case4.example.co/public_html/ && ls && sh server_deploy.sh'
这是我的 server_deploy.sh
#!/bin/sh
set -e
echo "Deploying application ..."
# Enter maintenance mode
(php artisan down --message 'The app is being (quickly!) updated. Please try again in a minute.') || true
# Update codebase
git fetch origin deploy
git reset --hard origin/deploy
# Install dependencies based on lock file
composer install --no-interaction --prefer-dist --optimize-autoloader
# Exit maintenance mode
php artisan up
echo "Application deployed!"
但是,当我执行此工作流时,它找不到 server_deploy.sh 文件。
我尝试ls 看看是否连我的仓库都签出了,但没有。
请帮忙。
【问题讨论】:
标签: php laravel deployment github-actions