missing dependency on isc-dhcp-client (dhclient)

Bug #1759307 reported by Scott Moser
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cloud-init (Ubuntu)
Fix Released
Medium
Unassigned
initramfs-tools (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

cloud-init uses isc-dhcp-client (through 'dhclient') to obtain temporary
dhcp ip addresses. It currently does not identify a dependency on it.

initramfs-tools uses dhclient in scripts/functions to obtain ipv6 addresses
(see bug 1621507 for more info).

This bug was prompted by MP to remove isc-dhcp-client from the ubuntu-minimal seed
 https://code.launchpad.net/~vorlon/ubuntu-seeds/platform.bionic-dhcp-switch/+merge/342013

Related branches

Scott Moser (smoser)
description: updated
Changed in cloud-init (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
description: updated
Revision history for this message
Scott Moser (smoser) wrote :

An upstream commit landed for this bug.

To view that commit see the following URL:
https://git.launchpad.net/cloud-init/commit/?id=5b9dc4bc

Chad Smith (chad.smith)
Changed in cloud-init (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Steve Langasek (vorlon) wrote :

I don't think this belongs as a dependency of initramfs-tools. The initramfs-tools package won't fail to create an initramfs if dhclient is absent, it just won't succeed in creating an initramfs that is capable of configuring (currently ipv6) networking before pivoting root. That is not fundamental to the function of a generic initramfs and I think it's fine if initramfs-tools doesn't pull this in for you.

Changed in initramfs-tools (Ubuntu):
status: New → Invalid
Revision history for this message
Scott Moser (smoser) wrote : Re: [Bug 1759307] Re: missing dependency on isc-dhcp-client (dhclient)

You don't think that at least warrants a Suggests ?

On Wed, Mar 28, 2018 at 2:49 AM, Steve Langasek <
<email address hidden>> wrote:

> I don't think this belongs as a dependency of initramfs-tools. The
> initramfs-tools package won't fail to create an initramfs if dhclient is
> absent, it just won't succeed in creating an initramfs that is capable
> of configuring (currently ipv6) networking before pivoting root. That
> is not fundamental to the function of a generic initramfs and I think
> it's fine if initramfs-tools doesn't pull this in for you.
>
> ** Changed in: initramfs-tools (Ubuntu)
> Status: New => Invalid
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/1759307
>
> Title:
> missing dependency on isc-dhcp-client (dhclient)
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/cloud-init/+
> bug/1759307/+subscriptions
>

Revision history for this message
Steve Langasek (vorlon) wrote :

On Wed, Mar 28, 2018 at 05:27:57PM -0000, Scott Moser wrote:
> You don't think that at least warrants a Suggests ?

I don't think Suggests are generally worth the effort, they aren't installed
by default and so their only minimal value is providing a little
documentation to the user who happens to be looking at the "right" package.

Packages that care about networking support in the initramfs should instead
take care themselves to depend on isc-dhcp-client.

Revision history for this message
Scott Moser (smoser) wrote :

"Packages that care about networking support in the initramfs should instead
take care themselves to depend on isc-dhcp-client."

Reworded:
  Packages that care about <function> should take care to depend on <package> themselves.

Generally that's not how things work, and results in maintenance elsewhere. Now *those* packages had to be updated, and later on have to be fixed if initramfs-tools ever updated again should initramfs-tools ever update its implementation.

Revision history for this message
Scott Moser (smoser) wrote :

Ugh.
the merge proposal at

 https://code.launchpad.net/~smoser/cloud-init/+git/cloud-init/+merge/342214
put a build-depends on isc-dhcp-client
not a runtime depends.

i've opened bug 1766714 to address.

Revision history for this message
Steve Langasek (vorlon) wrote :

On Thu, Mar 29, 2018 at 01:23:13AM -0000, Scott Moser wrote:
> "Packages that care about networking support in the initramfs should instead
> take care themselves to depend on isc-dhcp-client."

> Reworded:
> Packages that care about <function> should take care to depend on <package> themselves.

> Generally that's not how things work, and results in maintenance
> elsewhere. Now *those* packages had to be updated, and later on have to
> be fixed if initramfs-tools ever updated again should initramfs-tools
> ever update its implementation.

Sorry for failing to explicitly ack this. I think that you're right, we
shouldn't expect a third package to know that if they want dhcp support from
initramfs-tools, that this requires isc-dhcp-client. Either initramfs-tools
should depend on isc-dhcp-client itself, or the dhcp support should be split
out of initramfs-tools into isc-dhcp-client; and either way it shouldn't
really be cloud-init's problem.

In any case, due to this outstanding issue, isc-dhcp-client has NOT been
dropped from the minimal seed for 18.04 and will not be.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.