Skip to content

自创造超实用性 Fastlane 插件和自定义 actions 的聚合仓库

License

Notifications You must be signed in to change notification settings

icyleaf/fastlane-plugins

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fastlane-plugins

License

本仓库是本人在多年所整理使用的超实用 fastlane 的自定义 actions,制定了一些用于公司内部移动开发项目使用到的 lanes,同时也有部分 action 在确定可以贡献社区的会被抽成 plugin 让更多的人检索和使用。

引入教程

确保已经安装了 fastlane 并进行初始化:

$ gem install fastlane
$ fastlane init

根据工具的提示输入和配置你项目的具体参数和账户情况,直至完成之后会在当前路径下生成 fastlane 的目录结构,打开其中的 Fastfile 在头部加入并保存:

import_from_git(url: 'https://github.com/icyleaf/fastlane-plugins.git')

接着我们就可以直接使用了!

Plugins

如下是已经从本仓库移除并重新定义的 plugins

插件 说明
ci_changelog 支持多种 CI 系统自动生成变更历史
update_jenkins_build 自动更新 Jenkins Build 描述
humanable_build_number 生成开发可识别的构建版本号
app_info 解析 apk/ipa 包的 metadata 并打印
android_channels 通用性 Android 多渠道打包
ram_disk 创建内存虚拟磁盘,主要用于提升 App 构建速度
debug_file 自动化搜索 iOS/macOS dSYM 或 Android Proguard(混淆)并打包 Zip 文件

Actions

git_last_commit

默认是对 CI 且安装了 git 客户端的机器使用,主要用于获取当前拉取的 commit 的基本信息。

git_remotes

和上面类似,只是获取当前 git 仓库的 remotes 信息

wechat_works

使用企业微信的机器人 WebHook 发消息到群

参数

名称 环境变量 说明 默认值
webhook_url WECHATWORK_WEBHOOK_URL 企业微信机器人 webhook
type WECHATWORK_TYPE 消息类型,可选值::text:markdown
message WECHATWORK_MESSAGEE 消息内容
to WECHATWORK_TO @ 某人的 id 或手机号、不支持昵称
fail_on_error WECHATWORK_FAIL_ON_ERROR 运行遇到错误是否抱错退出

使用方法

lane :notice do
  # 发送纯文本消息
  wechat_work(
    webhook_url: '...',
    type: :text,
    message: "hello\nworld"
  )

  # 发送 markdown 消息
  wechat_work(
    webhook_url: '...',
    type: :markdown,
    message: "# Head 1\n- List 1\n- List 2"
  )
end

xcode_bootstrap

每当新启动一个项目,在支持 fastlane 都需要花费时间和规范来配置参数,有了它可以轻松帮你一键配置如下的设置:

  • 支持 Cocoapods
  • 添加 AdHoc Build Confiuration 用于 fastlane 打包(自动处理 Podfile 文件)
  • 根据 Build Confiuration 区别安装应用的名称
    • Debug: {应用名}开发版(默认配置,可自定义)
    • AdHoc: {应用名}内测版(默认配置,可自定义)
    • Release: {应用名}
  • 根据 Build Confiuration 区别安装应用的 identifier
    • Debug: {应用identifier}.debug (默认配置,可自定义)
    • AdHoc: {应用identifier}
    • Release: {应用identifier}

参数

名称 环境变量 说明 默认值
project_path XCODE_PROJECT_PATH 项目路径 默认根目录
cocoapods XCODE_COCOAPODS_SUPPORT 是否处理 Podfile 默认 true
build_configuration_name XCODE_BUILD_CONFIGURATION_NAME 新加编译配置名 默认 AdHoc
build_configuration_base XCODE_BUILD_CONFIGURATION_BASE 新加编译配置的继承 默认 :release
app_suffix XCODE_APP_SUFFIX 自定义应用名和唯一标识 默认参考上面说明

使用方法

Fastfile 添加你定义好的 lane:

# 默认配置(参考上面说明配置)
lane :bootstrap do
  xcode_bootstrap
end

# 自定义 Build Confiugration
lane :bootstrap do
  xcode_bootstrap({
    build_configuration_name: 'Beta',
    build_configuration_base: :release,
    app_suffix: {
      'Debug': {
        name: '开发版',
        identifier: '.debug'
      },
      'Beta': {
        name: '测试版',
        identifier: '.beta'
      },
      'Release': {
        name: '',
        identifier: ''
      },
    }
  })
end

打开你的终端执行:

$ fastlane ios bootstrap

发布协议

MIT License.

About

自创造超实用性 Fastlane 插件和自定义 actions 的聚合仓库

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages