Smaller fixes and delete branches

master
Marko Semet 2020-10-10 19:16:33 +02:00
parent 09d2eeff66
commit e901839a25
3 changed files with 18 additions and 9 deletions

View File

@ -13,12 +13,14 @@ done < <(printenv | cut -d '=' -f 1 | grep -vE '^(PWD|PATH|HOME|BUILD_DIR)$')
printenv &&
# Build
CONFIG_DIR="$(dirname "$0")" &&
(find '.flatpak-builder/build' '.flatpak-builder/cache' -delete || rm -rf ".flatpak-builder/build/*" ".flatpak-builder/build/.*" '.flatpak-builder/cache') &&
if [ -n "$NO_CLEAN_UP" ]; then
find '.flatpak-builder/build' '.flatpak-builder/cache' -delete ||
rm -rf ".flatpak-builder/build/*" ".flatpak-builder/build/.*" '.flatpak-builder/cache'
fi&&
flatpak-builder $3 --arch "$2" --install-deps-from=winebarrels --install-deps-only "$BUILD_DIR" "$1" &&
if [ -z "$4" ]; then
BUILD_DIR= exec flatpak-builder $3 --arch "$2" --sandbox --rebuild-on-sdk-change "$BUILD_DIR" "$1"
else
HASH="$("$CONFIG_DIR/hash_modules.py" --installed "$1" "$2" | sed -n '1p')" || exit 0 &&
HASH="$("$(dirname "$0")/hash_modules.py" --installed "$1" "$2" | sed -n '1p')" || exit 0 &&
BUILD_DIR= exec flatpak-builder $3 --arch "$2" --sandbox --rebuild-on-sdk-change --repo "$4" -s "WB_HASH='${HASH}'" "$BUILD_DIR" "$1"
fi

View File

@ -1,12 +1,11 @@
#! /usr/bin/env bash
# Args: <config-file> <arch> <builder-args> [<repo>]
CONFIG_DIR="$(dirname "$0")" &&
if [ -z "$4" ]; then
exec "$CONFIG_DIR/build.sh" "$@"
exec "$(dirname "$0")/build.sh" "$@"
else
"$CONFIG_DIR/hash_modules.py" --require-build --installed "$1" "$2" &&
exec "$CONFIG_DIR/build.sh" "$@"
"$(dirname "$0")/hash_modules.py" --require-build --installed "$1" "$2" &&
exec "$(dirname "$0")/build.sh" "$@"
fi
echo "No rebuild required."

View File

@ -50,6 +50,10 @@ class Repo:
subprocess.run(["tar", "-cf", "empty.tar", "-T", "/dev/null"], check=True)
subprocess.run(["ostree", "commit", "--repo", self._repo, "--tar-autocreate-parents", "--tree=tar=empty.tar", "-b", "empty"], check=True)
os.remove("empty.tar")
def delete(self, ref:str):
assert isinstance(ref, str)
os.remove(os.join(self._repo, "refs", "heads", *(ref.split("/"))))
if __name__ == "__main__":
@ -62,6 +66,7 @@ if __name__ == "__main__":
parser.add_argument("--collection", "-c", type=str, default=None, nargs="?", help="Set collection")
parser.add_argument("--gpg", "-g", type=str, default=None, nargs="?", help="GPG-Key")
parser.add_argument("--no-fsync", dest="no_fsync", action="store_const", const=True, default=False, help="Not fsync")
parser.add_argument("--delete", action="store_const", const=True, default=False, help="Delete not existing branches")
args = parser.parse_args()
# Gen sources
@ -80,10 +85,13 @@ if __name__ == "__main__":
target_repo.move_commit(i, j, no_fsync=args.no_fsync, gpg_key=args.gpg, collection=args.collection)
# Create empty
if "empty" not in target_repo.flatpaks:
if not args.delete and "empty" not in target_repo.flatpaks:
target_repo.gen_empty()
# Remove old
commits_added = set(commits_added)
for i in filter(lambda x: x not in commits_added, target_repo.flatpaks):
target_repo.make_eol(i, no_fsync=args.no_fsync, gpg_key=args.gpg, collection=args.collection)
if args.delete:
target_repo.delete(i)
else:
target_repo.make_eol(i, no_fsync=args.no_fsync, gpg_key=args.gpg, collection=args.collection)