Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
46431619f2 | |||
12d2159c12 | |||
3865ceab58 | |||
890e631e1b | |||
273e928905 | |||
f5c328f8e5 | |||
4089151791 | |||
211579f9d7 |
@@ -147,7 +147,7 @@ elif [[ $(cat "$working_dir/.artools") != ${CHROOTVERSION} ]]; then
|
||||
die "chroot '%s' is not at version %s. Please rebuild." "$working_dir" "${CHROOTVERSION}"
|
||||
fi
|
||||
|
||||
sync_host_localtime
|
||||
#sync_host_localtime
|
||||
|
||||
chroot_api_mount "${working_dir}" || die "failed to setup API filesystems in chroot %s" "${working_dir}"
|
||||
|
||||
|
@@ -132,6 +132,63 @@ subrepo_new(){
|
||||
commit_jenkins_files "${PACKAGE}"
|
||||
}
|
||||
|
||||
get_group_packages(){
|
||||
local pkglist="${SYSCONFDIR}/pkglist.d/$1.list"
|
||||
|
||||
local _space="s| ||g" _clean=':a;N;$!ba;s/\n/ /g' _com_rm="s|#.*||g"
|
||||
|
||||
local pkgs=($(sed "$_com_rm" "$pkglist" | sed "$_space" | sed "$_clean"))
|
||||
|
||||
local cases=
|
||||
for p in ${pkgs[@]};do
|
||||
cases=${cases:-}${cases:+|}${p}
|
||||
done
|
||||
echo $cases
|
||||
}
|
||||
|
||||
get_group(){
|
||||
local pkg="$1" fallback="${2##*/}" tree=
|
||||
eval "case $pkg in
|
||||
$(get_group_packages kernel)) tree=packages-kernel ;;
|
||||
$(get_group_packages net)) tree=packages-net ;;
|
||||
$(get_group_packages python)) tree=packages-python ;;
|
||||
$(get_group_packages perl)) tree=packages-perl ;;
|
||||
$(get_group_packages ruby)) tree=packages-ruby ;;
|
||||
$(get_group_packages openrc)) tree=packages-openrc ;;
|
||||
$(get_group_packages runit)) tree=packages-runit ;;
|
||||
$(get_group_packages s6)) tree=packages-s6 ;;
|
||||
$(get_group_packages media)) tree=packages-media ;;
|
||||
$(get_group_packages xorg)) tree=packages-xorg ;;
|
||||
$(get_group_packages qt5)) tree=packages-qt5 ;;
|
||||
$(get_group_packages gtk)) tree=packages-gtk ;;
|
||||
$(get_group_packages java)) tree=packages-java ;;
|
||||
$(get_group_packages haskell)) tree=packages-haskell ;;
|
||||
$(get_group_packages devel)) tree=packages-devel ;;
|
||||
$(get_group_packages lxqt)) tree=packages-lxqt ;;
|
||||
$(get_group_packages cinnamon)) tree=packages-cinnamon ;;
|
||||
$(get_group_packages kde)) tree=packages-kde ;;
|
||||
$(get_group_packages gnome)) tree=packages-gnome ;;
|
||||
$(get_group_packages mate)) tree=packages-mate ;;
|
||||
$(get_group_packages xfce)) tree=packages-xfce ;;
|
||||
$(get_group_packages wm)) tree=packages-wm ;;
|
||||
*) tree=$fallback ;;
|
||||
esac"
|
||||
echo $tree
|
||||
}
|
||||
|
||||
get_team(){
|
||||
local repo="$1" team=
|
||||
case $repo in
|
||||
*testing*|*staging*)
|
||||
set_arch_repos false false false
|
||||
team=$(find_repo "$srcpath")
|
||||
team=${team%-*}
|
||||
;;
|
||||
*) team=${repo%-*} ;;
|
||||
esac
|
||||
echo $team
|
||||
}
|
||||
|
||||
from_arch(){
|
||||
cd ${TREE_DIR_ARTIX}
|
||||
|
||||
@@ -159,7 +216,7 @@ from_arch(){
|
||||
msg2 "Artix Version: %s" "$artixver"
|
||||
else
|
||||
artixpath=${TREE_DIR_ARTIX}/$group/${PACKAGE}/trunk
|
||||
subrepo_new "${group}" "${repo%-*}"
|
||||
subrepo_new "${group}" "$(get_team $repo)"
|
||||
fi
|
||||
|
||||
msg "Sync (%s) from Arch [%s] to Artix [%s]" "${PACKAGE}" "${archpath##*archlinux/}" "${artixpath##*artixlinux/}"
|
||||
|
@@ -26,8 +26,9 @@ get_import_path(){
|
||||
}
|
||||
|
||||
compare_m(){
|
||||
local result=$(vercmp "$artixver" "$archver")
|
||||
local artixver="$1" artixrepo="$2" archver="$3" archrepo="$4"
|
||||
|
||||
local result=$(vercmp "$artixver" "$archver")
|
||||
if [[ $artixrepo == *testing* ]] || [[ $artixrepo == *staging* ]]; then
|
||||
if [[ "$archrepo" == "$artixrepo" ]]; then
|
||||
msg_row "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
|
||||
@@ -42,8 +43,9 @@ compare_m(){
|
||||
}
|
||||
|
||||
compare_u(){
|
||||
local result=$(vercmp "$artixver" "$archver")
|
||||
local artixver="$1" artixrepo="$2" archver="$3" archrepo="$4"
|
||||
|
||||
local result=$(vercmp "$artixver" "$archver")
|
||||
if [ $result -eq -1 ];then
|
||||
msg_row_upgrade "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
|
||||
printf "%s\n" "${archrepo%-*}:$pkg" >> ${TREE_DIR_ARTIX}/pkg_upgrades.list
|
||||
@@ -51,8 +53,9 @@ compare_u(){
|
||||
}
|
||||
|
||||
compare_d(){
|
||||
local result=$(vercmp "$artixver" "$archver")
|
||||
local artixver="$1" artixrepo="$2" archver="$3" archrepo="$4"
|
||||
|
||||
local result=$(vercmp "$artixver" "$archver")
|
||||
if [ $result -eq 1 ];then
|
||||
if [[ -n "$archver" ]] && [[ -n "$archrepo" ]];then
|
||||
msg_row_downgrade "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
|
||||
@@ -234,6 +237,21 @@ readonly table="%-18s %-18s %-25s %-27s %-27s %-10s"
|
||||
readonly tableU="%-20s %-35s %-30s %-10s"
|
||||
readonly tableQ="%-20s %-45s %s"
|
||||
|
||||
declare -A REPOS=(
|
||||
[core]=system
|
||||
[extra]=world
|
||||
[community]=galaxy
|
||||
[multilib]=lib32
|
||||
[testing]=gremlins
|
||||
[staging]=goblins
|
||||
[community-testing]=galaxy-gremlins
|
||||
[community-staging]=galaxy-goblins
|
||||
[multilib-testing]=lib32-gremlins
|
||||
[multilib-staging]=lib32-goblins
|
||||
[kde-unstable]=kde-wobble
|
||||
[gnome-unstable]=gnome-wobble
|
||||
)
|
||||
|
||||
searchrepos=(
|
||||
${REPOS[kde-unstable]}
|
||||
${REPOS[gnome-unstable]}
|
||||
|
@@ -22,7 +22,7 @@ find_cached_pkgfile() {
|
||||
local search=${pkg%.*}
|
||||
for dir in "${searchdirs[@]}"; do
|
||||
[[ -d $dir ]] || continue
|
||||
results+=$(find "$dir" -type f -name "$search.*" ! -path '*.sig')
|
||||
results+=$(find "$dir" -type f -name "$search.*" ! -path '*.sig' ! -path '*.log')
|
||||
done
|
||||
case ${#results[*]} in
|
||||
0)
|
||||
|
@@ -377,11 +377,7 @@ if chroot-run \
|
||||
"$copydir" \
|
||||
/chrootbuild "${makepkg_args[@]}"
|
||||
then
|
||||
pkgnames=()
|
||||
for pkgfile in "$copydir"/pkgdest/*; do
|
||||
pkgfile=${pkgfile##*/};
|
||||
pkgnames+=("${pkgfile%-*-*-*}");
|
||||
done
|
||||
mapfile -t pkgnames < <(sudo -u "$makepkg_user" bash -c 'source PKGBUILD; printf "%s\n" "${pkgname[@]}"')
|
||||
move_products
|
||||
else
|
||||
(( ret += 1 ))
|
||||
@@ -398,27 +394,28 @@ if (( ret != 0 )); then
|
||||
else
|
||||
if (( run_checkpkg )); then
|
||||
msg "Running checkpkg"
|
||||
# sync off-site databases for up-to-date queries
|
||||
trap 'rm -rf $dbpath; cleanup' EXIT INT TERM QUIT
|
||||
dbpath=$(mktemp -d --tmpdir makechrootpkg-database.XXXXXXXXXX)
|
||||
mkdir -p "$dbpath"
|
||||
pacman -Sy --dbpath "$dbpath" --logfile /dev/null
|
||||
|
||||
# query current package locations
|
||||
remotepkgs=($(pacman -Sddp --dbpath "$dbpath" --logfile /dev/null "${pkgnames[@]}"))
|
||||
if (( $? )); then
|
||||
mapfile -t remotepkgs < <(pacman --config "$copydir"/etc/pacman.conf \
|
||||
--dbpath "$copydir"/var/lib/pacman \
|
||||
-Sddp "${pkgnames[@]}")
|
||||
|
||||
if ! wait $!; then
|
||||
warning "Skipped checkpkg due to missing repo packages"
|
||||
exit 0
|
||||
fi
|
||||
# download package files if any non-local location exists
|
||||
for remotepkg in "${remotepkgs[@]}"; do
|
||||
[[ $remotepkg == file://* ]] && continue
|
||||
msg2 "Downloading current versions"
|
||||
pacman --noconfirm -Swdd --dbpath "$dbpath" --logfile /dev/null "${pkgnames[@]}"
|
||||
break
|
||||
if [[ $remotepkg != file://* ]]; then
|
||||
msg2 "Downloading current versions"
|
||||
chroot-run "$copydir" pacman --noconfirm -Swdd "${pkgnames[@]}"
|
||||
mapfile -t remotepkgs < <(pacman --config "$copydir"/etc/pacman.conf \
|
||||
--dbpath "$copydir"/var/lib/pacman \
|
||||
-Sddp "${pkgnames[@]}")
|
||||
break
|
||||
fi
|
||||
done
|
||||
msg2 "Checking packages"
|
||||
sudo -u "$makepkg_user" checkpkg --rmdir --warn
|
||||
sudo -u "$makepkg_user" checkpkg --rmdir --warn "${remotepkgs[@]/#file:\/\//}"
|
||||
fi
|
||||
true
|
||||
fi
|
||||
|
@@ -14,6 +14,7 @@
|
||||
# packages
|
||||
# community
|
||||
# packages-kernel
|
||||
# packages-net
|
||||
# packages-openrc
|
||||
# packages-runit
|
||||
# packages-s6
|
||||
@@ -32,6 +33,7 @@
|
||||
# packages-mate
|
||||
# packages-kde
|
||||
# packages-xfce
|
||||
# packages-wm
|
||||
# )
|
||||
|
||||
# HOST_TREE_ARCH=git://git.archlinux.org/svntogit
|
||||
|
@@ -27,16 +27,6 @@ create_repo() {
|
||||
echo
|
||||
}
|
||||
|
||||
delete_repo() {
|
||||
local pkg="$1" org="$2"
|
||||
local gitname=$(get_compliant_name "$pkg")
|
||||
|
||||
msg2 "Delete package repo [%s] in org (%s)" "${pkg}" "${org}"
|
||||
|
||||
curl -s -X DELETE "${GIT_URL}/api/v1/repos/$org/$gitname?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json"
|
||||
}
|
||||
|
||||
get_team_id() {
|
||||
local org="$1" team="$2"
|
||||
local id=$(curl -s -X GET "${GIT_URL}/api/v1/orgs/$org/teams/search?q=$team&access_token=${GIT_TOKEN}" \
|
||||
@@ -44,13 +34,6 @@ get_team_id() {
|
||||
echo $id
|
||||
}
|
||||
|
||||
list_team_repos() {
|
||||
local id="$1"
|
||||
local result=$(curl -X GET "${GIT_URL}/api/v1/teams/$id/repos?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json" | jq '.[]' | jq -r '.name')
|
||||
echo ${result[@]}
|
||||
}
|
||||
|
||||
add_repo_to_team() {
|
||||
local pkg="$1" org="$2" team="$3"
|
||||
local id=$(get_team_id "$org" "$team")
|
||||
@@ -72,40 +55,3 @@ remove_repo_from_team() {
|
||||
curl -s -X DELETE "${GIT_URL}/api/v1/teams/$id/repos/$org/$gitname?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json"
|
||||
}
|
||||
|
||||
add_user_to_team() {
|
||||
local org="$1" team="$2" user="$3"
|
||||
local id=$(get_team_id "$org" "$team")
|
||||
|
||||
msg2 "Adding [%s] to team (%s) in org (%s)" "$user" "$team" "$org"
|
||||
|
||||
curl -X PUT "${GIT_URL}/api/v1/teams/$id/members/$user?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json"
|
||||
}
|
||||
|
||||
remove_user_from_team() {
|
||||
local org="$1" team="$2" user="$3"
|
||||
local id=$(get_team_id "$org" "$team")
|
||||
|
||||
msg2 "Removing [%s] from team (%s) in org (%s)" "$user" "$team" "$org"
|
||||
|
||||
curl -X DELETE "${GIT_URL}/api/v1/teams/$id/members/$user?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json"
|
||||
}
|
||||
|
||||
create_team() {
|
||||
local org="$1" name="$2"
|
||||
local json="{ \"can_create_org_repo\": true, \"description\": \"\", \"includes_all_repositories\": false, \"name\": \"$name\", \"permission\": \"write\", \"units\": [ \"repo.code\", \"repo.issues\", \"repo.ext_issues\", \"repo.wiki\", \"repo.pulls\", \"repo.releases\", \"repo.ext_wiki\" ]}"
|
||||
|
||||
curl -X POST "${GIT_URL}/api/v1/orgs/$org/teams?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "$json"
|
||||
}
|
||||
|
||||
delete_team() {
|
||||
local org="$1" team="$2"
|
||||
local id=$(get_team_id "$org" "$team")
|
||||
curl -X DELETE "${GIT_URL}/api/v1/teams/$id?access_token=${GIT_TOKEN}" \
|
||||
-H "accept: application/json"
|
||||
}
|
||||
|
@@ -14,28 +14,6 @@
|
||||
|
||||
shopt -s extglob
|
||||
|
||||
declare -A REPOS=(
|
||||
[core]=system
|
||||
[extra]=world
|
||||
[community]=galaxy
|
||||
[multilib]=lib32
|
||||
[testing]=gremlins
|
||||
[staging]=goblins
|
||||
[community-testing]=galaxy-gremlins
|
||||
[community-staging]=galaxy-goblins
|
||||
[multilib-testing]=lib32-gremlins
|
||||
[multilib-staging]=lib32-goblins
|
||||
[kde-unstable]=kde-wobble
|
||||
[gnome-unstable]=gnome-wobble
|
||||
)
|
||||
|
||||
ARCH_REPOS=(
|
||||
core
|
||||
extra
|
||||
community
|
||||
multilib
|
||||
)
|
||||
|
||||
get_compliant_name(){
|
||||
local gitname="$1"
|
||||
case $gitname in
|
||||
@@ -44,50 +22,9 @@ get_compliant_name(){
|
||||
echo $gitname
|
||||
}
|
||||
|
||||
get_group_packages(){
|
||||
local pkglist="${SYSCONFDIR}/pkglist.d/$1.list"
|
||||
|
||||
local _space="s| ||g" _clean=':a;N;$!ba;s/\n/ /g' _com_rm="s|#.*||g"
|
||||
|
||||
local pkgs=($(sed "$_com_rm" "$pkglist" | sed "$_space" | sed "$_clean"))
|
||||
|
||||
local cases=
|
||||
for p in ${pkgs[@]};do
|
||||
cases=${cases:-}${cases:+|}${p}
|
||||
done
|
||||
echo $cases
|
||||
}
|
||||
|
||||
get_group(){
|
||||
local pkg="$1" fallback="${2##*/}" tree=
|
||||
eval "case $pkg in
|
||||
$(get_group_packages kernel)) tree=packages-kernel ;;
|
||||
$(get_group_packages python)) tree=packages-python ;;
|
||||
$(get_group_packages perl)) tree=packages-perl ;;
|
||||
$(get_group_packages ruby)) tree=packages-ruby ;;
|
||||
$(get_group_packages openrc)) tree=packages-openrc ;;
|
||||
$(get_group_packages runit)) tree=packages-runit ;;
|
||||
$(get_group_packages s6)) tree=packages-s6 ;;
|
||||
$(get_group_packages media)) tree=packages-media ;;
|
||||
$(get_group_packages xorg)) tree=packages-xorg ;;
|
||||
$(get_group_packages qt5)) tree=packages-qt5 ;;
|
||||
$(get_group_packages gtk)) tree=packages-gtk ;;
|
||||
$(get_group_packages java)) tree=packages-java ;;
|
||||
$(get_group_packages haskell)) tree=packages-haskell ;;
|
||||
$(get_group_packages devel)) tree=packages-devel ;;
|
||||
$(get_group_packages lxqt)) tree=packages-lxqt ;;
|
||||
$(get_group_packages cinnamon)) tree=packages-cinnamon ;;
|
||||
$(get_group_packages kde)) tree=packages-kde ;;
|
||||
$(get_group_packages gnome)) tree=packages-gnome ;;
|
||||
$(get_group_packages mate)) tree=packages-mate ;;
|
||||
$(get_group_packages xfce)) tree=packages-xfce ;;
|
||||
*) tree=$fallback ;;
|
||||
esac"
|
||||
echo $tree
|
||||
}
|
||||
|
||||
set_arch_repos(){
|
||||
local x="$1" y="$2" z="$3"
|
||||
ARCH_REPOS=(core extra community multilib)
|
||||
|
||||
$x && ARCH_REPOS+=(testing community-testing multilib-testing)
|
||||
$y && ARCH_REPOS+=(staging community-staging multilib-staging)
|
||||
|
@@ -41,6 +41,7 @@ load_pkg_config(){
|
||||
packages
|
||||
community
|
||||
packages-kernel
|
||||
packages-net
|
||||
packages-openrc
|
||||
packages-runit
|
||||
packages-s6
|
||||
@@ -58,6 +59,7 @@ load_pkg_config(){
|
||||
packages-mate
|
||||
packages-kde
|
||||
packages-xfce
|
||||
packages-wm
|
||||
# packages-haskell
|
||||
)
|
||||
|
||||
|
Reference in New Issue
Block a user