Compare commits
	
		
			14 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 60844ee0ea | |||
| 2c2e6b41a1 | |||
| 52c81a0e61 | |||
| 6667147b77 | |||
| 26635e3a10 | |||
| 1d5a565ed8 | |||
| 4e54b48903 | |||
| 2f16cd73c9 | |||
| 9fd6ac3531 | |||
| 2f5acc6e3c | |||
| d73b6d9178 | |||
| d5404ac2fa | |||
| d250b967ba | |||
| 5715eecf0c | 
| @@ -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/ | ||||
|   | ||||
| @@ -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 | ||||
|   | ||||
| @@ -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
									
								
							
							
						
						
									
										24
									
								
								lib/util-pkg-gitea.sh
									
									
									
									
									
										Normal 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
									
								
							
							
						
						
									
										30
									
								
								lib/util-pkg-subrepo.sh
									
									
									
									
									
										Normal 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 | ||||
| } | ||||
| @@ -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") | ||||
|   | ||||
| @@ -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 | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user