2021-10-20 19:25:37 +00:00
|
|
|
export REPO_DIR:=$(CURDIR)/repo
|
2019-09-29 23:20:25 +00:00
|
|
|
export REPOKEY:=D0391BF9
|
2021-10-20 19:25:37 +00:00
|
|
|
export RETAIN:=1
|
2021-10-20 21:48:38 +00:00
|
|
|
export DATABASE:=$(REPO_DIR)/luzifer.db.tar.zst
|
2019-09-29 23:20:25 +00:00
|
|
|
|
|
|
|
|
2021-09-23 06:47:24 +00:00
|
|
|
maintanance: do_updates do_cleanup list_packages upload
|
2019-09-29 23:26:01 +00:00
|
|
|
|
|
|
|
do_updates: repo_update
|
|
|
|
|
|
|
|
do_cleanup: cleanup_repo
|
|
|
|
do_cleanup: cleanup_orphan_signatures
|
|
|
|
do_cleanup: sign_database
|
2021-10-20 21:48:38 +00:00
|
|
|
do_cleanup: cleanup_files
|
2023-02-19 23:26:41 +00:00
|
|
|
do_cleanup: list_packages
|
2019-09-29 23:20:25 +00:00
|
|
|
|
|
|
|
download:
|
2024-04-28 14:19:07 +00:00
|
|
|
bash -ec "eval $$(vault2env --key secret/minio/archrepo --export) && s3sync --delete s3://archrepo/x86_64/ $(REPO_DIR)/"
|
2019-09-29 23:20:25 +00:00
|
|
|
|
2020-01-05 22:26:10 +00:00
|
|
|
upload: cleanup_files check_archive_mix
|
2024-04-28 14:19:07 +00:00
|
|
|
bash -ec "eval $$(vault2env --key secret/minio/archrepo --export) && s3sync --delete $(REPO_DIR)/ s3://archrepo/x86_64/"
|
2019-09-29 23:20:25 +00:00
|
|
|
|
|
|
|
# Maintenance targets
|
|
|
|
|
|
|
|
check_database:
|
|
|
|
test -n '$(DATABASE)'
|
|
|
|
|
|
|
|
check_tools:
|
|
|
|
@which aws
|
2021-09-23 06:47:24 +00:00
|
|
|
@which column
|
2019-09-29 23:20:25 +00:00
|
|
|
@which curl
|
|
|
|
@which docker
|
|
|
|
@which jq
|
|
|
|
@which repo-add
|
|
|
|
@which vault
|
|
|
|
@which vault2env
|
|
|
|
|
|
|
|
cleanup_files:
|
2021-10-20 19:28:56 +00:00
|
|
|
rm -f $(REPO_DIR)/*.old*
|
2019-09-29 23:20:25 +00:00
|
|
|
|
2021-10-20 19:25:37 +00:00
|
|
|
cleanup_orphan_signatures:
|
|
|
|
bash -euo pipefail -c 'for i in $(REPO_DIR)/*.sig; do [[ -f $${i//.sig} ]] || rm $${i}; done'
|
2019-09-29 23:20:25 +00:00
|
|
|
|
2021-10-20 19:25:37 +00:00
|
|
|
cleanup_repo: check_tools
|
|
|
|
bash ./scripts/do_cleanup.sh
|
2019-09-29 23:20:25 +00:00
|
|
|
|
2021-10-20 21:48:38 +00:00
|
|
|
clear_database:
|
|
|
|
rm -f $(REPO_DIR)/*.db* $(REPO_DIR)/*.files*
|
|
|
|
|
2021-09-23 06:47:24 +00:00
|
|
|
list_packages:
|
2023-12-11 22:31:48 +00:00
|
|
|
bash ./scripts/listing.sh >$(REPO_DIR)/packages.txt
|
2021-09-23 06:47:24 +00:00
|
|
|
|
2021-10-20 19:25:37 +00:00
|
|
|
repo_update: check_tools load_ssh_key
|
2024-06-07 22:38:28 +00:00
|
|
|
bash ./scripts/update-all.sh
|
2019-09-29 23:20:25 +00:00
|
|
|
|
|
|
|
sign_database:
|
|
|
|
repo-add -s --key $(REPOKEY) $(DATABASE)
|
2020-01-05 22:26:10 +00:00
|
|
|
|
|
|
|
# Helpers
|
|
|
|
|
|
|
|
check_archive_mix:
|
|
|
|
bash ./scripts/has_archive_mix.sh
|
2021-09-23 06:47:24 +00:00
|
|
|
|
|
|
|
load_ssh_key:
|
|
|
|
vault-sshadd loki
|