Juju attempts to bootstrap bionic by default

Bug #1727355 reported by Jason Hobbs on 2017-10-25
52
This bug affects 7 people
Affects Status Importance Assigned to Milestone
juju
Critical
Nicholas Skaggs
juju-core
Undecided
Unassigned
distro-info-data (Ubuntu)
High
Unassigned
Trusty
High
Unassigned
Xenial
High
Steve Langasek
Zesty
High
Unassigned
Artful
Undecided
Unassigned
juju-core (Ubuntu)
Undecided
Unassigned
Trusty
Undecided
Unassigned
Xenial
Undecided
Unassigned
Zesty
Undecided
Unassigned
Artful
Undecided
Unassigned

Bug Description

This is with 2.2.5 on xenial, with x86 hosts:

I'm hitting this everytime I try to bootstrap:

14:01:42 DEBUG juju.cmd.juju.commands bootstrap.go:497 (error details: [{github.com/juju/juju/cmd/juju/commands/bootstrap.go:588: failed to bootstrap model} {github.com/juju/juju/tools/list.go:19: no matching agent binaries available}])

Full error:
http://paste.ubuntu.com/25817026/

CVE References

Dean Henrichsmeyer (dean) wrote :

Your pastebin shows "default-series:bionic" I bet that's the source of the problem. Juju needs to not break when a new series shows up in distro-info

Changed in juju:
importance: Undecided → Critical
Jason Hobbs (jason-hobbs) wrote :

as a workaround, you can specify the default-series when bootstrapping

Changed in juju:
status: New → Triaged
Changed in juju:
milestone: none → 2.2.6
assignee: nobody → Nicholas Skaggs (nskaggs)
Ryan Beisner (1chb1n) on 2017-10-25
tags: added: uosci
tags: added: cdo-qa cdo-qa-blocker foundations-engine
Changed in juju:
status: Triaged → In Progress
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in distro-info-data (Ubuntu):
status: New → Confirmed
Steve Langasek (vorlon) wrote :

This bug was exposed by the SRU of distro-info-data to all series, which has added bionic to /usr/share/distro-info/ubuntu.csv as '18.04 LTS'.

This is a bug in juju, which is picking up a not-yet-released LTS from this file (note: 'distro info --lts' gets this right, juju gets it wrong). This is acknowledged, and the juju team is working on fixing juju.

However, that fix will come in the form of an updated juju-core 2.2.6 release. 2.2.4 is currently already in the SRU stream for xenial, and the plan is to push 2.2.6 to the SRU queue on top of this, rather than provide an update to juju 2.0.2 which is the current released version in xenial-updates.

As a result, while the juju bug will be fixed upstream quickly, it will take some time for the fix to reach all the affected users.

I am proposing to work around this issue in distro-info-data by temporarily removing the 'LTS' tag on 18.04 from ubuntu.csv. This should have no practical impact on other programmatic consumers of this data in stable Ubuntu releases, and will both unblock existing users of juju versions having this bug and let other tools that need to know about the current devel release work correctly.

Changed in distro-info-data (Ubuntu):
importance: Undecided → High
status: Confirmed → Triaged
Steve Langasek (vorlon) wrote :

artful and later do not receive juju-core from a .deb, but from a snap. I currently don't think we need to work around this bug on those releases, since the snap users should receive the update more quickly than through the SRU process.

Changed in distro-info-data (Ubuntu Artful):
status: New → Won't Fix
Changed in distro-info-data (Ubuntu):
status: Triaged → Won't Fix
Changed in distro-info-data (Ubuntu Trusty):
status: New → In Progress
importance: Undecided → High
Changed in distro-info-data (Ubuntu Xenial):
status: New → In Progress
importance: Undecided → High
Chris Gregan (cgregan) on 2017-10-25
tags: added: cdo-release-blocker
Steve Langasek (vorlon) on 2017-10-25
Changed in distro-info-data (Ubuntu Zesty):
status: New → In Progress
importance: Undecided → High
Steve Langasek (vorlon) wrote :

reported to not be broken with the trusty version of juju.

