Compare commits

...

7 Commits
0.11 ... 0.11.2

Author SHA1 Message Date
2c497f663b buildtree: split out compare 2018-12-21 01:11:25 +01:00
9a84cdedd5 util-pkg-subrepo: write updated jenkinsfile 2018-12-18 06:30:38 +01:00
bcc807ebbc buildpkg: fix opts 2018-12-17 02:54:07 +01:00
6b00319bfc buildpkg, deploypkg: restore global path vars 2018-12-17 02:50:08 +01:00
c24f625d81 Makefile: add gnome & kde unstable pacman.conf 2018-12-16 20:43:49 +01:00
15ca2bfc7e util-pkg: move get_pkg_org() 2018-12-16 20:43:22 +01:00
2487f4655e builtree: show repo moved updates 2018-12-16 12:24:32 +01:00
11 changed files with 546 additions and 143 deletions

View File

@@ -41,6 +41,7 @@ BIN_PKG = \
bin/buildtree \
bin/deploypkg \
bin/commitpkg \
bin/comparepkg \
bin/pkg2yaml
LIBS_PKG = \
@@ -62,7 +63,9 @@ COMMITPKG_SYMS = \
community-stagingpkg \
multilibpkg \
multilib-testingpkg \
multilib-stagingpkg
multilib-stagingpkg \
kde-unstablepkg \
gnome-unstablepkg
BUILDPKG_SYMS = \
buildpkg-system \
@@ -74,7 +77,9 @@ BUILDPKG_SYMS = \
buildpkg-galaxy-goblins \
buildpkg-lib32 \
buildpkg-lib32-gremlins \
buildpkg-lib32-goblins
buildpkg-lib32-goblins \
buildpkg-kde-wobble \
buildpkg-gnome-wobble
DEPLOYPKG_SYMS = \
deploypkg-system \
@@ -86,7 +91,9 @@ DEPLOYPKG_SYMS = \
deploypkg-galaxy-goblins \
deploypkg-lib32 \
deploypkg-lib32-gremlins \
deploypkg-lib32-goblins
deploypkg-lib32-goblins \
deploypkg-kde-wobble \
deploypkg-gnome-wobble
BIN_ISO = \
bin/buildiso \

View File

