在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:statuspublic_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

相关推荐
杨进军12 分钟前
React 创建根节点 createRoot
前端·react.js·前端框架
ModyQyW27 分钟前
用 AI 驱动 wot-design-uni 开发小程序
前端·uni-app
说码解字33 分钟前
Kotlin lazy 委托的底层实现原理
前端
爱分享的程序员1 小时前
前端面试专栏-算法篇:18. 查找算法(二分查找、哈希查找)
前端·javascript·node.js
翻滚吧键盘1 小时前
vue 条件渲染(v-if v-else-if v-else v-show)
前端·javascript·vue.js
A5资源网1 小时前
cloudflare配合github搭建免费开源影视LibreTV一个独享视频网站 详细教程
github
vim怎么退出1 小时前
万字长文带你了解微前端架构
前端·微服务·前端框架
你这个年龄怎么睡得着的1 小时前
为什么 JavaScript 中 'str' 不是对象,却能调用方法?
前端·javascript·面试
Java水解1 小时前
前端常用单位em/px/rem/vh/vm到底有什么区别?
前端
CAD老兵1 小时前
Vite 如何借助 esbuild 实现极速 Dev Server 体验,并支持无 source map 的源码调试
前端