Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Change App ID for PR builds of iOS app #7479

Closed
wants to merge 2 commits into from

Conversation

jakubgs
Copy link
Member

@jakubgs jakubgs commented Feb 12, 2019

Sister PR to #7287 for changing App ID of iOS PR builds to im.status.ethereum.pr.

I've added the necessary profile in ios-certificates repo here: https://github.com/status-im/ios-certificates/commit/6c3104907319a45efc72f05dc98ad1714d4560b3

State: WIP

@jakubgs jakubgs self-assigned this Feb 12, 2019
@status-github-bot
Copy link

Pull Request Checklist

  • Have you updated the documentation, if impacted (e.g. docs.status.im)?

@status-im-auto
Copy link
Member

status-im-auto commented Feb 12, 2019

Jenkins Builds

Click to see older builds (140)
Commit #️⃣ Finished (UTC) Duration Platform Result
8790049 #1 2019-02-12 12:22:43 ~10 min ios-e2e 📄 log
8790049 #1 2019-02-12 12:23:51 ~12 min ios 📄 log
✔️ 8790049 #1 2019-02-12 12:25:50 ~14 min macos 📦 dmg
✔️ 8790049 #1 2019-02-12 12:30:27 ~18 min android 📦 apk
✔️ 8790049 #1 2019-02-12 12:31:12 ~19 min android-e2e 📦 apk
✔️ 8790049 #1 2019-02-12 12:31:14 ~19 min windows 📦 exe
✔️ 8790049 #1 2019-02-12 12:40:30 ~28 min linux 📦 App
3276600 #2 2019-02-12 12:54:17 ~11 min ios-e2e 📄 log
3276600 #2 2019-02-12 12:55:04 ~11 min ios 📄 log
✔️ 3276600 #2 2019-02-12 12:56:48 ~13 min macos 📦 dmg
✔️ 3276600 #2 2019-02-12 13:01:34 ~18 min linux 📦 App
✔️ 3276600 #2 2019-02-12 13:02:54 ~19 min android 📦 apk
✔️ 3276600 #2 2019-02-12 13:03:22 ~20 min android-e2e 📦 apk
✔️ 3276600 #2 2019-02-12 13:08:10 ~24 min windows 📦 exe
be82264 #3 2019-04-15 08:27:36 ~12 min ios 📄 log
✔️ be82264 #3 2019-04-15 08:29:51 ~14 min macos 📦 dmg
✔️ be82264 #3 2019-04-15 08:35:50 ~20 min linux 📦 App
✔️ be82264 #3 2019-04-15 08:37:32 ~22 min android 📦 apk
✔️ be82264 #3 2019-04-15 08:38:12 ~22 min android-e2e 📦 apk
✔️ be82264 #3 2019-04-15 08:42:06 ~26 min windows 📦 exe
b0231d6 #4 2019-04-15 09:22:22 ~11 min ios 📄 log
✔️ b0231d6 #4 2019-04-15 09:25:25 ~14 min macos 📦 dmg
✔️ b0231d6 #4 2019-04-15 09:30:31 ~19 min linux 📦 App
✔️ b0231d6 #4 2019-04-15 09:34:01 ~23 min android 📦 apk
✔️ b0231d6 #4 2019-04-15 09:34:46 ~23 min android-e2e 📦 apk
✔️ b0231d6 #4 2019-04-15 09:39:31 ~28 min windows 📦 exe
87ee903 #5 2019-04-15 09:49:06 ~6 min ios 📄 log
2774102 #6 2019-04-15 09:57:46 ~6 min ios 📄 log
✔️ 2774102 #6 2019-04-15 10:05:14 ~13 min macos 📦 dmg
✔️ 2774102 #6 2019-04-15 10:10:08 ~18 min android 📦 apk
✔️ 2774102 #6 2019-04-15 10:11:47 ~20 min linux 📦 App
✔️ 2774102 #6 2019-04-15 10:12:06 ~20 min windows 📦 exe
2774102 #7 2019-04-15 10:17:52 ~11 min ios 📄 log
87920c1 #8 2019-04-15 10:32:18 ~10 min ios 📄 log
✔️ 87920c1 #7 2019-04-15 10:34:43 ~13 min macos 📦 dmg
✔️ 87920c1 #7 2019-04-15 10:42:53 ~21 min android 📦 apk
✔️ 87920c1 #7 2019-04-15 10:43:19 ~21 min android-e2e 📦 apk
✔️ 87920c1 #7 2019-04-15 10:44:35 ~22 min windows 📦 exe
✔️ 87920c1 #7 2019-04-15 10:48:56 ~27 min linux 📦 App
36005ee #9 2019-04-15 11:20:08 ~11 min ios 📄 log
✔️ 36005ee #8 2019-04-15 11:23:22 ~14 min macos 📦 dmg
✔️ 36005ee #8 2019-04-15 11:29:24 ~20 min linux 📦 App
✔️ 36005ee #8 2019-04-15 11:29:55 ~21 min windows 📦 exe
✔️ 36005ee #8 2019-04-15 11:31:12 ~22 min android 📦 apk
✔️ 36005ee #8 2019-04-15 11:31:42 ~22 min android-e2e 📦 apk
3ff59b1 #10 2019-04-15 12:24:54 ~4 min ios 📄 log
✔️ 3ff59b1 #9 2019-04-15 12:33:25 ~13 min macos 📦 dmg
3ff59b1 #11 2019-04-15 12:36:56 ~10 min ios 📄 log
✔️ 3ff59b1 #9 2019-04-15 12:40:41 ~20 min android 📦 apk
✔️ 3ff59b1 #9 2019-04-15 12:46:54 ~26 min linux 📦 App
3ff59b1 #12 2019-04-15 12:47:47 ~10 min ios 📄 log
✔️ 3ff59b1 #9 2019-04-15 12:47:55 ~27 min windows 📦 exe
a59c88e #13 2019-04-15 14:26:18 ~11 min ios 📄 log
b000c99 #14 2019-04-15 14:37:25 ~10 min ios 📄 log
✔️ b000c99 #11 2019-04-15 14:40:37 ~13 min macos 📦 dmg
✔️ b000c99 #11 2019-04-15 14:45:41 ~18 min android 📦 apk
✔️ b000c99 #11 2019-04-15 14:47:35 ~20 min windows 📦 exe
✔️ b000c99 #11 2019-04-15 14:49:37 ~22 min linux 📦 App
✔️ b000c99 #11 2019-04-15 14:51:11 ~24 min android-e2e 📦 apk
a81f3fc #15 2019-04-15 19:03:03 ~11 min ios 📄 log
✔️ a81f3fc #12 2019-04-15 19:08:11 ~16 min macos 📦 dmg
✔️ a81f3fc #12 2019-04-15 19:11:12 ~19 min android-e2e 📦 apk
✔️ a81f3fc #12 2019-04-15 19:11:48 ~20 min android 📦 apk
✔️ a81f3fc #12 2019-04-15 19:12:35 ~21 min linux 📦 App
✔️ a81f3fc #12 2019-04-15 19:16:57 ~25 min windows 📦 exe
5074f55 #16 2019-04-15 20:47:26 ~50 sec null 📄 log
2f21f64 #17 2019-04-15 20:58:14 ~10 min null 📄 log
✔️ 2f21f64 #14 2019-04-15 21:01:58 ~13 min null 📦 dmg
✔️ 2f21f64 #14 2019-04-15 21:07:41 ~19 min null-e2e 📦 apk
✔️ 2f21f64 #14 2019-04-15 21:11:23 ~23 min null 📦 apk
✔️ 2f21f64 #14 2019-04-15 21:15:49 ~27 min null 📦 App
✔️ 2f21f64 #14 2019-04-15 21:17:14 ~29 min null 📦 exe
2f21f64 #19 2019-04-15 21:39:22 ~10 min null 📄 log
bdda2f3 #20 2019-04-15 22:11:49 ~11 min null 📄 log
✔️ bdda2f3 #15 2019-04-15 22:14:54 ~14 min null 📦 dmg
✔️ bdda2f3 #15 2019-04-15 22:20:55 ~20 min null 📦 App
✔️ bdda2f3 #15 2019-04-15 22:21:29 ~21 min null-e2e 📦 apk
✔️ bdda2f3 #15 2019-04-15 22:27:35 ~27 min null 📦 exe
d01f397 #21 2019-04-15 23:13:14 ~11 min null 📄 log
✔️ d01f397 #16 2019-04-15 23:16:15 ~14 min null 📦 dmg
✔️ d01f397 #16 2019-04-15 23:22:43 ~20 min null 📦 App
✔️ d01f397 #16 2019-04-15 23:22:54 ~20 min null 📦 apk
✔️ d01f397 #16 2019-04-15 23:23:06 ~21 min null-e2e 📦 apk
✔️ d01f397 #16 2019-04-15 23:29:11 ~27 min null 📦 exe
b9a544d #23 2019-06-06 22:00:51 ~10 min ios 📄 log
✔️ b9a544d #18 2019-06-06 22:04:53 ~14 min linux 📦 App
✔️ b9a544d #18 2019-06-06 22:05:45 ~14 min android 📦 apk
✔️ b9a544d #18 2019-06-06 22:07:21 ~16 min android-e2e 📦 apk
✔️ b9a544d #18 2019-06-06 22:07:24 ~16 min macos 📦 dmg
✔️ b9a544d #18 2019-06-06 22:12:38 ~21 min windows 📦 exe
dcf399d #24 2019-06-06 22:55:26 ~10 min ios 📄 log
✔️ dcf399d #19 2019-06-06 23:00:10 ~15 min linux 📦 App
✔️ dcf399d #19 2019-06-06 23:00:14 ~15 min macos 📦 dmg
✔️ dcf399d #19 2019-06-06 23:03:20 ~18 min android 📦 apk
✔️ dcf399d #19 2019-06-06 23:03:34 ~18 min android-e2e 📦 apk
✔️ dcf399d #19 2019-06-06 23:03:49 ~18 min windows 📦 exe
23d36ed #25 2019-06-11 17:48:46 ~8 min ios 📄 log
✔️ 23d36ed #20 2019-06-11 17:50:53 ~10 min linux 📦 App
✔️ 23d36ed #20 2019-06-11 17:54:40 ~14 min windows 📦 exe
✔️ 23d36ed #20 2019-06-11 17:54:40 ~14 min macos 📦 dmg
✔️ 23d36ed #20 2019-06-11 17:56:12 ~16 min android 📦 apk
✔️ 23d36ed #20 2019-06-11 17:56:33 ~16 min android-e2e 📦 apk
3f038d6 #21 2019-06-14 22:06:58 ~3 min windows 📄 log
3f038d6 #26 2019-06-14 22:12:28 ~8 min ios 📄 log
0d125e4 #27 2019-06-14 22:20:10 ~7 min ios 📄 log
✔️ 0d125e4 #22 2019-06-14 22:23:15 ~10 min linux 📦 App
✔️ 0d125e4 #22 2019-06-14 22:25:33 ~12 min windows 📦 exe
✔️ 0d125e4 #22 2019-06-14 22:26:17 ~13 min macos 📦 dmg
✔️ 0d125e4 #22 2019-06-14 22:28:25 ~15 min android 📦 apk
✔️ 0d125e4 #22 2019-06-14 22:28:41 ~16 min android-e2e 📦 apk
928f1fd #28 2019-06-14 22:58:27 ~8 min ios 📄 log
✔️ 928f1fd #23 2019-06-14 23:00:19 ~10 min linux 📦 App
✔️ 928f1fd #23 2019-06-14 23:03:10 ~13 min windows 📦 exe
✔️ 928f1fd #23 2019-06-14 23:04:21 ~14 min macos 📦 dmg
928f1fd #23 2019-06-14 23:04:42 ~14 min android-e2e 📄 log
✔️ 928f1fd #23 2019-06-14 23:04:42 ~14 min android 📦 apk
3ef6d37 #29 2019-06-14 23:51:14 ~8 min ios 📄 log
✔️ 3ef6d37 #24 2019-06-14 23:53:19 ~10 min linux 📦 App
✔️ 3ef6d37 #24 2019-06-14 23:55:14 ~12 min windows 📦 exe
3ef6d37 #24 2019-06-14 23:56:01 ~13 min android 📄 log
3ef6d37 #24 2019-06-14 23:56:13 ~13 min android-e2e 📄 log
✔️ 3ef6d37 #24 2019-06-14 23:56:35 ~13 min macos 📦 dmg
74f2dc7 #30 2019-06-15 00:08:30 ~8 min ios 📄 log
✔️ 74f2dc7 #25 2019-06-15 00:10:37 ~10 min linux 📦 App
✔️ 74f2dc7 #25 2019-06-15 00:11:52 ~11 min windows 📦 exe
✔️ 74f2dc7 #25 2019-06-15 00:12:42 ~12 min macos 📦 dmg
74f2dc7 #25 2019-06-15 00:13:38 ~13 min android-e2e 📄 log
74f2dc7 #25 2019-06-15 00:13:38 ~13 min android 📄 log
2faa74d #31 2019-06-15 01:02:32 ~8 min ios 📄 log
✔️ 2faa74d #26 2019-06-15 01:04:31 ~10 min linux 📦 App
✔️ 2faa74d #26 2019-06-15 01:05:47 ~11 min windows 📦 exe
2faa74d #26 2019-06-15 01:07:06 ~13 min android 📄 log
2faa74d #26 2019-06-15 01:07:06 ~13 min android-e2e 📄 log
✔️ 2faa74d #26 2019-06-15 01:09:12 ~15 min macos 📦 dmg
f020ce7 #32 2019-06-28 21:36:08 ~9 min ios 📄 log
✔️ f020ce7 #27 2019-06-28 21:37:10 ~10 min linux 📦 App
✔️ f020ce7 #27 2019-06-28 21:40:15 ~13 min windows 📦 exe
✔️ f020ce7 #27 2019-06-28 21:41:10 ~14 min macos 📦 dmg
f020ce7 #27 2019-06-28 21:43:14 ~16 min android 📄 log
f020ce7 #27 2019-06-28 21:43:25 ~16 min android-e2e 📄 log
Commit #️⃣ Finished (UTC) Duration Platform Result
118938a #33 2019-06-28 21:55:26 ~8 min ios 📄 log
✔️ 118938a #28 2019-06-28 21:56:59 ~10 min linux 📦 App
✔️ 118938a #28 2019-06-28 21:58:21 ~11 min windows 📦 exe
✔️ 118938a #28 2019-06-28 21:59:31 ~12 min macos 📦 dmg
✔️ 118938a #28 2019-06-28 22:04:25 ~17 min android 📦 apk
✔️ 118938a #28 2019-06-28 22:04:44 ~18 min android-e2e 📦 apk
✔️ 3dec445 #29 2019-06-29 15:39:20 ~10 min linux 📦 App
✔️ 3dec445 #29 2019-06-29 15:40:21 ~11 min windows 📦 exe
✔️ 3dec445 #34 2019-06-29 15:41:58 ~13 min ios 📦 ipa
✔️ 3dec445 #29 2019-06-29 15:42:21 ~13 min macos 📦 dmg
✔️ 3dec445 #29 2019-06-29 15:48:14 ~19 min android 📦 apk
✔️ 3dec445 #29 2019-06-29 15:48:28 ~19 min android-e2e 📦 apk

