
嘗試建立自訂包失敗如下:
~/deploy# dpkg-buildpackage -us -uc
dpkg-buildpackage: info: source package deploy
dpkg-buildpackage: info: source version 1.0-1
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Foo Bar <[email protected]>
dpkg-buildpackage: info: host architecture amd64
dpkg-source --before-build .
debian/rules clean
dh clean --builddirectory=_build --buildsystem=golang --with=golang
dh_auto_clean -O--builddirectory=_build -O--buildsystem=golang
dh_autoreconf_clean -O--builddirectory=_build -O--buildsystem=golang
dh_clean -O--builddirectory=_build -O--buildsystem=golang
dpkg-source -b .
dpkg-source: error: can't build with source format '3.0 (quilt)': no upstream tarball found at ../deploy_1.0.orig.tar.{bz2,gz,lzma,xz}
dpkg-buildpackage: error: dpkg-source -b . subprocess returned exit status 255
以下是我的「debian/control」內容。
Source: deploy
Maintainer: Foo Bar ([email protected])
Standards-Version: 4.6.1
Section: utils
Priority: optional
Homepage: https://gitlab.co toso.com/contoso/deploy
Rules-Requires-Root: no
Build-Depends: debhelper-compat (= 12),
debhelper (>=12),
dh-golang,
golang-any
Package: deploy
Architecture: amd64
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Command used to send Docker webhooks.
Command used to send Docker webhooks.
我的“debian/rules”文件:
#!/usr/bin/make -f
#export DH_GOLANG_EXCLUDES := internal
%:
dh $@ --builddirectory=_build --buildsystem=golang --with=golang
最後是我的回購結構:
# ls -la
total 39
drwxr-xr-x 5 root root 6 Feb 17 00:23 .
drwx------ 9 root root 18 Feb 17 00:46 ..
drwxr-xr-x 3 root root 7 Feb 17 00:46 debian
drwxr-xr-x 7 root root 10 Feb 16 22:41 .git
-rw-r--r-- 1 root root 841 Feb 16 23:52 main.go
關於為什麼它會因為缺少 tarball 而崩潰的任何提示嗎?
答案1
找到解決方案,需要將我的規則文件更改為以下內容:
#!/usr/bin/make -f
%:
dh $@ --buildsystem=golang --with=golang
override_dh_auto_build:
go build -v ./...
override_dh_auto_install:
mkdir -p debian/deploy/usr/bin
install deploy debian/deploy/usr/bin
override_dh_auto_test:
echo "Skpping dh_auto_test"