Hi Alvin, have you had a chance to test out their packaging approach yet? I'm really curious why it would work where ours doesn't, and despite digging through it this morning am still perplexed.
I dug through their packaging to try and understand why it works where ours doesn't, but didn't spot anything obvious. I verified we're using the same orig.tar.xz archive as provided by them: 3b2e7514a016a81859443723f6be514b ../upstream/rabbitmq-server-3.6.10.tar.xz 3b2e7514a016a81859443723f6be514b ../bionic/rabbitmq-server_3.6.10.orig.tar.xz But we can see the %%VSN%% is not substituted in the production of these archives: upstream/rabbitmq-server-3.6.10$ grep -sr %%VSN * deps/rabbitmq_management/Makefile: $(verbose) sed 's/%%VSN%%/$(PROJECT_VERSION)/' bin/rabbitmqadmin deps/rabbitmq_management/bin/rabbitmqadmin:VERSION = '%%VSN%%' You can see this is still true in the 3.7.9 package: https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.9/ rabbitmq-server-3.7.9$ grep %%VSN -sr . ./deps/rabbitmq_management/Makefile: $(verbose) sed 's/%%VSN%%/$(PROJECT_VERSION)/' bin/rabbitmqadmin \ ./deps/rabbitmq_management/bin/rabbitmqadmin:VERSION = '%%VSN%%' Normally, like with C++ projects, the 'dist' target is what you run to create the release tarball, so is only pertinent to upstream and not supposed to be used for debian packaging. From the name, I would expect this same to be true with a target named 'prepare-dist' as well. Indeed, digging through their makefiles I found this comment: # If the application's Makefile defines a `list-dist-deps` target, we # use it to populate the dependencies list. This is useful when the # application has also a `prepare-dist` target to modify the created # tree before we make an archive out of it. That makes me think that their intention is indeed that prepare-dist is intended to run *prior* to making the archive (i.e. tarball) of it. But since rabbitmqadmin still shows %%VSN%% for version in the rabbitmqadmin script from the tarball posted on rabbitmq's website, I don't know if it's just a bug in the release process, or if I've misunderstood something. I wondered if perhaps the `rabbitmq-plugins enable rabbitmq_management` they mention does a VSN substitution, however in reviewing that code I didn't see a step that does that. It would be useful to know if upstream intends for the rabbitmqadmin in their release tarballs to have %%VSN%% as the value for VERSION, or if that should be showing the actual version number. Assuming the former, then question #2 is whether they intend the prepare-dist target to be used in the production of the release archive (e.g. like in a traditional 'make dist'), or if that is intended to be run by the packager/user (e.g. like as part of the 'make && make install' step). I hope what I've written is sensible. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1773324 Title: [SRU] rabbitmqadmin shows %%VSN%% as version To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/rabbitmq-server/+bug/1773324/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs