Skip to content

1.1 Release Checklist #73

@glennblock

Description

@glennblock

Splunk Python SDK Release Instructions

These are instructions on the various steps necessary to cut out a new
release of the Splunk Python SDK. Even though the instructions are public,
these steps are only meant to be taken by the SDK maintainers.

Prerequisites

  • Read through all of these release instructions.
    • Update if necessary. (For example, the version numbers will need updating.)
    • For updates that could apply to other SDKs as well, update the release instructions page for every other SDK.
  • Update changelog.
  • Run test suite on full test matrix.
  • Install random_numbers.spl and github_forks.spl (found in build/ after running python setup.py dist on the respository) on Linux (32-bit and 64-bit), MacOS X (64-bit), and Windows (32-bit and 64-bit). Add a new data input for both kinds, and check that they generate events by running the search "*" with time range "Real time (all time)".
  • Run all examples.
  • [ ]Run all dev.splunk.com code samples.
  • Remove old temporary branches. This includes feature branches, old release branches, and most branches that have been merged to develop.
    • (Exception: The "promises-old" branch in the JavaScript SDK should be retained for the time being.)

Release Steps

  • Create release branch off of develop (release/1.1)
    • git checkout develop
    • git pull
    • git checkout -b release/1.1
  • Update the version number in splunk/__init__.py.
  • Make sure the version number change didn't break anything:
    • Install the SDK in a clean VM and in a clean virtualenv.
    • Run test suite.
    • Run the SDK examples.
  • Merge to master locally. Ensure the commit message is "Release 1.1".
    • git checkout master
    • git merge --no-ff -m "Release 1.1" release/1.1
  • Tag the above commit as 1.1.
    • git tag 1.1
  • Push the master and the 1.1 tag to GitHub.
    • git push origin master
    • git push --tags
  • Upload to PyPI:
    • python setup.py register sdist upload
    • It will ask you for login info, which you can find on the
      internal ESWiki.
  • Delete the release branch:
    • git push origin :release/1.1
    • git branch -d release/1.1
  • Sanity check that released version works:
    • Check with the Product Manager for what should be done here. (And update this bullet with the decision!)
  • Create a ZIP of the SDK and send it to your Docs team:
    • Make sure the file reflects the current version (for example, splunk-splunk-sdk-python-1.1.zip).
    • Docs team will get the ZIP file posted to Dev Portal.
  • Work with Docs team to:
    • Post ZIP file.
    • Update Readme. For point releases, the version number needs to be updated at a minimum.
    • Update Changelog, includes a list of changes for the current version.
    • Push Dev Portal updates. For point releases, the "What's new" page and download links need to be updated at the very least.
    • Publish updated API Reference (docs.splunk.com/Documentation/SDK).
    • Create both MD5 and SHA-512 hashes from final ZIP download. Docs will contact the Web team to upload these files.
  • Hand off to marketing to announce. See next section.

Announce!

Hurrah, the new release is basically done! You can now announce it on the
following channels:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions