在GitHub Actions部署Flutter Web项目

上一篇:在GitHub Pages部署Flutter Web项目

demo效果:

运行效果:jke7-supplier.github.io/flutter_web...

​

一、创建一个带有Web支持的新项目并提交远程github仓库

1.本地创建一个带有web支持的flutter 项目。
bash 复制代码
#创建一个flutter项目并进入(名字叫 flutter_web_actions_build)
flutter create flutter_web_actions_build && cd flutter_web_actions_build
2.提交到github远程仓库
js 复制代码
git init 
git add --all 
git commit -m "first commit" 
//#YOUR_NAME是你自己的github用户名 
git remote add origin https://github.com/JKE7-supplier/flutter_web_actions_build.git 
git push -u origin main
3.重点:打开web项目里的index.xml文件,修改成你github仓库的名字,不然关联不到相对路径资源文件。

二、Github 的 access token设置

我们将创建一个Actions来构建和发布Flutter Web项目,但是我们需要设置一个访问令牌(access token),让运行我们的Actions的机器无需github密码也能提交代码。

步骤1:
步骤2:
步骤3:

选择repo:status 和public_repo部分以提交公共存储库:注意:如果您的存储库是私有的,则还需要选择私有部分。

创建access token后,将其复制并保留在某个地方,因为您再也看不到它,稍后需要用到。

三、Github 项目的secret配置

起个名字commit_secret与access token作用匹配,将前面获取的access token密钥添加到下方输入框

四、给项目设置Actions配置

1.开启GitHub Actions:

2.在Actions下添加一个 workflows ⬇️⬇️⬇️

main.yml文件如下:

需要注意的: https://${{secrets.commit_secret}}@xxxxx.git,其中"commit_secret"是你自己在"add a new secret"时设置name。

yaml 复制代码
name: Flutter Web
on:
  push:
    branches:
      - main
jobs:
  build:
    name: Build Web
    env:
      my_secret: ${{secrets.commit_secret}}
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v1
      - uses: subosito/flutter-action@v1
        with:
          channel: 'stable'
      # 按照下面的顺序执行打包命令
      - run: flutter config --enable-web
      - run: flutter pub get
      - run: flutter channel master
      - run: flutter upgrade
      - run: flutter build web --release
      - run: |
          cd build/web
          git init
          # 改成你的提交邮箱
          git config --global user.email yourGithubEmail
          # 改成你的提交用户名
          git config --global user.name yourGithubName
          git status
          # 更改此远程URL,例如查看您的远程URL是 https://github.com/JKE7-supplier/flutter_web_actions_build.git 然后改成以下内容
          git remote add origin https://${{secrets.commit_secret}}@github.com/JKE7-supplier/flutter_web_actions_build.git
          git checkout -b gh-pages
          git add --all
          git commit -m "update"
          git push origin gh-pages -f
          
3.自动部署打包:
4.打包成功后:

运行效果:jke7-supplier.github.io/flutter_web...

demo github : GitHub - JKE7-supplier/flutter_web_actions_build: Flutter web build to gitHub actions

相关推荐
To_OC7 小时前
从一头雾水到跑通全流程:我用一个周末啃透了JWT登录鉴权
前端·后端·http
excel8 小时前
研究 Vue 3 源码的收获
前端·vue.js
可乐鸡翅yeah_10 小时前
业务中 M3U8 水印相关坑,硬水印和动态水印区别
前端·网络·数据库·ffmpeg·m3u8在线
lerhxx11 小时前
AI 应用如何高效优雅地恢复中断?—— "连接解耦 + 状态持久化"
前端·javascript
计算机魔术师11 小时前
METR 演示 AI 智能体如何篡改 Inspect 评估记录以掩盖不当行为
前端
前端snow11 小时前
ai agent --- 异步处理之 Rabbit MQ
前端
念何架构之路11 小时前
zap扩展生态与总结
java·前端·数据库
独孤九剑打醒他11 小时前
【原创开源】【概念设计】源 - 栅 - 漏 - 栅 - 源 横向双栅 MOS,低压交流多值逻辑芯片探索
前端·其他·架构·开源·硬件工程
Maynor在掘金12 小时前
Nano Banana 2.1 来了!21 个真实案例 + 公开提示词,这份 Awesome 合集请收好
github
miofly12 小时前
ChatGPT 账号用户可免费使用 Auto-review 双智能体审查功能
开源·github