debian/docker: Add source package handling for local apt repository
Tracked-On: #6688 Signed-off-by: Helmut Buchsbaum <helmut.buchsbaum@opensource.tttech-industrial.com>
This commit is contained in:
parent
8ecf0fe7e8
commit
32c3cd258f
|
@ -60,8 +60,10 @@ RUN mkdir -p /opt/apt && cd /opt/apt && \
|
|||
echo "Origin: ACRN Local Build" > .Release.header && \
|
||||
echo "Label: acrn-local-build" >> .Release.header && \
|
||||
apt-ftparchive packages . > Packages && \
|
||||
cp .Release.header Release && apt-ftparchive release . >> Release && \
|
||||
echo "deb [trusted=yes] file:/opt/apt ./" > /etc/apt/sources.list.d/local-apt.list && \
|
||||
apt-ftparchive sources . > Sources && \
|
||||
(cat .Release.header && apt-ftparchive release .) > Release && \
|
||||
echo "deb [trusted=yes] file:/opt/apt ./" > /etc/apt/sources.list.d/acrn-local.list && \
|
||||
echo "deb-src [trusted=yes] file:/opt/apt ./" >> /etc/apt/sources.list.d/acrn-local.list && \
|
||||
touch /etc/apt/preferences.d/pin-acrn
|
||||
|
||||
# setup git config for temporary use
|
||||
|
@ -100,15 +102,21 @@ RUN NEEDEDVERSION="2.5.0"; \
|
|||
git checkout -b ${debian_branch} ${debian_tag} && \
|
||||
mk-build-deps --tool='apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes' --install debian/control --remove && \
|
||||
rm -f $(dpkg-parsechangelog -Ssource)-build-deps_$(dpkg-parsechangelog -Sversion)_*.* && \
|
||||
DEB_BUILD_OPTIONS="nocheck" gbp buildpackage -b -us -uc && \
|
||||
DEB_BUILD_OPTIONS="nocheck" gbp buildpackage -F -us -uc && \
|
||||
for p in $(grep -E '^Package:' debian/control | awk '{print $2}'); do \
|
||||
echo "Package: $p" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "Pin: release l=acrn-local-build" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "Pin-Priority: 900" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
done && \
|
||||
cd /usr/src && mv *.deb /opt/apt && \
|
||||
cd /opt/apt && apt-ftparchive packages . > Packages && cp .Release.header Release && apt-ftparchive release . >> Release && \
|
||||
cd /usr/src && \
|
||||
mv *.deb /opt/apt && \
|
||||
mv ${srcpkg}_*.dsc /opt/apt && \
|
||||
mv ${srcpkg}_*.tar.* /opt/apt && \
|
||||
cd /opt/apt && \
|
||||
apt-ftparchive packages . > Packages && \
|
||||
apt-ftparchive sources . > Sources && \
|
||||
(cat .Release.header && apt-ftparchive release .) > Release && \
|
||||
apt-get update -y; \
|
||||
fi
|
||||
|
||||
|
@ -144,15 +152,21 @@ RUN NEEDEDVERSION="1.10.0"; \
|
|||
git checkout -b ${debian_branch} ${debian_tag} && \
|
||||
mk-build-deps --tool='apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes' --install debian/control --remove && \
|
||||
rm -f $(dpkg-parsechangelog -Ssource)-build-deps_$(dpkg-parsechangelog -Sversion)_*.* && \
|
||||
DEB_BUILD_OPTIONS="nocheck" gbp buildpackage -b -us -uc && \
|
||||
DEB_BUILD_OPTIONS="nocheck" gbp buildpackage -F -us -uc && \
|
||||
for p in $(grep -E '^Package:' debian/control | awk '{print $2}'); do \
|
||||
echo "Package: $p" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "Pin: release l=acrn-local-build" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "Pin-Priority: 900" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
done && \
|
||||
cd /usr/src && mv *.deb /opt/apt && \
|
||||
cd /opt/apt && apt-ftparchive packages . > Packages && cp .Release.header Release && apt-ftparchive release . >> Release && \
|
||||
cd /usr/src && \
|
||||
mv *.deb /opt/apt && \
|
||||
mv python-${srcpkg}_*.dsc /opt/apt && \
|
||||
mv python-${srcpkg}_*.tar.* /opt/apt && \
|
||||
cd /opt/apt && \
|
||||
apt-ftparchive packages . > Packages && \
|
||||
apt-ftparchive sources . > Sources && \
|
||||
(cat .Release.header && apt-ftparchive release .) > Release && \
|
||||
apt-get update -y; \
|
||||
fi
|
||||
|
||||
|
@ -188,15 +202,21 @@ RUN NEEDEDVERSION="20200925"; \
|
|||
git checkout -b ${debian_branch} ${debian_tag} && \
|
||||
mk-build-deps --tool='apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes' --install debian/control --remove && \
|
||||
rm -f $(dpkg-parsechangelog -Ssource)-build-deps_$(dpkg-parsechangelog -Sversion)_*.* && \
|
||||
DEB_BUILD_OPTIONS="nocheck" gbp buildpackage -b -us -uc && \
|
||||
DEB_BUILD_OPTIONS="nocheck" gbp buildpackage -F -us -uc && \
|
||||
for p in $(grep -E '^Package:' debian/control | awk '{print $2}'); do \
|
||||
echo "Package: $p" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "Pin: release l=acrn-local-build" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "Pin-Priority: 900" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
echo "" >> /etc/apt/preferences.d/pin-acrn; \
|
||||
done && \
|
||||
cd /usr/src && mv *.deb /opt/apt && \
|
||||
cd /opt/apt && apt-ftparchive packages . > Packages && cp .Release.header Release && apt-ftparchive release . >> Release && \
|
||||
cd /usr/src && \
|
||||
mv *.deb /opt/apt && \
|
||||
mv ${srcpkg}_*.dsc /opt/apt && \
|
||||
mv ${srcpkg}_*.tar.* /opt/apt && \
|
||||
cd /opt/apt && \
|
||||
apt-ftparchive packages . > Packages && \
|
||||
apt-ftparchive sources . > Sources && \
|
||||
(cat .Release.header && apt-ftparchive release .) > Release && \
|
||||
apt-get update -y; \
|
||||
fi
|
||||
|
||||
|
|
|
@ -24,8 +24,8 @@ fi
|
|||
# copy all Debian packages in local APT repo and create local APT repository
|
||||
export HOME=$(echo ~docker-build)
|
||||
sudo -E -u docker-build /bin/bash -c "\
|
||||
cd $1 && if ls -A /opt/apt/*.deb >/dev/null 2>&1; then cp /opt/apt/*.deb .; fi && \
|
||||
cd $1 && if ls -A /opt/apt/*.deb >/dev/null 2>&1; then cp -a /opt/apt/. .; fi && \
|
||||
apt-ftparchive packages . > Packages && \
|
||||
cp /opt/apt/.Release.header Release && \
|
||||
apt-ftparchive release . >> Release"
|
||||
apt-ftparchive sources . > Sources 2>/dev/null && \
|
||||
(cat /opt/apt/.Release.header && apt-ftparchive release .) > Release"
|
||||
|
||||
|
|
Loading…
Reference in New Issue