forked from artix/artools
Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
20bb1bb92a | |||
4b9a6b9314 |
55
src/lib/pkg/admin.sh
Normal file
55
src/lib/pkg/admin.sh
Normal file
@@ -0,0 +1,55 @@
|
||||
#!/hint/bash
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
[[ -z ${ARTOOLS_INCLUDE_ADMIN_SH:-} ]] || return 0
|
||||
ARTOOLS_INCLUDE_ADMIN_SH=1
|
||||
|
||||
set -e
|
||||
|
||||
artixpkg_admin_usage() {
|
||||
local -r COMMAND=${_ARTOOLS_COMMAND:-${BASH_SOURCE[0]##*/}}
|
||||
cat <<- _EOF_
|
||||
Usage: ${COMMAND} [COMMAND] [OPTIONS]
|
||||
|
||||
COMMANDS
|
||||
transfer Clone a package repository
|
||||
|
||||
OPTIONS
|
||||
-h, --help Show this help text
|
||||
|
||||
EXAMPLES
|
||||
$ ${COMMAND} transfer libfoo libbar
|
||||
_EOF_
|
||||
}
|
||||
|
||||
artixpkg_admin() {
|
||||
if (( $# < 1 )); then
|
||||
artixpkg_admin_usage
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# option checking
|
||||
while (( $# )); do
|
||||
case $1 in
|
||||
-h|--help)
|
||||
artixpkg_admin_usage
|
||||
exit 0
|
||||
;;
|
||||
transfer)
|
||||
_ARTOOLS_COMMAND+=" $1"
|
||||
shift
|
||||
# shellcheck source=src/lib/pkg/admin/transfer.sh
|
||||
source "${LIBDIR}"/pkg/admin/transfer.sh
|
||||
artixpkg_admin_transfer "$@"
|
||||
exit 0
|
||||
;;
|
||||
-*)
|
||||
die "invalid argument: %s" "$1"
|
||||
;;
|
||||
*)
|
||||
die "invalid command: %s" "$1"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
}
|
64
src/lib/pkg/admin/transfer.sh
Normal file
64
src/lib/pkg/admin/transfer.sh
Normal file
@@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
[[ -z ${ARTOOLS_INCLUDE_ADMIN_TRANSFER_SH:-} ]] || return 0
|
||||
ARTOOLS_INCLUDE_ADMIN_TRANSFER_SH=1
|
||||
|
||||
set -e
|
||||
|
||||
|
||||
artixpkg_admin_transfer_usage() {
|
||||
local -r COMMAND=${_ARTOOLS_COMMAND:-${BASH_SOURCE[0]##*/}}
|
||||
cat <<- _EOF_
|
||||
Usage: ${COMMAND} [OPTIONS] [PKGBASE]...
|
||||
|
||||
OPTIONS
|
||||
-h, --help Show this help text
|
||||
|
||||
EXAMPLES
|
||||
$ ${COMMAND} libfoo
|
||||
$ ${COMMAND} libfoo libbar
|
||||
_EOF_
|
||||
}
|
||||
|
||||
|
||||
|
||||
artixpkg_admin_transfer() {
|
||||
if (( $# < 1 )); then
|
||||
artixpkg_admin_transfer_usage
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# options
|
||||
local pkgbases=()
|
||||
local pkgbase
|
||||
local waste_org="landfill"
|
||||
|
||||
local command=${_ARTOOLS_COMMAND:-${BASH_SOURCE[0]##*/}}
|
||||
|
||||
while (( $# )); do
|
||||
case $1 in
|
||||
-h|--help)
|
||||
artixpkg_admin_transfer_usage
|
||||
exit 0
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
;;
|
||||
-*)
|
||||
die "invalid argument: %s" "$1"
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
pkgbases+=("$@")
|
||||
|
||||
for pkgbase in "${pkgbases[@]}"; do
|
||||
transfer_repo "${pkgbase}" "${waste_org}"
|
||||
done
|
||||
}
|
@@ -13,15 +13,6 @@ get_compliant_name() {
|
||||
| sed -E 's/[_\-]{2,}/-/g'
|
||||
}
|
||||
|
||||
# get_compliant_name(){
|
||||
# local gitname="$1"
|
||||
# case "$gitname" in
|
||||
# *+) gitname=${gitname//+/plus} ;;
|
||||
# *+*) gitname=${gitname//+/-} ;;
|
||||
# esac
|
||||
# printf "%s\n" "$gitname"
|
||||
# }
|
||||
|
||||
api_put() {
|
||||
curl -s -X PUT "$@"
|
||||
}
|
||||
@@ -107,23 +98,6 @@ list_all_repos() {
|
||||
-H "accept: application/json"
|
||||
}
|
||||
|
||||
replace_topic() {
|
||||
local url
|
||||
local repo="$1"
|
||||
local maintainer="$2"
|
||||
url="${GIT_HTTPS}/api/v1/repos/${GIT_ORG}/$repo/topics"
|
||||
|
||||
api_put "$url" \
|
||||
-H "accept: application/json" \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: token ${GIT_TOKEN}" \
|
||||
-d "{
|
||||
\"topics\": [
|
||||
\"${maintainer}\"
|
||||
]
|
||||
}"
|
||||
}
|
||||
|
||||
list_topics() {
|
||||
local url
|
||||
local pkgbase="$1"
|
||||
|
@@ -68,6 +68,14 @@ while (( $# )); do
|
||||
artixpkg_git "$@"
|
||||
exit 0
|
||||
;;
|
||||
admin)
|
||||
_ARTOOLS_COMMAND+=" $1"
|
||||
shift
|
||||
# shellcheck source=src/lib/pkg/admin.sh
|
||||
source "${LIBDIR}"/pkg/admin.sh
|
||||
artixpkg_admin "$@"
|
||||
exit 0
|
||||
;;
|
||||
version|--version|-V)
|
||||
_ARTOOLS_COMMAND+=" $1"
|
||||
shift
|
||||
|
Reference in New Issue
Block a user