All of lore.kernel.org
 help / color / mirror / Atom feed
From: Owen Synge <osynge@suse.com>
To: ceph-devel@vger.kernel.org
Subject: packaging init systems in a more autoools style way.
Date: Wed, 03 Jun 2015 17:32:41 +0200	[thread overview]
Message-ID: <556F1E19.6080704@suse.com> (raw)

Dear ceph-devel,

Linux has more than one init systems.

We in SUSE are in the process of up streaming our spec files, and all
our releases are systemd based.

Ceph seems more tested with sysVinit upstream.

We have 3 basic options for doing this in a packaged upstream system.

1) We dont install init scripts/config as part of "make install" and
"install all the init components via conditionals in the spec file.

2) We install all init scripts/config for all flavours of init using
make install and delete unwanted init systems via conditionals in the
spec file.

3) We add autotools an conditional for each init system, and only
install with make install enabled init systems scripts/config.

------

We are currently following policy (1)

I propose we follow policy (3) because (1) makes many distribution
specific conditionals and requires duplication for each platform for all
files not installed with "make install".

-----

Their are many ways to follow policy 3 so I would propose that when no
init system is followed, policy (1) and policy (3) should appear identical.

-----

For a transition period between following policy (1) to policy (3)

phase (1)

I would expect we would add a conditional to ceph.spec for suse to add
to the configure step:

	--with-init-systemd

And when other distributions want to move to a full systemd flavour they
also add a similar conditional.

phase (2)

We add a new configure level conditional:

	--with-init-sysv

All sysV init installs are removed from from the spec file and added to
the "make install" process.

phase (3)

Distributions with more than one init system, or init systems that can
emulate sysVinit, can build packages with either init system and so
migration can be tested.

-----

Does anyone object to this plan?
Does anyone agree with this plan?
Does anyone see difficulties with the plan?

Best regards

Owen


-- 
SUSE LINUX GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB
21284 (AG
Nürnberg)

Maxfeldstraße 5

90409 Nürnberg

Germany
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

             reply	other threads:[~2015-06-03 15:33 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-03 15:32 Owen Synge [this message]
2015-06-03 16:21 ` packaging init systems in a more autoools style way Ken Dreyer
2015-06-03 16:26 ` Sage Weil
2015-06-03 20:33   ` Owen Synge
2015-06-03 20:45     ` Sage Weil
2015-06-03 21:36       ` Ken Dreyer
2015-06-03 21:38         ` Gregory Farnum
2015-06-03 21:41           ` Ken Dreyer
2015-06-03 21:38         ` Sage Weil
2015-06-03 21:40           ` Ken Dreyer
2015-06-03 21:42             ` Sage Weil
2015-06-06 10:37     ` Alex Elsayed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=556F1E19.6080704@suse.com \
    --to=osynge@suse.com \
    --cc=ceph-devel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.