@@ -11,13 +11,17 @@
VERSION=@version@
[[ -r @libdir@/util-msg.sh ]] && source @libdir@/util-msg.sh
import @libdir@/util.sh
import @libdir@/util-chroot.sh
LIBDIR='@libdir@'
SYSCONFDIR='@sysconfdir@'
DATADIR='@datadir@'
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
import ${LIBDIR}/util.sh
import ${LIBDIR}/util-chroot.sh
load_user_info
load_config "${AT_USERCONFDIR}/artools.conf" || load_config "@sysconfdir@/artools.conf"
load_config "${AT_USERCONFDIR}/artools.conf" || load_config "${SYSCONFDIR}/artools.conf"
create_first=false
@@ -33,10 +37,10 @@ case ${repo} in
galaxy-gremlins|galaxy-goblins) repo=${repo#*-} ;;
esac
pacman_conf="/usr/share/artools/pacman-${repo}.conf"
pacman_conf="${DATADIR}/pacman-${repo}.conf"
[[ -f $AT_USERCONFDIR/pacman-${repo}.conf ]] && pacman_conf="$AT_USERCONFDIR/pacman-${repo}.conf"
makepkg_conf="/usr/share/artools/makepkg.conf"
makepkg_conf="${DATADIR}/makepkg.conf"
[[ -f $AT_USERCONFDIR/makepkg.conf ]] && makepkg_conf="$AT_USERCONFDIR/makepkg.conf"
usage() {
@@ -52,7 +56,7 @@ usage() {
orig_argv=("$0" "$@")
opts='hc:r'
opts='hcr:'
while getopts "${opts}" arg; do
case "${arg}" in

View File

@@ -82,78 +82,7 @@ mkrepo(){
prepare_dir "$pkg_path/trunk"
cd $pkg_path
commit_jenkins_files
}
show_version_table(){
msg_table_header "%-20s %-20s %-25s %-30s %-30s" "Arch Repo" "Artix Repo" "Package" "Arch version" "Artix version"
for tree in ${tree_names[@]};do
local git=$(find ${TREE_DIR_ARTIX}/$tree/ -mindepth 1 -maxdepth 1 -type d)
for package in ${git[@]}; do
local pkg=${package##*/}
local artixrepo=$(find_repo "$package" "${unstable}" "${staging}")
local artixshow=${artixrepo%-*}
local pkgbuild=$package/repos/$artixrepo/PKGBUILD
if [[ -f $pkgbuild ]];then
source $pkgbuild 2>/dev/null
local artixver=$(get_full_version $pkg)
local archpath=${TREE_DIR_ARCH}/$tree/$pkg
local archrepo=$(find_repo "$archpath" "${unstable}" "${staging}")
local archshow=${archrepo%-*}
pkgbuild=$archpath/repos/$archrepo/PKGBUILD
if [[ -f $pkgbuild ]];then
source $pkgbuild 2>/dev/null
local archver=$(get_full_version $pkg)
fi
if ${artix};then
if [ $(vercmp "$artixver" "$archver") -eq 0 ] || [ $(vercmp "$artixver" "$archver") -gt 0 ];then
case $artixrepo in
*staging*)
if [[ "$archrepo" == "$artixrepo" ]];then
msg_row "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
else
msg_row_notify "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
;;
*testing*)
if [[ "$archrepo" == "$artixrepo" ]];then
msg_row "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
else
msg_row_notify "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
;;
esac
fi
else
if [ $(vercmp "$artixver" "$archver") -lt 0 ];then
${upgrades} && msg_row_upgrade "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
if [ $(vercmp "$artixver" "$archver") -gt 0 ];then
if [[ -n $archver ]] && [[ -n $archrepo ]];then
${downgrades} && msg_row_downgrade "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
fi
fi
unset pkgver epoch pkgrel artixver archver
fi
done
done
commit_jenkins_files "$pkg"
}
sync_pkg(){
@@ -227,10 +156,9 @@ from_arch(){
subrepo_clone "$pkg" "$org"
cd $pkg_path
commit_jenkins_files
commit_jenkins_files "$pkg"
dest=$pkg_path/trunk
# dest=$pkg_path/trunk
sync_pkg "$src" "$dest" "$git_tree_arch"
fi
@@ -262,36 +190,28 @@ load_vars /etc/makepkg.conf
sync=false
sync_arch=true
compare=false
unstable=false
staging=true
upgrades=false
downgrades=false
artix=false
import=false
view=false
createnew=false
conf=false
PACKAGE=''
tree_names=(packages community)
TEAM=${tree_names[0]}
SUBORG=''
usage() {
echo "Usage: ${0##*/} [options]"
echo ' -p <pkg> Package name'
echo ' -t <team> Team name (only with -m)'
echo ' -t <team> Team name (only with -n)'
echo " [default: ${TEAM}]"
echo ' -o <org> Org of subrepo (only with -c)'
echo " -s Clone or pull repos"
echo " -z Don't clone or pull arch repos"
echo ' -c Compare packages'
echo ' -u Show upgrade packages'
echo ' -d Show downgrade packages'
echo ' -a Show testing packages'
echo " -y Don't inlcude staging packages"
echo ' -x Include unstable kde and gnome'
echo ' -i Import a package from arch repos'
echo ' -m Make new remote subrepo and clone it'
echo ' -C Configure subrepo url'
echo ' -v View package depends'
echo ' -h This help'
echo ''
@@ -301,23 +221,19 @@ usage() {
orig_argv=("$0" "$@")
opts='p:t:csudayimzxvh'
opts='p:t:o:csinzvh'
while getopts "${opts}" arg; do
case "${arg}" in
p) PACKAGE="$OPTARG" ;;
t) TEAM="$OPTARG" ;;
o) SUBORG="$OPTARG" ;;
s) sync=true ;;
z) sync_arch=false ;;
c) compare=true ;;
u) upgrades=true ;;
d) downgrades=true ;;
a) artix=true ;;
y) staging=false ;;
i) import=true ;;
m) createnew=true ;;
n) createnew=true ;;
v) view=true ;;
x) unstable=true ;;
c) conf=true ;;
h|?) usage 0 ;;
*) echo "invalid argument '${arg}'"; usage 1 ;;
esac
@@ -332,8 +248,8 @@ ${sync} && sync_repos
${view} && view_build "${PACKAGE}"
${compare} && show_version_table
${import} && from_arch "${PACKAGE}"
${createnew} && mkrepo "${PACKAGE}" "${TEAM}"
${conf} && subrepo_config "${PACKAGE}" "${SUBORG}"

View File

