mirror of
https://github.com/psycopg/psycopg2.git
synced 2024-11-22 00:46:33 +03:00
Added scripts to release and upload docs
This commit is contained in:
parent
32fc4bf199
commit
6d5e6c047d
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -9,5 +9,7 @@ build/*
|
|||
doc/src/_build/*
|
||||
doc/html/*
|
||||
doc/psycopg2.txt
|
||||
scripts/pypi_docs_upload.py
|
||||
env
|
||||
.tox
|
||||
/rel
|
||||
|
|
15
scripts/upload-docs.sh
Executable file
15
scripts/upload-docs.sh
Executable file
|
@ -0,0 +1,15 @@
|
|||
#!/bin/bash
|
||||
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
DOCDIR="$DIR/../doc"
|
||||
|
||||
# this command requires ssh configured to the proper target
|
||||
tar czf - -C "$DOCDIR/html" . | ssh psycoweb tar xzvf - -C docs/current
|
||||
|
||||
# download the script to upload the docs to PyPI
|
||||
test -e "$DIR/pypi_docs_upload.py" \
|
||||
|| wget -O "$DIR/pypi_docs_upload.py" \
|
||||
https://gist.githubusercontent.com/dvarrazzo/dac46237070d69dbc075/raw
|
||||
|
||||
# this command requires a ~/.pypirc with the right privileges
|
||||
python "$DIR/pypi_docs_upload.py" psycopg2 "$DOCDIR/html"
|
55
scripts/upload-release.sh
Executable file
55
scripts/upload-release.sh
Executable file
|
@ -0,0 +1,55 @@
|
|||
#!/bin/bash
|
||||
# Script to create a psycopg release
|
||||
#
|
||||
# You must create a release tag before running the script, e.g. 2_5_4.
|
||||
# The script will check out in a clear environment, build the sdist package,
|
||||
# unpack and test it, then upload on PyPI and on the psycopg website.
|
||||
|
||||
set -e
|
||||
|
||||
REPO_URL=git@github.com:psycopg/psycopg2.git
|
||||
|
||||
VER=$(grep ^PSYCOPG_VERSION setup.py | cut -d "'" -f 2)
|
||||
|
||||
# avoid releasing a testing version
|
||||
echo "$VER" | grep -qE '^[0-9]+\.[0-9]+(\.[0-9]+)?$' \
|
||||
|| (echo "bad release: $VER" >&2 && exit 1)
|
||||
|
||||
# Check out in a clean environment
|
||||
rm -rf rel
|
||||
mkdir rel
|
||||
cd rel
|
||||
git clone $REPO_URL psycopg
|
||||
cd psycopg
|
||||
TAG=${VER//./_}
|
||||
git checkout -b $TAG $TAG
|
||||
make env # to build the docs
|
||||
make sdist
|
||||
|
||||
# Test the sdist just created
|
||||
cd dist
|
||||
tar xzvf psycopg2-$VER.tar.gz
|
||||
cd psycopg2-$VER
|
||||
make
|
||||
make check
|
||||
cd ../../
|
||||
|
||||
read -p "if you are not fine with the above stop me now..."
|
||||
|
||||
# upload to pypi and to the website
|
||||
|
||||
python setup.py sdist --formats=gztar upload -s
|
||||
|
||||
DASHVER=${VER//./-}
|
||||
DASHVER=${DASHVER:0:3}
|
||||
|
||||
# Requires ssh configuration for 'psycoweb'
|
||||
scp dist/psycopg2-${VER}.tar.gz psycoweb:tarballs/PSYCOPG-${DASHVER}/
|
||||
ssh psycoweb ln -sfv PSYCOPG-${DASHVER}/psycopg2-${VER}.tar.gz \
|
||||
tarballs/psycopg2-latest.tar.gz
|
||||
|
||||
scp dist/psycopg2-${VER}.tar.gz.asc psycoweb:tarballs/PSYCOPG-${DASHVER}/
|
||||
ssh psycoweb ln -sfv PSYCOPG-${DASHVER}/psycopg2-${VER}.tar.gz.asc \
|
||||
tarballs/psycopg2-latest.tar.gz.asc
|
||||
|
||||
echo "great, now write release notes and an email!"
|
Loading…
Reference in New Issue
Block a user