Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Manually publish release artifacts

If one of the publishing jobs fails due to some temporary error, it might be necessary to publish the release artifacts for a platform manually to avoid having to restart the whole release process.

Android / JVM (Kotlin)

Preparation

  • Checkout the release tag
  • Open the Core Libraries vault on 1Password and copy the secrets from Maven Central Publishing and CoreCrypto Sonatype PGP Signing Key
    export ORG_GRADLE_PROJECT_mavenCentralPassword <secret>
    export ORG_GRADLE_PROJECT_mavenCentralUsername <secret>
    export ORG_GRADLE_PROJECT_signingInMemoryKeyId <secret>
    export ORG_GRADLE_PROJECT_signingInMemoryKey <secret>
    export ORG_GRADLE_PROJECT_signingInMemoryKeyPassword <secret>
    

Android

  • Download the android.zip from the release on https://github.com/wireapp/core-crypto/releases
  • Extract the archive and copy the Android artifacts into the root of the core-crypto project
    cp -r ~/downloads/android/* core-crypto
    
  • Publish the project
    cd crypto-ffi/bindings
    ./gradlew android:publishAllPublicationsToMavenCentralRepository --no-configuration-cache
    

JVM

  • Download the jvm.zip from the release on https://github.com/wireapp/core-crypto/releases
  • Extract the archive and copy the JVM artifacts into the root of the core-crypto project
    cp -r ~/downloads/jvm/* core-crypto
    
  • Publish the project
    cd crypto-ffi/bindings
    ./gradlew jvm:publishAllPublicationsToMavenCentralRepository --no-configuration-cache
    

iOS (Swift)

iOS artifacts aren’t distributed through a centralized package manager. If the artifact has been uploaded to the GitHub release, it is considered to be published.

NPM (Typescript)

  • Download the wireapp-core-crypto-x.y.z.tgz from the release on https://github.com/wireapp/core-crypto/releases
  • Publish:
    cd crypto-ffi/bindings/js
    bun publish ~/downloads/wireapp-core-crypto-x.y.z.tgz