@@ -61,14 +61,12 @@ commit_pkg(){
cd ${TREE_DIR_ARTIX}/${git_tree}
if ${push};then
msg2 "Check (%s)" "${git_tree}"
git pull origin master
mainrepo_pull "${git_tree}"
msg2 "Update (%s)" "${PACKAGE}"
subrepo_push "${PACKAGE}"
subrepo_clean "${PACKAGE}"
# sleep 1
msg2 "Update (%s)" "${git_tree}"
git push origin master
mainrepo_push "${git_tree}"
fi
git prune
else
@@ -114,14 +112,12 @@ symlink_commit_pkg(){
cd ${TREE_DIR_ARTIX}/${git_tree}
if ${push};then
msg2 "Check (%s)" "${git_tree}"
git pull origin master
mainrepo_pull "${git_tree}"
msg2 "Update (%s)" "${PACKAGE}"
subrepo_push "${PACKAGE}"
subrepo_clean "${PACKAGE}"
# sleep 1
msg2 "Update (%s)" "${git_tree}"
git push origin master
mainrepo_push "${git_tree}"
fi
git prune
else

138
bin/comparepkg.in Normal file
View File

@@ -0,0 +1,138 @@
#!/bin/bash
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
VERSION=@version@
LIBDIR='@libdir@'
SYSCONFDIR='@sysconfdir@'
DATADIR='@datadir@'
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
import ${LIBDIR}/util.sh
import ${LIBDIR}/util-pkg.sh
show_version_table(){
msg_table_header "%-20s %-20s %-25s %-30s %-30s" "Arch Repo" "Artix Repo" "Package" "Arch version" "Artix version"
for tree in ${tree_names[@]};do
local git=$(find ${TREE_DIR_ARTIX}/$tree/ -mindepth 1 -maxdepth 1 -type d)
for package in ${git[@]}; do
local pkg=${package##*/}
local artixrepo=$(find_repo "$package" "${unstable}" "${staging}")
local artixshow=${artixrepo%-*}
local pkgbuild=$package/repos/$artixrepo/PKGBUILD
if [[ -f $pkgbuild ]];then
source $pkgbuild 2>/dev/null
local artixver=$(get_full_version $pkg)
local archpath=$(get_import_path "$pkg")
local archrepo=$(find_repo "$archpath" "${unstable}" "${staging}")
local archshow=${archrepo%-*}
pkgbuild=$archpath/repos/$archrepo/PKGBUILD
if [[ -f $pkgbuild ]];then
source $pkgbuild 2>/dev/null
local archver=$(get_full_version $pkg)
fi
if ${move};then
if [ $(vercmp "$artixver" "$archver") -eq 0 ] || [ $(vercmp "$artixver" "$archver") -gt 0 ];then
case $artixrepo in
*staging*)
if [[ "$archrepo" == "$artixrepo" ]];then
msg_row "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
else
msg_row_notify "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
;;
*testing*)
if [[ "$archrepo" == "$artixrepo" ]];then
msg_row "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
else
msg_row_notify "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
;;
esac
fi
else
if [ $(vercmp "$artixver" "$archver") -lt 0 ];then
${upgrades} && msg_row_upgrade "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
if [ $(vercmp "$artixver" "$archver") -gt 0 ];then
if [[ -n $archver ]] && [[ -n $archrepo ]];then
${downgrades} && msg_row_downgrade "%-20s %-20s %-25s %-30s %-30s" "$archshow" "$artixshow" "$pkg" "$archver" "$artixver"
fi
fi
fi
unset pkgver epoch pkgrel artixver archver
fi
done
done
}
load_user_info
load_config "${AT_USERCONFDIR}/artools.conf" || load_config "${SYSCONFDIR}/artools.conf"
load_vars "${PAC_USERCONFDIR}/makepkg.conf" || load_vars "$USER_HOME/.makepkg.conf"
load_vars /etc/makepkg.conf
unstable=false
staging=true
upgrades=false
downgrades=false
move=false
tree_names=(packages community)
usage() {
echo "Usage: ${0##*/} [options]"
echo ' -c Compare packages'
echo ' -u Show upgrade packages'
echo ' -d Show downgrade packages'
echo ' -a Show testing packages'
echo " -y Don't inlcude staging packages"
echo ' -x Include unstable kde and gnome'
echo ' -h This help'
echo ''
echo ''
exit $1
}
orig_argv=("$0" "$@")
opts='udmyxh'
while getopts "${opts}" arg; do
case "${arg}" in
u) upgrades=true ;;
d) downgrades=true ;;
m) move=true ;;
y) staging=false ;;
x) unstable=true ;;
h|?) usage 0 ;;
*) echo "invalid argument '${arg}'"; usage 1 ;;
esac
done
shift $(($OPTIND - 1))
show_version_table

View File

