mirror of
https://github.com/arcan1s/ahriman.git
synced 2025-04-24 15:27:17 +00:00
replace script by makefile
This commit is contained in:
parent
47fc5bca57
commit
22d2057c3a
46
Makefile
Normal file
46
Makefile
Normal file
@ -0,0 +1,46 @@
|
||||
.PHONY: archive archive_directory archlinux clean directory push version
|
||||
.DEFAULT_GOAL := archlinux
|
||||
|
||||
PROJECT := ahriman
|
||||
|
||||
FILES := COPYING CONFIGURING.md README.md package src setup.py
|
||||
TARGET_FILES := $(addprefix $(PROJECT)/, $(FILES))
|
||||
IGNORE_FILES := package/archlinux src/.mypy_cache
|
||||
|
||||
ifndef VERSION
|
||||
$(error VERSION is not set)
|
||||
endif
|
||||
|
||||
$(TARGET_FILES) : $(addprefix $(PROJECT), %) : $(addprefix ., %) directory version
|
||||
@cp -rp $< $@
|
||||
|
||||
archive: archive_directory
|
||||
tar cJf "$(PROJECT)-$(VERSION)-src.tar.xz" "$(PROJECT)"
|
||||
rm -rf "$(PROJECT)"
|
||||
|
||||
archive_directory: $(TARGET_FILES)
|
||||
rm -fr $(addprefix $(PROJECT)/, $(IGNORE_FILES))
|
||||
find $(PROJECT) -type f -name '*.pyc' -delete
|
||||
find $(PROJECT) -depth -type d -name '__pycache__' -execdir rm -rf {} +
|
||||
find $(PROJECT) -depth -type d -name '*.egg-info' -execdir rm -rf {} +
|
||||
|
||||
archlinux: archive
|
||||
sed -i "/sha512sums=('[0-9A-Fa-f]*/s/[^'][^)]*/sha512sums=('$$(sha512sum $(PROJECT)-$(VERSION)-src.tar.xz | awk '{print $$1}')'/" package/archlinux/PKGBUILD
|
||||
sed -i "s/pkgver=[0-9.]*/pkgver=$(VERSION)/" package/archlinux/PKGBUILD
|
||||
|
||||
clean:
|
||||
find . -type f -name '$(PROJECT)-*-src.tar.xz' -delete
|
||||
rm -rf "$(PROJECT)"
|
||||
|
||||
directory: clean
|
||||
mkdir "$(PROJECT)"
|
||||
|
||||
push: archlinux
|
||||
git add package/archlinux/PKGBUILD src/ahriman/version.py
|
||||
git commit -m "Release $(VERSION)"
|
||||
git push
|
||||
git tag "$(VERSION)"
|
||||
git push --tags
|
||||
|
||||
version:
|
||||
sed -i "/__version__ = '[0-9.]*/s/[^'][^)]*/__version__ = '$(VERSION)'/" src/ahriman/version.py
|
@ -1,35 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
VERSION="$1"
|
||||
ARCHIVE="ahriman"
|
||||
FILES="COPYING CONFIGURING.md README.md package src setup.py"
|
||||
IGNORELIST="build .idea package/archlinux package/*src.tar.xz"
|
||||
|
||||
# set version
|
||||
sed -i "/__version__ = '[0-9.]*/s/[^'][^)]*/__version__ = '$VERSION'/" src/ahriman/version.py
|
||||
|
||||
# create archive
|
||||
[[ -e $ARCHIVE-$VERSION-src.tar.xz ]] && rm -f "$ARCHIVE-$VERSION-src.tar.xz"
|
||||
[[ -d $ARCHIVE ]] && rm -rf "$ARCHIVE"
|
||||
mkdir "$ARCHIVE"
|
||||
for FILE in ${FILES[*]}; do cp -r "$FILE" "$ARCHIVE"; done
|
||||
for FILE in ${IGNORELIST[*]}; do rm -rf "$ARCHIVE/$FILE"; done
|
||||
tar cJf "$ARCHIVE-$VERSION-src.tar.xz" "$ARCHIVE"
|
||||
rm -rf "$ARCHIVE"
|
||||
|
||||
# update checksums
|
||||
SHA512SUMS=$(sha512sum $ARCHIVE-$VERSION-src.tar.xz | awk '{print $1}')
|
||||
sed -i "/sha512sums=('[0-9A-Fa-f]*/s/[^'][^)]*/sha512sums=('$SHA512SUMS'/" package/archlinux/PKGBUILD
|
||||
sed -i "s/pkgver=[0-9.]*/pkgver=$VERSION/" package/archlinux/PKGBUILD
|
||||
|
||||
# clear
|
||||
find . -type f -name '*src.tar.xz' -not -name "*$VERSION-src.tar.xz" -exec rm -f {} \;
|
||||
|
||||
read -p "Publish release? [Ny] " -n 1 -r
|
||||
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||||
git add package/archlinux/PKGBUILD src/ahriman/version.py
|
||||
git commit -m "Release $VERSION" && git push
|
||||
git tag "$VERSION" && git push --tags
|
||||
fi
|
Loading…
Reference in New Issue
Block a user