Mercurial > hgrepos > FreeBSD > ports > sysutils > local-bsdtools
comparison bin/check-ports @ 7:2712d249c371
Assert that the installed version number we get from "pkg query" is the same as the version in "pkg version"
| author | Franz Glasner <hg@dom66.de> |
|---|---|
| date | Sun, 22 Oct 2017 14:36:16 +0200 |
| parents | 0d9a499e89e9 |
| children | 208545b92d43 |
comparison
equal
deleted
inserted
replaced
| 6:0d9a499e89e9 | 7:2712d249c371 |
|---|---|
| 1 #!/bin/sh | 1 #!/bin/sh |
| 2 | 2 |
| 3 : ${LOCAL_REPO:=LocalRepo} | 3 : ${LOCAL_REPO:=LocalRepo} |
| 4 : ${FREEBSD_REPO:=FreeBSD} | 4 : ${FREEBSD_REPO:=FreeBSD} |
| 5 : ${PORTS_DIRECT_INSTALLED_REPO:=unknown-repository} | 5 : ${PORTS_DIRECT_INSTALLED_REPO:=unknown-repository} |
| 6 | |
| 7 installed_packages=$(pkg query '%n') | |
| 8 | 6 |
| 9 get_remote_repo_versions() { | 7 get_remote_repo_versions() { |
| 10 _repo="$1" | 8 _repo="$1" |
| 11 | 9 |
| 12 _data=$(pkg version -U -R -r ${_repo} -v) | 10 _data=$(pkg version -U -R -r ${_repo} -v) |
| 17 | 15 |
| 18 get_local_index_versions() { | 16 get_local_index_versions() { |
| 19 local_index_versions=$(pkg version -I -v) | 17 local_index_versions=$(pkg version -I -v) |
| 20 } | 18 } |
| 21 | 19 |
| 20 assert_local_version() { | |
| 21 _name=$1 | |
| 22 _version=$2 | |
| 23 while read _n _v _r ; do | |
| 24 if [ ${_name} = ${_n} ] ; then | |
| 25 if [ ${_version} != ${_v} ] ; then | |
| 26 return 1 | |
| 27 else | |
| 28 return 0 | |
| 29 fi | |
| 30 fi | |
| 31 done <<EOF223 | |
| 32 ${installed_data} | |
| 33 EOF223 | |
| 34 return 2 | |
| 35 } | |
| 36 | |
| 37 installed_packages=$(pkg query '%n') | |
| 22 installed_data="$(pkg query '%n %v %R' $installed_packages)" | 38 installed_data="$(pkg query '%n %v %R' $installed_packages)" |
| 23 | 39 |
| 24 get_remote_repo_versions ${LOCAL_REPO} | 40 get_remote_repo_versions ${LOCAL_REPO} |
| 25 get_remote_repo_versions ${FREEBSD_REPO} | 41 get_remote_repo_versions ${FREEBSD_REPO} |
| 26 get_local_index_versions | 42 get_local_index_versions |
| 27 | 43 |
| 28 while read lfqp llabel ldescr ; do | 44 while read lfqp llabel ldescr ; do |
| 29 _installed_name=${lfqp%-*} | 45 _installed_name=${lfqp%-*} |
| 30 _installed_version=${lfqp##*-} | 46 _installed_version=${lfqp##*-} |
| 31 echo $lfqp ${_installed_name} ${_installed_version} ${llabel} | 47 echo $lfqp ${_installed_name} ${_installed_version} ${llabel} |
| 48 if ! assert_local_version ${_installed_name} ${_installed_version} ; then | |
| 49 echo "Assertion failed" >&2 | |
| 50 exit 1 | |
| 51 fi | |
| 32 done <<EOF856661111299999 | 52 done <<EOF856661111299999 |
| 33 ${local_index_versions} | 53 ${local_index_versions} |
| 34 EOF856661111299999 | 54 EOF856661111299999 |
