如何通过GitHub Actions自动解压文件并部署PHP应用到Heroku
当然可以实现这个自动解压的需求!你只需要在现有GitHub Actions工作流的部署步骤前,加入解压数据库压缩包的操作就行。下面是修改后的完整工作流配置:
name: Deploy on: push: branches: - master # 可以根据需要修改触发部署的分支 jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 # 新增解压SQLite数据库压缩包的步骤 - name: Unzip large SQLite database run: | cd data unzip large_db.sqlite3.zip - uses: akhileshns/heroku-deploy@v3.7.8 with: heroku_api_key: ${{secrets.HEROKU_API_KEY}} heroku_app_name: "YOUR APP's NAME" # 填写你在Heroku上的唯一应用名 heroku_email: "YOUR EMAIL" # 填写你的Heroku注册邮箱
步骤说明:
- 首先通过
actions/checkout拉取GitHub仓库的代码到GitHub Actions的运行环境中; - 新增的
Unzip large SQLite database步骤会进入data目录,执行unzip命令将压缩包还原为完整的SQLite数据库文件; - Ubuntu-latest环境默认预装了
unzip工具,无需额外安装依赖; - 解压完成后,后续的Heroku部署步骤会将包含还原后
large_db.sqlite3的整个项目目录推送至Heroku,确保应用能正常读取该数据库文件。
内容的提问来源于stack exchange,提问作者Panmux Nougat




