mirror of
https://github.com/upa/mscp.git
synced 2026-02-04 03:24:58 +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})
|
||||
|
||||
|
||||
### 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
|
||||
|
||||
# generate files for rpmbuild
|
||||
@@ -289,3 +303,4 @@ add_custom_target(build-srpm
|
||||
docker run --rm -v ${CMAKE_BINARY_DIR}:/out ${RPMBUILDCONTAINER}
|
||||
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
|
||||
;;
|
||||
Linux-ubuntu*)
|
||||
apt-get install -y \
|
||||
apt-get install --no-install-recommends -y \
|
||||
gcc make cmake zlib1g-dev libssl-dev libkrb5-dev
|
||||
;;
|
||||
Linux-centos* | Linux-rhel* | Linux-rocky* | Linux-almalinux)
|
||||
|
||||
Reference in New Issue
Block a user