[#409] Add default package changelog

Make it work with simple `dpkg-buildpackage`

Signed-off-by: Stanislav Bogatyrev <stanislav@nspcc.ru>
This commit is contained in:
Stanislav Bogatyrev 2022-10-26 09:48:00 +03:00 committed by Stanislav Bogatyrev
parent 92e9782c44
commit ff67e903ca
25 changed files with 54 additions and 39 deletions

View file

@ -21,11 +21,11 @@ BINS = $(addprefix $(BIN)/, $(CMDS))
# .deb package versioning # .deb package versioning
OS_RELEASE = $(shell lsb_release -cs) OS_RELEASE = $(shell lsb_release -cs)
PACK_VERSION ?= $(shell echo $(VERSION) | sed "s/^v//" | \ PKG_VERSION ?= $(shell echo $(VERSION) | sed "s/^v//" | \
sed -E "s/(.*)-(g[a-fA-F0-9]{6,8})(.*)/\1\3~\2/" | \ sed -E "s/(.*)-(g[a-fA-F0-9]{6,8})(.*)/\1\3~\2/" | \
sed "s/-/~/")-$(OS_RELEASE) sed "s/-/~/")
.PHONY: help all images dep clean fmts fmt imports test lint docker/lint .PHONY: help all images dep clean fmts fmt imports test lint docker/lint
prepare-release debpackage prepare-release debpackage
# To build a specific binary, use it's name prefix with bin/ as a target # To build a specific binary, use it's name prefix with bin/ as a target
@ -152,11 +152,13 @@ clean:
# Package for Debian # Package for Debian
debpackage: debpackage:
rm -f debian/changelog dch --package neofs-node \
dch --create --package neofs-node -M -v $(PACK_VERSION) \ --controlmaint \
-D $(OS_RELEASE) \ --newversion $(PKG_VERSION) \
"Please see CHANGELOG.md for code changes for "$(VERSION) --force-bad-version \
dpkg-buildpackage --no-sign -b --distribution $(OS_RELEASE) \
"Please see CHANGELOG.md for code changes for $(VERSION)"
dpkg-buildpackage --no-sign -b
docker/debpackage: docker/debpackage:
docker run --rm -t \ docker run --rm -t \
@ -167,4 +169,4 @@ docker/debpackage:
golang:$(GO_VERSION) apt update && apt install debhelper-compat dh-sequence-bash-completion devscripts && make debpackage golang:$(GO_VERSION) apt update && apt install debhelper-compat dh-sequence-bash-completion devscripts && make debpackage
debclean: debclean:
dh clean dh clean

2
debian/.gitignore vendored
View file

@ -1,2 +0,0 @@
changelog
*debhelper*

11
debian/changelog vendored Normal file
View file

@ -0,0 +1,11 @@
neofs-node (0.33.0~72~g6955fe82) jammy; urgency=medium
* Please see CHANGELOG.md for code changes for v0.33.0-72-g6955fe82
-- NeoSPCC <tech@nspcc.ru> Wed, 26 Oct 2022 12:19:45 +0300
neofs-node (0.33.0) stable; urgency=medium
* Initial change
-- NeoSPCC <tech@nspcc.ru> Tue, 25 Oct 2022 21:10:49 +0300

12
debian/control vendored
View file

@ -8,28 +8,28 @@ Homepage: https://fs.neo.org/
Vcs-Git: https://github.com/nspcc-dev/neofs-node.git Vcs-Git: https://github.com/nspcc-dev/neofs-node.git
Vcs-Browser: https://github.com/nspcc-dev/neofs-node Vcs-Browser: https://github.com/nspcc-dev/neofs-node
Package: neofs-node-storage Package: neofs-storage
Architecture: any Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends} Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Storage service for neofs-node Description: NeoFS Storage node
NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain. NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain.
NeoFS Nodes are organized in a peer-to-peer network that takes care of storing and distributing user's data. NeoFS Nodes are organized in a peer-to-peer network that takes care of storing and distributing user's data.
Any Neo user may participate in the network and get paid for providing storage resources to other users or Any Neo user may participate in the network and get paid for providing storage resources to other users or
store their data in NeoFS and pay a competitive price for it. store their data in NeoFS and pay a competitive price for it.
Package: neofs-node-ir Package: neofs-ir
Architecture: any Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends} Depends: ${shlibs:Depends}, ${misc:Depends}
Description: InnerRing service for neofs-node Description: NeoFS InnerRing node
NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain. NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain.
NeoFS Nodes are organized in a peer-to-peer network that takes care of storing and distributing user's data. NeoFS Nodes are organized in a peer-to-peer network that takes care of storing and distributing user's data.
Any Neo user may participate in the network and get paid for providing storage resources to other users or Any Neo user may participate in the network and get paid for providing storage resources to other users or
store their data in NeoFS and pay a competitive price for it. store their data in NeoFS and pay a competitive price for it.
Package: neofs-node-cli Package: neofs-cli
Architecture: any Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends} Depends: ${shlibs:Depends}, ${misc:Depends}
Description: cli tools for neofs-node Description: CLI tools for NeoFS
NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain. NeoFS is a decentralized distributed object storage integrated with the NEO Blockchain.
NeoFS Nodes are organized in a peer-to-peer network that takes care of storing and distributing user's data. NeoFS Nodes are organized in a peer-to-peer network that takes care of storing and distributing user's data.
Any Neo user may participate in the network and get paid for providing storage resources to other users or Any Neo user may participate in the network and get paid for providing storage resources to other users or

