2020-07-15 20:54:43 +00:00
|
|
|
export DATABASE:=$(shell find . -maxdepth 1 -mindepth 1 -name '*.db.tar.xz' -or -name '*.db.tar.zst')
|
2019-09-29 23:20:25 +00:00
|
|
|
export REPOKEY:=D0391BF9
|
|
|
|
|
|
|
|
|
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: aur_update
|
|
|
|
do_updates: repo_update
|
|
|
|
|
|
|
|
do_cleanup: cleanup_repo
|
|
|
|
do_cleanup: cleanup_orphan_signatures
|
|
|
|
do_cleanup: sign_database
|
2019-09-29 23:20:25 +00:00
|
|
|
|
|
|
|
download:
|
|
|
|
vault2env --key=secret/aws/private -- aws s3 sync \
|
|
|
|
--delete \
|
|
|
|
--exclude '*.old*' \
|
|
|
|
--exclude '.git/*' \
|
|
|
|
--acl=public-read \
|
|
|
|
s3://arch-luzifer-io/repo/x86_64/ $(CURDIR)/
|
|
|
|
|
2020-01-05 22:26:10 +00:00
|
|
|
upload: cleanup_files check_archive_mix
|
2019-09-29 23:20:25 +00:00
|
|
|
vault2env --key=secret/aws/private -- aws s3 sync \
|
|
|
|
--delete \
|
|
|
|
--exclude '*.old*' \
|
|
|
|
--exclude '.git/*' \
|
|
|
|
--acl=public-read \
|
|
|
|
$(CURDIR)/ s3://arch-luzifer-io/repo/x86_64/
|
|
|
|
|
|
|
|
# Maintenance targets
|
|
|
|
|
|
|
|
aur_update: check_tools check_database
|
|
|
|
bash -euo pipefail -c 'for pkg in $$(script_level=1 ./scripts/check_aur_updates.sh); do script_level=1 ./scripts/update-aur.sh $${pkg}; done'
|
|
|
|
|
2019-10-06 22:09:33 +00:00
|
|
|
check_aur_update:
|
|
|
|
bash ./scripts/check_aur_updates.sh
|
|
|
|
|
2019-09-29 23:20:25 +00:00
|
|
|
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 repoctl
|
|
|
|
@which vault
|
|
|
|
@which vault2env
|
|
|
|
|
|
|
|
cleanup_files:
|
|
|
|
rm -f *.old* scripts/repoctl.toml
|
|
|
|
|
|
|
|
cleanup_orphan_signatures: check_database
|
|
|
|
bash -euo pipefail -c 'for i in *.sig; do [[ -f $${i//.sig} ]] || rm $${i}; done'
|
|
|
|
|
|
|
|
cleanup_repo: check_tools check_database scripts/repoctl.toml
|
|
|
|
repoctl update
|
|
|
|
|
2021-09-23 06:47:24 +00:00
|
|
|
list_packages:
|
|
|
|
tar -tf luzifer.db.tar.xz | grep -v '/desc' | sed -E 's/(.*)-([^-]+-[0-9]+)\//\1\t\2/' | sort | column -t >packages.txt
|
|
|
|
|
|
|
|
repo_update: check_tools check_database load_ssh_key
|
2019-09-29 23:20:25 +00:00
|
|
|
bash -euo pipefail -c 'for repo in $$(grep -v "^#" repo-urls); do script_level=1 ./scripts/update-repo.sh $${repo}; done'
|
|
|
|
|
|
|
|
scripts/repoctl.toml:
|
|
|
|
./scripts/repoctl.sh
|
|
|
|
|
|
|
|
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
|