@jakubgs
Copy link
Member Author

jakubgs commented Feb 13, 2019

The way I made the PR config is by cloning it from Release in Xcode and then adding the xcconfig files to manage the different values. The issue is, it fails to build due to:

ld: library not found for -lReact

It's related to the flags given to clang. So my guess would be that the issue is some kind of search path for linking.

@jakubgs jakubgs changed the title Change App ID for PR builds of iOS app [WIP] Change App ID for PR builds of iOS app Apr 10, 2019
@mandrigin
Copy link
Contributor

@jakubgs do you need any help with that?

@jakubgs
Copy link
Member Author

jakubgs commented Apr 15, 2019

I kinda put it on hold for a while. Now that the Android one has been fixed I can take a look at it again.

I tried make a separate ID and name using the XCode UI and then look at the changes in the project.pbxproj, but I also found this article about using *.xcconfig files to hold settings for those:
https://www.appcoda.com/xcconfig-guide/
If we could use those it would be much easier to modify those settings just using a text editor without having to touch XCode.

@mandrigin
Copy link
Contributor

@jakubgs yeah, I think we should use it. It is a better approach than doing everything in pbproj file

@jakubgs
Copy link
Member Author

jakubgs commented Apr 15, 2019

My main issue is that fastlan ios pr fails with;

 ▸ ld: warning: directory not found for option '-L/Users/jenkins/Library/Developer/Xcode/DerivedData/StatusIm-cemtcnxulcxvltemyqrvchrqxjzr/Build/Intermediates.noindex/ArchiveIntermediates/StatusIm/BuildProductsPath/PR-iphoneos/React'
 ▸ ld: library not found for -lReact
 ▸ clang: error: linker command failed with exit code 1 (use -v to see invocation)

