Comments (16)
@nandodelauni thanks for implementing Crashlytics Beta
.
You haven't posted your Deliverfile
. I assume you're using shenzhen
for building? If so, the ipa
block in your Deliverfile
should look like this:
ipa do
system("cd ..; ipa build")
"../file_name.ipa"
end
from fastlane.
Oh, why are you running deliver
anyway? You can disable deliver
in your Fastfile
.
To create a new action, check out this part of the README.
from fastlane.
Thanks! I was using deliver
in order to generate the ipa. I know that deliver is intented to stuff related with metadata in iTunes connect, there is another way to generate the ipa file? This is my lane:
lane :beta do
sigh
deliver :skip_deploy, :beta
crashlytics(api_token:"...", build_secret:"...", groups:"...")
end
In my crashlytics.rb
implementation (yep I am using shenzhen
, same approach as hockey.rb
) I am using the ENV variables for the ipa path but I am not sure if this approach is good :S
from fastlane.
Can you share your Deliverfile
as well please?
from fastlane.
Sorry. I was using the template and only modified the beta_ipa
:
beta_ipa do
system("cd ..; ipa build -s Heisy --verbose") # customize this to build beta version
"./ad_hoc_build.ipa" # upload ipa file using `deliver --beta`
end
You can find the implementation for crashlytics.rb
here:
https://github.com/chicisimo/fastlane/blob/crashlytics/lib/fastlane/actions/crashlytics.rb
from fastlane.
Replace
"./ad_hoc_build.ipa"
with
"../ad_hoc_build.ipa"
from fastlane.
I have been trying out and that's not what I want, I just want deliver
to generate the ipa
file in order to populate ENV["DELIVER_IPA_PATH"]
(for crashlytics.rb
) but I don't see any option for that
from fastlane.
Could not find project folder i replaced :
system("ipa build --verbose") # build your project using Shenzhen
with
system("cd ..; ipa build --verbose") # build your project using Shenzhen
PS : tnx for great project 👍
from fastlane.
@nandodelauni sorry for the late reply.
deliver
's job is not to build your ipa file. Take a look at the Hockey Implementation: hockey.rb:25
The user of the hockey action needs to pass the path to the ipa file to use. I recommend using shenzhen to build your app. (ipa build
)
I took a look at your good, it's a great start, but I'd recommend changing the following:
def self.assert_valid_ipa_path!(ipa_path)
return if File.exists?(ipa_path)
raise "IPA file on path '#{File.expand_path(ipa_path)}' not found".red
end
to
raise "IPA file on path '#{File.expand_path(ipa_path)}' not found".red unless File.exists?(ipa_path)
without having a method for each assert.
To come back to the original question: Remove deliver
from your Fastfile
, since it's only used to upload builds and metadata to iTunes Connect, which you don't want to do.
Does that make sense?
from fastlane.
Totally. Closing this. I hope to make a PR with crashlytics soon :)
from fastlane.
@nandodelauni So, you're still working on this? If not, I'd add the Crashlytics action
from fastlane.
yep, let me come back to you late on the day
from fastlane.
Thanks, looking forward to it 👍
from fastlane.
Hey!
I've just read your comment, I prefer to have one level of abstraction per method and I think that the guard clause makes the code more idiomatic:
def self.assert_valid_ipa_path!(ipa_path)
return if File.exists?(ipa_path)
raise "IPA file on path '#{File.expand_path(ipa_path)}' not found".red
end
Also, I don't like statement modifiers at the end of long lines.
without having a method for each assert.
As it is the methods have only one reason to change, If I put all the asserts in the same method there will be multiple reasons for the method to change.
from fastlane.
@KrauseFx my colleague @pedrogimenez is opening a PR with Crashlytics support :)
from fastlane.
Great! 👍
from fastlane.
Related Issues (20)
- Match development with Appstore Connect API KEY fails due unexpected token error if there are more 18 bundle ids in matchfile
- number_of_commits run on GitHub action always returns 1 HOT 2
- Failing run via Bundler: `ensure in take_off': uninitialized constant FastlaneCore::UpdateChecker (NameError) HOT 5
- [Regression] uninitialized constant Fastlane::OpenStruct (NameError) with release 2.220.0 HOT 9
- [match] undefined local variable or method `profile` when running match with `output_path` HOT 5
- Fastlane is not reading macros from Package.Swift (SPM)
- fastlane sigh download_all and "Error parsing provisioning profile at path..."
- fastlane match HOT 4
- bundler: command not found: fastlane
- Individual API Key not supported HOT 3
- fastlane deliver init is not working in CLI
- JEG2/highline should be updated to avoid warning of abbrev missing in standard lib for ruby 3.3.0
- How to get raw exit code from Fastlane HOT 1
- Match import to s3 Crash on encrypting. HOT 2
- Provisioning profile expiration comparison compares Time and DateTime
- AvailableTerritories is deprecated and fastlane is not upgraded to new api endpoints HOT 4
- Match managing provisioning profiles for DriverKit
- curb-1.0.0/lib/curl/easy.rb - Failed to read/open file
- `match` behaves differently in v2.220.0: `wrong final block length` HOT 12
- Can't upload build to Test Flight; [!] undefined method `refresh!' HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fastlane.