Skip to content

Latest commit

 

History

History
52 lines (37 loc) · 1.65 KB

RELEASING.md

File metadata and controls

52 lines (37 loc) · 1.65 KB

Releasing

  1. Update CHANGELOG.md.

  2. Set versions:

    export RELEASE_VERSION=A.B.C
    export NEXT_VERSION=A.B.D-SNAPSHOT
    
  3. Update documentation and Gradle properties with RELEASE_VERSION

    sed -i "" \
      "s/VERSION_NAME=.*/VERSION_NAME=$RELEASE_VERSION/g" \
      gradle.properties
    sed -i "" \
      "s/\"com.squareup.misk:\([^\:]*\):[^\"]*\"/\"com.squareup.misk:\1:$RELEASE_VERSION\"/g" \
      `find . -maxdepth 2 -name "README.md"`
    
  4. Tag the release and push to GitHub. Merge PR.

    git commit -am "Prepare for release $RELEASE_VERSION."
    git tag -a misk-$RELEASE_VERSION -m "Version $RELEASE_VERSION"
    git push && git push --tags
    
  5. Trigger the "Publish a release" action manually. Wait until it completes, then visit Sonatype Nexus to promote (close then release) the artifact. Or drop it if there is a problem!

    Sonatype Release

  6. Prepare for the next release and push to GitHub. Merge PR.

    sed -i "" \
      "s/VERSION_NAME=.*/VERSION_NAME=$NEXT_VERSION/g" \
      gradle.properties
    git commit -am "Prepare next development version."
    git push
    
  7. Draft a new release of A.B.C to trigger the "Publish the mkdocs to gh-pages" action.

Troubleshooting

If the github action fails, drop the artifacts from Sonatype and re run the job. You might need to delete the plugin off the JetBrains plugin portal first if the ubuntu job which publishes it already succeeded.