build: allow skipping publication signing for local publishing - #833
Conversation
publishToMavenLocal previously failed on the signing tasks unless Maven Central signing keys were configured, which no local dev setup has. All three publishing modules now skip signAllPublications() when -PRELEASE_SIGNING_ENABLED=false is passed, so consumers (e.g. the Expo module) can be built against a local SDK checkout with: ./gradlew publishToMavenLocal -PRELEASE_SIGNING_ENABLED=false Default behavior is unchanged: without the property, publications are signed exactly as before.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughMaven publication signing in the API, telemetry, and UI modules is now conditional on the ChangesPublication signing
Estimated code review effort: 1 (Trivial) | ~5 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
swolfand
left a comment
There was a problem hiding this comment.
Just do it the old fashioned way want comment this stuff out when you want local builds
Problem
./gradlew publishToMavenLocalfails onsignMavenPublication/signAndroidPublicationunless Maven Central signing keys are configured, which no local dev machine has. That makes it needlessly hard to build consumers (like the Expo module) against a local clerk-android checkout — the workaround was commenting outsignAllPublications()by hand.What this adds
All three publishing modules (
api,ui,telemetry) skipsignAllPublications()when-PRELEASE_SIGNING_ENABLED=falseis passed:The property name follows the vanniktech maven-publish convention. Without the property, publications are signed exactly as before, so Maven Central releases are unaffected.
Modules
source/api,source/ui,source/telemetry— build scripts only, no source changes.Testing
publishToMavenLocal -PRELEASE_SIGNING_ENABLED=false: all modules publish with no signing keys configuredpublishToMavenLocalwithout the property: still fails with "no configured signatory" on this keyless machine, confirming default signing behavior is unchanged🤖 Generated with Claude Code
Note
Skip publication signing for local publishing via
RELEASE_SIGNING_ENABLEDflagWraps
signAllPublications()in a conditional check for theRELEASE_SIGNING_ENABLEDGradle property in api/build.gradle.kts, telemetry/build.gradle.kts, and ui/build.gradle.kts. SettingRELEASE_SIGNING_ENABLED=falseskips signing, which is useful for local Maven publishing without requiring signing credentials.Macroscope summarized 0fa451a.
Summary by CodeRabbit
RELEASE_SIGNING_ENABLED=false.