[Openstack-docs] Patch for automated Debian installations

Thomas Goirand zigo at debian.org
Mon Jun 2 15:46:31 UTC 2014


Hi,

This is going IMO in the wrong direction.

Note: I've re-read multiple times to try to have the correct, cordial
and nice tone. Though as a lot of my work went into this, it's possible
there's still some emotionally charged style left. I hope it reads well
enough so this doesn't turn into a flame war. Please, let's assume good
faith on both sides.

On 05/30/2014 11:47 PM, Steve Gordon wrote:
> ----- Original Message -----
>> From: "Matt Kassawara" <mkassawara at gmail.com>
>> To: openstack-docs at lists.openstack.org
>> Sent: Friday, May 30, 2014 10:44:34 AM
>> Subject: [Openstack-docs] Patch for automated Debian installations
>>
>> I saw this patch for automated Debian installations:
>>
>> https://review.openstack.org/#/c/96695/
>>
>> I'm concerned that it doesn't agree with the purpose of the installation
>> guide and would like to discuss it further.
> 
> Thanks for highlighting this Matt,
> 
> I am -2 on this submission based on my understanding of our current
> direction - which appears to match yours - and have recorded my
> reasoning in the review as follows:
> 
> "If we were to include this we would also need to open it up to the
> other distro's automated deployment tools such as PackStack, Crowbar,
> JuJu, FUEL, Foreman, etc."

PackStack, Crowbar, JuJu, Puppet, FUEL, Foreman and spinal-stack are
layers *on top* of the distributions, aimed at deploying OpenStack. Not
talking about things like JuJu, Chef, Puppet or Crowbar in the
install-guide is a completely different topic than what I've tried to do
in the install-guide. Automation is what distributions are providing,
and I see no reason why not documenting what they provide.

Debconf, on the other hand, isn't an added layer, it's fully part of
Debian. For example, when trying to teach someone how to change the
MySQL password in Debian, it'd be a good advice to do:

dpkg-reconfigure mysql-server-5.5

rather than editing the mysql.user table manually.

Another example. See this (from the Ubuntu guide):

http://docs.openstack.org/icehouse/install-guide/install/apt/content/glance-install.html

and now see this (from the Debian guide):

http://docs.openstack.org/icehouse/install-guide/install/apt-debian/content/glance-install.html

Guess what newbies will prefer?

Obviously (but let's state it anyway), our users will prefer something
guided, step by step, where no manual edition of config file is
necessary... Setting-up things by hand is error prone, having for
example dbconfig-common handling the MySQL rights helps a lot, and is safer.

This install-guide aims at new comers. Which is why it's correct to have
easy-to-use debconf prompts.

I've also seen on IRC that you were discussing disabling debconf as a
first instruction before setting-up OpenStack in Debian. Debconf is the
Debian interface between packages and our users. We shouldn't just
remove it because one would feel it makes writing the doc more easy, or
because sated [citation needed] we wouldn't write about any automation.
By the way, (because on IRC you were wondering how), disabling debconf:
is explained here [1], and I would suggest you read the section.

> "We have previously decided against this as the aim of the
> installation guide on docs.o.o is to aid users in learning about
> the inner workings of OpenStack as they deploy it - not to provide
> an "easy button".

You're probably missing the point of this section. The new section
doesn't aim at providing an "easy button", but to document the debconf
pre-seeding library which is provided by the Debian distribution, and to
guide more experienced Debian users if they want to re-use the library.
The section doesn't go much into the details. The "openstack-deploy"
script is just here to show an easy to read example script. The
multi-node setup wasn't even tested, first because of lack of time, but
also because it wasn't even the goal.

If this is the place to document it, I don't mind, but then please point
at which relevant documentation where it should go. Definitively, there
must be a way to have it in the official documentation, as this is fully
part of Debian. Let's provide help to our users as extensively as
possible, through the official OpenStack documentation pages.

> Individual distributions of course can and do maintain their own
> documentation of the "easy button" elsewhere. An acceptable middle
> ground might be to provide a section for linking to, but explicitly
> not endorsing, these external resources."

(excuse me, but I have to rephrase)

So you're proposing:
1/ Remove all trace of the Debian GUI (eg: debconf)
2/ Provide a link explaining it in some external site
3/ Explicitly write that we don't endorse it.

Why would OpenStack not endorse Debconf, which has been in Debian for
years, and which is very commonly used (using pre-seeding) to script
installations? Pre-seeding is even the official way to script the Debian
installer as well.

If you want the Debconf part out of the official documentation, then at
least, the project *must* endorse it.

More over, the debconf stuff has been there for months already, without
anyone complaining about it.

Also, who will do the work of maintaining that other site which we would
link to? Excuse me, but I've spent a large amount of my (free) time and
week-ends on this, I don't want to have all of my work just removed,
especially that I think it provides a great help for Debian users. I
have no intention to rewrite everything elsewhere.

On 06/02/2014 08:58 PM, Steve Gordon wrote:
> Although the above hasn't merged there seem to be a couple of other
> patches in the queue that take the approach of removing the manual
> configuration steps in favour of debconf:
>
> * https://review.openstack.org/#/c/97158/2
> * https://review.openstack.org/#/c/97156/

Why should we hide from Debian users the fact that there's debconf screens?

That you don't like the new chapter I propose "Automatic debconf
pre-seeded deployments" (which is explaining just the concept so that
our users can build their own tools), to me is disturbing. But not
agreeing on review #97156 and #97158, I think this is going too far.

Probably you wouldn't like to just remove the "openstack-config --set"
things which we see all over the place in the documentation, and which
are RedHat specifics. The debconf prompts are the exact same thing: it's
user interface to OpenStack configuration. Removing both and replacing
them by manual edition of the config file would be inappropriate.

Please at least back-up from trying to block #97156 and #97158, then
let's calmly discuss about #96695. I can make it look better if you
like, and look less like an "easy button" (it isn't the goal anyway, so
if it looks like that, then it needs polishing). But I am convince this
section should be there. And finally, it'd be best for both OpenStack
and RedHat to avoid it, but if we can't agree on something, then the
technical committee can decide.

Cheers,

Thomas Goirand (zigo)

[1]
http://docs.openstack.org/icehouse/install-guide/install/apt-debian/content/debian_packages.html




More information about the Openstack-docs mailing list