mirror of
https://github.com/status-im/PyGithub.git
synced 2026-09-02 11:51:10 +00:00
Use set -e in manage.sh for some safety, and allow the remote to be overridden for those of us who have different setups, and switch to using flake8 for checks like travis does.
65 lines
1.5 KiB
Bash
Executable File
65 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
# -*- coding: utf-8 -*-
|
|
|
|
set -e
|
|
|
|
function publish {
|
|
bump
|
|
readme
|
|
push
|
|
}
|
|
|
|
function check {
|
|
flake8
|
|
}
|
|
|
|
function fix_headers {
|
|
python scripts/fix_headers.py
|
|
}
|
|
|
|
function test {
|
|
test2
|
|
test3
|
|
}
|
|
|
|
function test2 {
|
|
coverage run --branch --include=github/*.py --omit=github/tests/*.py setup.py test --quiet || exit
|
|
coverage report --show-missing || exit
|
|
}
|
|
|
|
function test3 {
|
|
python3 setup.py test --quiet || exit
|
|
}
|
|
|
|
function bump {
|
|
previousVersion=$( grep '^version =' setup.py | sed 's/version = \"\(.*\)\"/\1/' )
|
|
echo "Next version number? (previous: '$previousVersion')"
|
|
read version
|
|
if [ -z "$version" ]; then
|
|
echo "empty version string"
|
|
exit 1
|
|
fi
|
|
sed -i -b "s/version = .*/version = \"$version\"/" setup.py
|
|
}
|
|
|
|
function readme {
|
|
# creates a changelog based on the commits from the previous version until now
|
|
changelog=$(tail -n +6 doc/changes.rst)
|
|
gitlog=$(git log v$previousVersion.. --oneline --pretty=format:'* %s (%h)' | grep -v "Merge")
|
|
today=$(date "+(%B %d, %Y)")
|
|
echo -e "Change log\n==========\n\nStable versions\n~~~~~~~~~~~~~~~\n\nVersion $version $today\n-----------------------------------\n\n$gitlog\n$changelog" > doc/changes.rst
|
|
}
|
|
|
|
function push {
|
|
echo "Break (Ctrl+c) here if something is wrong. Else, press enter"
|
|
read foobar
|
|
|
|
git commit -am "Publish version $version"
|
|
|
|
git tag -m "Version $version" v$version
|
|
|
|
git push --tags ${REMOTE:-origin} master
|
|
}
|
|
|
|
$1
|