@@ -11,9 +11,13 @@
VERSION=@version@
[[ -r @libdir@/util-msg.sh ]] && source @libdir@/util-msg.sh
import @libdir@/util.sh
import @libdir@/util-pkg.sh
LIBDIR='@libdir@'
SYSCONFDIR='@sysconfdir@'
DATADIR='@datadir@'
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
import ${LIBDIR}/util.sh
import ${LIBDIR}/util-pkg.sh
update_repo(){
local repo="$1" pkgfile ver ext=db.tar.xz
@@ -51,7 +55,7 @@ update_repo(){
load_user_info
load_config "${AT_USERCONFDIR}/artools.conf" || load_config "@sysconfdir@/artools.conf"
load_config "${AT_USERCONFDIR}/artools.conf" || load_config "${SYSCONFDIR}/artools.conf"
load_vars "${PAC_USERCONFDIR}/makepkg.conf" || load_vars "$USER_HOME/.makepkg.conf"
load_vars /etc/makepkg.conf

View File

@@ -0,0 +1,146 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -C - -f %u > %o
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
#UseDelta = 0.7
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#Color
#TotalDownload
CheckSpace
VerbosePkgLists
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Artix Linux
# packagers with `pacman-key --populate archlinux artix`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The gremlins repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
[gnome-wobble]
Include = /etc/pacman.d/mirrorlist
[goblins]
Include = /etc/pacman.d/mirrorlist
[gremlins]
Include = /etc/pacman.d/mirrorlist
[system]
Include = /etc/pacman.d/mirrorlist
[world]
Include = /etc/pacman.d/mirrorlist
[galaxy-goblins]
Include = /etc/pacman.d/mirrorlist
[galaxy-gremlins]
Include = /etc/pacman.d/mirrorlist
[galaxy]
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the lib32 repositories as required here.
#[lib32-goblins]
#Include = /etc/pacman.d/mirrorlist
#[lib32-gremlins]
#Include = /etc/pacman.d/mirrorlist
#[lib32]
#Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
#
# ARCHLINUX
#
[gnome-unstable]
Include = /etc/pacman.d/mirrorlist-arch
[staging]
Include = /etc/pacman.d/mirrorlist-arch
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-staging]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-staging]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

146
data/pacman-kde-wobble.conf Normal file
View File