This must be caused by some of the changes in ios/StatusIm.xcodeproj/project.pbxproj but I can't tell which ones. I'm going to try to fix this today.

@jakubgs jakubgs force-pushed the change-ios-app-id branch 3 times, most recently from 5074f55 to 2f21f64 Compare April 15, 2019 20:47
@jakubgs
Copy link
Member Author

jakubgs commented Apr 15, 2019

Aaaaand we're back to the same old bullshit:

00:11:44  ▸ Compiling main.m
00:11:44  ▸ Linking StatusIm
00:11:44  ⚠️  ld: directory not found for option '-L/Users/jenkins/Library/Developer/Xcode/DerivedData/StatusIm-cemtcnxulcxvltemyqrvchrqxjzr/Build/Intermediates.noindex/ArchiveIntermediates/StatusIm/BuildProductsPath/PR-iphoneos/React'
00:11:44  
00:11:44  ❌  ld: library not found for -lReact
00:11:44  ❌  clang: error: linker command failed with exit code 1 (use -v to see invocation)
00:11:44  
00:11:44  ** ARCHIVE FAILED **
00:11:44  
00:11:44  The following build commands failed:
00:11:44  Ld /Users/jenkins/Library/Developer/Xcode/DerivedData/StatusIm-cemtcnxulcxvltemyqrvchrqxjzr/Build/Intermediates.noindex/ArchiveIntermediates/StatusIm/InstallationBuildProductsLocation/Applications/StatusIm.app/StatusIm normal arm64
00:11:44  (1 failure)
00:11:44  [23:11:43]: Exit status: 65

