summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-07-22 22:01:45 +0200
committerChristian Breunig <christian@breunig.cc>2024-07-23 08:03:07 +0200
commita9baaaba16124f847911eeceaff3dbf17f397aeb (patch)
treeb38232137d481e22e07f8554d02e1e37d46424c5
parentd07b978408143ed9cc13742258f6e9731714f95f (diff)
downloadvyos-build-a9baaaba16124f847911eeceaff3dbf17f397aeb.tar.gz
vyos-build-a9baaaba16124f847911eeceaff3dbf17f397aeb.zip
podman: T6598: add custom podman build for version 4.9.5
-rw-r--r--data/live-build-config/archives/trixie.list.chroot2
-rw-r--r--data/live-build-config/archives/trixie.pref.chroot15
-rwxr-xr-xdata/live-build-config/hooks/live/18-enable-disable_services.chroot3
-rw-r--r--packages/podman/.gitignore1
-rw-r--r--packages/podman/Jenkinsfile31
-rwxr-xr-xpackages/podman/build.sh31
6 files changed, 63 insertions, 20 deletions
diff --git a/data/live-build-config/archives/trixie.list.chroot b/data/live-build-config/archives/trixie.list.chroot
deleted file mode 100644
index 1e6803c3..00000000
--- a/data/live-build-config/archives/trixie.list.chroot
+++ /dev/null
@@ -1,2 +0,0 @@
-deb http://deb.debian.org/debian/ trixie main
-deb http://deb.debian.org/debian/ trixie-updates main
diff --git a/data/live-build-config/archives/trixie.pref.chroot b/data/live-build-config/archives/trixie.pref.chroot
deleted file mode 100644
index d1016081..00000000
--- a/data/live-build-config/archives/trixie.pref.chroot
+++ /dev/null
@@ -1,15 +0,0 @@
-Package: podman
-Pin: version 4.9.4*
-Pin-Priority: 900
-
-Package: netavark
-Pin: release n=trixie
-Pin-Priority: 900
-
-Package: libgpgme11t64
-Pin: release n=trixie
-Pin-Priority: 900
-
-Package: *
-Pin: release n=trixie
-Pin-Priority: -10
diff --git a/data/live-build-config/hooks/live/18-enable-disable_services.chroot b/data/live-build-config/hooks/live/18-enable-disable_services.chroot
index 0732e597..26c7f094 100755
--- a/data/live-build-config/hooks/live/18-enable-disable_services.chroot
+++ b/data/live-build-config/hooks/live/18-enable-disable_services.chroot
@@ -62,9 +62,6 @@ systemctl disable dnsdist.service
systemctl disable haproxy.service
systemctl disable owamp-server.service
systemctl disable twamp-server.service
-systemctl disable podman-auto-update.service
-systemctl disable podman-auto-update.timer
-systemctl disable podman-restart.service
systemctl disable vyos-wan-load-balance.service
systemctl disable nvmf-autoconnect.service
systemctl disable dpkg-db-backup.timer
diff --git a/packages/podman/.gitignore b/packages/podman/.gitignore
new file mode 100644
index 00000000..1055abad
--- /dev/null
+++ b/packages/podman/.gitignore
@@ -0,0 +1 @@
+podman/
diff --git a/packages/podman/Jenkinsfile b/packages/podman/Jenkinsfile
new file mode 100644
index 00000000..cc787565
--- /dev/null
+++ b/packages/podman/Jenkinsfile
@@ -0,0 +1,31 @@
+// Copyright (C) 2024 VyOS maintainers and contributors
+//
+// This program is free software; you can redistribute it and/or modify
+// in order to easy exprort images built to "external" world
+// it under the terms of the GNU General Public License version 2 or later as
+// published by the Free Software Foundation.
+//
+// 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.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+@NonCPS
+
+// Using a version specifier library, use 'current' branch. The underscore (_)
+// is not a typo! You need this underscore if the line immediately after the
+// @Library annotation is not an import statement!
+@Library('vyos-build@current')_
+
+def pkgList = [
+ ['name': 'podman',
+ 'scmCommit': 'v4.9.5',
+ 'scmUrl': 'https://github.com/containers/podman',
+ 'buildCmd': 'cd ..; ./build.sh'],
+]
+
+// Start package build using library function from https://github.com/vyos/vyos-build
+buildPackage('podman', pkgList, null, true, "**/packages/podman/**")
diff --git a/packages/podman/build.sh b/packages/podman/build.sh
new file mode 100755
index 00000000..194a139a
--- /dev/null
+++ b/packages/podman/build.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+set -x
+
+SRC=podman
+if [ ! -d $SRC ]; then
+ echo "source directory $SRC does not exist!"
+ exit 1
+fi
+
+sudo apt-get install -y libseccomp-dev libgpgme-dev
+
+cd $SRC
+
+echo "I: installing dependencies"
+make install.tools
+echo "I: building podman"
+make podman-release
+
+tar xf podman-release-$(dpkg --print-architecture).tar.gz
+# retrieve version number from podman archive folder: podman-v4.9.5/
+# remove leading podman string
+VERSION=$(ls -d podman-v* | cut -c9-)
+
+fpm --input-type dir --output-type deb --name podman \
+ --version $VERSION --deb-compression gz \
+ --maintainer "VyOS Package Maintainers <maintainers@vyos.net>" \
+ --description "Engine to run OCI-based containers in Pods" \
+ --depends conmon --depends crun --depends netavark \
+ --license "Apache License 2.0" -C podman-v$VERSION --package ..
+