Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -128,14 +128,13 @@ jobs:
run: |
# build new NIPAP packages
make builddeb
# Pre-seed debconf answers before installing packages
echo "nipapd nipapd/database_host string localhost" | sudo debconf-set-selections
echo "nipapd nipapd/local_db_autoconf boolean true" | sudo debconf-set-selections
echo "nipapd nipapd/startup boolean true" | sudo debconf-set-selections
echo "nipapd nipapd/local_db_upgrade boolean true" | sudo debconf-set-selections
# install the newly built nipap packages
sudo apt install -o Dpkg::Options::="--force-confnew" ./nipap*.deb ./python*-pynipap*.deb
# populate answers to nipapd package install questions and reconfigure
echo 'set nipapd/database_host localhost' | sudo debconf-communicate
echo 'set nipapd/local_db_autoconf true' | sudo debconf-communicate
echo 'set nipapd/startup true' | sudo debconf-communicate
echo 'set nipapd/local_db_upgrade true' | sudo debconf-communicate
sudo dpkg-reconfigure nipapd
# Enable SSL
if [ `grep -c ssl_port /etc/nipap/nipap.conf` -eq 0 ]; then \
# No SSL config in file - add from scratch
Expand Down
2 changes: 2 additions & 0 deletions nipap/MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
include README.rst MANIFEST.in
include *.man.rst
include requirements.txt
include nipap.conf.dist
recursive-include sql *.plsql
17 changes: 17 additions & 0 deletions nipap/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,23 @@ nipap-passwd = "nipap.nipap_passwd:run"
[tool.setuptools.dynamic]
version = {attr = "nipap.__version__"}

[tool.setuptools.data-files]
"share/nipap" = ["nipap.conf.dist"]
"share/nipap/sql" = [
"sql/upgrade-1-2.plsql",
"sql/upgrade-2-3.plsql",
"sql/upgrade-3-4.plsql",
"sql/upgrade-4-5.plsql",
"sql/upgrade-5-6.plsql",
"sql/upgrade-6-7.plsql",
"sql/upgrade-7-8.plsql",
"sql/functions.plsql",
"sql/triggers.plsql",
"sql/ip_net.plsql",
]
"share/man/man8" = ["nipapd.8"]
"share/man/man1" = ["nipap-passwd.1"]

[build-system]
requires = [
"setuptools",
Expand Down
28 changes: 4 additions & 24 deletions nipap/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,39 +4,20 @@
from docutils.core import publish_cmdline
from docutils.writers import manpage
import sys
import re


# return all the extra data files
def get_data_files():
# generate man pages using rst2man
def generate_manpages():
"""Generate man pages from RST sources."""
try:
publish_cmdline(writer=manpage.Writer(), argv=["nipapd.man.rst", "nipapd.8"])
publish_cmdline(writer=manpage.Writer(), argv=["nipap-passwd.man.rst", "nipap-passwd.1"])
except OSError as exc:
print("rst2man failed to run: %s" % str(exc), file=sys.stderr)
sys.exit(1)

files = [
('share/nipap/', ['nipap.conf.dist']),
('share/nipap/sql/', [
'sql/upgrade-1-2.plsql',
'sql/upgrade-2-3.plsql',
'sql/upgrade-3-4.plsql',
'sql/upgrade-4-5.plsql',
'sql/upgrade-5-6.plsql',
'sql/upgrade-6-7.plsql',
'sql/functions.plsql',
'sql/triggers.plsql',
'sql/ip_net.plsql',
],
),
('share/man/man8/', ['nipapd.8']),
('share/man/man1/', ['nipap-passwd.1']),
]

return files

# Generate man pages before packaging
generate_manpages()

long_desc = open('README.rst').read()
short_desc = long_desc.split('\n')[0].split(' - ')[1].strip()
Expand All @@ -46,5 +27,4 @@ def get_data_files():
long_description=long_desc,
packages=['nipap'],
keywords=['nipap'],
data_files=get_data_files(),
)
Loading