mirror of
https://github.com/upa/mscp.git
synced 2026-02-28 11:44:42 +08:00
build deb sources inside a container
A new build target `build-deb` builds mscp deb inside a docker container. All debuild -us -uc outputs are copied to build/debbuild directory.
This commit is contained in:
@@ -264,6 +264,20 @@ add_custom_target(docker-test-all DEPENDS ${DOCKER_TESTS})
|
|||||||
add_custom_target(docker-pkg-all DEPENDS ${DOCKER_PKGS})
|
add_custom_target(docker-pkg-all DEPENDS ${DOCKER_PKGS})
|
||||||
|
|
||||||
|
|
||||||
|
### debuild-related fefinitions
|
||||||
|
|
||||||
|
set(DEBBUILDCONTAINER mscp-build-deb)
|
||||||
|
add_custom_target(build-deb
|
||||||
|
COMMENT "build mscp deb files inside a container"
|
||||||
|
WORKING_DIRECTORY ${mscp_SOURCE_DIR}
|
||||||
|
BYPRODUCTS ${CMAKE_BINARY_DIR}/debbuild
|
||||||
|
COMMAND
|
||||||
|
docker build -t ${DEBBUILDCONTAINER} -f docker/build-deb.Dockerfile .
|
||||||
|
COMMAND
|
||||||
|
docker run --rm -v ${CMAKE_BINARY_DIR}:/out ${DEBBUILDCONTAINER}
|
||||||
|
cp -r /debbuild /out/)
|
||||||
|
|
||||||
|
|
||||||
### rpmbuild-related definitions
|
### rpmbuild-related definitions
|
||||||
|
|
||||||
# generate files for rpmbuild
|
# generate files for rpmbuild
|
||||||
@@ -289,3 +303,4 @@ add_custom_target(build-srpm
|
|||||||
docker run --rm -v ${CMAKE_BINARY_DIR}:/out ${RPMBUILDCONTAINER}
|
docker run --rm -v ${CMAKE_BINARY_DIR}:/out ${RPMBUILDCONTAINER}
|
||||||
cp /root/rpmbuild/SRPMS/${SRPMFILE} /out/)
|
cp /root/rpmbuild/SRPMS/${SRPMFILE} /out/)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
20
docker/build-deb.Dockerfile
Normal file
20
docker/build-deb.Dockerfile
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
FROM ubuntu:22.04
|
||||||
|
|
||||||
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
RUN set -ex && apt-get update && apt-get install -y --no-install-recommends \
|
||||||
|
ca-certificates build-essential devscripts debhelper gcc make cmake
|
||||||
|
|
||||||
|
ARG mscpdir="/debbuild/mscp"
|
||||||
|
|
||||||
|
COPY . ${mscpdir}
|
||||||
|
|
||||||
|
# install build dependency
|
||||||
|
RUN ${mscpdir}/scripts/install-build-deps.sh
|
||||||
|
|
||||||
|
# build
|
||||||
|
RUN cd ${mscpdir} \
|
||||||
|
&& debuild -us -uc \
|
||||||
|
&& mv ${mscpdir} /
|
||||||
|
|
||||||
|
# Then all debuild output files exsit at /debbuild
|
||||||
|
|
||||||
@@ -19,7 +19,7 @@ case $platform in
|
|||||||
brew install openssl@1.1
|
brew install openssl@1.1
|
||||||
;;
|
;;
|
||||||
Linux-ubuntu*)
|
Linux-ubuntu*)
|
||||||
apt-get install -y \
|
apt-get install --no-install-recommends -y \
|
||||||
gcc make cmake zlib1g-dev libssl-dev libkrb5-dev
|
gcc make cmake zlib1g-dev libssl-dev libkrb5-dev
|
||||||
;;
|
;;
|
||||||
Linux-centos* | Linux-rhel* | Linux-rocky* | Linux-almalinux)
|
Linux-centos* | Linux-rhel* | Linux-rocky* | Linux-almalinux)
|
||||||
|
|||||||
Reference in New Issue
Block a user