fastlane-old / gym Goto Github PK
View Code? Open in Web Editor NEWBuilding your iOS apps has never been easier
Home Page: https://fastlane.tools
Building your iOS apps has never been easier
Home Page: https://fastlane.tools
I upgraded to the latest gym today (I was still on 0.1.0) and my build crashes on the Swift library:
INFO [2015-08-20 22:34:23.13]: Checking for Swift framework
INFO [2015-08-20 22:34:23.13]: Packaging up the Swift Framework as the current app is a Swift app
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/xcodebuild_fixes/swift_fix.rb:32:in `block (2 levels) in swift_library_fix': undefined method `print_command' for Gym::XcodebuildFixes:Class (NoMethodError)
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/xcodebuild_fixes/swift_fix.rb:29:in `chdir'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/xcodebuild_fixes/swift_fix.rb:29:in `block in swift_library_fix'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tmpdir.rb:88:in `mktmpdir'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/xcodebuild_fixes/swift_fix.rb:15:in `swift_library_fix'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/runner.rb:17:in `run'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/manager.rb:8:in `work'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/commands_generator.rb:43:in `block (2 levels) in run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/commands_generator.rb:60:in `run'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/lib/gym/commands_generator.rb:14:in `start'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.3/bin/gym:6:in `<top (required)>'
from /usr/bin/gym:23:in `load'
from /usr/bin/gym:23:in `<main>'
Just a small one that stumped us a for a while - if you've got a scheme or product name with a space in the swift_library_fix patch doesn't get applied - presume the detection fails.
Removing the spaces fixed it.
At the moment, i want to have multiple gym files so that i have a different configuration for dev, ad-hoc and release.
Could you make it so that when i do gym i can specify a gymfile name e.g.
"gym devGymFile"
"gym adHocGymFile"
Thanks
This might be an error on my part, I'm not sure if this should work with gym
alone, or if some other fastlane tool is required for this step... I'm just getting started using fastlane tools 😄
When building my project with gym
and then trying it to iTunes (with both, pilot or the Application Loader), i get this error:
ERROR ITMS-90161: "Invalid Provisioning Profile. The provisioning profile included in the bundle com.ikangai.qlauncher [Payload/qonnect scan.app] is invalid. [Missing code-signing certificate]. A Distribution Provisioning profile should be used when submitting apps to the App Store. For more information, visit the iOS Developer Portal."
I have already tried the --provisioning_profile_name
option, but it still did not work. This is the (i think) relevant output from gym
when exporting the .ipa:
[12:03:23]: /usr/bin/xcrun -sdk iphoneos PackageApplication -v '/Users/mexx/Library/Developer/Xcode/Archives/2015-08-13/qonnect scan 2015-08-13 12.01.54.xcarchive/Products/Applications/qonnect scan.app' -o '/Users/mexx/Library/Developer/Xcode/Archives/2015-08-13/qonnect scan.ipa' exportFormat ipa --embed 'iOSTeam Provisioning Profile: com.ikangai.qlauncher'
When exporting the archive from the Xcode Organizer with "Save for iOS App Store Deployment", everything works though.
xcodebuild fails without explanation
I am running into errorcode 65 while packaging. See http://michael.lavaveshkul.com/blog/2011/12/xcodebuild-exit-code-65/
it would be good to display at least the error code.
I'm getting the following error when running gym:
xcodebuild: error: missing value for key 'platform' of option 'Destination'
I see the build command used is missing the parameter.
set -o pipefail && xcodebuild -workspace './MyApp.xcworkspace' -scheme 'MyApp-Release' -destination 'generic/platform=' -archivePath '/path/to/MyApp.xcarchive' archive | xcpretty
The issue is because there is nothing after the =
in the -destination
argument. Adding 'ios' in there manually fixes the issue and starts the compilation.
I invoke gym in my Fastfile:
lane :testflight do |options|
if ENV["PROFILE_UDID"].nil? || ENV["PROFILE_UDID"].empty?
# perform sigh if the provisioning profile UDID has not been specified.
sigh
ENV["PROFILE_UDID"] = Actions.lane_context[Actions::SharedValues::SIGH_UDID] # use the UDID of the newly created provisioning profile
end
raise "No scheme provided. Use IOS_SCHEME environment variable" unless ENV["IOS_SCHEME"]
gym(scheme: ENV["IOS_SCHEME"] ) # Build your app - more options available
testflight
end
fastlane 1.18.0
gym 0.4.0
Hi @KrauseFx, thanks for moving forward with the shenzhen replacement! I gave it a go and it almost works already. Only problem so far is I had to specify output_directory
and pass that along to hockey
so it could find the ipa file.
This works fine except there's a: Symbols not found on path
_ output_directory_ Crashes won't be symbolicated properly
warning because gym doesn't put a dsym file in output_directory
.
Previously, I used shenzhen ipa
and deliver
, and I successfully uploaded the ipa to iTunesConnect.
But, after I change to gym
from ipa
, I got this message from Apple.
Dear developer,
We have discovered one or more issues with your recent delivery for "Player! - Your Best Sport Feed, Your New Sport Life". To process your delivery, the following issues must be corrected:
Invalid Swift Support - The bundle contains an invalid implementation of Swift. The app may have been built or signed with non-compliant or pre-release tools. Visit developer.apple.com for more information.
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,
The App Store team
I've always had great success building with shenzhen command, but gym hasn't been working for me at all (in versions 0.10 through 0.3.1). Running this command:
gym -w "My App.xcworkspace" -s "My App"
Results in this error:
error: An application was not specified.
For a little more background, here's the xcrun command it tries to run:
/usr/bin/xcrun /tmp/PackageApplication4Gym -v '' -o '/Users/erickuck/Library/Developer/Xcode/Archives/2015-08-14/My App.ipa' exportFormat ipa --embed '/Users/erickuck/Code/iOS/My App/AppStore_com.myapp.mobileprovision' && rm '/tmp/PackageApplication4Gym'
And here's the stacktrace of the full error:
/Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/error_handler.rb:77:in `handle_package_error': Error packaging up the application (RuntimeError)
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/runner.rb:85:in `block in package_app'
from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.14.0/lib/fastlane_core/command_executor.rb:52:in `call'
from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.14.0/lib/fastlane_core/command_executor.rb:52:in `execute'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/runner.rb:81:in `package_app'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/runner.rb:11:in `run'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/manager.rb:8:in `work'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/commands_generator.rb:43:in `block (2 levels) in run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/commands_generator.rb:60:in `run'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/lib/gym/commands_generator.rb:14:in `start'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.3.1/bin/gym:6:in `<top (required)>'
from /usr/bin/gym:23:in `load'
from /usr/bin/gym:23:in `<main>'
I'd be happy to help out with whatever debugging and testing needs to be done to get to the bottom of this.
I'm trying to build project using jenkins and gym 0.2.0, it almost succeeds, but finally throws following error:
00:07:20.972 �[37mINFO [2015-08-13 20:12:25.04]: �[0mApplying Package Application patch: codesign_args_patch.diff
00:07:20.974 /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/xcode_fix.rb:30:in `block (2 levels) in patch_package_application': undefined method `print_command' for Gym::XcodeFix:Class (NoMethodError)
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/xcode_fix.rb:27:in `each'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/xcode_fix.rb:27:in `block in patch_package_application'
00:07:20.974 from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tmpdir.rb:88:in `mktmpdir'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/xcode_fix.rb:14:in `patch_package_application'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/package_command_generator.rb:9:in `generate'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/runner.rb:75:in `package_app'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/runner.rb:11:in `run'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/manager.rb:8:in `work'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/commands_generator.rb:43:in `block (2 levels) in run'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/commands_generator.rb:60:in `run'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/lib/gym/commands_generator.rb:14:in `start'
00:07:20.974 from /Library/Ruby/Gems/2.0.0/gems/gym-0.2.0/bin/gym:6:in `<top (required)>'
00:07:20.974 from /usr/bin/gym:23:in `load'
00:07:20.974 from /usr/bin/gym:23:in `<main>'
00:07:24.281 Build step 'Execute shell' marked build as failure
I'm running gym with following options:
gym build --verbose --configuration ${CONFIGURATION} --scheme MyApp \
--output_name myapp-${CONFIGURATION}-2.0.${BUILD_NUMBER}.ipa \
--output_directory ${WORKSPACE}/build/${CONFIGURATION} \
-i "${CODE_SIGNING_IDENTITY}" \
-x "PROVISIONING_PROFILE=${PROVISIONING_PROFILE}" \
CODE_SIGNING_IDENTITY
and PROVISIONING_PROFILE
are supplied by jenkins' plugins and are valid.
used like
export PP="${HOME}/Library/MobileDevice/Provisioning Profiles/${PROVISIONING_PROFILE}.mobileprovision"
rvm-exec ruby-2.2.2 \
gym build -p "${xcodeproj}" -s "${scheme}" \
-o "target/" \
-n "${ipa}" \
--provisioning_profile_path "${PP}"
[...]
[19:48:50]: Installing provisioning profile...
[19:48:50]: Provisioning profile of app 'xxxxxx' with the name 'xxxxxxxxx' successfully analysed.
/Users/lacostej/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/fileutils.rb:1569:in `block in fu_each_src_dest': same file: /Users/lacostej/Library/MobileDevice/Provisioning Profiles/47ff014a-3ca5-416c-9787-aa66169xxxxx.mobileprovision and /Users/lacostej/Library/MobileDevice/Provisioning Profiles/47ff014a-3ca5-416c-9787-aa66169xxxxx.mobileprovision (ArgumentError)
from /Users/lacostej/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/fileutils.rb:1586:in `fu_each_src_dest0'
from /Users/lacostej/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/fileutils.rb:1568:in `fu_each_src_dest'
from /Users/lacostej/.rvm/rubies/ruby-2.2.2/lib/ruby/2.2.0/fileutils.rb:401:in `cp'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/fastlane_core-0.13.0/lib/fastlane_core/provisioning_profile.rb:55:in `install'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym/detect_values.rb:65:in `detect_provisioning_profile'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym/detect_values.rb:20:in `set_additional_default_values'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym.rb:23:in `config='
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym/manager.rb:4:in `work'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym/commands_generator.rb:43:in `block (2 levels) in run'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym/commands_generator.rb:60:in `run'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/lib/gym/commands_generator.rb:14:in `start'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/gems/gym-0.1.0/bin/gym:6:in `<top (required)>'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/bin/gym:23:in `load'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/bin/gym:23:in `<main>'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/bin/ruby_executable_hooks:15:in `eval'
from /Users/lacostej/.rvm/gems/ruby-2.2.2/bin/ruby_executable_hooks:15:in `<main>'
It would be nice if I could add to output_name number of build. In my script from build phases it was getting by line buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$INFOPLIST_FILE")
Then, in gymfile:
output_name "MyApp_v{build}"
or something like that.
What do yout think about this?
gym is failing to complete the package_app step. The .ipa is created and copied to the Archives subfolder. But gym seems to see an error and logs a failure.
Output:
Results at '/var/folders/r_/l_xg7zj579l55_kbh92_2_sh0000gp/T/51693FD7-2764-430A-B41A-BF608FFCE33B-28226-000042AA09D08668/Ellucian GO.ipa'
Moving exported product to '/Users/bhansen/Library/Developer/Xcode/Archives/2015-08-10/Ellucian GO.ipa'
** EXPORT SUCCEEDED **
/Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/error_handler.rb:74:in `handle_package_error': Error packaging up the application (RuntimeError)
from /Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/runner.rb:78:in `block in package_app'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/runner.rb:162:in `call'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/runner.rb:162:in `execute_command'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/runner.rb:77:in `package_app'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/runner.rb:11:in `run'
from /Library/Ruby/Gems/2.0.0/gems/gym-0.0.1/lib/gym/manager.rb:8:in `work'
Hi again dear Krause,
I have this code like this:
...
ENV["PROFILE_UDID"] = {Return_value_of_sigh}
...
ipa({
workspace: "NAME.xcworkspace",
configuration: "Release",
scheme: "NAME",
clean: true
})
This is the code I'd like to use:
gym(
workspace: "NAME.xcworkspace",
scheme: "NAME",
configuration: "Release",
clean: true,
silent: true
)
But gym asks me to select a provisioning profile, which makes the automated process break if I don't always use "sigh" first and export that to env varaible (which I don't know if it will ever happen, but just in case).
Could this be automatically done by obtaining the bundle identifier in some way if not? This would make lanes even more independent.
Thanks again!!
On Fastfile I have this. This is a Mac app.
gym(
project: "LGTM.xcodeproj"
)
fastlane mac deploy --trace
gave me this.
[02:54:58]: fastlane finished with errors
/Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/runner.rb:158:in `verify_supported_os': Action 'gym' doesn't support required operating system 'mac'. (RuntimeError)
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/runner.rb:124:in `execute_action'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/fast_file.rb:124:in `method_missing'
from (eval):38:in `block (3 levels) in parse'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/runner.rb:48:in `call'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/runner.rb:48:in `block in execute'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/runner.rb:46:in `chdir'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/runner.rb:46:in `execute'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/lane_manager.rb:43:in `cruise_lane'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/lib/fastlane/command_line_handler.rb:31:in `handle'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/bin/fastlane:34:in `block (2 levels) in run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/bin/fastlane:123:in `run'
from /Library/Ruby/Gems/2.0.0/gems/fastlane-1.21.0/bin/fastlane:129:in `<top (required)>'
from /usr/bin/fastlane:23:in `load'
from /usr/bin/fastlane:23:in `<main>'
$ gym --version
gym 0.4.5
My GymFile
:
scheme "[REDACTED]"
configuration "Release"
clean true
silent true
output_directory "./"
and then in my FastFile
:
lane :beta do
prepare
gym(
xcconfig: "config/Debug.xcconfig", # Load extra flags from xcconfig for beta builds
output_name: "[REDACTED].ipa",
)
finalize
end
finalize
is a private_lane
I created, so is prepare
The point is, that gym
gives me this output:
[15:05:55]: -----------------
[15:05:55]: --- Step: gym ---
[15:05:55]: -----------------
+---------------+-------------------------+
| Building Application 🚀 |
+---------------+-------------------------+
| Project | ./[REDACTED].xcodeproj |
| Scheme | [REDACTED] |
| Configuration | Release |
| Platform | iOS |
| Xcode Path | /Applications/Xcode.app |
+---------------+-------------------------+
-----
And I can't see any xcconfig
specified here. Am I missing something?
In Fastfile we used so far:
embed: "./example.mobileprovision", # Sign .ipa file with .mobileprovision
Is there a way to tell gym to do the same?
I can see the -i or --codesigning_identity parameter but not quite sure how to say this in Fastfile
My mistake, just ignore it.
Now that I got to see what a clean output is, I want more!
I have a project containing lots of generated code which unfortunately produces a lot of warnings.
⚠️ /Users/lacostej/Code/............./Classes/Native/Bulk_mscorlib_4.cpp:39724:416: implicit conversion loses integer precision: 'uintptr_t' (aka 'unsigned long') to 'uint32_t' (aka 'unsigned int') [-Wshorten-64-to-3
*((uint32_t*)(uint32_t*)SZArrayLdElema(L_117, ((int32_t)9))) = (uint32_t)((int32_t)((int32_t)((int32_t)((int32_t)((int32_t)((int32_t)((int32_t)((int32_t)(*(uint8_t*)(uint8_t*)SZArrayLdElema(L_118, L_120))<<(int32_t)((int32_t)24)))|(int32_t)((int32_t)((int32_t)(*(uint8_t*)(uint8_t*)SZArrayLdElema(L_121, L_123))<<(int32_t)((int32_t)16)))))|(int32_t)((int32_t)((int32_t)(*(uint8_t*)(uint8_t*)SZArrayLdElema(L_124, L_126))<<(int32_t)8))))|(int32_t)(*(uint8_t*)(uint8_t*)SZArrayL~
I wonder if there's a simple way to hide those.
A nice to have, when you use the Xcode build command then it outputs the cert and provisioning profile.
Could you make it so that gym does this, as when I view the build logs, I can see historically what was used.
It looks like xcodebuild doesn't take an xcargs
option but instead just takes <buildsetting>=<value>
pairs directly.
Gym(0.1.0) works correctly, but I want "Building Application" information: "Configuration".
+-----------+--------------------+
| Building Application |
+-----------+--------------------+
| Workspace | Player.xcworkspace |
| Scheme | Player |
+-----------+--------------------+
[11:14:42]: set -o pipefail && xcodebuild -workspace 'Player.xcworkspace' -scheme 'Player' -configuration 'AdHoc' -destination 'generic/platform=iOS' -archivePath '/Users/mono/Library/Developer/Xcode/Archives/2015-08-12/Player 2015-08-12 11.14.42.xcarchive' archive | xcpretty
When building something to run in the simulator, the default Gym destination
value generic/platform=iOS
is being set, which isn't valid for the iOS simulator
platform.
Usually when I use xcodebuild
to build for simulators, I do not have to specify a destination
parameter, the sdk
parameter is enough.
Would it be possible to not set the destination
default value (generic/platform=iOS
) when the sdk
parameter is passed?
It would be great if there was an option to add the Symbols
folder to the ipa
just like Xcode does so crash reports from iTunes Connect can be symbolicated.
I have been using a fastlane
action to do this but I think it would be good if it was part of gym
. I only know enough Ruby to make me dangerous, but here is the action if anyone want to add it to gym
.
ipa_path = File.expand_path(Actions.lane_context[Actions::SharedValues::IPA_OUTPUT_PATH])
app_name = File.basename(ipa_path, ".ipa")
folder_path = File.dirname(ipa_path)
Dir.mktmpdir do |dir|
app_binary = File.join(dir, "Payload", "#{app_name}.app", app_name)
symbols = File.join(dir, "Symbols")
Actions.sh "unzip \"#{ipa_path}\" -d \"#{dir}\""
Actions.sh "mkdir \"#{symbols}\""
Actions.sh "xcrun symbols -noTextInSOD -noDaemon -arch all -symbolsPackageDir \"#{symbols}\" \"#{app_binary}\""
all_folders = Dir.glob(File.join(dir, "*")).map { |f| "\"#{File.basename(f)}\"" }.join(" ")
Actions.sh "cd \"#{dir}\" && zip -r \"#{ipa_path}\" #{all_folders}"
end
After upgrading to the latest 0.4.1 version I get this error. I never saw it before and the ipa file is created.
[23:19:09]: xcrun xcodebuild -showBuildSettings -project './WeeRockets.xcodeproj'
[23:19:10]: /Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/project.rb:85:in `build_settings'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/detect_values.rb:132:in `detect_platform'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/detect_values.rb:20:in `set_additional_default_values'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym.rb:28:in `config='
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/manager.rb:4:in `work'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/commands_generator.rb:43:in `block (2 levels) in run'
/Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
/Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in `call'
/Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:153:in `run'
/Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in `run_active_command'
/Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:68:in `run!'
/Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in `run!'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/commands_generator.rb:60:in `run'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/lib/gym/commands_generator.rb:14:in `start'
/Library/Ruby/Gems/2.0.0/gems/gym-0.4.1/bin/gym:6:in `<top (required)>'
/usr/bin/gym:23:in `load'
/usr/bin/gym:23:in `<main>'
[23:19:10]: Could not fetch PLATFORM_DISPLAY_NAME from project file: undefined method `split' for nil:NilClass
I used gym to compile one of my targets and it succeeds and incorporated the WatchKit extension correctly (as of this morning update). However when submitted to ITC, it was rejected as an invalid binary with the following message:
Invalid Swift Support - The bundle contains an invalid implementation of Swift. The app may have been built or signed with non-compliant or pre-release tools. Visit developer.apple.com for more information.
This app does contain Swift, but it is still currently a small portion, with the majority being ObjC. I compared the IPA created by gym to the one created by Xcode and I found the following differences:
Built using Xcode 6.2 on OS X 10.9. No other versions of Xcode are installed.
Not sure what's going on. I'd be happy to provide other information if needed. Thanks!
So I used gym to build my app once and it worked out of the box perfectly.
Then, I added a provisioning profile to the same directory as the .xcworkspace and the command now crashes (output bellow). If I take the provisioning profile out of that directory, it works again.
My intention was to use the 'provisioning_profile_path' parameter to specify the provisioning I want to sign with.
Let me know if you need more information.
require': cannot load such file -- plist (LoadError) from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:126:in
require'parse' from /Library/Ruby/Gems/2.0.0/gems/fastlane_core-0.14.0/lib/fastlane_core/provisioning_profile.rb:38:in
uuid'install' from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.2/lib/gym/detect_values.rb:54:in
detect_provisioning_profile'set_additional_default_values' from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.2/lib/gym.rb:28:in
config='work' from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.2/lib/gym/commands_generator.rb:43:in
block (2 levels) in run'call' from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/command.rb:178:in
call'run' from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/runner.rb:428:in
run_active_command'run!' from /Library/Ruby/Gems/2.0.0/gems/commander-4.3.5/lib/commander/delegates.rb:15:in
run!'run' from /Library/Ruby/Gems/2.0.0/gems/gym-0.4.2/lib/gym/commands_generator.rb:14:in
start'<top (required)>' from /usr/bin/gym:23:in
load'I have multiple .xcodeproj file.
So I tried gym in Fastfile like this.
gym(
project: "MyApp.xcodeproj",
scheme: "MyApp",
output_name: "MyApp.ipa",
silent: true,
provisioning_profile_path: "MyApp.mobileprovision",
xcargs: "-xcconfig MyApp.xcconfig",
clean: true,
)
And it failing like this.
xcodebuild: error: The directory /Users/toshi0383/dvideo/app contains 2 projects, including multiple projects with the current extension (.xcodeproj). Specify the project to use with the -project option.
I got this error, when trying to run deliver
command after gym
command.
Could not find an ipa file for 'beta' mode. Provide one using `beta_ipa do ... end` in your Deliverfile.
The Fastfile's codes is here:
gym(
workspace: WORKSPACE,
scheme: SCHEME,
configuration: "Release",
output_directory: "./fastlane" # *1
)
deliver(
skip_deploy: true,
beta: true
)
I think that gym
's default output_directory is ~/Library/Developer/Xcode/Archives/
, so default deliver
command fails to find the ipa file.
https://github.com/KrauseFx/deliver/blob/master/lib/deliver/deliver_process.rb#L166-L189
If I specify output_directory: "./fastlane"
to gym
, deliver
command succeeded. (*1)
Before I introduced gym
, I used shenzhen ipa
command without output_directory
option.
I switched to gym
today, so what is the correct choice to run gym
and deliver
.
I get the following error.
Error setting value './build' for option 'output_directory'
You passed invalid parameters to 'gym'.
Check out the error below and available options by running `fastlane action gym`
Variable Dump:
{:DEFAULT_PLATFORM=>:ios, :ENVIRONMENT=>nil, :PLATFORM_NAME=>:ios, :LANE_NAME=>"ios beta"}
Directory not found at path '/Users/larryonoff/Developer/work/transcribeme-ios/build'
I assume that folder build should exist before gym is running. I think that it will be great if gym creates this directory by itself. Now I should create it manually.
I already wrote you on twitter but I thought I would open an issue as well so you have a better overview.
If I build an app with gym, use deliver and submit it to Testflight Beta Testing, the App cannot be installed (both internal and external testers). My App contains an Apple Watch App as well (maybe that matters?!).
Best
I'm configuring Fastlane to deploy beta builds to HockeyApp. HockeyApp optionally takes a dSym file, which I'd like to send in too.
Running dsym_zip
with no parameters leads to an error that says "no implicit conversion of nil into String". I'm guessing that is because I use gym
instead of xcodebuild
or xcarchive
.
Looks like gym
doesn't play nice with dsym_zip
. There is no documented way for getting the xcarchive file path from gym. It would be great if dsym_zip
could cooperate better with gym
or if gym
returned the path to the xcarchive as an env variable.
Hey,
First, thanks for building Fastlane ;) That's a really useful set of tools.
I'm using fastlane with travis-ci and that's working pretty great except for the duration of the entire flow. I have to install fastlane when the worker starts which takes some time. Of course you can't do anything about that, but I'm trying to improve the duration of the flow.
In the same lane I'm performing the unit tests and then, if they passed, I send an ipa to TestFlight after archiving with gym.
In this process I build 2 times the app (1 for the UT, 1 for the ipa) and I was wondering if there was a better option? Is there a way to build only once (to test and ship an ipa)?
Thanks for your help.
Cheers!
I tried to build something called Ad-hoc and got this error:
[15:32:35]: -----------------
[15:32:35]: --- Step: gym ---
[15:32:35]: -----------------
[15:32:35]: Installing provisioning profile...
[15:32:35]: xcrun xcodebuild -list -workspace 'MyProj.xcworkspace'
[15:32:38]: Couldn't find specified configuration 'Ad-hoc'.
Needless to say, Ad-hoc is a legit configuration, defined at the project level.
This seems to not working.
xcargs: "xcconfig=My.xcconfig",
Hello,
I encountered an issue after using gym. I managed to have a nice Gymfile, my project builds and everything looks good until I launch the app. Then, I get this error message in the device console :
[deny-mmap] mapped file has no team identifier and is not a platform binary: /private/var/mobile/Containers/Bundle/Application/74928EA3-1701-4C5D-89CF-8278D7AFB203/MyApp.app/Frameworks/CryptoSwift.framework/CryptoSwift
I read a lot (1, 2) that this happens sometimes when compiling projects that contains Swift.
Mine uses Swift 2 and has several pods (including CryptoSwift)
I also read that several Swift issues were fixed in 0.2.0.
So is there something I do wrong or is there really a bug with Gym ? What kind of information would you need to know wether I'm doing something wrong or if it is a bug ?
Thanks,
Paul
It would be great to allow gym
to be used for just exporting of an IPA from an existing archive. I use Xcode Server to test and archive, but would like to download that and export an IPA from it locally and use fastlane to upload to testflight etc. Right now gym
seems to be doing the building of the archive and exporting internally, so it'd be nice to be able to trigger only a subset of these actions (just exporting). Thanks! 👍
Decided to update our Fastfiles to start using Gym and had some issues with it.
I did find solution but it would be nice to have it integrated into Gym.
This problem seems to happen when the team configured in the Xcode project doesn't match with the one I'm passing to the Gym using the codesigning_identity
parameter. We identified the issue when uploading the IPA to ITC. It reported the following:
[11:45:03]: [Transporter Error Output]: ERROR ITMS-90164: "Invalid Code Signing Entitlements. The entitlements in your app bundle signature do not match the ones that are contained in the provisioning profile. According to the provisioning profile, the bundle contains a key value that is not allowed: '[ "..." ]' for the key 'keychain-access-groups' in 'Payload/...app/...'"
I might be wrong, but It seems to me that the codesigning_identity
and provisioning_profile_path
are only being used in the packaging phase, and they should also be used when building the project.
Before migrating to Gym, we were building our IPAs using xcodebuild's xcarchive
and some other custom actions and it was working fine:
xcarchive(
configuration: 'Release',
scheme: ENV['SCHEME'],
sdk: 'iphoneos',
build_settings: {
:CODE_SIGN_IDENTITY => '...',
:PROVISIONING_PROFILE => Actions.lane_context[Actions::SharedValues::SIGH_UDID]
}
)
package
dsym_zip
So I decided to use the CODE_SIGN_IDENTITY
and PROVISIONING_PROFILE
build settings in Gym and it worked fine:
profile_path = mobile_provision(:appstore, ENV['APP_IDENTIFIER_REL'])
gym(
configuration: 'Release',
scheme: ENV['SCHEME'],
sdk: 'iphoneos',
provisioning_profile_path: profile_path,
xcargs: "CODE_SIGN_IDENTITY='...' PROVISIONING_PROFILE='#{FastlaneCore::ProvisioningProfile.uuid(profile_path)}'"
)
Am I supposed to have to pass these settings? Shouldn't Gym handle this for me if I passed the codesigning_identity
and provisioning_profile_path
?
Cheers and keep up the good work.
I got that error after gym had successfully built the project. --trace
led to a command that didn't have the path wrapped in quotes (one of my directories had a space in it).
The fix:
- command = ["patch #{@patched_package_application_path} < #{patch}"]
+ command = ["patch #{@patched_package_application_path} < '#{patch}'"]
I got this email when using gym with deliver to submit an ipa to iTunesConnect:
Dear developer,
We have discovered one or more issues with your recent delivery. To process your delivery, the following issues must be corrected:
Invalid WatchKit Support - The bundle contains an invalid implementation of WatchKit. The app may have been built or signed with non-compliant or pre-release tools. Visit developer.apple.com for more information.
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,
The App Store team
gym build -w WORKSPACE -s SCHEME -o ~/Desktop
does not result in an exported IPA as the help page says it should. Only an app and associated dSYM. I had hoped to use gym
to build something then use pilot
to upload it.
With Xcode 7, the only way to correctly sign an app that includes watch kit is to include a -exportOptionsPlist exportOptions.plist to xcodebuild.
I am currently using a "sh" to archive because none of the other options provided a way to include this flag in the archive step.
Looks like with gym I can pass in an "xcargs" parameter. I haven not yet tried it to see if it works with gym to pass in the -exportOptionsPlist.
However, since this is necessary for a watch kit app, it might be good to add the option to the standard set of gym Keys.
I will give the gym xcargs a try.
I'm using gym
to build an enterprise version of our app. Just for this task it should use an explicitly provided provisioning profile and code signing identity, that override the ones defined in the project.
I'm building with the --verbose
flag since after the first try I saw that it was using the wrong (as defined in the Xcode project) provisioning profile instead, but it looks like the generated build command doesn't include any parameter for passing the specified provisioning profile.
Is there any step I'm missing?
Generated build command:
set -o pipefail && xcodebuild
-scheme '[REDACTED]'
-project './[REDACTED].xcodeproj'
-configuration 'Release'
-destination 'generic/platform=iOS'
-xcconfig 'config/Debug.xcconfig'
-archivePath '/Users/vmonaco/Library/Developer/Xcode/Archives/2015-08-27/[REDACTED] 2015-08-27 12.48.13.xcarchive'
archive | xcpretty
The command I used is:
gym
--xcconfig "config/Debug.xcconfig"
--codesigning_identity "iPhone Distribution: [REDACTED]"
--provisioning_profile_path: "../CodeSigning/Enterprise.mobileprovision"
--scheme "[REDACTED]"
--configuration "Release"
--verbose
After xcodebuild
finishes, I got the following command:
/usr/bin/xcrun
/tmp/PackageApplication4Gym
-v /Users/vmonaco/Library/Developer/Xcode/Archives/2015-08-27/[REDACTED]\ 2015-08-27\ 12.48.13.xcarchive/Products/Applications/[REDACTED].app
-o '/Users/vmonaco/Library/Developer/Xcode/Archives/2015-08-27/[REDACTED].ipa' exportFormat ipa --sign 'iPhone Distribution: [REDACTED]'
But nowhere I can see the embedded provisioning being set.
When I build with gym
it doesn't pickup the correct path to the provisioning profile, even when I call sigh
just before it.
I could be something with the two commands calculating from different path roots:
Sigh exports to this dir:
"/Users/xxx/Code/MyEvent/konnekt_ios/fastlane/.Event/Development_dk.imu.event.test.mobileprovision"
And it seems to be looking here:
"/Users/xxx/Code/MyEvent/konnekt_ios/.Event/Development_dk.imu.event.test.mobileprovision"
Without fastlane as a part of the path. Could it be a problem when output_path is set in sigh?
I have this code:
cert(development: true)
sigh(development: true, output_path: "./fastlane/.#{target}/")
say ENV["SIGH_PROFILE_PATH"] || "No SIGH_PROFILE_PATH value found!"
gym(
scheme: target,
configuration: "Debug",
silent: true,
clean: false,
xcargs: "PRELOAD=1", # working?
output_directory: "./fastlane/.#{target}/",
output_name: "preload.ipa")
With this output:
19:42:58: --- Step: cert ---
19:42:58: ------------------
19:42:58: Starting login
[19:43:00]: Successfully logged in
[19:43:04]: Found the certificate xxxx (Morten Holmgaard) which is installed on the local machine. Using this one.
[19:43:05]: Use signing certificate 'xxxx' from now on!
[19:43:05]: ------------------
[19:43:05]: --- Step: sigh ---
[19:43:05]: ------------------
[19:43:05]: Starting login
[19:43:07]: Successfully logged in
[19:43:07]: Fetching profiles...
[19:43:11]: Found 1 matching profile(s)
[19:43:11]: Downloading provisioning profile...
[19:43:12]: Successfully downloaded provisioning profile...
[19:43:12]: Installing provisioning profile...
[19:43:13]: Installing provisioning profile...
./fastlane/.Event/Development_dk.imu.event.test.mobileprovision
[19:43:13]: -----------------
[19:43:13]: --- Step: say ---
[19:43:13]: -----------------
[19:43:13]: [SHELL COMMAND]: say 'No SIGH_PROFILE_PATH value found!'
[19:43:16]: -----------------
[19:43:16]: --- Step: gym ---
[19:43:16]: -----------------
[19:43:16]: Error setting value './.Event/' for option 'provisioning_profile_path'
[19:43:16]: -----------------
[19:43:16]: --- Step: say ---
[19:43:16]: -----------------
[19:43:16]: [SHELL COMMAND]: say 'Provisioning profile not found at path '/Users/xxx/Code/MyEvent/konnekt_ios/.Event''
[19:43:23]: Variable Dump:
[19:43:23]: {:ENVIRONMENT=>nil, :PLATFORM_NAME=>nil, :LANE_NAME=>"preload", :CERT_FILE_PATH=>"./UN8A8FCJP5.cer", :CERT_CERTIFICATE_ID=>"UN8A8FCJP5", :SIGH_PROFILE_PATH=>"/Users/xxx/Code/MyEvent/konnekt_ios/fastlane/.Event/Development_dk.imu.event.test.mobileprovision", :SIGH_UDID=>"17fe01d9-934a-4746-b868-793454b641dd"}
[19:43:23]: Provisioning profile not found at path '/Users/xxx/Code/MyEvent/konnekt_ios/.Event'
At the moment we use xctool
for archiving, executing unit tests from the command line, and building simulator builds to be used with Calabash
.
As gym
looks interesting, we are evaluating it. Will gym
allow to run unit tests too like xctool
does?
i just replace ipa with gym in Fastfile
15:47:59: iTunes Transporter successfully finished its job
15:47:59: [Transporter]: DBG-X: Returning 0
15:47:59: Successfully uploaded package to iTunesConnect. It might take a few minutes until it's visible online.
15:47:59: No IPA file given. Only the metadata was uploaded. If you want to deploy a full update, provide an ipa file.
Hi, I've been looking all over for a way to specify a path to save the xcarchive - or at least get the path of it after it's built. Is there a way to do this? The reason I ask, is that I like to have Jenkins archive the artifacts and we typically archive the xcarchive so that I can re-export an IPA if the provisioning profiles expire.
Thanks!
Tiny issue, references KrauseFx instead of fastlane in the what's new URL:
#######################################################################
# gym 0.3.1 is available. You are on 0.3.0.
# It is recommended to use the latest version.
# Update using 'sudo gem update gym'.
# To see what's new, open https://github.com/KrauseFx/gym/releases.
#######################################################################
Couldn't see where this is set (presume remote server) or would have done a PR.
I've updated my Fastfile to use gym
instead of xcarchive
and xcodebuild
, but I'm seeing this error when installing:
Sep 1 17:05:10 iPhone-6-de-Marcelo installd[9354] <Error>: entitlement 'keychain-access-groups' has value not permitted by provisioning profile '[Redacted 1]'
Sep 1 17:05:10 iPhone-6-de-Marcelo installd[9354] <Error>: entitlement 'keychain-access-groups' has value not permitted by provisioning profile '[Redacted 2]'
Sep 1 17:05:10 iPhone-6-de-Marcelo installd[9354] <Error>: entitlement 'keychain-access-groups' has value not permitted by provisioning profile '[Redacted 3]'
Sep 1 17:05:10 iPhone-6-de-Marcelo installd[9354] <Error>: 0x100484000 -[MICodeSigningVerifier performValidationWithError:]: 188: Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.KzWfpt/extracted/Payload/MeuShow.app identifier = com.movile.enterprise.vivomeushow type = User App> : 0xe8008016 (Entitlements found that are not permitted by provisioning profile)
Sep 1 17:05:10 iPhone-6-de-Marcelo installd[9354] <Error>: 0x100484000 -[MIInstaller performInstallationWithError:]: Verification stage failed
Sep 1 17:05:10 iPhone-6-de-Marcelo itunesstored[108] <Error>: 0x10239c000 __MobileInstallationInstallForLaunchServices_block_invoke240: Returned error Error Domain=MIInstallerErrorDomain Code=13 "Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.KzWfpt/extracted/Payload/MeuShow.app identifier = com.movile.enterprise.vivomeushow type = User App> : 0xe8008016 (Entitlements found that are not permitted by provisioning profile)" UserInfo=0x13019bb20 {LibMISErrorNumber=-402620394, LegacyErrorString=ApplicationVerificationFailed, SourceFileLine=188, FunctionName=-[MICodeSigningVerifier performValidationWithError:], NSLocalizedDescription=Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.KzWfpt/extracted/Payload/MeuShow.app identifier = com.movile.enterprise.vivomeushow type = User App> : 0xe8008016 (Entitlements found that are not permitted by provisioning profile)}
I've checked and the embedded provisioning profile is exactly the same as the previous one.
ENV["CODE_SIGN_IDENTITY"] = "iPhone Distribution: XYZ"
ENV["EXPORT_PROFILE"] = "[REDACTED] Distribution"
# This works:
xcarchive(
scheme: scheme,
build_settings: {
"CODE_SIGN_IDENTITY" => ENV["CODE_SIGN_IDENTITY"]
},
derivedDataPath: ENV["DERIVED_DATA_PATH"]
)
xcodebuild(
export_archive: true,
export_profile: ENV["EXPORT_PROFILE"]
)
# This doesn't:
gym(
clean: true,
codesigning_identity: ENV["CODE_SIGN_IDENTITY"],
provisioning_profile_path: 'fastlane/Redacted_Distribution.mobileprovision'
)
PackageApplication4Gym
is being called with --embed
and --sign
(so it shouldn't be the same issue as #69).
This is an enterprise build, if that matters.
I'd like to set various plist information in the gymfile
for a given configuration.
Do you agree that this belongs in gym
?
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.