From 0239773ab37c07505cbd53429de5815934a71cfe Mon Sep 17 00:00:00 2001 From: Pirate Praveen Date: Tue, 23 Aug 2022 00:04:43 +0530 Subject: [PATCH] Fix arch:all build by separating dh overrides for gitlab and gitlab-workhorse --- debian/rules | 67 +++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 50 insertions(+), 17 deletions(-) diff --git a/debian/rules b/debian/rules index d886fecfa4..4ffc0b3174 100755 --- a/debian/rules +++ b/debian/rules @@ -1,31 +1,55 @@ #!/usr/bin/make -f include /usr/share/dpkg/pkg-info.mk +BUILDDIR := _build/src/gitlab.com/gitlab-org/gitlab %: - dh $@ --package=gitlab - dh $@ --buildsystem=golang --with=golang --builddirectory=_build --package=gitlab-workhorse --sourcedirectory=workhorse + dh $@ --buildsystem=ruby --with=ruby --package=gitlab + dh $@ --buildsystem=golang --with=golang --builddirectory=_build \ + --package=gitlab-workhorse --sourcedirectory=workhorse -override_dh_auto_configure: - dh_auto_configure -O--package=gitlab - dh_auto_configure -O--package=gitlab-workhorse +override_dh_auto_configure-indep: + dh_auto_configure -O--package=gitlab -O--buildsystem=ruby -O--with=ruby + +override_dh_auto_configure-arch: + dh_auto_configure -O--package=gitlab-workhorse -O--buildsystem=golang \ + -O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse mkdir -p _build/src/gitlab.com/gitlab-org/gitlab cp -r workhorse _build/src/gitlab.com/gitlab-org/gitlab - if [ -d workhorse-vendor ]; then mv workhorse-vendor _build/src/gitlab.com/gitlab-org/gitlab/workhorse/vendor; fi + if [ -d ${BUILDDIR}/vendor ]; then ${RM} -rf ${BUILDDIR}/vendor; fi + if [ -d ${BUILDDIR}/workhorse-vendor ]; then mv ${BUILDDIR}/workhorse-vendor \ + ${BUILDDIR}/vendor; fi -execute_after_dh_auto_build: +override_dh_auto_build-indep: + dh_auto_build -O--package=gitlab -O--buildsystem=ruby -O--with=ruby + +override_dh_auto_build-arch: + dh_auto_build -O--package=gitlab-workhorse -O--buildsystem=golang \ + -O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse # Rename binary to gitlab-workhorse (upstream is passing -o in Makefile) - if [ -f _build/bin/workhorse ]; then mv _build/bin/workhorse _build/bin/gitlab-workhorse; fi + if [ -f _build/bin/workhorse ]; then \ + mv _build/bin/workhorse _build/bin/gitlab-workhorse; fi -override_dh_auto_test: - dh_auto_test -O--package=gitlab - PATH="$(CURDIR)/_build/bin:$$PATH" dh_auto_test -O--package=gitlab-workhorse +override_dh_auto_test-indep: + dh_auto_test -O--package=gitlab -O--buildsystem=ruby -O--with=ruby -override_dh_install: +override_dh_auto_test-arch: + PATH="$(CURDIR)/_build/bin:$$PATH" dh_auto_test -O--package=gitlab-workhorse \ + -O--buildsystem=golang -O--with=golang -O--builddirectory=_build \ + -O--sourcedirectory=workhorse + +override_dh_auto_install-indep: + # skip gem2deb copying files to /usr/lib/ruby + +override_dh_auto_install-arch: + dh_auto_install -O--package=gitlab-workhorse -O--buildsystem=golang \ + -O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse + +override_dh_install-indep: sh debian/upstream-file-count-check.sh sh debian/upstream-config-file-check.sh - dh_install -XLICENSE -O--package=gitlab - dh_installexamples -O--package=gitlab + dh_install -XLICENSE -O--package=gitlab -O--buildsystem=ruby -O--with=ruby + dh_installexamples -O--package=gitlab -O--buildsystem=ruby -O--with=ruby # Make sure we are installing all required files in debian/install rm -rf debian/gitlab/usr/share/gitlab/tmp/* find debian/gitlab/usr/share/gitlab/ -name .eslintrc.yml -delete @@ -34,11 +58,20 @@ override_dh_install: if [ -f debian/gitlab/var/lib/gitlab/db/structure.sql ]; then \ mv debian/gitlab/var/lib/gitlab/db/structure.sql debian/gitlab/var/lib/gitlab/db/structure.sql.template; fi sed -i 's/__NEW_VERSION__/${DEB_VERSION}/g' debian/gitlab/usr/lib/gitlab/templates/gitlab-debian.conf.example - dh_install -XLICENSE -O--package=gitlab-workhorse -override_dh_installsystemd: +override_dh_install-arch: + dh_install -XLICENSE -O--package=gitlab-workhorse -O--buildsystem=golang \ + -O--with=golang -O--builddirectory=_build -O--sourcedirectory=workhorse + +override_dh_installsystemd-indep: dh_installsystemd --no-start -p gitlab --name=gitlab-sidekiq -O--package=gitlab dh_installsystemd --no-start -p gitlab --name=gitlab-puma -O--package=gitlab dh_installsystemd --no-start -p gitlab --name=gitlab-mailroom -O--package=gitlab dh_installsystemd --no-start -p gitlab --name=gitlab-workhorse -O--package=gitlab - dh_installsystemd -O--package=gitlab + dh_installsystemd -O--package=gitlab -O--buildsystem=ruby -O--with=ruby + +override_dh_golang-indep: + # don't fail in arch:all build, is there a better way ? + +override_dh_dwz: + # Do nothing