Changed in distro-info-data (Ubuntu Trusty):
status: In Progress → Won't Fix
Nicholas Skaggs (nskaggs) wrote :

For SRU purposes, you can verify this changed against juju via the following:

juju bootstrap --debug lxd (or any provider you wish)

Confirm the following from the output:

1. Bootstrap completes successfully
2. Agent is used from stream
Look for something similar to:
juju.environs.bootstrap bootstrap.go:621 picked bootstrap agent binary version: 2.2.5
Fetching agent: curl -sSfw 'tools from %{url_effective} downloaded: HTTP %{http_code}; time %{time_total}s; size %{size_download} bytes; speed %{speed_download} bytes/s ' --retry 10 -o $bin/tools.tar.gz <[https://streams.canonical.com/juju/tools/agent/2.2.5/juju-2.2.5-ubuntu-amd64.tgz]>

We don't want to see
juju.cmd.juju.commands bootstrap.go:496 failed to bootstrap model: no matching agent binaries available

or a note about juju uploading it's own agent.

3. default-series in metadata is xenial
Look for default-series in the config map. All options will be listed, but default-series is among them.
juju.cmd.juju.commands bootstrap.go:988 preparing controller with config: map[....image-metadata-url: ... default-series:xenial ...]

summary: - no matching agent binaries available with 2.2.5
+ Juju attempts to bootstrap bionic by default

Hello Jason, or anyone else affected,

Accepted distro-info-data into zesty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/distro-info-data/0.33ubuntu0.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-zesty to verification-done-zesty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-zesty. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in distro-info-data (Ubuntu Zesty):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-zesty
Changed in distro-info-data (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed-xenial
Brian Murray (brian-murray) wrote :

Hello Jason, or anyone else affected,

Accepted distro-info-data into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/distro-info-data/0.28ubuntu0.5 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Nicholas Skaggs (nskaggs) wrote :

Tested working on xenial.

tags: added: verification-done-xenial
removed: verification-needed-xenial
Nicholas Skaggs (nskaggs) wrote :

$ juju bootstrap lxd --debug
..
18:25:50 DEBUG juju.cmd.juju.commands bootstrap.go:988 preparing controller with config: map[https-proxy: no-proxy:127.0.0.1,localhost,::1 provisioner-harvest-mode:destroyed test-mode:false image-stream:released apt-http-proxy: default-series:xenial ...
...
18:25:50 INFO cmd bootstrap.go:296 Looking for packaged Juju agent version 2.2.5 for amd64
...
18:25:52 DEBUG juju.environs.simplestreams simplestreams.go:683 using default candidate for content id "com.ubuntu.juju:released:tools" are {20161007 mirrors:1.0 content-download streams/v1/cpc-mirrors.sjson []}
18:25:55 INFO juju.environs.bootstrap tools.go:74 found 15 packaged agent binaries
...
18:25:55 DEBUG juju.provider.lxd environ_broker.go:40 StartInstance: "0", xenial
...
18:26:08 INFO juju.environs.bootstrap bootstrap.go:606 newest version: 2.2.5
18:26:08 INFO juju.environs.bootstrap bootstrap.go:621 picked bootstrap agent binary version: 2.2.5

Nicholas Skaggs (nskaggs) wrote :

Tested working on zesty:

# juju bootstrap lxd --debug
18:41:15 INFO juju.cmd supercommand.go:63 running juju [2.0.2 gc go1.7.4]
...
18:41:15 DEBUG juju.cmd.juju.commands bootstrap.go:834 provider attrs: map[]
18:41:16 INFO cmd cmd.go:141 Adding contents of "/root/.local/share/juju/ssh/juju_id_rsa.pub" to authorized-keys
18:41:16 DEBUG juju.cmd.juju.commands bootstrap.go:890 preparing controller with config: map[... default-series:xenial
...
18:41:16 INFO cmd cmd.go:129 Creating Juju controller "lxd-localhost" on lxd/localhost
18:41:16 INFO juju.cmd.juju.commands bootstrap.go:507 combined bootstrap constraints:
18:41:16 DEBUG juju.environs.bootstrap bootstrap.go:202 model "controller" supports service/machine networks: false
18:41:16 DEBUG juju.environs.bootstrap bootstrap.go:204 network management by juju enabled: true
18:41:16 INFO cmd cmd.go:141 Loading image metadata
18:41:16 INFO cmd cmd.go:129 Looking for packaged Juju agent version 2.0.2 for amd64
18:41:16 INFO juju.environs.bootstrap tools.go:72 looking for bootstrap agent binaries: version=2.0.2
18:41:16 INFO juju.environs.tools tools.go:101 finding agent binaries in stream "released"
18:41:16 INFO juju.environs.tools tools.go:103 reading agent binaries with major.minor version 2.0
18:41:16 INFO juju.environs.tools tools.go:111 filtering agent binaries by version: 2.0.2
18:41:16 INFO juju.environs.tools tools.go:117 filtering agent binaries by architecture: amd64
18:41:16 DEBUG juju.environs.tools urls.go:109 trying datasource "keystone catalog"
18:41:17 DEBUG juju.environs.simplestreams simplestreams.go:680 using default candidate for content id "com.ubuntu.juju:released:tools" are {20161007 mirrors:1.0 content-download streams/v1/cpc-mirrors.sjson []}
18:41:20 INFO juju.environs.bootstrap tools.go:74 found 16 packaged agent binaries
18:41:20 INFO cmd cmd.go:141 Starting new instance for initial controller
...
18:41:20 DEBUG juju.provider.lxd environ_broker.go:41 StartInstance: "0", xenial
18:41:20 DEBUG juju.cloudconfig.instancecfg instancecfg.go:782 Setting numa ctl preference to false
18:41:20 DEBUG juju.environs imagemetadata.go:112 obtained image datasource "default cloud images"
18:41:20 DEBUG juju.environs imagemetadata.go:112 obtained image datasource "default ubuntu cloud images"
18:41:20 DEBUG juju.provider.lxd environ_broker.go:113 LXD requires https://, using: https://cloud-images.ubuntu.com/releases/
18:41:20 DEBUG juju.tools.lxdclient client.go:199 connecting to LXD remote "default cloud images": "https://streams.canonical.com/juju/images/releases/"
18:41:20 INFO juju.tools.lxdclient client_image.go:118 no image for ubuntu-xenial found in https://streams.canonical.com/juju/images/releases/
18:41:20 DEBUG juju.tools.lxdclient client.go:199 connecting to LXD remote "default ubuntu cloud images": "https://cloud-images.ubuntu.com/releases/"
18:41:27 INFO juju.tools.lxdclient client_image.go:124 found image from https://cloud-images.ubuntu.com/releases/ for xenial = 61d54418874f2f84e24ddd6934b3bb759ca76cbc49820da7d34f8b5b778e4816
...

tags: added: verification-done verification-done-zesty
removed: verification-needed verification-needed-zesty
Changed in juju:
status: Fix Committed → Fix Released
Brian Murray (brian-murray) wrote :

distro-info-data seems to be working fine, although wrong with the deliberate removal of LTS.

(zesty-amd64)root@impulse:/home/bdmurray/source-trees/apport/lp-retracer-config# distro-info --lts
xenial
(zesty-amd64)root@impulse:/home/bdmurray/source-trees/apport/lp-retracer-config# distro-info --devel
bionic
(zesty-amd64)root@impulse:/home/bdmurray/source-trees/apport/lp-retracer-config# distro-info --devel -f
Ubuntu 18.04 "Bionic Beaver"
(zesty-amd64)root@impulse:/home/bdmurray/source-trees/apport/lp-retracer-config# distro-info --supported -f
Ubuntu 14.04 LTS "Trusty Tahr"
Ubuntu 16.04 LTS "Xenial Xerus"
Ubuntu 17.04 "Zesty Zapus"
Ubuntu 17.10 "Artful Aardvark"
Ubuntu 18.04 "Bionic Beaver"
(zesty-amd64)root@impulse:/home/bdmurray/source-trees/apport/lp-retracer-config# distro-info --stable
artful

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package distro-info-data - 0.33ubuntu0.3

---------------
distro-info-data (0.33ubuntu0.3) zesty; urgency=medium

  * Drop the 'LTS' label from 18.04 as a temporary workaround for a juju
    bug. This will be added back as soon as the juju fix is published
    to -updates. LP: #1727355.

 -- Steve Langasek <email address hidden> Wed, 25 Oct 2017 09:28:49 -0700

Changed in distro-info-data (Ubuntu Zesty):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for distro-info-data has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package distro-info-data - 0.28ubuntu0.5

---------------
distro-info-data (0.28ubuntu0.5) xenial; urgency=medium

  * Drop the 'LTS' label from 18.04 as a temporary workaround for a juju
    bug. This will be added back as soon as the juju fix is published
    to -updates. LP: #1727355.

 -- Steve Langasek <email address hidden> Wed, 25 Oct 2017 09:30:35 -0700

Changed in distro-info-data (Ubuntu Xenial):
status: Fix Committed → Fix Released
Steve Langasek (vorlon) wrote :

Reusing this same bug for the SRU to revert this.

Changed in distro-info-data (Ubuntu Zesty):
status: Fix Released → In Progress
Changed in distro-info-data (Ubuntu Xenial):
status: Fix Released → In Progress
Ian Booth (wallyworld) wrote :

This issue is not that Juju breaks when a new series is released. The problem is that Juju defaults to using the latest LTS as the series for which to bring up machines if none is specified by the user. If bionic becomes the latest LTS, Juju will try and find agent binaries to match. And if we are yet to publish those binaries in streams, we will get the error referenced in this bug.

So it's just a case of a small window where distro-info was updated but the streams publication lagged behind a little.

Ian Booth (wallyworld) wrote :

Although the effect of Juju using the series flagged by distro data as latest LTS means that it will attempt to use bionic before it is ready. We could change Juju code to hard code the preferred LTS as one we know works but this means we need to change Juju each time we want to update the preferred LTS. But I'm guessing we don't want to defer flaging bionic as the LTS in distro info until release day? Even though until bionic is released it could be a case of false advertising?

Frode Nordahl (fnordahl) on 2017-10-26
tags: added: sts
Robie Basak (racb) wrote :

> Although the effect of Juju using the series flagged by distro data as latest LTS means that it will attempt to use bionic before it is ready.

distro-info-data clearly flags bionic as not released yet. For example, "distro-info --devel" works as expected. So please have Juju use that information. Wouldn't that be sufficient?

I suggest that Juju adds to its CI tests to ensure Juju continues to work on all releases after the release marked "devel" becomes released, for example by bringing the release forward in distro-info-data. You should also add a separate test that adds the next release (make up a name!) to make sure it will work too.

Please don't consider Juju fixed until you have CI in place for future updates to distro-info-data in all supported releases.

See also bug 1314686 and bug 1321025 and the dep8 test I wrote that verifies that there is not a regression in a similar issue. I'm disappointed to hear that this type of issue is still happening. Perhaps the Juju architects need to rethink how you handle new distribution releases.

Robie Basak (racb) wrote :

I filed bug 1727693 to track CI in Juju for distro-info-data changes.

Ian Booth (wallyworld) wrote :

Yes, you are 100% correct. We can determine from distro info if the labelled LTS release is ready or not. Juju 2.2.6 does do this check now.

Bryan Quigley (bryanquigley) wrote :

>We could change Juju code to hard code the preferred LTS as one we know works but this means we need to change Juju each time we want to update the preferred LTS.

I strongly prefer an approach where what version of Ubuntu deployed doesn't change on release dates. (similar breakage happened to MAAS in the past https://bugs.launchpad.net/maas/+bug/1573046)

My preference would be if you are on an LTS version of Ubuntu, use that version. If not, use a hardcoded Juju-team preferred version. I'm not sure I'd want stable versions of Juju to ever silently change what they deploy.

Changed in juju-core (Ubuntu):
status: New → Invalid
Changed in juju-core (Ubuntu Artful):
status: New → Invalid
Changed in juju-core (Ubuntu Xenial):
status: New → Triaged
Changed in juju-core (Ubuntu Zesty):
status: New → Triaged
Changed in juju-core (Ubuntu Xenial):
status: Triaged → In Progress
Changed in juju-core (Ubuntu Zesty):
status: Triaged → In Progress
Changed in juju-core (Ubuntu Trusty):
status: New → Invalid

Hello Jason, or anyone else affected,

Accepted juju-core into zesty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.2.6-0ubuntu0.17.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-zesty to verification-done-zesty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-zesty. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in juju-core (Ubuntu Zesty):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-zesty
removed: verification-done verification-done-zesty
Changed in juju-core (Ubuntu Xenial):
status: In Progress → Fix Committed
tags: added: verification-needed-xenial
removed: verification-done-xenial
Brian Murray (brian-murray) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.2.6-0ubuntu0.16.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Christian Reis (kiko) wrote :

This bug shouldn't be marked as Fix Released against Juju based on Dean's comment, right?

Adam Conrad (adconrad) wrote :

Hello Jason, or anyone else affected,

Accepted distro-info-data into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/distro-info-data/0.28ubuntu0.6 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in distro-info-data (Ubuntu Xenial):
status: In Progress → Fix Committed
Changed in distro-info-data (Ubuntu Zesty):
status: In Progress → Fix Committed
Adam Conrad (adconrad) wrote :

Hello Jason, or anyone else affected,

Accepted distro-info-data into zesty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/distro-info-data/0.33ubuntu0.4 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-zesty to verification-done-zesty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-zesty. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Nicholas Skaggs (nskaggs) wrote :

For SRU verification, we want to ensure juju bootstrap still selects xenial, even after distro-info-data shows bionic as an LTS.

I confirmed using the restored distro-info-data packages in zesty and xenial proposed that juju is selecting xenial as the proper default series. In addition, I confirmed juju will select bionic as the new default on it's prescribed release day.

tags: added: verification-done verification-done-xenial verification-done-zesty
removed: verification-needed verification-needed-xenial verification-needed-zesty
Łukasz Zemczak (sil2100) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into zesty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.2.6-0ubuntu0.17.04.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-zesty to verification-done-zesty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-zesty. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

tags: added: verification-needed verification-needed-zesty
removed: verification-done verification-done-zesty
tags: added: verification-needed-xenial
removed: verification-done-xenial
Łukasz Zemczak (sil2100) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.2.6-0ubuntu0.16.04.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Andy Whitcroft (apw) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into zesty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.2.6-0ubuntu0.17.04.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-zesty to verification-done-zesty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-zesty. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Andy Whitcroft (apw) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.2.6-0ubuntu0.16.04.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Frode Nordahl (fnordahl) wrote :

# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial

# grep -a container /proc/1/environ
container=lxc

Because of the juju deb post-inst script running 'invoke-rc.d procps restart' you will get an error message from systemd on the console when installing this package in a LXD container.

Is the 'invoke-rc.d procps restart' necessary and could it benefit from special handling when run in a LXD container?

Output:
Setting up juju-2.0 (2.2.6-0ubuntu0.16.04.3) ...
Job for systemd-sysctl.service failed because the control process exited with error code. See "systemctl status systemd-sysctl.service" and "journalctl -xe" for details.
invoke-rc.d: initscript procps, action "restart" failed.
● systemd-sysctl.service - Apply Kernel Variables
   Loaded: loaded (/lib/systemd/system/systemd-sysctl.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Fri 2017-11-24 09:31:03 UTC; 6ms ago
     Docs: man:systemd-sysctl.service(8)
           man:sysctl.d(5)
  Process: 751 ExecStart=/lib/systemd/systemd-sysctl (code=exited, status=1/FAILURE)
 Main PID: 751 (code=exited, status=1/FAILURE)

Nov 24 09:31:03 mgr systemd[1]: Starting Apply Kernel Variables...
Nov 24 09:31:03 mgr systemd[1]: systemd-sysctl.service: Main process exited, code=exited, status=1/FAILURE
Nov 24 09:31:03 mgr systemd[1]: Failed to start Apply Kernel Variables.
Nov 24 09:31:03 mgr systemd[1]: systemd-sysctl.service: Unit entered failed state.
Nov 24 09:31:03 mgr systemd[1]: systemd-sysctl.service: Failed with result 'exit-code'.

Nicholas Skaggs (nskaggs) wrote :

Frode, the procps restart is necessary to apply the sysctl parameters we set for LXD containers to provide a better experience for the juju use case. If we don't do this, it would require a system restart for the parameters to apply.

Nicholas Skaggs (nskaggs) wrote :

It seems systemd has always acted this way, but apparently there's a fix in 232+.

Brian Murray (brian-murray) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into zesty-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.3.1-0ubuntu0.17.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-zesty to verification-done-zesty. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-zesty. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Brian Murray (brian-murray) wrote :

Hello Jason, or anyone else affected,

Accepted juju-core into xenial-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/juju-core/2.3.1-0ubuntu0.16.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed.Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-xenial to verification-done-xenial. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-xenial. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Nicholas Skaggs (nskaggs) wrote :

Confirming 2.3.1 proposed package works for xenial and zesty.

1. Bootstrap completes successfully
2. Agent is used from stream
3. default-series in metadata is xenial
4. distro-info-data contains bionic

tags: added: verification-done verification-done-xenial verification-done-zesty
removed: verification-needed verification-needed-xenial verification-needed-zesty
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package distro-info-data - 0.33ubuntu0.4

---------------
distro-info-data (0.33ubuntu0.4) zesty; urgency=medium

  * Restore the 'LTS' label for 18.04, and declare a Breaks: on the older
    versions of juju-core that don't handle this correctly. LP: #1727355.

 -- Steve Langasek <email address hidden> Wed, 25 Oct 2017 14:13:20 -0700

Changed in distro-info-data (Ubuntu Zesty):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package distro-info-data - 0.28ubuntu0.6

---------------
distro-info-data (0.28ubuntu0.6) xenial; urgency=medium

  * Restore the 'LTS' label for 18.04, and declare a Breaks: on the older
    versions of juju-core that don't handle this correctly. LP: #1727355.

 -- Steve Langasek <email address hidden> Wed, 25 Oct 2017 14:14:11 -0700

Changed in distro-info-data (Ubuntu Xenial):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package juju-core - 2.3.1-0ubuntu0.17.04.1

---------------
juju-core (2.3.1-0ubuntu0.17.04.1) zesty; urgency=medium

  * New upstream release. (LP: #1718213)

juju-core (2.2.6-0ubuntu0.17.04.3) zesty; urgency=medium

  * Only juju 2.3+ supports cidr expansion for no proxy, fix for 2.2

juju-core (2.2.6-0ubuntu0.17.04.2) zesty; urgency=medium

  * Add no_proxy for lxd subnet in support of adt tests

juju-core (2.2.6-0ubuntu0.17.04.1) zesty; urgency=medium

  * New upstream release. (LP: #1718213)
  * Simplify use of embedded dependencies
  * Remove DH_VERBOSE=1
  * Ensure juju bootstrap succeeds with bionic in distro-info-data (LP: #1727355)

juju-core (2.2.4-0ubuntu0.17.04.2) zesty; urgency=medium

  * Fix installation of bash completion scripts.

juju-core (2.2.4-0ubuntu0.17.04.1) zesty; urgency=medium

  * New upstream release. (LP: #1718213)
  * Remove debian/patches/CVE-2017-9232.patch, included upstream.
  * Improved support for mixing vendored and archive dependencies.
  * Killed old code for building on saucy, precise and with gccgo.
  * Embed Go 1.8.3 as upstream no longer builds with Go 1.6. (Note that
    golang-go is still a build dependency as it is required to build the
    embedded go 1.8.3).
  * Switch golang.org/x/crypto dependency to vendorized.

 -- Nicholas Skaggs <email address hidden> Wed, 13 Dec 2017 17:38:04 -0500

Changed in juju-core (Ubuntu Zesty):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package juju-core - 2.3.1-0ubuntu0.16.04.1

---------------
juju-core (2.3.1-0ubuntu0.16.04.1) xenial; urgency=medium

  * New upstream release. (LP: #1718213)

juju-core (2.2.6-0ubuntu0.16.04.3) xenial; urgency=medium

  * Only juju 2.3+ supports cidr expansion for no proxy, fix for 2.2

juju-core (2.2.6-0ubuntu0.16.04.2) xenial; urgency=medium

  * Add no_proxy for lxd subnet in support of adt tests

juju-core (2.2.6-0ubuntu0.16.04.1) xenial; urgency=medium

  * New upstream release. (LP: #1718213)
  * Simplify use of embedded dependencies
  * Remove DH_VERBOSE=1
  * Ensure juju bootstrap succeeds with bionic in distro-info-data (LP: #1727355)

juju-core (2.2.4-0ubuntu0.16.04.2) xenial; urgency=medium

  * Fix installation of bash completion scripts.

juju-core (2.2.4-0ubuntu0.16.04.1) xenial; urgency=medium

  * New upstream release. (LP: #1718213)
  * Remove debian/patches/CVE-2017-9232.patch, included upstream.
  * Improved support for mixing vendored and archive dependencies.
  * Killed old code for building on saucy, precise and with gccgo.
  * Embed Go 1.8.3 as upstream no longer builds with Go 1.6.
  * Switch golang.org/x/crypto dependency to vendorized.

 -- Nicholas Skaggs <email address hidden> Tue, 12 Dec 2017 14:41:40 -0500

Changed in juju-core (Ubuntu Xenial):
status: Fix Committed → Fix Released
Steve Langasek (vorlon) wrote :

Robie Basak and Andreas Hasenack have observed that the Breaks: from distro-info-data are against the wrong package: juju-core is built from juju-1 source and there is no newer version of this binary package in xenial which is not affected by the Breaks:, resulting in distro-info-data being held back.

distro-info-data needs a versioned breaks against the juju-2 binary package instead.

Changed in distro-info-data (Ubuntu Xenial):
status: Fix Released → In Progress
Steve Langasek (vorlon) wrote :

Sorry, 'juju-2.0'.

Steve Langasek (vorlon) on 2018-01-05
Changed in distro-info-data (Ubuntu Xenial):
assignee: nobody → Steve Langasek (vorlon)
Robie Basak (racb) wrote :

7:47 <rbasak> slangasek: looks good, but do you know any reason for distro-info-data 0.28ubuntu0.3 to be in the security pocket?

17:48 <slangasek> rbasak: not offhand

17:49 <rbasak> Seems like some distro-info-data updates were deliberately being put in there.

17:49 <rbasak> So now I don't know whether it's correct for this fix to go in there, or all fixes to distro-info-data should go into the security pocket :-(

Robie Basak (racb) wrote :

17:58 <mdeslaur> rbasak: if you're sruing it, just get someone to pocket-copy it to -security after

17:58 <rbasak> mdeslaur: ah, OK. I was under the impression that a pocket copy in that direction wasn't always safe.

17:58 <rbasak> (though seems unlikely to be an issue for distro-info-data)

17:58 <mdeslaur> it isn't, but this package only has data in it

17:59 <rbasak> I'm happy with your ack then. Thanks :)

Changed in distro-info-data (Ubuntu Xenial):
status: In Progress → Fix Committed
Robie Basak (racb) wrote :

There's some more discussion in #ubuntu-devel right now explaining why a pocket copy of distro-info-data containing the Breaks to security would be bad and will break things.

Robie Basak (racb) wrote :

Actually the discussion was about about 1800 UTC yesterday. I was getting a timeout trying to post the previous comment yesterday.

Andreas Hasenack (ahasenack) wrote :

On a xenial server, with distro-info-data 0.28ubuntu0.6 from current xenial-updates, juju-core is removed:
     0.28ubuntu0.6 500
        500 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages

root@atlas:~# apt install distro-info-data
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  juju-core
The following packages will be upgraded:
  distro-info-data
1 upgraded, 0 newly installed, 1 to remove and 129 not upgraded.

Enabling xenial-proposed and retrying, it installs just fine and juju-core is kept:
     0.28ubuntu0.7 500
        500 http://archive.ubuntu.com/ubuntu xenial-proposed/main amd64 Packages

root@atlas:~# apt install distro-info-data
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
  distro-info-data
1 upgraded, 0 newly installed, 0 to remove and 171 not upgraded.
Need to get 0 B/4,334 B of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 154932 files and directories currently installed.)
Preparing to unpack .../distro-info-data_0.28ubuntu0.7_all.deb ...
Unpacking distro-info-data (0.28ubuntu0.7) over (0.28ubuntu0.5) ...
Setting up distro-info-data (0.28ubuntu0.7) ...

Andreas Hasenack (ahasenack) wrote :

FTR, I had this juju-core installed:
     1.25.6-0ubuntu1.16.04.2 500
        500 http://archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages

Łukasz Zemczak (sil2100) wrote :

So what is the final verdict? Should this distro-info-data be bin-copied to -security as well? I guess I'll leave it in your hands Robie as you seem to have more context.

Robie Basak (racb) wrote :

I think we can release it to updates, but shouldn't release it to security.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package distro-info-data - 0.28ubuntu0.7

---------------
distro-info-data (0.28ubuntu0.7) xenial; urgency=medium

  * Declare our breaks: against the correct juju-2.0 binary package, not
    against juju-core which is juju-1 in xenial and not affected.
    LP: #1727355.

 -- Steve Langasek <email address hidden> Fri, 05 Jan 2018 09:10:21 -0800

Changed in distro-info-data (Ubuntu Xenial):
status: Fix Committed → Fix Released
Felipe Reyes (freyes) wrote :

using juju 1.25.13 (from ppa:juju/stable) in an updated trusty system this problem is still there, to solve it default-series can be set.

root@juju1:~# apt-cache policy distro-info-data
distro-info-data:
  Installed: 0.18ubuntu0.8
  Candidate: 0.18ubuntu0.8
  Version table:
 *** 0.18ubuntu0.8 0
        500 http://archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     0.18ubuntu0.7 0
        500 http://security.ubuntu.com/ubuntu/ trusty-security/main amd64 Packages
     0.18 0
        500 http://archive.ubuntu.com/ubuntu/ trusty/main amd64 Packages
root@juju1:~# cat .juju/environments.yaml
default: maas

environments:
    maas:
        type: maas
        maas-server: 'http://1.2.3.4/MAAS/'
        maas-oauth: 'XXXX'
        bootstrap-timeout: 1800

root@juju1:~# juju bootstrap --constraints tags=virtual --upload-tools=true
Bootstrapping environment "maas"
Starting new instance for initial state server
Launching instance
WARNING no architecture was specified, acquiring an arbitrary node
Bootstrap failed, destroying environment
ERROR failed to bootstrap environment: cannot start bootstrap instance: gomaasapi: got error back from server: 400 BAD REQUEST ({"distro_series": ["'bionic' is not a valid distro_series. It should be one of: '', 'centos/centos66', 'centos/centos70', 'ubuntu/trusty', 'ubuntu/xenial', 'ubuntu/zesty', 'ubuntu/artful'."]})
root@juju1:~# vim .juju/environments.yaml
root@juju1:~# cat .juju/environments.yaml
default: maas

environments:
    maas:
        type: maas
        default-series: xenial
        maas-server: 'http://1.2.3.4/MAAS/'
        maas-oauth: 'XXXX'
        bootstrap-timeout: 1800
root@juju1:~# juju bootstrap --constraints tags=virtual
Bootstrapping environment "maas"
Starting new instance for initial state server
Launching instance
WARNING no architecture was specified, acquiring an arbitrary node
 - /MAAS/api/1.0/nodes/node-203ee4d8-42c9-11e5-9809-5254006803c2/
Installing Juju agent on bootstrap instance
Waiting for address
Attempting to connect to vm9.maas:22
...
Fetching tools: curl ...
Bootstrapping Juju machine agent
Starting Juju machine agent (jujud-machine-0)
Bootstrap agent installed
maas -> maas
Waiting for API to become available
Waiting for API to become available
Bootstrap complete

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

Other bug subscribers