Compare commits

...

14 Commits
0.8.10 ... 0.9

8 changed files with 98 additions and 10 deletions

View File

@@ -1,4 +1,4 @@
VERSION=0.8
VERSION=0.9
CHROOT_VERSION=0.8

View File

@@ -18,6 +18,8 @@ DATADIR='@datadir@'
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
import ${LIBDIR}/util.sh
import ${LIBDIR}/util-pkg.sh
import ${LIBDIR}/util-pkg-gitea.sh
import ${LIBDIR}/util-pkg-subrepo.sh
pull_tree_arch(){
cd ${tree_dir_arch}
@@ -161,7 +163,9 @@ from_arch(){
cd ${tree_dir_artix}/$git_tree_artix
dest=${tree_dir_artix}/$git_tree_artix/$pkg/trunk
mkdir $pkg
create_repo "$pkg"
subrepo_clone "$pkg"
info "Import from archlinux (%s)" "$git_tree_arch"
rsync "${rsync_args[@]}" $src/ $dest/

View File

@@ -18,6 +18,7 @@ DATADIR='@datadir@'
[[ -r ${LIBDIR}/util-msg.sh ]] && source ${LIBDIR}/util-msg.sh
import ${LIBDIR}/util.sh
import ${LIBDIR}/util-pkg.sh
import ${LIBDIR}/util-pkg-subrepo.sh
commit_pkg(){
local git_tree=$(find_tree "${tree_dir_artix}" "${package}")
@@ -27,6 +28,7 @@ commit_pkg(){
source trunk/PKGBUILD
[[ $arch == 'any' ]] && CARCH=any
local ver=$(get_full_version "${package}")
local commit_msg=""
if ${remove};then
local action='remove'
@@ -37,18 +39,24 @@ commit_pkg(){
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}"
commit_msg="[${source_repo}] '$pkg' ${action}"
msg "Action: %s" "$commit_msg"
else
local action='modify'
msg "Action: [%s] '%s' %s" "${source_repo}" "${package}-$ver" "${action}"
commit_msg="[${source_repo}] '${package}-$ver' ${action}"
msg "Action: %s" "$commit_msg"
git add .
git commit -m "[${source_repo}] '${package}-$ver' ${action}"
fi
git commit -m "$commit_msg"
cd ${tree_dir_artix}/${git_tree}
if ${push};then
msg "Checking (%s)" "${git_tree}"
git pull origin master
subrepo_push "${package}"
sleep 1
git push origin master
fi
else
@@ -85,14 +93,19 @@ symlink_commit_pkg(){
cp repos/$src/* repos/$dest/
git rm -r repos/$src
fi
local commit_msg="[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}"
msg "Action: %s" "$commit_msg"
msg "Action: [%s] -> [%s] '%s' %s" "${source_repo}" "${target_repo}" "${package}-$ver" "${action}"
git add .
git commit -m "[${source_repo}] -> [${target_repo}] '${package}-$ver' ${action}"
git commit -m "$commit_msg"
cd ${tree_dir_artix}/${git_tree}
if ${push};then
msg "Checking (%s)" "${git_tree}"
git pull origin master
subrepo_push "${package}"
sleep 1
git push origin master
fi
else

View File

@@ -12,7 +12,10 @@
################ artools-pkg ################
#############################################
# host_tree_artix='https://github.com/artix-linux'
# git user access token
# git_token=''
# host_tree_artix='gitea@gitea.artixlinux.org:artix'
# host_tree_arch=git://projects.archlinux.org/svntogit

24
lib/util-pkg-gitea.sh Normal file
View File

@@ -0,0 +1,24 @@
#!/bin/bash
create_repo(){
local pkg="$1"
curl -X POST "${git_url}/api/v1/org/packages/repos?access_token=${git_token}" -H "accept: application/json" -H "content-type: application/json" -d "{\"name\":\"$pkg\"}"
}
delete_repo(){
local pkg="$1"
curl -X DELETE "${git_url}/api/v1/repos/packages/$pkg?access_token=${git_token}" -H "accept: application/json"
}
add_repo_to_team(){
local pkg="$1" repo="$2"
local id=0
case $repo in
core) id=18 ;;
extra) id=19 ;;
community) id=20 ;;
multilib) id=21 ;;
esac
curl -X PUT "${git_url}/api/v1/teams/$id/repos/packages/$pkg?access_token=${git_token}" -H "accept: application/json"
}

30
lib/util-pkg-subrepo.sh Normal file
View File

@@ -0,0 +1,30 @@
#!/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.
subrepo_init(){
local pkg="$1"
git subrepo init $pkg -r gitea@${git_domain}:packages/$pkg.git -b master
}
subrepo_push(){
local pkg="$1"
git subrepo push -u "$pkg" -b master
}
subrepo_pull(){
local pkg="$1" name="${2:-$1}"
git subrepo pull "$pkg" -b master -r gitea@${git_domain}:packages/$name.git -u
}
subrepo_clone(){
local pkg="$1" name="${2:-$1}"
git subrepo clone gitea@gitea.artixlinux.org:packages/$pkg.git "$name" -b master
}

View File

@@ -77,6 +77,14 @@ patch_pkg(){
esac
}
write_jenkinsfile(){
local pkg="$1" jenkins=Jenkinsfile
echo '@Library(["PackagePipeline", "BuildPkg", "DeployPkg", "Notify", "PostBuild", "RepoPackage"]) import org.artixlinux.RepoPackage' > $pkg/$jenkins
echo '' >> $pkg/$jenkins
echo 'PackagePipeline(new RepoPackage(this))' >> $pkg/$jenkins
echo '' >> $pkg/$jenkins
}
find_tree(){
local tree="$1" pkg="$2"
local result=$(find $tree -mindepth 2 -maxdepth 2 -type d -name "$pkg")

View File

@@ -60,9 +60,15 @@ init_artools_base(){
init_artools_pkg(){
git_domain='gitea.artixlinux.org'
git_url="https://${git_domain}"
[[ -z ${git_token} ]] && git_token=''
[[ -z ${tree_dir_artix} ]] && tree_dir_artix=${workspace_dir}/artix
[[ -z ${host_tree_artix} ]] && host_tree_artix='https://github.com/artix-linux'
[[ -z ${host_tree_artix} ]] && host_tree_artix="gitea@gitea.artixlinux.org:artix"
[[ -z ${tree_dir_arch} ]] && tree_dir_arch=${workspace_dir}/archlinux