Files
@ 6e270cedc8aa
Branch filter:
Location: kallithea/scripts/make-release - annotation
6e270cedc8aa
2.4 KiB
text/plain
setup-db: perform an initial repository scan as stated by the docs (Issue #302)
The documentation, as well as the prompt text inside setup-db itself, states
that the repository root location will be scanned automatically for existing
repositories.
However, this is not actually the case. Only exception is when the
'initial_repo_scan' is set to True in the ini file; in that case the scan is
done on each start of Kallithea.
Add the required repo scan logic at the end of setup-db, after setting up
the application completely (the database has only just been set up).
The app setup code from BasePasterCommand is duplicated - this command doesn't
fit in and need to run both before and after database creation.
The scan call from kallithea/config/app_cfg.py is also duplicated - that will
be removed next.
The documentation, as well as the prompt text inside setup-db itself, states
that the repository root location will be scanned automatically for existing
repositories.
However, this is not actually the case. Only exception is when the
'initial_repo_scan' is set to True in the ini file; in that case the scan is
done on each start of Kallithea.
Add the required repo scan logic at the end of setup-db, after setting up
the application completely (the database has only just been set up).
The app setup code from BasePasterCommand is duplicated - this command doesn't
fit in and need to run both before and after database creation.
The scan call from kallithea/config/app_cfg.py is also duplicated - that will
be removed next.
d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 d4f66ca15110 d4f66ca15110 d4f66ca15110 d4f66ca15110 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 dba4e770d4b6 | #!/bin/bash
set -e
set -x
echo "Install/verify tools needed for building and uploading stuff"
pip install --upgrade -e .
pip install --upgrade -r dev_requirements.txt Sphinx Sphinx-PyPI-upload
echo "Cleanup and update copyrights ... and clean checkout"
scripts/run-all-cleanup
scripts/update-copyrights.py
hg up -cr .
echo "Make release build from clean checkout in build/"
rm -rf build dist
hg archive build
cd build
echo "Check MANIFEST.in"
sed -e 's/[^ ]*[ ]*\([^ ]*\).*/\1/g' MANIFEST.in | grep -v '^node_modules/bootstrap\|^kallithea/public/css/style.css' | xargs ls -lad
echo "Build dist"
python2 setup.py compile_catalog
python2 setup.py sdist
echo "Verify VERSION from kallithea/__init__.py"
namerel=$(cd dist && echo Kallithea-*.tar.gz)
namerel=${namerel%.tar.gz}
version=${namerel#Kallithea-}
ls -l $(pwd)/dist/$namerel.tar.gz
echo "Releasing Kallithea $version in directory $namerel"
echo "Verify dist file content"
diff -u <((hg mani | grep -v '^\.hg') | LANG=C sort) <(tar tf dist/Kallithea-$version.tar.gz | sed "s|^$namerel/||" | grep . | grep -v '^kallithea/i18n/.*/LC_MESSAGES/kallithea.mo$\|^Kallithea.egg-info/\|^PKG-INFO$\|/$' | LANG=C sort)
! tar tf dist/Kallithea-$version.tar.gz | grep "$namerel/node_modules/bootstrap/\$"
echo "Verify docs build"
python2 setup.py build_sphinx # not used yet ... but we want to make sure it builds
cat - << EOT
Now, make sure
* the copyright and contributor lists have been updated
* all tests are passing
* release note is ready
* announcement is ready
* source has been pushed to https://kallithea-scm.org/repos/kallithea
EOT
echo "Verify current revision is tagged for $version"
hg log -r "'$version'&." | grep .
echo -n "Enter \"pypi\" to upload Kallithea $version to pypi: "
read answer
[ "$answer" = "pypi" ]
echo "Upload docs to pypi"
# See https://wiki.python.org/moin/PyPiDocumentationHosting
python2 setup.py build_sphinx upload_sphinx
xdg-open https://pythonhosted.org/Kallithea/
xdg-open http://packages.python.org/Kallithea/installation.html
echo "Rebuild readthedocs for docs.kallithea-scm.org"
xdg-open https://readthedocs.org/projects/kallithea/
curl -X POST http://readthedocs.org/build/kallithea
xdg-open https://readthedocs.org/builds/kallithea/
xdg-open http://docs.kallithea-scm.org/en/latest/ # or whatever the branch is
extraargs=${EMAIL:+--identity=$EMAIL}
python2 setup.py sdist upload --sign $extraargs
xdg-open https://pypi.python.org/pypi/Kallithea
|