@@ -0,0 +1,146 @@
#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives
#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir = /
#DBPath = /var/lib/pacman/
#CacheDir = /var/cache/pacman/pkg/
#LogFile = /var/log/pacman.log
#GPGDir = /etc/pacman.d/gnupg/
#HookDir = /etc/pacman.d/hooks/
HoldPkg = pacman glibc
#XferCommand = /usr/bin/curl -C - -f %u > %o
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
#UseDelta = 0.7
Architecture = auto
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg =
#IgnoreGroup =
#NoUpgrade =
#NoExtract =
# Misc options
#UseSyslog
#Color
#TotalDownload
CheckSpace
VerbosePkgLists
# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required
# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Artix Linux
# packagers with `pacman-key --populate archlinux artix`.
#
# REPOSITORIES
# - can be defined here or included from another file
# - pacman will search repositories in the order defined here
# - local/custom mirrors can be added here or in separate files
# - repositories listed first will take precedence when packages
# have identical names, regardless of version number
# - URLs will have $repo replaced by the name of the current repo
# - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
# [repo-name]
# Server = ServerName
# Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#
# The gremlins repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.
[kde-wobble]
Include = /etc/pacman.d/mirrorlist
[goblins]
Include = /etc/pacman.d/mirrorlist
[gremlins]
Include = /etc/pacman.d/mirrorlist
[system]
Include = /etc/pacman.d/mirrorlist
[world]
Include = /etc/pacman.d/mirrorlist
[galaxy-goblins]
Include = /etc/pacman.d/mirrorlist
[galaxy-gremlins]
Include = /etc/pacman.d/mirrorlist
[galaxy]
Include = /etc/pacman.d/mirrorlist
# If you want to run 32 bit applications on your x86_64 system,
# enable the lib32 repositories as required here.
#[lib32-goblins]
#Include = /etc/pacman.d/mirrorlist
#[lib32-gremlins]
#Include = /etc/pacman.d/mirrorlist
#[lib32]
#Include = /etc/pacman.d/mirrorlist
# An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs
#
# ARCHLINUX
#
[kde-unstable]
Include = /etc/pacman.d/mirrorlist-arch
[staging]
Include = /etc/pacman.d/mirrorlist-arch
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-staging]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-staging]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -34,6 +34,19 @@ delete_repo(){
-H "accept: application/json"
}
get_pkg_org(){
local pkg="$1" org= sub=
case ${pkg} in
# ruby-*) org=${pkg:0:6}; sub="${org:5}"; echo "packagesRuby" ;;
perl-*) org=${pkg:0:6}; sub="${org:5}"; echo "packagesPerl" ;;
python-*) org=${pkg:0:8}; sub="${org:7}"; echo "packagesPython" ;;
python2-*) org=${pkg:0:9}; sub="${org:8}"; echo "packagesPython" ;;
lib32*) org=${pkg:0:7}; sub="${org:6}"; echo "packagesL" ;; #"packages${sub^^}" ;;
# lib*) org=${pkg:0:4}; sub="${org:3}"; echo "packagesLib${sub^^}" ;;
*) org=${pkg:0:1}; echo "packages${org^^}" ;;
esac
}
load_team_id(){
local org="$1" tree="$2" id=0

View File

@@ -11,7 +11,22 @@
subrepo_push(){
local pkg="$1"
git subrepo push "$pkg" --clean
msg2 "Update (%s)" "$pkg"
git subrepo push "$pkg"
}
subrepo_config(){
local pkg="$1" org="$2"
local gitname=$(get_compliant_name "$pkg")
local url=gitea@"${GIT_DOMAIN}":"$org"/"$gitname".git
msg2 "Update .gitrepo (%s) [%s]" "$pkg" "$url"
git subrepo config "$pkg" remote "$url"
}
subrepo_clean(){
local pkg="$1"
msg2 "Clean (%s)" "$pkg"
git subrepo clean "$pkg"
}
subrepo_pull(){
@@ -26,28 +41,50 @@ subrepo_clone(){
git subrepo clone gitea@"${GIT_DOMAIN}":"$org"/"$gitname".git "$pkg"
}
mainrepo_pull(){
local tree="$1"
msg2 "Check (%s)" "${tree}"
git push origin master
}
mainrepo_push(){
local tree="$1"
msg2 "Update (%s)" "${tree}"
git push origin master
}
write_jenkinsfile(){
local jenkins=Jenkinsfile
echo '@Library(["PackagePipeline", "RepoPackage"]) import org.artixlinux.RepoPackage' > $jenkins
local pkg="$1"
local jenkins=$pkg/Jenkinsfile
echo "@Library('artix-ci') import org.artixlinux.RepoPackage" > $jenkins
echo '' >> $jenkins
echo 'PackagePipeline(new RepoPackage(this))' >> $jenkins
echo '' >> $jenkins
git add $jenkins
}
write_agentyaml(){
local agent=.artixlinux/agent.yaml label='master'
[[ -d .artixlinux ]] || mkdir .artixlinux
local pkg="$1"
local agent=$pkg/.artixlinux/agent.yaml label='master'
[[ -d $pkg/.artixlinux ]] || mkdir $pkg/.artixlinux
echo '%YAML 1.2' > $agent
echo '---' >> $agent
echo '' >> $agent
echo "label: $label" >> $agent
echo '' >> $agent
git add $agent
}
commit_jenkins_files(){
write_jenkinsfile
write_agentyaml
git add Jenkinsfile
git add .artixlinux
local pkg="$1"
write_jenkinsfile "$pkg"
write_agentyaml "$pkg"
git commit -m "add jenkinsfile & .artixlinux/agent.yaml"
}

View File

@@ -95,6 +95,14 @@ find_repo(){
echo $repo
}
get_import_path(){
local pkg="$1" import_path=
for tree in ${tree_names[@]};do
[[ -d ${TREE_DIR_ARCH}/$tree/$pkg ]] && import_path=${TREE_DIR_ARCH}/$tree/$pkg
done
echo $import_path
}
clone_tree(){
local timer=$(get_timer) host_tree="$1"
git clone $host_tree.git
@@ -113,18 +121,6 @@ pull_tree(){
fi
}
get_pkg_org(){
local pkg="$1" org= sub=
case ${pkg} in
perl-*) org=${pkg:0:6}; sub="${org:5}"; echo "packagesPerl" ;;
python-*) org=${pkg:0:8}; sub="${org:7}"; echo "packagesPython" ;;
python2-*) org=${pkg:0:9}; sub="${org:8}"; echo "packagesPython" ;;
lib32*) org=${pkg:0:7}; sub="${org:6}"; echo "packagesL" ;; #"packages${sub^^}" ;;
# lib*) org=${pkg:0:4}; sub="${org:3}"; echo "packagesLib${sub^^}" ;;
*) org=${pkg:0:1}; echo "packages${org^^}" ;;
esac
}
pkgver_equal() {
if [[ $1 = *-* && $2 = *-* ]]; then
# if both versions have a pkgrel, then they must be an exact match