From 5554e2dedf0279ee8fc6a588bac0ca3912557407 Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 04:31:54 +0200 Subject: [PATCH 1/9] Fix entrypoint --- Dockerfile.aarch64 | 2 +- Dockerfile.x86_64 | 2 +- makepkg.sh | 0 3 files changed, 2 insertions(+), 2 deletions(-) mode change 100644 => 100755 makepkg.sh diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index b6a5ae8..a277639 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -4,4 +4,4 @@ USER root COPY makepkg.sh /usr/local/bin/drone-makepkg USER builder -ENTRYPOINT ["drone-makepkg"] +ENTRYPOINT ["/usr/local/bin/drone-makepkg"] diff --git a/Dockerfile.x86_64 b/Dockerfile.x86_64 index 055ab78..24f3899 100644 --- a/Dockerfile.x86_64 +++ b/Dockerfile.x86_64 @@ -4,4 +4,4 @@ USER root COPY makepkg.sh /usr/local/bin/drone-makepkg USER builder -ENTRYPOINT ["drone-makepkg"] +ENTRYPOINT ["/usr/local/bin/drone-makepkg"] diff --git a/makepkg.sh b/makepkg.sh old mode 100644 new mode 100755 From 6532c70eabdf2a258b2c645eec3a437613e2679b Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 04:44:36 +0200 Subject: [PATCH 2/9] Fix permission in Drone workspace --- makepkg.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/makepkg.sh b/makepkg.sh index 7c315d9..144f27b 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -4,6 +4,8 @@ set -e echo "Building on: $DRONE_STAGE_MACHINE" +sudo chown -R builder:builder "$DRONE_WORKSPACE_BASE" + AUR_URL="https://aur.archlinux.org" OUTDIR="$DRONE_WORKSPACE_BASE/out" mkdir -p "$OUTDIR" @@ -46,3 +48,5 @@ pikaur --noprogressbar --noconfirm -P "$PKGBUILD" echo "Moving packages to output directory: $OUTDIR" mv *.pkg.* "$OUTDIR/" + +sudo chown -R root:root "$DRONE_WORKSPACE_BASE" From 3f378e62f90a2f35afc6298a0e5d54a12f8bd10b Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 05:06:48 +0200 Subject: [PATCH 3/9] Pass --ignorearch to makepkg --- makepkg.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makepkg.sh b/makepkg.sh index 144f27b..da64b89 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -44,7 +44,7 @@ if [ "$PLUGIN_PKGBUILD" != "" ]; then fi echo "Running build" -pikaur --noprogressbar --noconfirm -P "$PKGBUILD" +pikaur -P --noprogressbar --noconfirm --mflags=--ignorearch "$PKGBUILD" echo "Moving packages to output directory: $OUTDIR" mv *.pkg.* "$OUTDIR/" From 7afcb8587f72671d03bc0bf2f2b3eceb4c2a7c43 Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 05:09:06 +0200 Subject: [PATCH 4/9] Retrieve built packages from pikaur's cache --- makepkg.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makepkg.sh b/makepkg.sh index da64b89..0a51d5d 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -47,6 +47,6 @@ echo "Running build" pikaur -P --noprogressbar --noconfirm --mflags=--ignorearch "$PKGBUILD" echo "Moving packages to output directory: $OUTDIR" -mv *.pkg.* "$OUTDIR/" +mv ~/.cache/pikaur/pkg/* "$OUTDIR/" sudo chown -R root:root "$DRONE_WORKSPACE_BASE" From d9d6b0f8868d038080d9319c3a1efdd0f68adacb Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 05:37:15 +0200 Subject: [PATCH 5/9] Pikaur is broken, use Yay instead --- makepkg.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/makepkg.sh b/makepkg.sh index 0a51d5d..12aed7e 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -16,17 +16,17 @@ fi if [ "$PLUGIN_INSTALL" != "" ]; then echo "Installing packages before build: $PLUGIN_INSTALL" - pikaur -Syu --noprogressbar --noconfirm $(echo "$PLUGIN_INSTALL" | tr ',' ' ') + yay -Syu --noprogressbar --noconfirm --mflags=-A $(echo "$PLUGIN_INSTALL" | tr ',' ' ') fi if [ "$PLUGIN_INSTALL_OUTPUTS" != "no" ] && [ -n "$(ls -A "$OUTDIR")" ]; then echo "Installing previous build outputs" - pikaur -U --noprogressbar --noconfirm "$OUTDIR"/* + yay -U --noprogressbar --noconfirm "$OUTDIR"/* fi # Clone package repo if [ "$PLUGIN_AUR" != "" ]; then - echo "Building AUR package $PLUGIN_AUR" + echo "Building AUR package: $PLUGIN_AUR" git clone "$AUR_URL/$PLUGIN_AUR.git" package cd package elif [ "$PLUGIN_REPO" != "" ]; then @@ -44,9 +44,9 @@ if [ "$PLUGIN_PKGBUILD" != "" ]; then fi echo "Running build" -pikaur -P --noprogressbar --noconfirm --mflags=--ignorearch "$PKGBUILD" +makepkg -sAc --skippgpcheck --noconfirm --noprogressbar "$PKGBUILD" echo "Moving packages to output directory: $OUTDIR" -mv ~/.cache/pikaur/pkg/* "$OUTDIR/" +mv *.pkg.* "$OUTDIR/" sudo chown -R root:root "$DRONE_WORKSPACE_BASE" From 2a1ed4b05466772f4f79756aee4594fbf2798a7e Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 06:14:31 +0200 Subject: [PATCH 6/9] Use makepkg's options instead of moving stuff around --- makepkg.sh | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/makepkg.sh b/makepkg.sh index 12aed7e..9ba5397 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -4,11 +4,14 @@ set -e echo "Building on: $DRONE_STAGE_MACHINE" -sudo chown -R builder:builder "$DRONE_WORKSPACE_BASE" - AUR_URL="https://aur.archlinux.org" OUTDIR="$DRONE_WORKSPACE_BASE/out" mkdir -p "$OUTDIR" +sudo chown -R builder:builder "$OUTDIR" + +export PKGDEST="$OUTDIR" +export SRCDEST="$HOME" +export BUILDDIR="$HOME" if [ "$PLUGIN_AUTO_MAKEFLAGS" != "no" ]; then echo "MAKEFLAGS='-j$(nproc)'" | sudo tee -a /etc/makepkg.conf @@ -27,10 +30,12 @@ fi # Clone package repo if [ "$PLUGIN_AUR" != "" ]; then echo "Building AUR package: $PLUGIN_AUR" + cd ~ git clone "$AUR_URL/$PLUGIN_AUR.git" package cd package elif [ "$PLUGIN_REPO" != "" ]; then echo "Building package from git repository: $PLUGIN_REPO" + cd ~ git clone "$PLUGIN_REPO" package cd package else @@ -46,7 +51,4 @@ fi echo "Running build" makepkg -sAc --skippgpcheck --noconfirm --noprogressbar "$PKGBUILD" -echo "Moving packages to output directory: $OUTDIR" -mv *.pkg.* "$OUTDIR/" - -sudo chown -R root:root "$DRONE_WORKSPACE_BASE" +sudo chown -R root:root "$OUTDIR" From 131f96cb894e538b274aa3aaca00083c87737937 Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 06:15:46 +0200 Subject: [PATCH 7/9] Remove PKGBUILD setting --- makepkg.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/makepkg.sh b/makepkg.sh index 9ba5397..b3d35b1 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -42,12 +42,6 @@ else echo "Building source repository" fi -PKGBUILD="PKGBUILD" -if [ "$PLUGIN_PKGBUILD" != "" ]; then - echo "Using PKGBUILD: $PLUGIN_PKGBUILD" - PKGBUILD="$PLUGIN_PKGBUILD" -fi - echo "Running build" makepkg -sAc --skippgpcheck --noconfirm --noprogressbar "$PKGBUILD" From abb84b4bd4bb925a86efcfbe743cb1fe4578c86c Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 06:30:01 +0200 Subject: [PATCH 8/9] Use sudo to create outdir --- makepkg.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/makepkg.sh b/makepkg.sh index b3d35b1..505f5b8 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -6,7 +6,7 @@ echo "Building on: $DRONE_STAGE_MACHINE" AUR_URL="https://aur.archlinux.org" OUTDIR="$DRONE_WORKSPACE_BASE/out" -mkdir -p "$OUTDIR" +sudo mkdir -p "$OUTDIR" sudo chown -R builder:builder "$OUTDIR" export PKGDEST="$OUTDIR" From 2f5ff0027f5306da02d97f76c8c459170d394711 Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Sat, 18 Apr 2020 06:51:26 +0200 Subject: [PATCH 9/9] Ensure source dir name doesn't collide with package name --- makepkg.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/makepkg.sh b/makepkg.sh index 505f5b8..a4e9187 100755 --- a/makepkg.sh +++ b/makepkg.sh @@ -10,8 +10,10 @@ sudo mkdir -p "$OUTDIR" sudo chown -R builder:builder "$OUTDIR" export PKGDEST="$OUTDIR" -export SRCDEST="$HOME" -export BUILDDIR="$HOME" +export SRCDEST="$HOME/sources" +export BUILDDIR="$HOME/builddir" +mkdir -p "$SRCDEST" +mkdir -p "$BUILDDIR" if [ "$PLUGIN_AUTO_MAKEFLAGS" != "no" ]; then echo "MAKEFLAGS='-j$(nproc)'" | sudo tee -a /etc/makepkg.conf @@ -43,6 +45,6 @@ else fi echo "Running build" -makepkg -sAc --skippgpcheck --noconfirm --noprogressbar "$PKGBUILD" +makepkg -sAc --skippgpcheck --noconfirm --noprogressbar sudo chown -R root:root "$OUTDIR"