Jenkins配置


Jenkins配置,参数化构建,发布蒲公英并且发布钉钉消息

  1. 我也是借鉴别人的经验,Jenkins的安装就不再赘述了,因为我用的是Homebrew的方式,下面的命令会用到Homebrew命令安装,看个人需要。
  2. 安装之前,首先你的电脑上需要安装:Homebrew,安装Homebrew自行百度,这个也不再赘述。
  3. 安装Jenkins命令
    安装最新的 LTS 版本:
$ brew install jenkins-lts

或者安装特定的 LTS 版本:

$ brew install jenkins-lts@YOUR_VERSION

Jenkins一些常用的命令

启动Jenkins服务:brew services start jenkins-lts

重启Jenkins服务:brew services restart jenkins-lts

更新Jenkins版本:brew upgrade jenkins-lts

  • Jenkins安装完成后是这样的:
    Jenkins本地界面

Jenkins配置完成后,配置项目需要的一些设置

现在Jenkins要帮我们完成:可以自定义切换分支,拉取代码,打包、上传蒲公英、以及在提测群里发送钉钉消息。
所以第一步要先完成一些必要插件的安装:
下载步骤:点击Jenkins界面系统设置,会进入如下界面:
系统设置界面
点击插件管理搜索钉钉插件和蒲公英上传插件:
Ding Talk (钉钉机器人插件)
Upload to pgyer (蒲公英上传插件)
插件搜索界面
安装完成之后,去系统管理界面:拉到最底部,会有钉钉消息插件:
钉钉插件图标

钉钉自定义机器人配置
  1. 首先去想要添加机器人的群里去添加发送消息的机器人
    钉钉群界面
    点击机器人到机器人管理界面:
    机器人管理界面
    点击添加机器人,选择自定义webhook的自定义机器人
    自定义机器人
    然后添加机器人入群,然后点击机器人去进行设置:比如设置机器人图标和一些设置

  2. 在钉钉端创建好之后,然后进入Jenkins系统管理,拉到最底部,点击图标进行设置
    上面的按照实际项目需要,我们项目就是在任务构建完成之后,再去发送消息
    Jenkins机器人插件设置

在下面机器人那里,点击新增,按照钉钉上自己填写的机器人的设置,在这里添加机器人,可以添加多个,根据需要添加即可:
Jenkins机器人填写信息

至此,Jenkins机器人设置完成

创建流水线任务

首先创建一个自由风格的软件项目
新构建任务选择
进入构建任务界面
构建任务界面1
源码管理选择git
由于福多多项目在码云上,所以不需要别的配置,直接填写仓库地址以及用户名和密码就可以
构建任务界面2
在此界面可以设置仓库,仓库分支用自定义参数表示
自定义参数相当于代码中的变量,取值用 $参数名称
构建步骤选择执行shell
福多多shell脚本大致意思:

export LANG=en_US.UTF-8

export LANGUAGE=en_US.UTF-8

export LC_ALL=en_US.UTF-8

if [ ! -d "/Users/pantenglong/PgyerApk_Ipa/" ];then
  echo "PgyerApk_Ipa文件夹不存在,新建PgyerApk文件夹"
  mkdir /Users/pantenglong/PgyerApk_Ipa
  echo "PgyerApk_Ipa文件夹新建成功"
  else
  rm -r /Users/pantenglong/PgyerApk_Ipa
  echo "PgyerApk_Ipa文件夹删除"
  mkdir /Users/pantenglong/PgyerApk_Ipa
  echo "PgyerApk_Ipa文件夹新建成功"
fi

cd /Users/pantenglong/.jenkins/workspace/pantenglong
flutter pub get

flutter --no-color build apk --release --no-tree-shake-icons --dart-define=APP_CHANNEL='Pgyer'
cd /Users/pantenglong/.jenkins/workspace/pantenglong/build/app/outputs/
cp -r flutter-apk /Users/pantenglong/PgyerApk_Ipa/APK

cd /Users/pantenglong/.jenkins/workspace/pantenglong
flutter --no-color build ipa --export-method ad-hoc --no-tree-shake-icons --dart-define=APP_CHANNEL='Pgyer'
cd /Users/pantenglong/.jenkins/workspace/pantenglong/build/ios/
cp -r ipa /Users/pantenglong/PgyerApk_Ipa/ipa

如果遇到 flutter: command not found需要配置环境变量
在jenkins系统设置中找到,环境变量
第一行增加 键:PATH 值:通过echo $PATH 查看目录
第二行增加 键:PATH1 值:flutter目录所在环境,例如:/Users/pantenglong/flutter/bin

脚本解读:

  1. 前三行脚本是为了Jenkins可以执行pod 命令的设置
  2. if中的语句是创建自定义路径的APK或者IPA的文件导出路径
  3. 到Jenkins目录下的workspace中,找到相应的任务文件夹:这里解释,每创建一个流水线任务,就会在工作区间里,有一个相应的文件夹,文件夹对应git中的分支代码
  4. 打包之前先进行flutter pub get 然后执行flutter打包命令
  5. 将flutter打包完的包,导出到自定义的路径下

如果配置了Git管理代码遇到iOS Pod相关的问题 在执行shell最开始加上下面三行命令
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8

增加构建后步骤:去上传蒲公英
上传蒲公英设置

至此基本就设置创建完了,然后点击项目,参数化构建,对应参数填写相应内容,点击build即可构建
参数化构建界面
如果遇到问题可以问我,能写的目前写完了


文章作者: 小小学生
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 小小学生 !
评论
  目录