• Mac下flutter工程配置Gitlab cicd打包(暂时仅限android侧)


    写的太粗糙,可能不太适合完全不懂的同学,但是实在没时间,而且也不太会写,权当做一个记录吧,对了还没有搞docker这些,暂时使用本地电脑进行打包。还在持续学习中,先介绍一个概念

    1.GitLab Runner(打包机)

    让我们来澄清一下概念:

    1. GitLab服务器(GitLab Instance): GitLab服务器是托管代码库、项目管理和持续集成/持续交付(CI/CD)管道的平台。通常情况下,GitLab服务器是部署在服务器上的,可以是云服务器或私有服务器。

    2. GitLab Runner: GitLab Runner 是一个独立的应用程序,用于运行 CI/CD 作业。它可以在本地计算机、虚拟机、容器中或者任何你想运行它的地方。Runner 接收来自 GitLab 服务器的作业,并在本地环境中执行这些作业。

          因此,当你在 GitLab 上创建一个项目并为该项目注册了 Runner 后,在你本地电脑的命令行中运行 Runner 时,Runner 实际上是运行在你本地电脑上的。GitLab Runner 通过与 GitLab 服务器进行通信来接收作业,然后在本地环境中执行这些作业。因此,即使 GitLab 服务器是部署在服务器上的,但是 GitLab Runner 可以在任何支持的环境中运行,包括你的本地计算机

           在 GitLab CI/CD 中,你可以配置一个或多个 GitLab Runner 来执行 CI/CD 任务。这些 Runner 可以是在本地计算机上运行的,也可以是部署在远程服务器上的。当你提交代码或者手动触发了 CI/CD 流程时,GitLab 会将任务发送到可用的 Runner 上执行。Runner 接收到任务后,会执行其中定义的命令,并将执行结果返回给 GitLab。

           因此,如果你的 Runner 是在本地计算机上运行的,那么当你提交代码或者手动触发 CI/CD 流程时,GitLab 会将任务发送到你本地的 Runner 上执行。这就意味着你的本地计算机上需要安装并配置 GitLab Runner,并且该 Runner 必须能够访问 GitLab 服务器。

          需要注意的是,虽然 Runner 是在本地计算机上运行的,但实际的构建和打包操作通常是在 Runner 所在的计算机上进行的,而不是在 GitLab 服务器上。所以,如果你在本地计算机上运行 CI/CD 流程,并且有关于权限、依赖项等问题,通常是针对本地计算机而不是 GitLab 服务器。

    注意:需要有对应的权限,才能对GitLab进行配置

    进入具体的项目 -> Settings -> CI/CD -> Runners -> Specific Runners  

    别人的是这样,我的不太一样,但是找还是能找到token在哪里

    安装地址:

    Install GitLab Runner | GitLab

    注册教程:

    Registering runners | GitLab

    2、进行注册

    方式一:交互式注册

    官方步骤:注册 Runner 

    - 注册过程中,你需要提供以下信息:

    - GitLab服务器的URL:输入你的GitLab服务器的URL。 如:https://gitlab.com/

    - Runner注册的Token:在GitLab项目的设置中,找到“CI/CD”>“Runners”页面,复制“Specific Runner Token”。找管理员要或者自己看(如果有权限的话),我的没找到,是在下面点击new project runner,里面会拿到url与authration token,register的时候会用到

    - Runner的描述:输入一个描述此Runner的名称。

    - Runner的标签:可以选择为Runner添加标签,用于在GitLab CI/CD配置中选择特定的Runner。这个标签tag很重要,需要记录下来。我就没注意,runner的标签跟.gitlab-ci.yml不一样,导致一直出问题。

    - Runner的执行器:选择适合你的环境的执行器,如shell、docker、docker+machine等。此处填shell。

    - 完成注册后,Runner将与GitLab服务器建立连接。

     配置Runner:

    - 注册成功后,可以在GitLab项目的设置中的“CI/CD”>“Runners”页面查看和配置Runner。

    - 可以为Runner配置特定的标签、并发构建数、执行器选项等。 

    启动Runner:

    - 在终端或命令提示符中,运行以下命令启动Runner:

    sudo gitlab-runner start

    注:我的使用上面命令会报错,使用sudo gitlab-runner run成功

    1. [root@run01 ~]# gitlab-runner register
    2. Runtime platform arch=amd64 os=linux pid=3293 revision=f767c145 version=15.3.3
    3. Running in system-mode.
    4. Enter the GitLab instance URL (for example, https://gitlab.com/):
    5. http://192.168.170.133/
    6. Enter the registration token:
    7. GR1348941sUxNyye1qD4HcTSW-TMw
    8. Enter a description for the runner:
    9. [run01]: test
    10. Enter tags for the runner (comma-separated):
    11. build
    12. Enter optional maintenance note for the runner:
    13. this is d test
    14. Registering runner... succeeded runner=GR1348941sUxNyye1
    15. Enter an executor: custom, parallels, shell, docker-ssh+machine, docker, docker-ssh, ssh, virtualbox, docker+machine, kubernetes:
    16. shell
    17. Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
    18. Configuration (with the authentication token) was saved in "/etc/gitlab-runner/config.toml"

    3、最最最简单的脚本配置 

    .gitlab-ci.yml里面的内容:

    1. stages:
    2. - build
    3. variables:
    4. ANDROID_APP_NAME: "flutterDemo" # Android 应用的名称
    5. ANDROID_PACKAGE_NAME: "com.demo.flutter_demo" # Android 应用的包名
    6. build_android_apk:
    7. stage: build
    8. script:
    9. - flutter clean
    10. - flutter build apk
    11. tags:
    12. - build
    13. artifacts:
    14. paths:
    15. - build/app/outputs/flutter-apk/flutter_demo.apk
    16. # only:
    17. # - main # 配置只有 main 分支触发构建

    记得android目录下配置kestore文件相关的内容。

    打包成功的截图如下:

  • 相关阅读:
    什么是LIMS(实验室信息管理系统)?LIMS软件有哪些功能?
    多线程入门总结
    VMware-克隆虚拟机
    机车外套哈哈我真的是因为
    live555 音视频处理相关文档解读,
    Leetcode1608. 特殊数组的特征值
    [附源码]计算机毕业设计JAVA疫情背景下叮当买菜管理系统
    文件批量重命名加前缀的方法
    支付宝小程序授权/获取用户信息
    第二章 数据结构(一)
  • 原文地址:https://blog.csdn.net/qq_35469691/article/details/134259217