Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

debian/ubuntu package files #121

Closed
wants to merge 6 commits into from
Closed

debian/ubuntu package files #121

wants to merge 6 commits into from

Conversation

vnaum
Copy link

@vnaum vnaum commented Mar 19, 2014

Please check list of files to install: I have no idea what has to be installed, and there was no 'install' rule in Makefile, so I added single file install into /usr/bin/snabbsandwich

If there are more files (config file, man page, scripts, crontab entries), or if /usr/sbin fits better for snabbsandwich (like, if this root-only program) - let me know.

I added some description/URLS in control file, rest of package is fresh out of dh_make — lots of example stuff and such.

@agladysh
Copy link

@vladfedin, take a look pls.

@vladfedin
Copy link
Contributor

May be it's also possible / desirable to somehow install auto-testing script?
@altexy can you help us here on any other files needed?

@altexy
Copy link
Contributor

altexy commented Mar 20, 2014

At the moment selftests code are mixed with library code.
So it is installed with snabbswitch executable.
But some test require also test data.
At the moment it is not simple to distinguish them.

I have create a new issue about - #124

@agladysh
Copy link

OK, thanks. @altexy, can you please verify if the package installs everything what we need?

@altexy
Copy link
Contributor

altexy commented Mar 20, 2014

The simplest way is to run any test which does not require test data, rate_limiter for example:
sudo snabbswitch -t apps.rate_limiter.rate_limiter

End of rate_limiter selftest FYI:

 if not ok then
      print("selftest failed")
      os.exit(1)
   end
   print("selftest passed")

@altexy
Copy link
Contributor

altexy commented Mar 20, 2014

@vnaum, is it enough info to proceed?

@vnaum
Copy link
Author

vnaum commented Mar 21, 2014

Link to binary packages (snabb/nova/qemu/libvirt/neutron) I've built:
http://vnaum.com/misc/201403/
(had to skip autotests with DEB_BUILD_OPTIONS=nocheck)

I've built from my source repos:
https://bitbucket.org/vnaum/nova/commits/branch/xmas-demo
https://bitbucket.org/vnaum/sns-neutron/commits/branch/sns-agent1
https://bitbucket.org/vnaum/libvirt-1.2.1/commits/branch/master
/~https://github.com/vnaum/qemu/commits/vhost-user-v8

@vnaum
Copy link
Author

vnaum commented Mar 21, 2014

May be it's also possible / desirable to somehow install auto-testing script?

Do end users have any need for this test data?

If it's just for development purposes - let it stay in source repo, no need to clutter binary package.

If it can be handy for users as an example of how snabbswitch can work or as a template for custom scripts/scenarios,
/usr/share/doc/snabbswich/examples is a good place for it (with comments).

If test data is essential for snabbswitch (snabb is useless without it, and everybody will need it) - /usr/lib/snabbswich is a correct place.

So it is installed with snabbswitch executable.

Wait, there is some installation script / routine?
Last time I checked 'install' was not even a target in Makefile, so I had to add it.
Anyway, for package building purposes it's quite easy to tell what goes into a package: only stuff that "make install" installs does.

@lukego
Copy link
Member

lukego commented Mar 21, 2014

I think we should have as few files as we possibly can in the package for snabbswitch. The snabbswitch binary, a manpage, maybe an example config... can we get away with so little?

@lukego
Copy link
Member

lukego commented Mar 21, 2014

(OK, maybe we'll want an init.d script, but we don't have that yet...)

@vnaum
Copy link
Author

vnaum commented Mar 21, 2014

can we get away with so little?

From my point of view we totally can.
Is manpage sitting somewhere in source tree, or it has to be written yet?
There are 3 manpage templates in /debian dh_make provides, .1, docbook .sgml and docbook .xml - feel free to use one and remove .ex suffix.
There also is an init.d skeleton file there. Same stuff, add your options and remove .ex suffix.

@lukego
Copy link
Member

lukego commented Mar 21, 2014

That sounds good :)

@agladysh
Copy link

See also: #93


Package: snabbswitch
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends},
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

snabbswitch package can probably have a short (even empty?) dependency list.

Perhaps we will want to make a snabbswitch-nfv meta-package that installs the base snabbswitch + all of the virtualisation stuff, but I think we can take that later.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, It's never empty — you depend on libc at least, and probably need some minimum kernel version, but the idea behind this was "user installs snabbswitch and gets every requirement pulled". As you suggest, meta-package can be done that depends in both snabb and "everything".

@vladfedin
Copy link
Contributor

This one is now obsolete, see #131

@lukego
Copy link
Member

lukego commented Apr 3, 2014

JFYI Here is a mailing list thread with somebody else trying to build a patched version of Neutron for an Ubuntu PPA: http://www.mail-archive.com/openstack-dev@lists.openstack.org/msg20902.html

@lukego
Copy link
Member

lukego commented Apr 5, 2014

(Obsoleted by #131)

@lukego lukego closed this Apr 5, 2014
dpino pushed a commit to dpino/snabb that referenced this pull request Nov 20, 2015
Refactor header handling, make outgoing ICMP work
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants