Release Process¶
Location: Pulp Smash → Release Process
The two goals of the release process are to create a tagged commit which bumps the version file and describes changes since the last release, and to generate packages which can be uploaded to PyPI.
There are other ways to create a release this one is just an example.
Assumptions¶
This release process was created assuming that your fork is named origin, and the upstream is repository is named upstream.
Steps¶
- Assume that your master branch is up to date.
git checkout master
git fetch --all
git merge upstream/master
git status
- Clean any unnecessary files. Mainly the ones in dist dir.
make dist-lean
- From the root of Pulp Smash dir verify the current version.
cat VERSION
- From the root of Pulp Smash dir run the script to create a new release.
git status
./scripts/release.sh 'string_new_version'
- Sanity check the dist dir.
ls dist/
6. A new commit was added by the script, and VERSION file should be updated. Verify that HEAD is pointing to the right commit.
cat VERSION
git show HEAD
- Push to Github. Verify that files were updated and a new TAG was created.
git push origin master --tags && git push upstream master --tags
8. Upload to PyPI. Assure that your have the twine package in your Python env.
twine upload dist/*
- Go to PyPI and verify that files were uploaded properly.