41
debian/rules vendored
View file

@ -9,33 +9,32 @@ export DEB_BUILD_OPTIONS := nostrip
override_dh_auto_test: override_dh_auto_test:
override_dh_auto_install: override_dh_auto_install:
echo $(DEB_BUILD_OPTIONS) echo $(DEB_BUILD_OPTIONS)
dh_auto_install dh_auto_install
bin/neofs-adm gendoc -t man man/ bin/neofs-adm gendoc -t man man/
bin/neofs-cli gendoc -t man man/ bin/neofs-cli gendoc -t man man/
bin/neofs-adm completion bash > debian/neofs-adm.bash-completion bin/neofs-adm completion bash > debian/neofs-adm.bash-completion
bin/neofs-cli completion bash > debian/neofs-cli.bash-completion bin/neofs-cli completion bash > debian/neofs-cli.bash-completion
install -m 0755 -d debian/neofs-node-cli/usr/share/fish/completions install -m 0755 -d debian/neofs-cli/usr/share/fish/completions
install -m 0755 -d debian/neofs-node-cli/usr/share/zsh/vendor-completions/ install -m 0755 -d debian/neofs-cli/usr/share/zsh/vendor-completions/
bin/neofs-adm completion fish > debian/neofs-node-cli/usr/share/fish/completions/neofs-adm.fish bin/neofs-adm completion fish > debian/neofs-cli/usr/share/fish/completions/neofs-adm.fish
bin/neofs-adm completion zsh > debian/neofs-node-cli/usr/share/zsh/vendor-completions/_neofs-adm bin/neofs-adm completion zsh > debian/neofs-cli/usr/share/zsh/vendor-completions/_neofs-adm
bin/neofs-cli completion fish > debian/neofs-node-cli/usr/share/fish/completions/neofs-cli.fish bin/neofs-cli completion fish > debian/neofs-cli/usr/share/fish/completions/neofs-cli.fish
bin/neofs-cli completion zsh > debian/neofs-node-cli/usr/share/zsh/vendor-completions/_neofs-cli bin/neofs-cli completion zsh > debian/neofs-cli/usr/share/zsh/vendor-completions/_neofs-cli
install -T config/example/ir.yaml debian/neofs-node-ir/etc/neofs/ir/config.yml install -T config/example/ir.yaml debian/neofs-ir/etc/neofs/ir/config.yml
install -T config/example/ir-control.yaml debian/neofs-node-ir/etc/neofs/ir/control.yml install -T config/example/ir-control.yaml debian/neofs-ir/etc/neofs/ir/control.yml
install -T config/example/node.yaml debian/neofs-node-storage/etc/neofs/storage/config.yml install -T config/example/node.yaml debian/neofs-storage/etc/neofs/storage/config.yml
install -T config/example/node-control.yaml debian/neofs-node-storage/etc/neofs/storage/control.yml install -T config/example/node-control.yaml debian/neofs-storage/etc/neofs/storage/control.yml
override_dh_installsystemd: override_dh_installsystemd:
dh_installsystemd --no-enable --no-start --name=neofs-ir dh_installsystemd --no-enable --no-start --name=neofs-ir
dh_installsystemd --no-enable --no-start --name=neofs-storage dh_installsystemd --no-enable --no-start --name=neofs-storage
override_dh_installchangelogs: override_dh_installchangelogs:
dh_installchangelogs -k CHANGELOG.md dh_installchangelogs -k CHANGELOG.md
override_dh_installdocs: override_dh_installdocs:
dh_installdocs dh_installdocs

View file

@ -43,6 +43,11 @@ Write new revision number into the root `VERSION` file:
$ echo ${NEOFS_TAG_PREFIX}${NEOFS_REVISION} > VERSION $ echo ${NEOFS_TAG_PREFIX}${NEOFS_REVISION} > VERSION
``` ```
Update version in Debian package changelog file
```
$ cat debian/changelog
```
Update the supported version of `nspcc-dev/neofs-contract` module in root Update the supported version of `nspcc-dev/neofs-contract` module in root
`README.md` if needed. `README.md` if needed.