pgyer / fir-cli Goto Github PK
View Code? Open in Web Editor NEWfir.im(betaqr.com) command-line interface
License: MIT License
fir.im(betaqr.com) command-line interface
License: MIT License
fir b ${xcworkspace_path} -w -S ${scheme} -p -T ${token}
I, [2015-07-08T16:21:58.637603 #62469] INFO -- : Building......
I, [2015-07-08T16:21:58.637639 #62469] INFO -- : ✈ -------------------------------------------- ✈
在工程目录下 执行 fir build_ipa path/to/workspace -w -S
错误提示: parse error near `\n'
没有用CocoaPods管理的工程 工程目录下 fir build_ipa path/to/project -o path/to/output 是可以的。
执行:
fir login -T <MY-TOKEN>
提示:
E, [2015-07-01T15:36:46.039770 #11095] ERROR -- : RestClient::Unauthorized
401 Unauthorized
我用命令直接打包并上传
fir b project_path -o export_path ONLY_ACTIVE_ARCH=NO -w -C Debug -S schemeName -p -c "fix bugs"
这样每次在这个export_path会生成一个ipa,但它每次上传的都是最早的那个,而不会上传我刚build出来的这个
谢谢你们的产品
如题
使用
fir p xxx.ipa -T mytoken
上传InHouse打包的ipa,会自动变成内测版本。
在网页上点击『上传新版本』就能自动识别为企业版本。
看了fir help,没找到什么信息。
我哪里做的不对吗?
The following build commands failed:
CompileC DerivedData/Jack/Build/Intermediates/Jack.build/Debug-iphoneos/Jack.build/Objects-normal/armv7/AppDelegate.o Jack/AppDelegate.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
File /var/folders/mf/89ngbb7x20q7m7ytdq8mp5080000gn/T/ipa_files-1447914541/Payload/jack.app/Info.plist not readable!
/Library/Ruby/Gems/2.0.0/gems/CFPropertyList-2.3.1/lib/cfpropertylist/rbCFPropertyList.rb:347:in `load'
/Library/Ruby/Gems/2.0.0/gems/CFPropertyList-2.3.1/lib/cfpropertylist/rbCFPropertyList.rb:252:in `initialize'
安装成功后,找不到fir命令 请问fir被安装在哪里了?
报错内容:
No such file or directory @ rb_sysopen - /var/folders/dt/vq7qw3917cq7vz7sj0l45n3w0000gn/T/temp20151008-17894-xcb5py.ipa
编译命令: fir build_ipa -o xxxx -w -S xxx
我是在win7下,使用 ruby版本: 2.1.5p273,fir-cli 上传之后,应用的图标变成了默认的。
但是使用网站上传,应用的图标就是app 自己的图标。
ios9.1无法下载应用 此时无法安装。这是什么原因呢
ERROR -- : Builded has no output app, Can not be packaged
undefined method
generate_tmp_icon' for #FIR::Parser::Ipa::App:0x007ff68926b308`
似乎需要 安装 HomeBrew,还没搞定
请完善 ReadMe 的安装步骤,以方便后来人。
In case of problems: http://rvm.io/help and https://twitter.com/rvm_io
Upgrade Notes:
rvm 1.26.11 (latest) by Wayne E. Seguin [email protected], Michal Papis [email protected] [https://rvm.io/]
Searching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/osx/10.11/x86_64/ruby-2.2.1.tar.bz2
Checking requirements for osx.
About to install Homebrew, press Enter
for default installation in /usr/local
,
type new path if you wish custom Homebrew installation (the path needs to be writable for user)
: Requirements installation failed with status: 1.
E, [2015-11-17T16:16:01.554504 #84714] ERROR -- : 403 Forbidden - {"errors":{"mapping":["You are not allowed to upload \"zip-fircli\" files, allowed types: txt, dSYM, zip","unzip fail"]}}
I, [2015-09-17T00:41:30.250316 #22022] INFO -- : Publishing app.......
I, [2015-09-17T00:41:30.250415 #22022] INFO -- : ✈ -------------------------------------------- ✈
I, [2015-09-17T00:41:31.958848 #22022] INFO -- : Fetching [email protected] uploading info......
I, [2015-09-17T00:41:32.159018 #22022] INFO -- : Uploading app's icon......
I, [2015-09-17T00:41:32.751708 #22022] INFO -- : Uploading app......
undefined method response' for #<Errno::EPIPE: Broken pipe> /Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/util/http.rb:35:in
rescue in block (2 levels) in module:Http'
/Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/util/http.rb:26:in block (2 levels) in <module:Http>' /Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/util/publish.rb:86:in
upload_app_binary'
/Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/util/publish.rb:45:in upload_app' /Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/util/publish.rb:23:in
publish'
/Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/cli.rb:91:in publish' /Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor/command.rb:27:in
run'
/Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor/invocation.rb:126:in invoke_command' /Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/lib/fir/cli.rb:156:in
invoke_command'
/Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor.rb:359:in dispatch' /Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor/base.rb:440:in
start'
/Users/tassar/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.2/bin/fir:8:in <top (required)>' /Users/tassar/.rbenv/versions/2.2.2/bin/fir:23:in
load'
/Users/tassar/.rbenv/versions/2.2.2/bin/fir:23:in `
fir build是否支持编译git仓库中用gradle构建的android工程?能否指定分支和版本
我使用jenkins在构建后执行fir build_ipa ${WORKSPACE}/workspace -w -S name -p -T xxxxxx
打包上传成功了,但是我在iOS8上下载APP来直接闪退,iOS9上目前没事,但是我手动打包上传的包就没有这个问题,这是什么原因呢?
用 --output 参数时导出时,ipa文件会加版本号:
app-0.0.2-Build-4.ipa
dsym文件就不会:
xxx.app.dSYM
很不好管理,一不小心,就把以前的覆盖了,郁闷的很。
希望能统一命名。
现在使用 Jenkins 来打包时可以拿到和上一版提交之间的 changelog,但是好像没有参数可以把这个和 app 一起提交上来,如果要写的话还得去网页上写一遍,有没有在发布时提交注释的功能呢?
The requested URL '/ef7aa6829bae3027a49cc1e084e3bfa4a7701f2f' was not found on this server.
环境:
windows 7中使用jenkins,调用cygwin中的sh执行shell脚本(脚本内容是调用fir.bat发布应用:/cygdrive/d/Ruby22-x64/bin/fir.bat p "$UPLOAD_FILE" -T $USER_TOKEN)
执行出错:
...D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rbreadline.rb:1097:in <module:RbReadline>': HOME environment variable (or HOMEDRIVE and HOMEPATH) must be set and point to a directory (RuntimeError) from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rbreadline.rb:17:in
<top (required)>'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/readline.rb:10:in <module:Readline>' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/readline.rb:8:in
<top (required)>'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor/line_editor/readline.rb:2:in <top (required)>' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor/line_editor.rb:2:in
<top (required)>'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor/base.rb:8:in <top (required)>' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/thor-0.19.1/lib/thor.rb:2:in
<top (required)>'
from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in require' from D:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in
require'
from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.1/lib/fir.rb:3:in <top (required)>' from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.1/bin/fir:4:in
require_relative'
from D:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/fir-cli-1.2.1/bin/fir:4:in <top (required)>' from D:/Ruby22-x64/bin/fir:23:in
load'
from D:/Ruby22-x64/bin/fir:23:in `
在Xcode可以正常打包,但在终端用命令行打包失败。
我在终端中执行以下命令:
编译到最后报错如下:
** BUILD FAILED **
The following build commands failed:
Ld build/MyProject.build/Release-iphoneos/ZCDHPlatform.build/Objects-normal/armv7/MyProject normal armv7
(1 failure)
E, [2015-11-12T10:03:17.543515 #5998] ERROR -- : Build failed
请问为了能用命令行打包,需要在工程中作其他配置吗?
使用 fir build_ipa ./ -o ./ 编译成功,当前目录下生成了build目录和dSYM文件,但没有ipa文件,请教下是怎样回事,谢谢?
fir build_ipa ~/
xx/xx/xx -w -S xx
为什么呢?
/var/lib/gems/2.1.0/gems/fir-cli-1.1.0/lib/fir/patches/bin/pngcrush: 1: /var/lib/gems/2.1.0/gems/fir-cli-1.1.0/lib/fir/patches/bin/pngcrush: Syntax error: ")" unexpected
截图直接拖进来啊
bogon:build app$ fir build_apk /Users/Shared/Jenkins/Home/jobs/AndroidTest/workspace -o /Users/Shared/Jenkins/Home/jobs/AndroidTest/workspace/apks -p -T 145805490a48a0507112943e282XXXX
I, [2015-09-15T19:15:41.891443 #3842] INFO -- : Building......
I, [2015-09-15T19:15:41.891516 #3842] INFO -- : ✈ -------------------------------------------- ✈
I, [2015-09-15T19:16:32.208868 #3842] INFO -- : :app:clean
BUILD SUCCESSFUL
Total time: 6.168 secs
This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.7/userguide/gradle_daemon.html
:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:app:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72300Library
:app:prepareComAndroidSupportSupportV42300Library
:app:prepareDebugDependencies
:app:compileDebugAidl
:app:compileDebugRenderscript
:app:generateDebugBuildConfig
:app:generateDebugAssets UP-TO-DATE
:app:mergeDebugAssets
:app:generateDebugResValues UP-TO-DATE
:app:generateDebugResources
:app:mergeDebugResources
:app:processDebugManifest
:app:processDebugResources
:app:generateDebugSources
:app:processDebugJavaRes UP-TO-DATE
:app:compileDebugJavaWithJavac
:app:compileDebugNdk UP-TO-DATE
:app:compileDebugSources
:app:preDexDebug
:app:dexDebug
:app:validateDebugSigning
:app:packageDebug
:app:zipalignDebug
:app:assembleDebug
:app:checkReleaseManifest
:app:prepareReleaseDependencies
:app:compileReleaseAidl
:app:compileReleaseRenderscript
:app:generateReleaseBuildConfig
:app:generateReleaseAssets UP-TO-DATE
:app:mergeReleaseAssets
:app:generateReleaseResValues UP-TO-DATE
:app:generateReleaseResources
:app:mergeReleaseResources
:app:processReleaseManifest
:app:processReleaseResources
:app:generateReleaseSources
:app:processReleaseJavaRes UP-TO-DATE
:app:compileReleaseJavaWithJavac
:app:compileReleaseNdk UP-TO-DATE
:app:compileReleaseSources
:app:preDexRelease
:app:dexRelease
:app:packageRelease
:app:assembleRelease
:app:assemble
:app:compileLint
:app:lint
Ran lint on variant release: 1 issues found
Ran lint on variant debug: 1 issues found
Wrote HTML report to file:/Users/Shared/Jenkins/Home/jobs/AndroidTest/workspace/app/build/outputs/lint-results.html
Wrote XML report to /Users/Shared/Jenkins/Home/jobs/AndroidTest/workspace/app/build/outputs/lint-results.xml
:app:preDebugUnitTestBuild UP-TO-DATE
:app:prepareDebugUnitTestDependencies
:app:processDebugUnitTestJavaRes UP-TO-DATE
:app:compileDebugUnitTestJavaWithJavac UP-TO-DATE
:app:compileDebugUnitTestSources UP-TO-DATE
:app:mockableAndroidJar
:app:assembleDebugUnitTest
:app:testDebugUnitTest
:app:preReleaseUnitTestBuild UP-TO-DATE
:app:prepareReleaseUnitTestDependencies
:app:processReleaseUnitTestJavaRes UP-TO-DATE
:app:compileReleaseUnitTestJavaWithJavac UP-TO-DATE
:app:compileReleaseUnitTestSources UP-TO-DATE
:app:assembleReleaseUnitTest
:app:testReleaseUnitTest
:app:test
:app:check
:app:build
BUILD SUCCESSFUL
Total time: 43.066 secs
This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.7/userguide/gradle_daemon.html
I, [2015-09-15T19:16:32.209228 #3842] INFO -- :
E, [2015-09-15T19:16:32.209394 #3842] ERROR -- : File does not exist
能否支持只打包上传指定的flavor的release版本?
目前看来,它只是执行了gradle build之后上传最后一个构建的apk
环境:
windows 7
cygwin
comment="test1
test2
test3"
fir.bat p application_path -T user_token -c "$comment"
只有第一行注释:test1会被提交
我们的 changelog 维护在一个独立文件里,在持续集成时会用如下方式调用 fir 来传入 changelog
#!/bin/bash
CHANGELOG=`cat $CHANGELOG_PATH` # changelog 包含多行文本
echo "Uploading to Fir"
fir p $IPA_PATH \
-T $FIR_API_TOKEN \
--changelog="$CHANGELOG" \
--verbose
上传上去后发现只有 changelog 的第一行,其它行都没了
因为我们项目的每一次build都会让buildversion自增一。这样每一次生成的ipa文件名都不一定,上传的时候就比较麻烦。最好能够自己指定ipa文件名
谢谢
我在使用 mac 上传ipa包,申明的 -c 参数中带有 \n 换行符,但是上传之后,都被原样显示了
fir p $WORKSPACE/build/${BUILD_NUMBER}/${YT_PROJECT_FINAL_NAME}.ipa -T ${YT_FIR_TOKEN} -c "持续化集成 ${JOB_NAME}:${BUILD_DISPLAY_NAME}(${YT_PROJECT_FINAL_NAME})\n${YT_CHANGE_LOG}"
持续化集成 Carmaster-iOS-Release:#15(carmaster-origin_release_v1.1.0-cf0bde93c03b0e0ede78c760588ebc01263ae497-car_master_for_test_ad_hoc)\ncf0bde9 隐藏调试使用的状态栏
fir build_ipa . -q -w -C Release -S licaishi CODE_SIGN_IDENTITY="....." -p
命令如上, . 表当前目录, -q 表示不输出, -w 表示 workspace -C 表示configuration -S 表示 scheme
-p 表示 publish
但是 -q 没有起作用? 这条命令封装的有点儿问题?
RT,fir build_ipa 所打包为:38.42M 手动打包为:36.41M,不知是为何?
安装和更新时增加对 10.11 新增 rootless 的支持
请问 fir 什么时候能支持 Save for Enterprise Deployment这种方式。
sudo gem install fir-cli
Building native extensions. This could take a while...
ERROR: Error installing fir-cli:
ERROR: Failed to build gem native extension.
current directory: /var/lib/gems/2.1.0/gems/unf_ext-0.0.7.1/ext/unf_ext
/usr/bin/ruby2.1 -r ./siteconf20151218-2595-tn0y84.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h
extconf failed, exit code 1
Gem files will remain installed in /var/lib/gems/2.1.0/gems/unf_ext-0.0.7.1 for inspection.
Results logged to /var/lib/gems/2.1.0/extensions/x86_64-linux/2.1.0/unf_ext-0.0.7.1/gem_make.out
本人在mac环境下。百度之后参考
http://my.oschina.net/shede333/blog/470377
写下了一个
LANG=en_US.UTF-8
export LANG
svn status | xargs echo
echo "out: 输出正确的中文"
fir login mytoken
fir build_ipa /Users/cc/Desktop/xcode/StartsMove -o /Users/cc/Desktop/xcode/inline
say hello world
echo "out: end"
这样的定时器,但是只打印了out: 输出正确的中文 和 end say hello 也执行了,就是没执行fir的命令行。
有同样需求的吗?大家来研究一下。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.