-
Notifications
You must be signed in to change notification settings - Fork 90
ci: create and sign separate bundle ID for PRs #19505
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
base: master
Are you sure you want to change the base?
Conversation
Jenkins BuildsClick to see older builds (15)
|
091d40a to
a011dd8
Compare
✔️ status-desktop/prs/android/arm64/package/PR-19505#5 🔹 ~12 min 🔹 bae4abc9 🔹 📦 android/arm64 package |
47ae31a to
f0d0ce0
Compare
Jenkins BuildsClick to see older builds (383)
|
47b5bee to
42a65d4
Compare
- points to `fix-ios-signing-with-fastlane` branch of `status-jenkins-lib` which provides development certs for PR builds and distribution certs for release builds. - adds nix flake to provide ruby dependencies for `fastlane` - adds config for new build identifier for PRs: `app.status.mobile.pr`
42a65d4 to
41514ea
Compare
c951e84 to
9e816b7
Compare
9e816b7 to
6b92160
Compare
yakimant
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left some comments, please have a look. (also in jenkin lib repo)
Will be happy to do a second go.
| ARCH = "x86_64" | ||
| /* iOS app paths */ | ||
| /* iOS app paths - PR builds use StatusPR, release builds use Status */ | ||
| STATUS_IOS_APP_NAME = "${utils.isReleaseBuild() ? 'Status' : 'StatusPR'}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it needed? We rename to STATUS_IOS_APP_ARTIFACT anyway.
Do we need to build both PR and non-pr?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it needed? We rename to STATUS_IOS_APP_ARTIFACT anyway.
this var is helpful to find the build artefact to be used for rename.
Do we need to build both PR and non-pr?
in public CI we only build PR build and in release CI we build the main one.
I believe the same jenkinsfile is used for both, hence this is needed here.
mobile/fastlane/Fastfile
Outdated
| signing_identity = ENV["sigh_#{app_identifier}_#{profile_type}_certificate-name"] || | ||
| lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]&.dig(app_identifier) || | ||
| get_signing_identity(profile_type) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why 3 options?
Isnt running match enough for straight single option?
mobile/fastlane/Fastfile
Outdated
| match(match_params) | ||
| end | ||
|
|
||
| private_lane :sign_app do |options| |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wonder if you can replace the logic with
- pack to ipa
- https://docs.fastlane.tools/actions/resign/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks interesting indeed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've pushed change in CI, lets see if it works or not.
| xcodebuild -configuration Release -target "Qt Preprocess" -sdk "$SDK" -arch "$ARCH" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO CURRENT_PROJECT_VERSION=$BUILD_VERSION | xcbeautify | ||
| # Compile the app | ||
| xcodebuild -configuration Release -target Status install -sdk "$SDK" -arch "$ARCH" DSTROOT="$BIN_DIR" INSTALL_PATH="/" TARGET_BUILD_DIR="$BIN_DIR" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO CURRENT_PROJECT_VERSION=$BUILD_VERSION | xcbeautify | ||
| xcodebuild -configuration Release -target "$TARGET_NAME" install -sdk "$SDK" -arch "$ARCH" DSTROOT="$BIN_DIR" INSTALL_PATH="/" TARGET_BUILD_DIR="$BIN_DIR" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO CURRENT_PROJECT_VERSION=$BUILD_VERSION | xcbeautify |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We could probable make life simpler with gym and Gymfile, but maybe later:
https://docs.fastlane.tools/actions/gym
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah true I would put the gym stuff as a nice to have and in another PR.
7ba9ed6 to
a654fd6
Compare
a654fd6 to
5742e5d
Compare
11f3557 to
1674de3
Compare
Summary
fix-ios-signing-with-fastlanebranch ofstatus-jenkins-libwhich provides development certs for PR builds and distribution certs for release builds.fastlaneapp.status.mobile.pr