every day is a new horror

@jakubgs
Copy link
Member Author

jakubgs commented Apr 15, 2019

So I lookad at what's in node_modules/react-native/React and I found this:

administrator@macos-03.ms-eu-dublin.ci.misc:/Users/jenkins/workspace/status-react_prs_ios_PR-7479/node_modules/react-native/React % ls -l
total 8
drwxr-xr-x  76 jenkins  staff  2432 Apr 15 23:01 Base
drwxr-xr-x  12 jenkins  staff   384 Apr 15 23:01 CxxBridge
drwxr-xr-x  11 jenkins  staff   352 Apr 15 23:01 CxxModule
drwxr-xr-x   4 jenkins  staff   128 Apr 15 23:01 CxxUtils
drwxr-xr-x  12 jenkins  staff   384 Apr 15 23:01 DevSupport
drwxr-xr-x  19 jenkins  staff   608 Apr 15 23:01 Fabric
drwxr-xr-x   6 jenkins  staff   192 Apr 15 23:01 Inspector
drwxr-xr-x  48 jenkins  staff  1536 Apr 15 23:01 Modules
drwxr-xr-x  12 jenkins  staff   384 Apr 15 23:01 Profiler
drwxr-xr-x   3 jenkins  staff    96 Apr 15 23:01 React.xcodeproj
drwxr-xr-x   4 jenkins  staff   128 Apr 15 23:01 UIUtils
drwxr-xr-x  91 jenkins  staff  2912 Apr 15 23:01 Views
-rw-r--r--   1 jenkins  staff   443 Apr  7 11:38 third-party.xcconfig

