Skip to content

PTECH-34241: update workflow for macOS 15 runner#139

Merged
Dimentar merged 8 commits intodevelopfrom
feature/PTECH-34241-fix-ci-xcode-16
Apr 7, 2026
Merged

PTECH-34241: update workflow for macOS 15 runner#139
Dimentar merged 8 commits intodevelopfrom
feature/PTECH-34241-fix-ci-xcode-16

Conversation

@Dimentar
Copy link
Copy Markdown
Contributor

@Dimentar Dimentar commented Mar 13, 2026

https://traderepublic.atlassian.net/browse/PTECH-34241

Context

CI is broken on all PRs because macOS-latest now maps to macOS 15 (since Sep 2025), which only ships with Xcode 16.x. The workflow still references Xcode_15.4.app, which doesn't exist on the runner:

xcrun: error: missing DEVELOPER_DIR path: /Applications/Xcode_15.4.app/Contents/Developer

Changes

Workflow (.github/workflows/unittests.yml)

  • Pin runner to macos-15 instead of macOS-latest to prevent future breakage when GitHub rolls the label forward
  • Update DEVELOPER_DIR to Xcode_16.4.app — the default and most stable Xcode on the macOS 15 image
  • Bump actions/checkout from v2 to v4 — v2 uses a deprecated Node.js runtime

Code signing (fastlane/Fastfile)

  • Disable code signing in CI test builds — Xcode 16 enforces stricter signing validation, causing No signing certificate "Mac Development" found even for simulator-only test runs. Added xcargs overrides (CODE_SIGN_IDENTITY, CODE_SIGNING_REQUIRED, CODE_SIGNING_ALLOWED) to both scan calls

Test fix (SectionKit/Tests/)

  • Fix UICollectionViewApplyTests for iOS 18+UIWindow() without a UIWindowScene no longer attaches views to the window hierarchy, so collectionView.window returns nil and batch update tests take the wrong code path. Added overridable _window property to MockCollectionView instead of relying on real window attachment

CODEOWNERS

  • Updated ownership to @traderepublic/atom-mobile-platform-ios

Acceptance Criteria

Testing Steps

  1. Verify the CI workflow runs successfully on this PR
  2. After merge, retrigger CI on an existing open PR (e.g. [PTECH-34068] Respect shouldAnimateItems in diffing section controllers #138) to confirm it picks up the fix

@Dimentar Dimentar requested a review from a team as a code owner March 13, 2026 10:37
Dimentar and others added 4 commits March 13, 2026 11:40
Xcode 16 enforces stricter code signing validation, causing CI to fail
with "No signing certificate Mac Development found" even for simulator
test builds. Override signing settings via xcargs in Fastlane scan calls.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@Dimentar Dimentar force-pushed the feature/PTECH-34241-fix-ci-xcode-16 branch from b363f8d to 4c68517 Compare March 13, 2026 11:47
@Dimentar Dimentar enabled auto-merge March 13, 2026 12:22
@Dimentar Dimentar changed the title [PTECH-34241] Fix CI: update workflow for macOS 15 runner PTECH-34241: update workflow for macOS 15 runner Mar 13, 2026
auto-merge was automatically disabled March 31, 2026 15:15

Pull request was closed

@Dimentar
Copy link
Copy Markdown
Contributor Author

Dimentar commented Apr 2, 2026

An empty commit was pushed to refresh the PR state (blocked by require_last_push_approval ruleset). CI checks should re-run shortly.

Could a code owner please re-approve so this can be merged? 🙏

- Add SonarCloud scan step after unit tests in unittests.yml
- Add sonar-project.properties with project key traderepublic_SectionKit
- SonarQube requirement removed at org level
@Dimentar Dimentar requested a review from DoddaSrinivasan April 3, 2026 08:14
@Dimentar Dimentar merged commit 9deadf1 into develop Apr 7, 2026
5 checks passed
@Dimentar Dimentar deleted the feature/PTECH-34241-fix-ci-xcode-16 branch April 7, 2026 09:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants