Compare commits
31 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
184259c600 | ||
![]() |
b95c7dee0d | ||
![]() |
c7c67fbc21 | ||
![]() |
21a5c7e916 | ||
![]() |
62810d1d85 | ||
![]() |
865bd20674 | ||
![]() |
b46b5c626e | ||
![]() |
9ac4576666 | ||
![]() |
a88f196217 | ||
![]() |
c0e8ef4c26 | ||
![]() |
02b28e82ef | ||
![]() |
fb6d1d4c1b | ||
![]() |
9fc3fbd14d | ||
![]() |
72f2781cb9 | ||
![]() |
9ddd73c8b4 | ||
![]() |
3c92d5c87a | ||
![]() |
bc8f17cc86 | ||
![]() |
1ceb6926e9 | ||
![]() |
4d3a993a72 | ||
![]() |
a52bdc9799 | ||
![]() |
b62e90f778 | ||
![]() |
5d2fda793d | ||
![]() |
550663cfd1 | ||
![]() |
6c117fb97d | ||
![]() |
7e6d832314 | ||
![]() |
6fc7b124fc | ||
![]() |
a011005901 | ||
![]() |
5da4fea263 | ||
![]() |
e1b8a0493b | ||
![]() |
8fe1e82226 | ||
![]() |
aa8725518b |
5
Makefile
5
Makefile
@@ -1,5 +1,7 @@
|
|||||||
Version=0.7
|
Version=0.7
|
||||||
|
|
||||||
|
Chroot_version=0.7
|
||||||
|
|
||||||
PREFIX = /usr/local
|
PREFIX = /usr/local
|
||||||
SYSCONFDIR = /etc
|
SYSCONFDIR = /etc
|
||||||
|
|
||||||
@@ -97,7 +99,8 @@ all: $(BIN_BASE) $(BIN_PKG) $(BIN_ISO)
|
|||||||
edit = sed -e "s|@datadir[@]|$(DESTDIR)$(PREFIX)/share/artools|g" \
|
edit = sed -e "s|@datadir[@]|$(DESTDIR)$(PREFIX)/share/artools|g" \
|
||||||
-e "s|@sysconfdir[@]|$(DESTDIR)$(SYSCONFDIR)/artools|g" \
|
-e "s|@sysconfdir[@]|$(DESTDIR)$(SYSCONFDIR)/artools|g" \
|
||||||
-e "s|@libdir[@]|$(DESTDIR)$(PREFIX)/lib/artools|g" \
|
-e "s|@libdir[@]|$(DESTDIR)$(PREFIX)/lib/artools|g" \
|
||||||
-e "s|@version@|${Version}|"
|
-e "s|@version@|${Version}|" \
|
||||||
|
-e "s|@chroot_version@|${Chroot_version}|"
|
||||||
|
|
||||||
%: %.in Makefile
|
%: %.in Makefile
|
||||||
@echo "GEN $@"
|
@echo "GEN $@"
|
||||||
|
111
bin/buildtree.in
111
bin/buildtree.in
@@ -19,42 +19,17 @@ DATADIR='@datadir@'
|
|||||||
import ${LIBDIR}/util.sh
|
import ${LIBDIR}/util.sh
|
||||||
import ${LIBDIR}/util-pkg.sh
|
import ${LIBDIR}/util-pkg.sh
|
||||||
|
|
||||||
pull_tree(){
|
|
||||||
local branch="master" tree="$1"
|
|
||||||
local local_head=$(get_local_head "$branch")
|
|
||||||
local remote_head=$(get_remote_head "$branch")
|
|
||||||
local timer=$(get_timer)
|
|
||||||
msg "Checking [%s] ..." "$tree"
|
|
||||||
msg2 "local: %s" "${local_head}"
|
|
||||||
msg2 "remote: %s" "${remote_head}"
|
|
||||||
if [[ "${local_head}" == "${remote_head}" ]]; then
|
|
||||||
info "nothing to do"
|
|
||||||
else
|
|
||||||
info "needs pull"
|
|
||||||
git pull origin $branch
|
|
||||||
fi
|
|
||||||
msg "Done [%s]" "$tree"
|
|
||||||
show_elapsed_time "${FUNCNAME}" "${timer}"
|
|
||||||
}
|
|
||||||
|
|
||||||
clone_tree(){
|
|
||||||
local timer=$(get_timer) tree="$1" host_tree="$2"
|
|
||||||
msg "Preparing [%s] ..." "$tree"
|
|
||||||
info "clone"
|
|
||||||
git clone $host_tree.git
|
|
||||||
msg "Done [%s]" "$tree"
|
|
||||||
show_elapsed_time "${FUNCNAME}" "${timer}"
|
|
||||||
}
|
|
||||||
|
|
||||||
pull_tree_arch(){
|
pull_tree_arch(){
|
||||||
cd ${tree_dir_arch}
|
cd ${tree_dir_arch}
|
||||||
for tree in packages community;do
|
for tree in packages community;do
|
||||||
if [[ -d ${tree} ]];then
|
if [[ -d ${tree} ]];then
|
||||||
cd ${tree}
|
cd ${tree}
|
||||||
pull_tree "${tree}"
|
msg "Checking (%s)" "${tree}"
|
||||||
|
pull_tree
|
||||||
cd ..
|
cd ..
|
||||||
else
|
else
|
||||||
clone_tree "${tree}" "${host_tree_arch}/${tree}"
|
msg "Cloning (%s) ..." "$tree"
|
||||||
|
clone_tree "${host_tree_arch}/${tree}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@@ -65,10 +40,12 @@ pull_tree_artix(){
|
|||||||
if [[ -d ${tree} ]];then
|
if [[ -d ${tree} ]];then
|
||||||
cd ${tree}
|
cd ${tree}
|
||||||
git config --bool pull.rebase true
|
git config --bool pull.rebase true
|
||||||
pull_tree "${tree}"
|
msg "Checking (%s)" "${tree}"
|
||||||
|
pull_tree
|
||||||
cd ..
|
cd ..
|
||||||
else
|
else
|
||||||
clone_tree "${tree}" "${host_tree_artix}/${tree}"
|
msg "Cloning (%s) ..." "$tree"
|
||||||
|
clone_tree "${host_tree_artix}/${tree}"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@@ -106,7 +83,7 @@ show_version_table(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
show_artix_table(){
|
show_artix_table(){
|
||||||
msg_table_header "%-20s %-20s %-25s %-30s %-30s" "Arch Repo" "Artix Repo" "Package" "Arch version" "Artix version"
|
msg_table_header "%-20s %-20s %-25s %-30s %-30s" "Arch Repo" "Artix Repo" "Package" "Arch version" "Artix version"
|
||||||
for tree in packages packages-galaxy;do
|
for tree in packages packages-galaxy;do
|
||||||
local git=$(find ${tree_dir_artix}/$tree/ -mindepth 1 -maxdepth 1 -type d)
|
local git=$(find ${tree_dir_artix}/$tree/ -mindepth 1 -maxdepth 1 -type d)
|
||||||
for pkg_path in ${git[@]}; do
|
for pkg_path in ${git[@]}; do
|
||||||
@@ -149,39 +126,52 @@ show_artix_table(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
from_arch(){
|
from_arch(){
|
||||||
local pkg="$1" archtree="$2" artixtree="$3" src= dest=
|
local pkg="$1" src= dest=
|
||||||
src=${tree_dir_arch}/$archtree/$pkg/trunk
|
local git_tree_arch=$(find_tree "${tree_dir_arch}" "$pkg")
|
||||||
dest=${tree_dir_artix}/$artixtree/$pkg/trunk
|
[[ -z $git_tree_arch ]] && die "Package '%s' does not exist!" "$pkg"
|
||||||
|
src=${tree_dir_arch}/$git_tree_arch/$pkg/trunk
|
||||||
|
|
||||||
|
local git_tree_artix=$(find_tree "${tree_dir_artix}" "$pkg")
|
||||||
|
dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk
|
||||||
|
|
||||||
|
cd ${tree_dir_arch}/$git_tree_arch
|
||||||
|
|
||||||
source $src/PKGBUILD 2>/dev/null
|
source $src/PKGBUILD 2>/dev/null
|
||||||
cd ${tree_dir_arch}/$archtree
|
|
||||||
msg "Package: %s" "$pkg"
|
|
||||||
local archver=$(get_full_version $pkg)
|
local archver=$(get_full_version $pkg)
|
||||||
|
|
||||||
|
msg "Package: %s" "$pkg"
|
||||||
msg2 "Arch Version: %s" "$archver"
|
msg2 "Arch Version: %s" "$archver"
|
||||||
|
[[ -n ${makedepends[@]} ]] && msg2 "makedepends: %s" "${makedepends[*]}"
|
||||||
|
[[ -n ${checkdepends[@]} ]] && msg2 "depends: %s" "${checkdepends[*]}"
|
||||||
|
[[ -n ${depends[@]} ]] && msg2 "depends: %s" "${depends[*]}"
|
||||||
|
|
||||||
if [[ -d $dest ]];then
|
if [[ -d $dest ]];then
|
||||||
|
cd ${tree_dir_artix}/$git_tree_artix
|
||||||
|
|
||||||
source $dest/PKGBUILD 2>/dev/null
|
source $dest/PKGBUILD 2>/dev/null
|
||||||
cd ${tree_dir_artix}/$artixtree
|
|
||||||
local artixver=$(get_full_version $pkg)
|
local artixver=$(get_full_version $pkg)
|
||||||
|
|
||||||
msg2 "Artix Version: %s" "$artixver"
|
msg2 "Artix Version: %s" "$artixver"
|
||||||
if [ $(vercmp $artixver $archver) -lt 0 ];then
|
info "Update from archlinux (%s)" "$git_tree_arch"
|
||||||
info "Importing from archlinux (%s)" "$archtree"
|
rsync "${rsync_args[@]}" $src/ $dest/
|
||||||
rsync "${rsync_args[@]}" $src/ $dest/
|
patch_pkg "$pkg" "$tree"
|
||||||
patch_pkg "$pkg" "$tree"
|
|
||||||
else
|
|
||||||
warning "Versions match! Nothing to do!"
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
cd ${tree_dir_artix}/$artixtree
|
[[ $git_tree_arch == 'packages' ]] && git_tree_artix=$git_tree_arch
|
||||||
info "Importing from archlinux (%s)" "$archtree"
|
[[ $git_tree_arch == 'community' ]] && git_tree_artix='packages-galaxy'
|
||||||
|
|
||||||
|
cd ${tree_dir_artix}/$git_tree_artix
|
||||||
|
|
||||||
|
dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk
|
||||||
mkdir $pkg
|
mkdir $pkg
|
||||||
|
|
||||||
|
info "Import from archlinux (%s)" "$git_tree_arch"
|
||||||
rsync "${rsync_args[@]}" $src/ $dest/
|
rsync "${rsync_args[@]}" $src/ $dest/
|
||||||
patch_pkg "$pkg" "$tree"
|
patch_pkg "$pkg" "$tree"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
sync_repos(){
|
sync_repos(){
|
||||||
pull_tree_arch
|
${sync_arch} && pull_tree_arch
|
||||||
pull_tree_artix
|
pull_tree_artix
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -194,12 +184,12 @@ display_settings(){
|
|||||||
|
|
||||||
msg "ARGS:"
|
msg "ARGS:"
|
||||||
msg2 "sync: %s" "${sync}"
|
msg2 "sync: %s" "${sync}"
|
||||||
|
msg2 "sync_arch: %s" "${sync_arch}"
|
||||||
msg2 "compare: %s" "${compare}"
|
msg2 "compare: %s" "${compare}"
|
||||||
msg2 "upgrades: %s" "${upgrades}"
|
msg2 "upgrades: %s" "${upgrades}"
|
||||||
msg2 "downgrades: %s" "${downgrades}"
|
msg2 "downgrades: %s" "${downgrades}"
|
||||||
msg2 "artix: %s" "${artix}"
|
msg2 "artix: %s" "${artix}"
|
||||||
msg2 "import_packages: %s" "${import_packages}"
|
msg2 "import: %s" "${import}"
|
||||||
msg2 "import_community: %s" "${import_community}"
|
|
||||||
|
|
||||||
msg "PATHS:"
|
msg "PATHS:"
|
||||||
msg2 "tree_dir_artix: %s" "${tree_dir_artix}"
|
msg2 "tree_dir_artix: %s" "${tree_dir_artix}"
|
||||||
@@ -214,29 +204,26 @@ load_vars /etc/makepkg.conf
|
|||||||
|
|
||||||
pretend=false
|
pretend=false
|
||||||
sync=false
|
sync=false
|
||||||
|
sync_arch=true
|
||||||
compare=false
|
compare=false
|
||||||
upgrades=true
|
upgrades=true
|
||||||
downgrades=false
|
downgrades=false
|
||||||
artix=false
|
artix=false
|
||||||
import_packages=false
|
import=false
|
||||||
import_community=false
|
|
||||||
package=''
|
package=''
|
||||||
|
|
||||||
git_artix='packages'
|
|
||||||
git_arch='packages'
|
|
||||||
|
|
||||||
rsync_args=(-aWxvci --progress --delete-before --no-R --no-implied-dirs)
|
rsync_args=(-aWxvci --progress --delete-before --no-R --no-implied-dirs)
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
echo "Usage: ${0##*/} [options]"
|
echo "Usage: ${0##*/} [options]"
|
||||||
echo ' -p <pkg> Package name'
|
echo ' -p <pkg> Package name'
|
||||||
echo " -s Clone or pull repos"
|
echo " -s Clone or pull repos"
|
||||||
|
echo " -z Don't clone or pull arch repos"
|
||||||
echo ' -c Compare packages'
|
echo ' -c Compare packages'
|
||||||
echo ' -u Show upgrade packages'
|
echo ' -u Show upgrade packages'
|
||||||
echo ' -d Show downgrade packages'
|
echo ' -d Show downgrade packages'
|
||||||
echo ' -a Show artix specific packages'
|
echo ' -a Show artix specific packages'
|
||||||
echo ' -i Import from arch packages'
|
echo ' -i Import a package from arch'
|
||||||
echo ' -j Import from arch community'
|
|
||||||
echo ' -q Query settings'
|
echo ' -q Query settings'
|
||||||
echo ' -h This help'
|
echo ' -h This help'
|
||||||
echo ''
|
echo ''
|
||||||
@@ -246,18 +233,18 @@ usage() {
|
|||||||
|
|
||||||
orig_argv=("$0" "$@")
|
orig_argv=("$0" "$@")
|
||||||
|
|
||||||
opts='p:csudaijqh'
|
opts='p:csudaizqh'
|
||||||
|
|
||||||
while getopts "${opts}" arg; do
|
while getopts "${opts}" arg; do
|
||||||
case "${arg}" in
|
case "${arg}" in
|
||||||
p) package="$OPTARG" ;;
|
p) package="$OPTARG" ;;
|
||||||
s) sync=true ;;
|
s) sync=true ;;
|
||||||
|
z) sync_arch=false ;;
|
||||||
c) compare=true ;;
|
c) compare=true ;;
|
||||||
u) upgrades=false ;;
|
u) upgrades=false ;;
|
||||||
d) downgrades=true ;;
|
d) downgrades=true ;;
|
||||||
a) artix=true ;;
|
a) artix=true ;;
|
||||||
i) import_packages=true ;;
|
i) import=true ;;
|
||||||
j) import_community=true; git_artix='packages-galaxy'; git_arch='community' ;;
|
|
||||||
q) pretend=true ;;
|
q) pretend=true ;;
|
||||||
h|?) usage 0 ;;
|
h|?) usage 0 ;;
|
||||||
*) echo "invalid argument '${arg}'"; usage 1 ;;
|
*) echo "invalid argument '${arg}'"; usage 1 ;;
|
||||||
@@ -277,6 +264,4 @@ ${compare} && show_version_table
|
|||||||
|
|
||||||
${artix} && show_artix_table
|
${artix} && show_artix_table
|
||||||
|
|
||||||
${import_packages} && from_arch "${package}" "${git_arch}" "${git_artix}"
|
${import} && from_arch "${package}"
|
||||||
|
|
||||||
${import_community} && from_arch "${package}" "${git_arch}" "${git_artix}"
|
|
||||||
|
@@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
version=@version@
|
version=@version@
|
||||||
|
|
||||||
|
chroot_version=@chroot_version@
|
||||||
|
|
||||||
LIBDIR='@libdir@'
|
LIBDIR='@libdir@'
|
||||||
|
|
||||||
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
|
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
|
||||||
@@ -92,6 +94,7 @@ copy_hostconf () {
|
|||||||
|
|
||||||
chroot_extra_mount() {
|
chroot_extra_mount() {
|
||||||
chroot_mount "/etc/resolv.conf" "$1/etc/resolv.conf" -B
|
chroot_mount "/etc/resolv.conf" "$1/etc/resolv.conf" -B
|
||||||
|
chroot_mount "/etc/hosts" "$1/etc/hosts" -B
|
||||||
chroot_mount_conditional "[[ -e $1/etc/machine-id ]]" "/etc/machine-id" "$1/etc/machine-id" -B
|
chroot_mount_conditional "[[ -e $1/etc/machine-id ]]" "/etc/machine-id" "$1/etc/machine-id" -B
|
||||||
chroot_mount "${cache_dirs[0]}" "$1${cache_dirs[0]}" -B
|
chroot_mount "${cache_dirs[0]}" "$1${cache_dirs[0]}" -B
|
||||||
|
|
||||||
@@ -113,8 +116,8 @@ umask 0022
|
|||||||
# Sanity check
|
# Sanity check
|
||||||
if [[ ! -f "$working_dir/.artools" ]]; then
|
if [[ ! -f "$working_dir/.artools" ]]; then
|
||||||
die "'%s' does not appear to be an artix chroot." "$working_dir"
|
die "'%s' does not appear to be an artix chroot." "$working_dir"
|
||||||
elif [[ $(cat "$working_dir/.artools") != $version ]]; then
|
elif [[ $(cat "$working_dir/.artools") != $chroot_version ]]; then
|
||||||
die "chroot '%s' is not at version %s. Please rebuild." "$working_dir" "$version"
|
die "chroot '%s' is not at version %s. Please rebuild." "$working_dir" "$chroot_version"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
chroot_api_mount "${working_dir}" || die "failed to setup API filesystems in chroot %s" "${working_dir}"
|
chroot_api_mount "${working_dir}" || die "failed to setup API filesystems in chroot %s" "${working_dir}"
|
||||||
|
117
bin/commitpkg.in
117
bin/commitpkg.in
@@ -17,59 +17,83 @@ DATADIR='@datadir@'
|
|||||||
|
|
||||||
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
|
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
|
||||||
import ${LIBDIR}/util.sh
|
import ${LIBDIR}/util.sh
|
||||||
|
import ${LIBDIR}/util-pkg.sh
|
||||||
|
|
||||||
commit_pkg(){
|
commit_pkg(){
|
||||||
cd ${tree_dir_artix}/${git_tree}/${package}
|
local git_tree=$(find_tree "${tree_dir_artix}" "${package}")
|
||||||
source trunk/PKGBUILD
|
if [[ -n ${git_tree} ]];then
|
||||||
local ver=$(get_full_version ${package})
|
cd ${tree_dir_artix}/${git_tree}/${package}
|
||||||
if ${remove};then
|
|
||||||
local action='remove'
|
source trunk/PKGBUILD
|
||||||
local pkg=${package}-$ver
|
[[ $arch == 'any' ]] && CARCH=any
|
||||||
if [[ "${source_repo}" == 'trunk' ]];then
|
local ver=$(get_full_version "${package}")
|
||||||
pkg=${package}
|
|
||||||
info "[%s] '%s' %s" "${source_repo}" "$pkg" "${action}"
|
if ${remove};then
|
||||||
git rm -r trunk
|
local action='remove'
|
||||||
|
if [[ "${source_repo}" == 'trunk' ]];then
|
||||||
|
local pkg=${package}
|
||||||
|
git rm -r trunk
|
||||||
|
else
|
||||||
|
local pkg=${package}-$ver
|
||||||
|
git rm -r repos/${source_repo}-$CARCH
|
||||||
|
fi
|
||||||
|
msg "Action: [%s] '%s' %s" "${source_repo}" "$pkg" "${action}"
|
||||||
|
git commit -m "[${source_repo}] '$pkg' ${action}"
|
||||||
else
|
else
|
||||||
info "[%s] '%s' %s" "${source_repo}" "$pkg" "${action}"
|
local action='modify'
|
||||||
git rm -r repos/${source_repo}-$CARCH
|
msg "Action: [%s] '%s' %s" "${source_repo}" "${package}-$ver" "${action}"
|
||||||
|
git add .
|
||||||
|
git commit -m "[${source_repo}] '${package}-$ver' ${action}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ${push};then
|
||||||
|
msg "Checking (%s)" "${git_tree}"
|
||||||
|
git pull origin master
|
||||||
|
git push origin master
|
||||||
fi
|
fi
|
||||||
git commit -m "[${source_repo}] '$pkg' ${action}"
|
|
||||||
${push} && git push origin master
|
|
||||||
else
|
else
|
||||||
local action='modify'
|
error "Package '%s' does not exist!" "${package}"
|
||||||
info "[%s] '%s' %s" "${source_repo}" "${package}-$ver" "${action}"
|
|
||||||
git add .
|
|
||||||
git commit -m "[${source_repo}] '${package}-$ver' ${action}"
|
|
||||||
${push} && git push origin master
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
release_pkg(){
|
symlink_commit_pkg(){
|
||||||
if [[ -d ${tree_dir_artix}/${git_tree}/${package} ]];then
|
local git_tree=$(find_tree "${tree_dir_artix}" "${package}")
|
||||||
|
if [[ -n ${git_tree} ]];then
|
||||||
cd ${tree_dir_artix}/${git_tree}/${package}
|
cd ${tree_dir_artix}/${git_tree}/${package}
|
||||||
|
|
||||||
source trunk/PKGBUILD
|
source trunk/PKGBUILD
|
||||||
[[ $arch == 'any' ]] && CARCH=any
|
[[ $arch == 'any' ]] && CARCH=any
|
||||||
if [[ ${source_repo} != 'trunk' ]];then
|
local ver=$(get_full_version "${package}")
|
||||||
cd repos
|
|
||||||
dest=${target_repo}-$CARCH
|
if [[ ${source_repo} == 'trunk' ]];then
|
||||||
action='move'
|
local action='add'
|
||||||
[[ -d $dest ]] && git rm -r $dest
|
local dest=${target_repo}-$CARCH
|
||||||
git mv ${source_repo}-$CARCH $dest
|
|
||||||
cd ..
|
[[ -d repos/$dest ]] && git rm -r repos/$dest
|
||||||
else
|
|
||||||
dest=${target_repo}-$CARCH
|
|
||||||
action='add'
|
|
||||||
[[ ! -d repos ]] && mkdir repos
|
[[ ! -d repos ]] && mkdir repos
|
||||||
cd repos
|
|
||||||
[[ -d $dest ]] && git rm -r $dest
|
|
||||||
cd ..
|
|
||||||
cp -r trunk repos/$dest
|
cp -r trunk repos/$dest
|
||||||
|
else
|
||||||
|
local action='move'
|
||||||
|
local dest=${target_repo}-$CARCH
|
||||||
|
|
||||||
|
cd repos
|
||||||
|
[[ -d $dest ]] && git rm -r $dest
|
||||||
|
git mv ${source_repo}-$CARCH $dest
|
||||||
|
cd ..
|
||||||
fi
|
fi
|
||||||
local ver=$(get_full_version ${package})
|
|
||||||
info "[%s] -> [%s] '%s' %s" "${source_repo}" "${target_repo}" "${package}-$ver" "${action}"
|
msg "Action: [%s] -> [%s] '%s' %s" "${source_repo}" "${target_repo}" "${package}-$ver" "${action}"
|
||||||
git add .
|
git add .
|
||||||
git commit -m "[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}"
|
git commit -m "[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}"
|
||||||
${push} && git push origin master
|
|
||||||
|
if ${push};then
|
||||||
|
msg "Checking (%s)" "${git_tree}"
|
||||||
|
git pull origin master
|
||||||
|
git push origin master
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
error "Package '%s' does not exist!" "${package}"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -78,7 +102,6 @@ display_settings(){
|
|||||||
show_config
|
show_config
|
||||||
|
|
||||||
msg "OPTIONS:"
|
msg "OPTIONS:"
|
||||||
msg2 "git_tree: %s" "${git_tree}"
|
|
||||||
msg2 "source_repo: %s" "${source_repo}"
|
msg2 "source_repo: %s" "${source_repo}"
|
||||||
msg2 "target_repo: %s" "${target_repo}"
|
msg2 "target_repo: %s" "${target_repo}"
|
||||||
msg2 "package: %s" "${package}"
|
msg2 "package: %s" "${package}"
|
||||||
@@ -100,20 +123,14 @@ remove=false
|
|||||||
push=false
|
push=false
|
||||||
pretend=false
|
pretend=false
|
||||||
|
|
||||||
git_tree='packages'
|
|
||||||
|
|
||||||
cmd=${0##*/}
|
cmd=${0##*/}
|
||||||
target_repo=${cmd%pkg}
|
target_repo=${cmd%pkg}
|
||||||
|
|
||||||
case ${target_repo} in
|
|
||||||
community*|multilib*) git_tree='packages-galaxy' ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
usage() {
|
usage() {
|
||||||
echo "Usage: ${0##*/} [options]"
|
echo "Usage: ${0##*/} [options]"
|
||||||
echo " -s <name> Source repository [default:${source_repo}]"
|
echo " -s <name> Source repository [default:${source_repo}]"
|
||||||
echo ' -p <pkg> Package name'
|
echo ' -p <pkg> Package name'
|
||||||
echo ' -r Delete from repo'
|
echo ' -r Delete from repo (commitpkg only)'
|
||||||
echo ' -u Push'
|
echo ' -u Push'
|
||||||
echo ' -q Query settings and pretend'
|
echo ' -q Query settings and pretend'
|
||||||
echo ' -h This help'
|
echo ' -h This help'
|
||||||
@@ -142,8 +159,12 @@ shift $(($OPTIND - 1))
|
|||||||
|
|
||||||
${pretend} && display_settings && exit 1
|
${pretend} && display_settings && exit 1
|
||||||
|
|
||||||
if [[ "${cmd}" == 'commitpkg' ]];then
|
if $(is_valid_repo "${source_repo}");then
|
||||||
commit_pkg
|
if [[ "${cmd}" == 'commitpkg' ]];then
|
||||||
|
commit_pkg
|
||||||
|
else
|
||||||
|
symlink_commit_pkg
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
release_pkg
|
error "source repository '%s' is not valid!" "${source_repo}"
|
||||||
fi
|
fi
|
||||||
|
@@ -29,7 +29,8 @@ del_from_repo(){
|
|||||||
if pkgfile=$(find_cached_package "$name" "$ver" "$CARCH");then
|
if pkgfile=$(find_cached_package "$name" "$ver" "$CARCH");then
|
||||||
info "pkgfile: %s" "${pkgfile##*/}"
|
info "pkgfile: %s" "${pkgfile##*/}"
|
||||||
repo-remove -R $repo_path/$repo.db.tar.xz $name
|
repo-remove -R $repo_path/$repo.db.tar.xz $name
|
||||||
[[ -f $repo_path/${pkgfile##*/}{,.sig} ]] && rm -v $repo_path/${pkgfile##*/}{,.sig}
|
[[ -e $repo_path/${pkgfile##*/} ]] && rm -v $repo_path/${pkgfile##*/}
|
||||||
|
[[ -e $repo_path/${pkgfile##*/}.sig ]] && rm -v $repo_path/${pkgfile##*/}.sig
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
@@ -11,6 +11,8 @@
|
|||||||
|
|
||||||
version=@version@
|
version=@version@
|
||||||
|
|
||||||
|
chroot_version=@chroot_version@
|
||||||
|
|
||||||
LIBDIR='@libdir@'
|
LIBDIR='@libdir@'
|
||||||
|
|
||||||
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
|
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
|
||||||
@@ -104,7 +106,7 @@ done < <(declare -x | sed -r 's/^declare -x ([^=]*)=.*/\1/' | grep -i '_proxy$')
|
|||||||
env -i "${_env[@]}" \
|
env -i "${_env[@]}" \
|
||||||
basestrap "${basestrap_args[@]}" "$working_dir" ${cache_dirs[@]/#/--cachedir=} "$@" || die 'Failed to install all packages'
|
basestrap "${basestrap_args[@]}" "$working_dir" ${cache_dirs[@]/#/--cachedir=} "$@" || die 'Failed to install all packages'
|
||||||
|
|
||||||
echo "$version" > "$working_dir/.artools"
|
echo "$chroot_version" > "$working_dir/.artools"
|
||||||
|
|
||||||
default_locale "set" "$working_dir"
|
default_locale "set" "$working_dir"
|
||||||
|
|
||||||
|
@@ -202,11 +202,15 @@ _chrootbuild() {
|
|||||||
# No coredumps
|
# No coredumps
|
||||||
ulimit -c 0
|
ulimit -c 0
|
||||||
|
|
||||||
|
# Work around chroot-run not giving a ctty
|
||||||
exec </dev/console
|
exec </dev/console
|
||||||
|
|
||||||
. /etc/profile
|
. /etc/profile
|
||||||
|
|
||||||
export LANG=en_US.UTF-8
|
export LANG=en_US.UTF-8
|
||||||
|
|
||||||
|
# workaround meson locale errors
|
||||||
|
# supposedly fixed with coming python-3.7
|
||||||
locale-gen &> /dev/null
|
locale-gen &> /dev/null
|
||||||
|
|
||||||
sudo --preserve-env=SOURCE_DATE_EPOCH -iu builduser bash -c 'cd /startdir; makepkg "$@"' -bash "$@"
|
sudo --preserve-env=SOURCE_DATE_EPOCH -iu builduser bash -c 'cd /startdir; makepkg "$@"' -bash "$@"
|
||||||
|
@@ -1,274 +0,0 @@
|
|||||||
def ADD_REPO = ''
|
|
||||||
def RM_REPO = ''
|
|
||||||
def IS_ADD = 'false'
|
|
||||||
def IS_REMOVE = 'false'
|
|
||||||
def IS_BUILD = 'false'
|
|
||||||
def PKG_TRUNK = ''
|
|
||||||
def PKG_PATH = ''
|
|
||||||
|
|
||||||
pipeline {
|
|
||||||
agent any
|
|
||||||
options {
|
|
||||||
skipDefaultCheckout()
|
|
||||||
timestamps()
|
|
||||||
}
|
|
||||||
stages {
|
|
||||||
stage('Checkout') {
|
|
||||||
steps {
|
|
||||||
script {
|
|
||||||
checkout scm
|
|
||||||
|
|
||||||
def currentCommit = sh(returnStdout: true, script: 'git rev-parse @').trim()
|
|
||||||
echo "currentCommit: ${currentCommit}"
|
|
||||||
|
|
||||||
def changedFilesStatus = sh(returnStdout: true, script: "git show --pretty=format: --name-status ${currentCommit}").tokenize('\n')
|
|
||||||
def changedPkgStatus = []
|
|
||||||
def pkgPath = []
|
|
||||||
int entryCount = 0
|
|
||||||
for ( int i = 0; i < changedFilesStatus.size(); i++ ) {
|
|
||||||
def entry = changedFilesStatus[i].split()
|
|
||||||
def fileStatus = entry[0]
|
|
||||||
entryCount = entry.size()
|
|
||||||
for ( int j = 1; j < entry.size(); j++ ) {
|
|
||||||
if ( entry[j].contains('/PKGBUILD') && entry[j].contains('/repos') ){
|
|
||||||
changedPkgStatus << "${fileStatus} " + entry[j].minus('/PKGBUILD')
|
|
||||||
pkgPath << entry[j].minus('/PKGBUILD')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int pkgCount = changedPkgStatus.size()
|
|
||||||
int pkgPathCount = pkgPath.size()
|
|
||||||
echo "pkgCount: ${pkgCount}"
|
|
||||||
echo "entryCount: ${entryCount}"
|
|
||||||
echo "pkgPathCount: ${pkgPathCount}"
|
|
||||||
echo "changedPkgStatus: ${changedPkgStatus}"
|
|
||||||
|
|
||||||
if ( pkgCount > 0 ) {
|
|
||||||
|
|
||||||
if ( entryCount == 2 && pkgCount == 2 ) {
|
|
||||||
def pkgEntry1 = changedPkgStatus[0].split()
|
|
||||||
def pkgEntry2 = changedPkgStatus[1].split()
|
|
||||||
def srcPath = []
|
|
||||||
def pkgStatus = []
|
|
||||||
srcPath << pkgEntry1[1]
|
|
||||||
srcPath << pkgEntry2[1]
|
|
||||||
pkgStatus << pkgEntry1[0]
|
|
||||||
pkgStatus << pkgEntry2[0]
|
|
||||||
def buildInfo1 = srcPath[0].tokenize('/')
|
|
||||||
def buildInfo2 = srcPath[1].tokenize('/')
|
|
||||||
|
|
||||||
if ( pkgStatus[0] == "M" ) {
|
|
||||||
IS_ADD = 'true'
|
|
||||||
if ( srcPath[0].contains('community-testing') ) {
|
|
||||||
ADD_REPO = 'galaxy-gremlins'
|
|
||||||
} else if ( srcPath[0].contains('community-x86_64') || srcPath[0].contains('community-any') ) {
|
|
||||||
ADD_REPO = 'galaxy'
|
|
||||||
}
|
|
||||||
if ( srcPath[0].contains('multilib-testing') ) {
|
|
||||||
ADD_REPO = 'lib32-gremlins'
|
|
||||||
} else if ( srcPath[0].contains('multilib-x86_64') ) {
|
|
||||||
ADD_REPO = 'lib32'
|
|
||||||
}
|
|
||||||
} else if ( pkgStatus[1] == "M" ) {
|
|
||||||
IS_ADD = 'true'
|
|
||||||
if ( srcPath[1].contains('community-testing') ) {
|
|
||||||
ADD_REPO = 'galaxy-gremlins'
|
|
||||||
} else if ( srcPath[1].contains('community-x86_64') || srcPath[1].contains('community-any') ) {
|
|
||||||
ADD_REPO = 'galaxy'
|
|
||||||
}
|
|
||||||
if ( srcPath[1].contains('multilib-testing') ) {
|
|
||||||
ADD_REPO = 'lib32-gremlins'
|
|
||||||
} else if ( srcPath[1].contains('multilib-x86_64') ) {
|
|
||||||
ADD_REPO = 'lib32'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgStatus[0] == "D" ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
if ( srcPath[0].contains('community-testing') ) {
|
|
||||||
RM_REPO = 'galaxy-gremlins'
|
|
||||||
} else if ( srcPath[0].contains('community-x86_64') || srcPath[0].contains('community-any') ) {
|
|
||||||
RM_REPO = 'galaxy'
|
|
||||||
}
|
|
||||||
if ( srcPath[0].contains('multilib-testing') ) {
|
|
||||||
RM_REPO = 'lib32-gremlins'
|
|
||||||
} else if ( srcPath[0].contains('multilib-x86_64') ) {
|
|
||||||
RM_REPO = 'lib32'
|
|
||||||
}
|
|
||||||
} else if ( pkgStatus[1] == "D" ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
if ( srcPath[1].contains('community-testing') ) {
|
|
||||||
RM_REPO = 'galaxy-gremlins'
|
|
||||||
} else if ( srcPath[1].contains('community-x86_64') || srcPath[1].contains('community-any') ) {
|
|
||||||
RM_REPO = 'galaxy'
|
|
||||||
}
|
|
||||||
if ( srcPath[1].contains('multilib-testing') ) {
|
|
||||||
RM_REPO = 'lib32-gremlins'
|
|
||||||
} else if ( srcPath[1].contains('multilib-x86_64') ) {
|
|
||||||
RM_REPO = 'lib32'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
PKG_TRUNK = buildInfo1[0] + '/trunk'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( entryCount == 3 && pkgCount == 2 ) {
|
|
||||||
def pkgEntry = changedPkgStatus[0].split()
|
|
||||||
def pkgStatus = pkgEntry[0]
|
|
||||||
def buildInfo1 = pkgPath[0].tokenize('/')
|
|
||||||
def buildInfo2 = pkgPath[1].tokenize('/')
|
|
||||||
|
|
||||||
if ( pkgStatus.contains('R') ) {
|
|
||||||
IS_ADD = 'true'
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('community-staging') && pkgPath[1].contains('community-testing') ) {
|
|
||||||
ADD_REPO = 'galaxy-gremlins'
|
|
||||||
RM_REPO = 'galaxy-goblins'
|
|
||||||
} else if ( pkgPath[0].contains('community-testing') && pkgPath[1].contains('community-staging') ) {
|
|
||||||
ADD_REPO = 'galaxy-goblins'
|
|
||||||
RM_REPO = 'galaxy-gremlins'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('community-testing') && pkgPath[1].contains('community-x86_64') || pkgPath[0].contains('community-any') ) {
|
|
||||||
ADD_REPO = 'galaxy-gremlins'
|
|
||||||
RM_REPO = 'galaxy'
|
|
||||||
} else if ( pkgPath[0].contains('community-x86_64') || pkgPath[0].contains('community-any') && pkgPath[1].contains('community-testing') ) {
|
|
||||||
ADD_REPO = 'galaxy'
|
|
||||||
RM_REPO = 'galaxy-gremlins'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('multilib-staging') && pkgPath[1].contains('multilib-testing') ) {
|
|
||||||
ADD_REPO = 'lib32-gremlins'
|
|
||||||
RM_REPO = 'lib32-goblins'
|
|
||||||
} else if ( pkgPath[0].contains('multilib-testing') && pkgPath[1].contains('multilib-staging') ) {
|
|
||||||
ADD_REPO = 'lib32-goblins'
|
|
||||||
RM_REPO = 'lib32-gremlins'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('multilib-testing') && pkgPath[1].contains('multilib-x86_64') ) {
|
|
||||||
ADD_REPO = 'lib32'
|
|
||||||
RM_REPO = 'lib32-gremlins'
|
|
||||||
} else if ( pkgPath[0].contains('multilib-x86_64') && pkgPath[1].contains('multilib-testing') ) {
|
|
||||||
ADD_REPO = 'lib32-gremlins'
|
|
||||||
RM_REPO = 'lib32'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
PKG_TRUNK = buildInfo1[0] + '/trunk'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgCount == 1 ) {
|
|
||||||
def pkgEntry = changedPkgStatus[0].split()
|
|
||||||
def pkgStatus = pkgEntry[0]
|
|
||||||
def srcPath = pkgEntry[1]
|
|
||||||
def buildInfo = srcPath.tokenize('/')
|
|
||||||
|
|
||||||
if ( srcPath.contains('community-staging') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'galaxy-goblins'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('community-testing') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'galaxy-gremlins'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('community-x86_64') || srcPath.contains('community-any') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'galaxy'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
}
|
|
||||||
if ( srcPath.contains('multilib-staging') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'lib32-goblins'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('multilib-testing') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'lib32-gremlins'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('multilib-x86_64') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'lib32'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
}
|
|
||||||
PKG_PATH = srcPath
|
|
||||||
PKG_TRUNK = buildInfo[0] + '/trunk'
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Build') {
|
|
||||||
environment {
|
|
||||||
BUILDBOT_GPGP = credentials('BUILDBOT_GPGP')
|
|
||||||
}
|
|
||||||
when {
|
|
||||||
expression { return IS_BUILD == 'true' }
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
dir("${PKG_PATH}") {
|
|
||||||
sh "buildpkg -r ${ADD_REPO}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
post {
|
|
||||||
success {
|
|
||||||
dir("${PKG_PATH}") {
|
|
||||||
sh "deploypkg -a -d ${ADD_REPO} -s"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Add') {
|
|
||||||
when {
|
|
||||||
expression { return IS_ADD == 'true' }
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
dir("${PKG_TRUNK}") {
|
|
||||||
sh "deploypkg -a -d ${ADD_REPO}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Remove') {
|
|
||||||
when {
|
|
||||||
expression { return IS_REMOVE == 'true' }
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
dir("${PKG_TRUNK}") {
|
|
||||||
sh "deploypkg -r -d ${RM_REPO}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,241 +0,0 @@
|
|||||||
def ADD_REPO = ''
|
|
||||||
def RM_REPO = ''
|
|
||||||
def IS_ADD = 'false'
|
|
||||||
def IS_REMOVE = 'false'
|
|
||||||
def IS_BUILD = 'false'
|
|
||||||
def PKG_TRUNK = ''
|
|
||||||
def PKG_PATH = ''
|
|
||||||
|
|
||||||
pipeline {
|
|
||||||
agent any
|
|
||||||
options {
|
|
||||||
skipDefaultCheckout()
|
|
||||||
timestamps()
|
|
||||||
}
|
|
||||||
stages {
|
|
||||||
stage('Checkout') {
|
|
||||||
steps {
|
|
||||||
script {
|
|
||||||
checkout scm
|
|
||||||
|
|
||||||
def currentCommit = sh(returnStdout: true, script: 'git rev-parse @').trim()
|
|
||||||
echo "currentCommit: ${currentCommit}"
|
|
||||||
|
|
||||||
def changedFilesStatus = sh(returnStdout: true, script: "git show --pretty=format: --name-status ${currentCommit}").tokenize('\n')
|
|
||||||
def changedPkgStatus = []
|
|
||||||
def pkgPath = []
|
|
||||||
int entryCount = 0
|
|
||||||
for ( int i = 0; i < changedFilesStatus.size(); i++ ) {
|
|
||||||
def entry = changedFilesStatus[i].split()
|
|
||||||
def fileStatus = entry[0]
|
|
||||||
entryCount = entry.size()
|
|
||||||
for ( int j = 1; j < entry.size(); j++ ) {
|
|
||||||
if ( entry[j].contains('/PKGBUILD') && entry[j].contains('/repos') ){
|
|
||||||
changedPkgStatus << "${fileStatus} " + entry[j].minus('/PKGBUILD')
|
|
||||||
pkgPath << entry[j].minus('/PKGBUILD')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
int pkgCount = changedPkgStatus.size()
|
|
||||||
int pkgPathCount = pkgPath.size()
|
|
||||||
echo "pkgCount: ${pkgCount}"
|
|
||||||
echo "entryCount: ${entryCount}"
|
|
||||||
echo "pkgPathCount: ${pkgPathCount}"
|
|
||||||
echo "changedPkgStatus: ${changedPkgStatus}"
|
|
||||||
|
|
||||||
if ( pkgCount > 0 ) {
|
|
||||||
|
|
||||||
if ( entryCount == 2 && pkgCount == 2 ) {
|
|
||||||
def pkgEntry1 = changedPkgStatus[0].split()
|
|
||||||
def pkgEntry2 = changedPkgStatus[1].split()
|
|
||||||
def srcPath = []
|
|
||||||
def pkgStatus = []
|
|
||||||
srcPath << pkgEntry1[1]
|
|
||||||
srcPath << pkgEntry2[1]
|
|
||||||
pkgStatus << pkgEntry1[0]
|
|
||||||
pkgStatus << pkgEntry2[0]
|
|
||||||
def buildInfo1 = srcPath[0].tokenize('/')
|
|
||||||
def buildInfo2 = srcPath[1].tokenize('/')
|
|
||||||
|
|
||||||
if ( pkgStatus[0] == 'M' ) {
|
|
||||||
IS_ADD = 'true'
|
|
||||||
if ( srcPath[0].contains('testing') ) {
|
|
||||||
ADD_REPO = 'gremlins'
|
|
||||||
} else if ( srcPath[0].contains('core') ) {
|
|
||||||
ADD_REPO = 'system'
|
|
||||||
} else if ( srcPath[0].contains('extra') ) {
|
|
||||||
ADD_REPO = 'world'
|
|
||||||
}
|
|
||||||
} else if ( pkgStatus[1] == 'M' ) {
|
|
||||||
IS_ADD = 'true'
|
|
||||||
if ( srcPath[1].contains('testing') ) {
|
|
||||||
ADD_REPO = 'gremlins'
|
|
||||||
} else if ( srcPath[1].contains('core') ) {
|
|
||||||
ADD_REPO = ''
|
|
||||||
} else if ( srcPath[1].contains('extra') ) {
|
|
||||||
ADD_REPO = 'world'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgStatus[0] == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
if ( srcPath[0].contains('testing') ) {
|
|
||||||
RM_REPO = 'gremlins'
|
|
||||||
} else if ( srcPath[0].contains('core') ) {
|
|
||||||
RM_REPO = 'system'
|
|
||||||
} else if ( srcPath[0].contains('extra') ) {
|
|
||||||
RM_REPO = 'world'
|
|
||||||
}
|
|
||||||
} else if ( pkgStatus[1] == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
if ( srcPath[1].contains('testing') ) {
|
|
||||||
RM_REPO = 'gremlins'
|
|
||||||
} else if ( srcPath[1].contains('core') ) {
|
|
||||||
RM_REPO = 'system'
|
|
||||||
} else if ( srcPath[1].contains('extra') ) {
|
|
||||||
RM_REPO = 'world'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
PKG_TRUNK = buildInfo1[0] + '/trunk'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( entryCount == 3 && pkgCount == 2 ) {
|
|
||||||
def pkgEntry = changedPkgStatus[0].split()
|
|
||||||
def pkgStatus = pkgEntry[0]
|
|
||||||
def buildInfo1 = pkgPath[0].tokenize('/')
|
|
||||||
def buildInfo2 = pkgPath[1].tokenize('/')
|
|
||||||
|
|
||||||
if ( pkgStatus.contains('R') ) {
|
|
||||||
IS_ADD = 'true'
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('staging') && pkgPath[1].contains('testing') ) {
|
|
||||||
ADD_REPO = 'gremlins'
|
|
||||||
RM_REPO = 'goblins'
|
|
||||||
} else if ( pkgPath[0].contains('testing') && pkgPath[1].contains('staging') ) {
|
|
||||||
ADD_REPO = 'goblins'
|
|
||||||
RM_REPO = 'gremlins'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('core') && pkgPath[1].contains('testing')) {
|
|
||||||
ADD_REPO = 'gremlins'
|
|
||||||
RM_REPO = 'system'
|
|
||||||
} else if ( pkgPath[0].contains('testing') && pkgPath[1].contains('core')) {
|
|
||||||
ADD_REPO = 'system'
|
|
||||||
RM_REPO = 'gremlins'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('extra') && pkgPath[1].contains('testing')) {
|
|
||||||
ADD_REPO = 'gremlins'
|
|
||||||
RM_REPO = 'world'
|
|
||||||
} else if ( pkgPath[0].contains('testing') && pkgPath[1].contains('extra')) {
|
|
||||||
ADD_REPO = 'world'
|
|
||||||
RM_REPO = 'gremlins'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgPath[0].contains('core') && pkgPath[1].contains('extra')) {
|
|
||||||
ADD_REPO = 'world'
|
|
||||||
RM_REPO = 'system'
|
|
||||||
} else if ( pkgPath[0].contains('extra') && pkgPath[1].contains('core')) {
|
|
||||||
ADD_REPO = 'system'
|
|
||||||
RM_REPO = 'world'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
PKG_TRUNK = buildInfo1[0] + '/trunk'
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( pkgCount == 1 ) {
|
|
||||||
def pkgEntry = changedPkgStatus[0].split()
|
|
||||||
def pkgStatus = pkgEntry[0]
|
|
||||||
def srcPath = pkgEntry[1]
|
|
||||||
def buildInfo = srcPath.tokenize('/')
|
|
||||||
|
|
||||||
if ( srcPath.contains('staging') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'goblins'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('testing') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'gremlins'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('core') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'system'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
} else if ( srcPath.contains('extra') ) {
|
|
||||||
if ( pkgStatus == 'A' || pkgStatus == 'M' ) {
|
|
||||||
IS_BUILD = 'true'
|
|
||||||
}
|
|
||||||
if ( pkgStatus == 'D' ) {
|
|
||||||
IS_REMOVE = 'true'
|
|
||||||
}
|
|
||||||
ADD_REPO = 'world'
|
|
||||||
RM_REPO = ADD_REPO
|
|
||||||
}
|
|
||||||
PKG_PATH = srcPath
|
|
||||||
PKG_TRUNK = buildInfo[0] + '/trunk'
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Build') {
|
|
||||||
environment {
|
|
||||||
BUILDBOT_GPGP = credentials('BUILDBOT_GPGP')
|
|
||||||
}
|
|
||||||
when {
|
|
||||||
expression { return IS_BUILD == 'true' }
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
dir("${PKG_PATH}") {
|
|
||||||
sh "buildpkg -r ${ADD_REPO}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
post {
|
|
||||||
success {
|
|
||||||
dir("${PKG_PATH}") {
|
|
||||||
sh "deploypkg -a -d ${ADD_REPO} -s"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Add') {
|
|
||||||
when {
|
|
||||||
expression { return IS_ADD == 'true' }
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
dir("${PKG_TRUNK}") {
|
|
||||||
sh "deploypkg -a -d ${ADD_REPO}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
stage('Remove') {
|
|
||||||
when {
|
|
||||||
expression { return IS_REMOVE == 'true' }
|
|
||||||
}
|
|
||||||
steps {
|
|
||||||
dir("${PKG_TRUNK}") {
|
|
||||||
sh "deploypkg -r -d ${RM_REPO}"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@@ -33,7 +33,7 @@
|
|||||||
# initsys="openrc"
|
# initsys="openrc"
|
||||||
|
|
||||||
# unset defaults to given value
|
# unset defaults to given value
|
||||||
# kernel="linux-lts"
|
# kernel="linux"
|
||||||
|
|
||||||
# custom additional kernel args
|
# custom additional kernel args
|
||||||
# kernel_args=""
|
# kernel_args=""
|
||||||
|
20
data/missing
20
data/missing
@@ -1,20 +0,0 @@
|
|||||||
extra/speexdsp
|
|
||||||
extra/spandsp
|
|
||||||
extra/soundtouch
|
|
||||||
extra/sbc
|
|
||||||
extra/neon
|
|
||||||
extra/mjpegtools
|
|
||||||
extra/libmp4v2
|
|
||||||
extra/js
|
|
||||||
extra/gst-plugins-bad
|
|
||||||
extra/faac
|
|
||||||
extra/enchant
|
|
||||||
extra/chromaprint
|
|
||||||
extra/python-appdirs
|
|
||||||
extra/python-beaker
|
|
||||||
extra/python-mako
|
|
||||||
extra/python-markupsafe
|
|
||||||
extra/python-packaging
|
|
||||||
extra/python-pyparsing
|
|
||||||
extra/ttf-liberation
|
|
||||||
extra/appstream-glib
|
|
@@ -1,45 +0,0 @@
|
|||||||
qt5-base
|
|
||||||
qt5-xmlpatterns
|
|
||||||
qt5-x11extras
|
|
||||||
qt5-script
|
|
||||||
qt5-svg
|
|
||||||
qt5-serialport
|
|
||||||
qt5-serialbus
|
|
||||||
qt5-networkauth
|
|
||||||
qt5-imageformats
|
|
||||||
qt5-declarative
|
|
||||||
qt5-wayland
|
|
||||||
qt5-sensors
|
|
||||||
qt5-scxml
|
|
||||||
qt5-connectivity
|
|
||||||
qt5-graphicaleffects
|
|
||||||
qt5-gamepad
|
|
||||||
qt5-3d
|
|
||||||
qt5-canvas3d
|
|
||||||
qt5-datavis3d
|
|
||||||
qt5-charts
|
|
||||||
qt5-virtualkeyboard
|
|
||||||
qt5-location
|
|
||||||
qt5-multimedia
|
|
||||||
qt5-speech
|
|
||||||
qt5-quickcontrols
|
|
||||||
qt5-quickcontrols2
|
|
||||||
qt5-remoteobjects
|
|
||||||
qt5-webchannel
|
|
||||||
qt5-websockets
|
|
||||||
qt5-webglplugin
|
|
||||||
|
|
||||||
|
|
||||||
qt5-tools
|
|
||||||
qt5-translations
|
|
||||||
qt5-doc
|
|
||||||
qt5-examples
|
|
||||||
|
|
||||||
qt5-webengine
|
|
||||||
qt5-webview
|
|
||||||
|
|
||||||
qt5-webkit
|
|
||||||
|
|
||||||
python2-pyqt5
|
|
||||||
python-pyqt5
|
|
||||||
pyqt5-common
|
|
@@ -91,14 +91,14 @@ msg_row_notify(){
|
|||||||
printf "${GREEN} ${mesg}${ALL_OFF}\n" "$@" >&2
|
printf "${GREEN} ${mesg}${ALL_OFF}\n" "$@" >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
msg_row_downgrade(){
|
msg_row(){
|
||||||
local mesg=$1; shift
|
local mesg=$1; shift
|
||||||
printf "${YELLOW} ${mesg}${ALL_OFF}\n" "$@" >&2
|
printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
msg_row_upgrade(){
|
msg_row_upgrade(){
|
||||||
local mesg=$1; shift
|
local mesg=$1; shift
|
||||||
printf "${RED}${BOLD} ${mesg} ${ALL_OFF}\n" "$@" >&2
|
printf "${RED}${RED} ${mesg} ${ALL_OFF}\n" "$@" >&2
|
||||||
}
|
}
|
||||||
|
|
||||||
import(){
|
import(){
|
||||||
|
@@ -71,6 +71,36 @@ patch_pkg(){
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
find_tree(){
|
||||||
|
local tree="$1" pkg="$2"
|
||||||
|
local result=$(find $tree -mindepth 2 -maxdepth 2 -type d -name "$pkg")
|
||||||
|
result=${result%/*}
|
||||||
|
echo ${result##*/}
|
||||||
|
}
|
||||||
|
|
||||||
|
clone_tree(){
|
||||||
|
local timer=$(get_timer) host_tree="$1"
|
||||||
|
git clone $host_tree.git
|
||||||
|
show_elapsed_time "${FUNCNAME}" "${timer}"
|
||||||
|
}
|
||||||
|
|
||||||
|
pull_tree(){
|
||||||
|
local branch="master"
|
||||||
|
local local_head=$(get_local_head "$branch")
|
||||||
|
local remote_head=$(get_remote_head "$branch")
|
||||||
|
if [[ "${local_head}" == "${remote_head}" ]]; then
|
||||||
|
msg2 "remote changes: no"
|
||||||
|
else
|
||||||
|
msg2 "remote changes: yes"
|
||||||
|
git pull origin "$branch"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
push_tree(){
|
||||||
|
local branch="master"
|
||||||
|
git push origin "$branch"
|
||||||
|
}
|
||||||
|
|
||||||
get_import_path(){
|
get_import_path(){
|
||||||
local tree="$1" import_path=
|
local tree="$1" import_path=
|
||||||
case $tree in
|
case $tree in
|
||||||
@@ -80,6 +110,14 @@ get_import_path(){
|
|||||||
echo $import_path
|
echo $import_path
|
||||||
}
|
}
|
||||||
|
|
||||||
|
is_valid_repo(){
|
||||||
|
local src="$1"
|
||||||
|
case $src in
|
||||||
|
core|extra|community|multilib|testing|staging|community-testing|community-staging|multilib-testing|multilib-staging|trunk) return 0 ;;
|
||||||
|
*) return 1 ;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
find_repo(){
|
find_repo(){
|
||||||
local pkg="$1" repo=
|
local pkg="$1" repo=
|
||||||
|
|
||||||
@@ -137,6 +175,18 @@ find_repo(){
|
|||||||
repo=multilib-staging-x86_64
|
repo=multilib-staging-x86_64
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ -d $pkg/repos/gnome-unstable-x86_64 ]];then
|
||||||
|
repo=gnome-unstable-x86_64
|
||||||
|
elif [[ -d $pkg/repos/gnome-unstable-any ]];then
|
||||||
|
repo=gnome-unstable-any
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -d $pkg/repos/kde-unstable-x86_64 ]];then
|
||||||
|
repo=kde-unstable-x86_64
|
||||||
|
elif [[ -d $pkg/repos/kde-unstable-any ]];then
|
||||||
|
repo=kde-unstable-any
|
||||||
|
fi
|
||||||
|
|
||||||
echo $repo
|
echo $repo
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -153,6 +203,7 @@ arch_to_artix_repo(){
|
|||||||
multilib-staging-x86_64) repo=lib32-goblins ;;
|
multilib-staging-x86_64) repo=lib32-goblins ;;
|
||||||
community-testing-*) repo=galaxy-gremlins ;;
|
community-testing-*) repo=galaxy-gremlins ;;
|
||||||
community-staging-*) repo=galaxy-goblins ;;
|
community-staging-*) repo=galaxy-goblins ;;
|
||||||
|
kde-unstable-*|gnome-unstable-*) repo=goblins ;;
|
||||||
esac
|
esac
|
||||||
echo $repo
|
echo $repo
|
||||||
}
|
}
|
||||||
|
@@ -95,7 +95,7 @@ init_artools_iso(){
|
|||||||
|
|
||||||
[[ -z ${initsys} ]] && initsys="openrc"
|
[[ -z ${initsys} ]] && initsys="openrc"
|
||||||
|
|
||||||
[[ -z ${kernel} ]] && kernel="linux-lts"
|
[[ -z ${kernel} ]] && kernel="linux"
|
||||||
|
|
||||||
[[ -z ${kernel_args} ]] && kernel_args=""
|
[[ -z ${kernel_args} ]] && kernel_args=""
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user