Skip to content

Conversation

vvolkgang
Copy link
Member

@vvolkgang vvolkgang commented Sep 11, 2025

🎟️ Tracking

PM-20288

📔 Objective

The initial goal was to trigger an iOS repo SDK update when sdk-internal main is updated, implementing that led to hard to maintain duplicate steps that were also slowing down the whole process even further, ended up refactoring multiple bits that would be hard to review independently. My suggestion for reviewers is to go through it as a new file instead of change-by-change. With that, here's a summary of updates:

Structural

  1. Consolidated jobs into a single one to reduce duplicate steps
  2. Removed duplicated / unused steps like retrieving secrets, retrieving a run-id if missing, downloading BitwardenFFI file
  3. Use the new BW App pattern for github authentication - still using the devops bot for commit signing
  4. Removed swiftformat clone and build - took 50-60% of the average runtime just to format Package.swift on each run, we should instead format it in this repo once.
  5. Moved inline github template variables to env vars to mitigate script injections
  6. Following @mandreko-bitwarden pro-tip, ran zizmor and addressed feedback like persist-credentials: false on action/checkout when we just need to checkout the repo
  7. Update crazy-max/ghaction-import-gpg to 6.3.0

Functional

  1. Average runtime reduced from 4m45s to 1m10s.
  2. Triggers an iOS SDK update when new sdk-internal PRs are merged to main
  3. Updates the sdk-swift commit message with additional sdk-internal info using GitHub Autolink patterns, enabling ios devs to quickly go to the original commit or PR. [screenshot#1]
  4. Added step logs and quick links to the Action Summary [screenshot#2]
  5. Sets run-as to communicate the Build we're releasing. [screenshot#3 - old vs new]
  6. Branch Name input added to enable testing and set us up to support publishing feature branches in the future, like we've been doing for Android, enabling quick feature branch testing.

Test Run:

[screenshot#1 - sdk-swift new commit message format]
image

[screenshot#2 - Action Summary]
image

[screenshot#3 - Action run-as]
image

⏰ Reminders before review

  • Contributor guidelines followed
  • All formatters and local linters executed and passed
  • Written new unit and / or integration tests where applicable
  • Protected functional changes with optionality (feature flags)
  • Used internationalization (i18n) for all UI strings
  • CI builds passed
  • Communicated to DevOps any deployment requirements
  • Updated any necessary documentation (Confluence, contributing docs) or informed the documentation
    team

🦮 Reviewer guidelines

  • 👍 (:+1:) or similar for great changes
  • 📝 (:memo:) or ℹ️ (:information_source:) for notes or general info
  • ❓ (:question:) for questions
  • 🤔 (:thinking:) or 💭 (:thought_balloon:) for more open inquiry that's not quite a confirmed
    issue and could potentially benefit from discussion
  • 🎨 (:art:) for suggestions / improvements
  • ❌ (:x:) or ⚠️ (:warning:) for more significant problems or concerns needing attention
  • 🌱 (:seedling:) or ♻️ (:recycle:) for future improvements or indications of technical debt
  • ⛏ (:pick:) for minor or nitpick changes

… We should format this file in sdk-internal instead.
@vvolkgang vvolkgang requested review from a team as code owners September 11, 2025 21:17
Copy link
Contributor

github-actions bot commented Sep 11, 2025

Logo
Checkmarx One – Scan Summary & Details06b4d4f5-16f0-41a6-b041-e06ea9a4f968

Great job! No new security vulnerabilities introduced in this pull request

Copy link

codecov bot commented Sep 11, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 76.93%. Comparing base (1e3b4ba) to head (66c4b00).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #439   +/-   ##
=======================================
  Coverage   76.93%   76.93%           
=======================================
  Files         270      270           
  Lines       25608    25608           
=======================================
  Hits        19702    19702           
  Misses       5906     5906           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant