-
Notifications
You must be signed in to change notification settings - Fork 516
How to make a Splash release
Adrián Chaves edited this page Jan 10, 2020
·
25 revisions
Note: these notes are for maintainers.
Check before release:
- changelog is up-to-date;
- Tests are passing on Travis;
- Splash build is successful on DockerHub;
- Splash-Jupyter build is successful on DockerHub.
- Run
python setup.py sdist
and check that all files are included; pay special attention to css/js/Lua files.
Use bumpversion
to create a commit that upgrades the version number as needed in the code, and tags that commit with the version number.
Push changes to GitHub. Make sure you push the tag as well.
After versions are updated, make a new PyPI release:
python setup.py sdist bdist_wheel
-
twine upload dist/splash-3.3.tar.gz
(find .tar.gz file created at step 1) -
twine upload dist/splash-3.3-py3-none-any.whl
(find a .whl file created at step 1)
Then update automated Splash Docker builds:
- Wait for the corresponding Docker Hub Splash build to finish.
- In the automated build configuration page update the
latest
Docker tag to point to new source tag (add a new entry, delete the old one and select Save) - In the Builds tab, select Trigger on the row with
latest
as Source tag.
Then update Splash-Jupyter Docker builds. If you're doing a minor/major release (e.g. 3.3):
- Create a new git branch named A.B.x for the new release (e.g. 3.3.x).
- Add a change like this to this branch - update FROM directive in dockerfiles/splash-jupyter/Dockerfile to use latest Splash release version; push it to github;
- Go to https://cloud.docker.com/u/scrapinghub/repository/docker/scrapinghub/splash-jupyter/hubbuilds ;
- Find a row with Docker Tag Name == 'latest'; change branch name to match latest version number (e.g. 3.3.x); click "Trigger Build".
- Create a new automated build for the release: git branch should be the release branch (e.g. 3.3.x), docker tag name should be version number (e.g. 3.3), Dockerfile location should be "/dockerfiles/splash-jupyter".
If you're doing a point release (e.g. 2.1.1):
- Merge changes from master to A.B.x branch (e.g. to 2.1.x);
- Add a change like this to this branch - update FROM directive in dockerfiles/splash-jupyter/Dockerfile to use latest Splash release version.