And looked inside of React.xcodeproj, which appears to be this file:
https://github.com/status-im/react-native/blob/master/React/React.xcodeproj/project.pbxproj
Which contains its own buildConfigurations:
https://github.com/status-im/react-native/blob/2249af16b7ee84d3e25ca7e827e725c7994f936d/React/React.xcodeproj/project.pbxproj#L3109-L3117
Not sure if this makes sense, but maybe the issue is that it doesn't contain a PR build configuration?

@jakubgs
Copy link
Member Author

jakubgs commented Apr 15, 2019

I recall Senpai @yenda worked on #4819 which upgraded react-native. Maybe you have some idea why React can't be found? Any suggestions where I should be looking?

@oskarth oskarth requested a review from a team April 30, 2019 03:13
@flexsurfer
Copy link
Member

@jakubgs is this still relevant?

@jakubgs
Copy link
Member Author

jakubgs commented May 29, 2019

@flexsurfer I wish. I've been so busy with a lot of other things which are more related to infra that I haven't had the time to work on this at all. Now I'm busy helping with new development infra for future version of https://dap.ps/. I do want to finish this, but don't have the time.

I was also pretty darn stuck the last time I looked at this as far as I recall.
I really can't figure out this ld: library not found for -lReact error.

Signed-off-by: Jakub Sokołowski <jakub@status.im>
Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 29, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 29, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 29, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 29, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 29, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 29, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 30, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 30, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 30, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 30, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
jakubgs added a commit that referenced this pull request Jun 30, 2019
A successor to #7479

Signed-off-by: Jakub Sokołowski <jakub@status.im>
@oskarth
Copy link
Contributor

oskarth commented Aug 5, 2019

I suggest closing this if we can't get it merged this week, and we can reopen it when it is more of a priority.

@jakubgs
Copy link
Member Author

jakubgs commented Aug 5, 2019

Fine by me.

@jakubgs jakubgs closed this Aug 5, 2019
@jakubgs jakubgs deleted the change-ios-app-id branch May 12, 2020 13:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Archived in project
Development

Successfully merging this pull request may close these issues.

5 participants