From fc4e69a6bcd55762ac460c41080dfff915b7ceb0 Mon Sep 17 00:00:00 2001 From: jiangcuo Date: Thu, 7 Nov 2024 13:05:58 +0800 Subject: [PATCH] Add debbuild env check and add dsc build --- build.sh | 91 +++++++++++++++----- docker/dockerfile.arm64 | 2 +- docker/start.sh | 4 +- packages/librados2-perl/autobuild.sh | 1 + packages/libtpms/autobuild.sh | 1 + packages/proxmox-backup-qemu/autobuild.sh | 1 + packages/proxmox-offline-mirror/autobuild.sh | 1 + packages/proxmox-perl-rs/autobuild.sh | 1 + packages/pve-container/autobuild.sh | 3 +- packages/pve-qemu/autobuild.sh | 1 + packages/pve-xtermjs/autobuild.sh | 1 + packages/smartmontools/autobuild.sh | 1 + packages/swtpm/autobuild.sh | 1 + 13 files changed, 83 insertions(+), 26 deletions(-) diff --git a/build.sh b/build.sh index 11b9514..a26ae21 100755 --- a/build.sh +++ b/build.sh @@ -1,6 +1,8 @@ #!/bin/bash PKGNAME=$1 SH_PATH=$(readlink -f `dirname "$0"`) +PKG_LOCATION_PATH="/tmp/2022" +DEB_OPT="dd" errlog(){ echo $1; @@ -15,26 +17,72 @@ if [ ! -d "$SH_PATH/packages/$PKGNAME" ];then errlog "$PKGNAME is not exsited!" fi +if [ -n "$PKG_DIR" ];then + PKG_LOCATION_PATH=$PKG_DIR +fi + +if [ -n "$DEB_BUILD_OPTIONS" ];then + DEB_OPT=$DEB_BUILD_OPTIONS +fi + + + +echo "--------------info------------------" +echo "This is Proxmox-Port package build scripts" +echo "Package is $PKGNAME" +echo "Docker build is $BUILDERNAME" +echo "Package dir is $PKG_LOCATION_PATH/$PKGNAME" +if [ -n "$DEB_BUILD_OPTIONS" ]; +then + echo "DEB_BUILD_OPTIONS = $DEB_BUILD_OPTIONS" +fi +echo "--------------start-----------------" + dockerbuild(){ rm $SH_PATH/packages/$PKGNAME/$PKGNAME/pvebuild -rf - if [ -n "$BUILDERNAME" ];then - docker run -it -e PKGDIR=$SH_PATH/packages/$PKGNAME/$PKGNAME -v $SH_PATH/:$SH_PATH --name $PKGNAME --rm $BUILDERNAME || errlog "builderror" + if [ -n "$BUILDERNAME" ];then + docker run -it -e DEB_BUILD_OPTIONS=$DEB_OPT -e PKGDIR=$SH_PATH/packages/$PKGNAME/$PKGNAME -v $SH_PATH/:$SH_PATH --name $PKGNAME --rm $BUILDERNAME || errlog "builderror" else - docker run -it -e PKGDIR=$SH_PATH/packages/$PKGNAME/$PKGNAME -v $SH_PATH/:$SH_PATH --name $PKGNAME --rm pvebuilder || errlog "builderror" + docker run -it -e DEB_BUILD_OPTIONS=$DEB_OPT -e PKGDIR=$SH_PATH/packages/$PKGNAME/$PKGNAME -v $SH_PATH/:$SH_PATH --name $PKGNAME --rm pvebuilder || errlog "builderror" fi } upload_pkg(){ - mkdir /tmp/$PKGNAME -p - find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.deb" -exec cp {} /tmp/$PKGNAME \; - for i in `ls /tmp/$PKGNAME/*.deb`; + mkdir $PKG_LOCATION_PATH/$PKGNAME -p + find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.deb" -exec cp {} $PKG_LOCATION_PATH/$PKGNAME \; + find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.buildinfo" -exec cp {} $PKG_LOCATION_PATH/$PKGNAME \; + find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.changes" -exec cp {} $PKG_LOCATION_PATH/$PKGNAME \; + find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.dsc" -exec cp {} $PKG_LOCATION_PATH/$PKGNAME \; + find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.tar*" -exec cp {} $PKG_LOCATION_PATH/$PKGNAME \; + for i in `ls $PKG_LOCATION_PATH/$PKGNAME/*.deb`; do md5sum $i > $i.md5 cat $i.md5 done - find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.deb.md5" -exec cp {} /tmp/$PKGNAME \; - find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.buildinfo" -exec cp {} /tmp/$PKGNAME \; - find "$SH_PATH/packages/$PKGNAME/$PKGNAME" -name "*.changes" -exec cp {} /tmp/$PKGNAME \; + for i in `ls $PKG_LOCATION_PATH/$PKGNAME/*.buildinfo`; + do + md5sum $i > $i.md5 + cat $i.md5 + done + + for i in `ls $PKG_LOCATION_PATH/$PKGNAME/*.changes`; + do + md5sum $i > $i.md5 + cat $i.md5 + done + + for i in `ls $PKG_LOCATION_PATH/$PKGNAME/*.dsc`; + do + md5sum $i > $i.md5 + cat $i.md5 + done + + for i in `ls $PKG_LOCATION_PATH/$PKGNAME/*.tar*`; + do + md5sum $i > $i.md5 + cat $i.md5 + done + } update_submodues(){ @@ -42,29 +90,26 @@ update_submodues(){ echo "skip submodule" else cd $SH_PATH/packages/$PKGNAME/ - git submodule update --init --recursive "$PKGNAME" +# git submodule update --init --recursive "$PKGNAME" fi } update_submodues || errlog "Failed to update submodule" +if [ -f "$SH_PATH/packages/$PKGNAME/series" ];then + cd "$SH_PATH/packages/$PKGNAME/$PKGNAME" + QUILT_PATCHES=../ \ + QUILT_SERIES=../series \ + quilt --quiltrc /dev/null --color=always push -a || test $$? = 2 +fi ARCH=$(arch) -if [ -f "$SH_PATH/packages/$PKGNAME/series" ];then - cat $SH_PATH/packages/$PKGNAME/series > $SH_PATH/packages/$PKGNAME/series.all -fi - if [ -f "$SH_PATH/packages/$PKGNAME/series.$ARCH" ];then - cat $SH_PATH/packages/$PKGNAME/series.$ARCH >> $SH_PATH/packages/$PKGNAME/series.all -fi - -if [ -f "$SH_PATH/packages/$PKGNAME/series.all" ];then - echo "apply patches for series.all" - cd "$SH_PATH/packages/$PKGNAME/$PKGNAME" - QUILT_PATCHES=../ \ - QUILT_SERIES=../series.all \ - quilt --quiltrc /dev/null --color=always push -a || test $$? = 2 + cd "$SH_PATH/packages/$PKGNAME/$PKGNAME" + QUILT_PATCHES=../ \ + QUILT_SERIES=../series.$ARCH \ + quilt --quiltrc /dev/null --color=always push -a || test $$? = 2 fi cd $SH_PATH diff --git a/docker/dockerfile.arm64 b/docker/dockerfile.arm64 index 58596f8..026b754 100644 --- a/docker/dockerfile.arm64 +++ b/docker/dockerfile.arm64 @@ -1,4 +1,4 @@ -FROM debian:12 +FROM dockerpull.com/debian:12 ARG DEBIAN_APT=http://mirrors.ustc.edu.cn ARG PVE_APT=https://mirrors.lierfang.com ARG ARCH= diff --git a/docker/start.sh b/docker/start.sh index 414ca1a..31f9e6c 100644 --- a/docker/start.sh +++ b/docker/start.sh @@ -14,9 +14,11 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " make deb + make dsc else dpkg-buildpackage -b -us -uc ||errlog "build error" - cp ../*.deb ../*.buildinfo ../*.changes $PKGDIR + dpkg-buildpackage -b -us -uc -S -d ||errlog "build des error" + cp ../*.deb ../*.buildinfo ../*.changes ../*.dsc ../*.tar.* $PKGDIR fi } diff --git a/packages/librados2-perl/autobuild.sh b/packages/librados2-perl/autobuild.sh index e504a65..3a6aa8c 100644 --- a/packages/librados2-perl/autobuild.sh +++ b/packages/librados2-perl/autobuild.sh @@ -15,6 +15,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " make deb + make dsc } echo "This is $PKGNAME build scripts" diff --git a/packages/libtpms/autobuild.sh b/packages/libtpms/autobuild.sh index e75f779..96c6192 100644 --- a/packages/libtpms/autobuild.sh +++ b/packages/libtpms/autobuild.sh @@ -14,6 +14,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " dpkg-buildpackage -b -us -uc + dpkg-buildpackage -b -us -uc -S -d } copy_dir(){ diff --git a/packages/proxmox-backup-qemu/autobuild.sh b/packages/proxmox-backup-qemu/autobuild.sh index 4f98407..aa2f43f 100755 --- a/packages/proxmox-backup-qemu/autobuild.sh +++ b/packages/proxmox-backup-qemu/autobuild.sh @@ -14,6 +14,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " make deb + make dsc } echo "This is $PKGNAME build scripts" diff --git a/packages/proxmox-offline-mirror/autobuild.sh b/packages/proxmox-offline-mirror/autobuild.sh index 10e3d48..7100db6 100644 --- a/packages/proxmox-offline-mirror/autobuild.sh +++ b/packages/proxmox-offline-mirror/autobuild.sh @@ -15,6 +15,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " make deb + make dsc } echo "This is $PKGNAME build scripts" diff --git a/packages/proxmox-perl-rs/autobuild.sh b/packages/proxmox-perl-rs/autobuild.sh index 2a9cd0a..240ec48 100755 --- a/packages/proxmox-perl-rs/autobuild.sh +++ b/packages/proxmox-perl-rs/autobuild.sh @@ -14,6 +14,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " make deb + make dsc } echo "This is $PKGNAME build scripts" diff --git a/packages/pve-container/autobuild.sh b/packages/pve-container/autobuild.sh index 7b86b9c..8f1b043 100644 --- a/packages/pve-container/autobuild.sh +++ b/packages/pve-container/autobuild.sh @@ -13,7 +13,8 @@ exec_build(){ echo "clean " make clean || echo ok echo "build deb in `pwd` " - DEB_BUILD_OPTIONS=nocheck make deb + make deb + make dsc } echo "This is $PKGNAME build scripts" diff --git a/packages/pve-qemu/autobuild.sh b/packages/pve-qemu/autobuild.sh index e03e11e..756df24 100644 --- a/packages/pve-qemu/autobuild.sh +++ b/packages/pve-qemu/autobuild.sh @@ -18,6 +18,7 @@ exec_build(){ meson subprojects download cd $SH_DIR/$PKGNAME make deb + make dsc } echo "This is $PKGNAME build scripts" diff --git a/packages/pve-xtermjs/autobuild.sh b/packages/pve-xtermjs/autobuild.sh index f643ca1..d032a99 100755 --- a/packages/pve-xtermjs/autobuild.sh +++ b/packages/pve-xtermjs/autobuild.sh @@ -12,6 +12,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " make deb + make dsc } echo "This is pve-xtermjs build scripts" diff --git a/packages/smartmontools/autobuild.sh b/packages/smartmontools/autobuild.sh index 341f7dc..9c3ecb2 100644 --- a/packages/smartmontools/autobuild.sh +++ b/packages/smartmontools/autobuild.sh @@ -16,6 +16,7 @@ exec_build(){ echo "build deb in `pwd` " cd $SH_DIR/$PKGNAME make deb||echo ok + make dsc||echo ok } echo "This is $PKGNAME build scripts" diff --git a/packages/swtpm/autobuild.sh b/packages/swtpm/autobuild.sh index 73b53c0..96f7d58 100644 --- a/packages/swtpm/autobuild.sh +++ b/packages/swtpm/autobuild.sh @@ -14,6 +14,7 @@ exec_build(){ make clean || echo ok echo "build deb in `pwd` " dpkg-buildpackage -b -us -uc + dpkg-buildpackage -b -us -uc -S -d } copy_dir(){