improve release process (not yet perfect)

Signed-off-by: Nico Schottelius <nico@bento.schottelius.org>
This commit is contained in:
Nico Schottelius 2013-07-12 21:26:14 +02:00
parent 8209009ddc
commit 71f01ca735
3 changed files with 23 additions and 19 deletions

View file

@ -95,12 +95,12 @@ man: $(MANTYPEALL) $(MANREFALL) $(MANSTATICALL)
# Manpages #5: release part # Manpages #5: release part
MANWEBDIR=$(WEBBASE)/man/$(CHANGELOG_VERSION) MANWEBDIR=$(WEBBASE)/man/$(CHANGELOG_VERSION)
man-dist: man man-dist: man check-date
rm -rf "${MANWEBDIR}" rm -rf "${MANWEBDIR}"
mkdir -p "${MANWEBDIR}/man1" "${MANWEBDIR}/man7" mkdir -p "${MANWEBDIR}/man1" "${MANWEBDIR}/man7"
cp ${MAN1DSTDIR}/*.html ${MAN1DSTDIR}/*.css ${MANWEBDIR}/man1 cp ${MAN1DSTDIR}/*.html ${MAN1DSTDIR}/*.css ${MANWEBDIR}/man1
cp ${MAN7DSTDIR}/*.html ${MAN7DSTDIR}/*.css ${MANWEBDIR}/man7 cp ${MAN7DSTDIR}/*.html ${MAN7DSTDIR}/*.css ${MANWEBDIR}/man7
cd ${MANWEBDIR} && git add . && git commit -m "cdist manpages update: $(CHANGELOG_VERSION)" cd ${MANWEBDIR} && git add . && git commit -m "cdist manpages update: $(CHANGELOG_VERSION)" || true
man-release: web-release man-release: web-release
# Fix ikiwiki, which does not like symlinks for pseudo security # Fix ikiwiki, which does not like symlinks for pseudo security
@ -155,7 +155,7 @@ web-release: web-dist man-dist speeches-dist
ML_FILE=.lock-ml ML_FILE=.lock-ml
# Only send mail once - lock until new changelog things happened # Only send mail once - lock until new changelog things happened
$(ML_FILE): $(CHANGELOG_FILE) $(ML_FILE): $(CHANGELOG_FILE) git-release web-release
$(helper) ml-release $(CHANGELOG_VERSION) $(helper) ml-release $(CHANGELOG_VERSION)
touch $@ touch $@
@ -201,7 +201,9 @@ git-checkout-current:
$(VERSION_FILE): .git/refs/heads/* .git/refs/tags/* .git/HEAD $(VERSION_FILE): .git/refs/heads/* .git/refs/tags/* .git/HEAD
echo "VERSION = \"$$(git describe)\"" > $@ echo "VERSION = \"$$(git describe)\"" > $@
git-release: git-tag git-branch-merge git-release: git-tag
make git-branch-merge
make git-checkout-current
make pub make pub
################################################################################ ################################################################################
@ -212,10 +214,8 @@ PYPI_FILE=.lock-pypi
pypi-release: $(PYPI_FILE) pypi-release: $(PYPI_FILE)
$(PYPI_FILE): man $(VERSION_FILE) $(PYPI_FILE): man $(VERSION_FILE)
make git-checkout-stable
python3 setup.py sdist upload python3 setup.py sdist upload
touch $@ touch $@
make git-checkout-current
################################################################################ ################################################################################
# archlinux # archlinux
@ -227,7 +227,7 @@ $(ARCHLINUXTAR): PKGBUILD pypi-release
makepkg -c --source makepkg -c --source
PKGBUILD: PKGBUILD.in $(VERSION_FILE) PKGBUILD: PKGBUILD.in $(VERSION_FILE)
./PKGBUILD.in ./PKGBUILD.in $(CHANGELOG_VERSION)
$(ARCHLINUX_FILE): $(ARCHLINUXTAR) $(VERSION_FILE) $(ARCHLINUX_FILE): $(ARCHLINUXTAR) $(VERSION_FILE)
burp -c system $(ARCHLINUXTAR) burp -c system $(ARCHLINUXTAR)
@ -241,12 +241,15 @@ archlinux-release: $(ARCHLINUX_FILE)
CHECKS=check-date check-unittest CHECKS=check-date check-unittest
check-unittest: $(VERSION_FILE)
RELEASE=speeches-dist web-release RELEASE=speeches-dist web-release
RELEASE+=ml-release freecode-release RELEASE+=ml-release freecode-release
RELEASE+=man-dist pypi-release git-release RELEASE+=man-dist pypi-release git-release
RELEASE+=archlinux-release RELEASE+=archlinux-release
release: $(CHECKS) $(RELEASE) #release: $(CHECKS) $(RELEASE)
release: | $(CHECKS) man speeches
echo "Manual steps: linkedin, twitter" echo "Manual steps: linkedin, twitter"
# Code that is better handled in a shell script # Code that is better handled in a shell script

View file

@ -4,8 +4,8 @@ Changelog
* Changes are always commented with their author in (braces) * Changes are always commented with their author in (braces)
* Exception: No braces means author == Nico Schottelius * Exception: No braces means author == Nico Schottelius
2.2.0: 2013-07-11 2.2.0: 2013-07-12
* Build: Fixed several small issues in the Makefile * Build: Cleanup the Makefile
* Type __package_opkg: Use shortcut version * Type __package_opkg: Use shortcut version
* Core: Remove old pseudo object id "singleton" (Steven Armstrong) * Core: Remove old pseudo object id "singleton" (Steven Armstrong)

View file

@ -14,18 +14,19 @@
x rsync cdist docs to website repo & add to website repo x rsync cdist docs to website repo & add to website repo
x create blog entry & add to website repo x create blog entry & add to website repo
] ]
- upload website x upload website
- fix latest link for manpages x fix latest link for manpages
- send mail to mailinglist x send mail to mailinglist -> also requires git tag & git release
x should also require web-release including blog!
- create PKGBUILD for archlinux release - create PKGBUILD for archlinux release
- create git tag / read description x create git tag / read description
- if necessary create version branch t if necessary create version branch
- change to version branch and merge master branch x change to version branch and merge tag!
- update git repos x update git repos
- update website from repo x update website from repo
- create release on freecode x create release on freecode
x create versionfile x create versionfile
x make pypi release x make pypi release