import of i386 images on MAAS 2.1 fails

Bug #1641971 reported by Jeff Lane on 2016-11-15
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
maas-cert-server
Medium
Unassigned

Bug Description

running maniacs-setup to build a new install MAAS 2.1 server on 16.04.1 host.

During the "import point releases" phase, the i386 images seem to be rejected with the following messages appearing on console:

* Loading Ubuntu 16.04.1 GA (i386)
--2016-11-15 09:56:11-- http://certification-static.canonical.com/fixed-point-releases//ubuntu-16.04.1-server-i386-curtin.tar.gz
Resolving certification-static.canonical.com (certification-static.canonical.com)... 91.189.90.52
Connecting to certification-static.canonical.com (certification-static.canonical.com)|91.189.90.52|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 382065351 (364M) [application/x-gzip]
Saving to: ‘/tmp/ubuntu-16.04.1-server-i386-curtin.tar.gz’

ubuntu-16.04.1-server-i38 100%[==================================>] 364.37M 932KB/s in 3m 7s

2016-11-15 09:59:18 (1.94 MB/s) - ‘/tmp/ubuntu-16.04.1-server-i386-curtin.tar.gz’ saved [382065351/382065351]

{"architecture": ["'i386/generic' is not a valid architecture. It should be one of: 'amd64/generic'."]}

all i386 images for 16.04 resulted in that error. I didn't bother with Trusty or Precise images at this time.

I have a feeling MAAS has dropped support for 32bit altogether so perhaps we should as well.

EDIT: Turns out user error/misunderstanding and some confusion. So you must import the i386 images before you can import custom images for i386, and I would presume the same applies to ARM and Power. So looking at it from that angle, we need to modify the boot-source-selections to pull in the arches we care about before we run the import the first time.

Jeff Lane (bladernr) on 2016-11-15
Changed in maas-cert-server:
importance: Undecided → Medium
status: New → Confirmed
Jeff Lane (bladernr) wrote :

So after some chatting with the maas team and me pulling out tufts of hair in frustration, I finally figured it out.

Once the initial import is done, you need to do the following steps (manually, the automated part can come from this):

1: fine the boot source ID (likely 1, since that's the first one you get automatically)
bladernr@critical-maas:~$ maas admin boot-sources read
Success.
Machine-readable output follows:
[
    {
        "keyring_filename": "/usr/share/keyrings/ubuntu-cloudimage-keyring.gpg",
        "created": "2016-11-14T18:32:00.358",
        "url": "http://images.maas.io/ephemeral-v3/daily/",
        "keyring_data": "",
        "id": 1,
        "updated": "2016-11-14T18:32:00.358",
        "resource_uri": "/MAAS/api/2.0/boot-sources/1/"
    }
]

which yields an ID of 1.

then you need to find the boot-resource-selection ID (also default of 1):
bladernr@critical-maas:~$ maas admin boot-source-selections read 1
Success.
Machine-readable output follows:
[
    {
        "subarches": [
            "*"
        ],
        "arches": [
            "amd64"
        ],
        "id": 1,
        "os": "ubuntu",
        "labels": [
            "*"
        ],
        "release": "xenial",
        "resource_uri": "/MAAS/api/2.0/boot-sources/1/selections/1/"
    }
]

Note that also has an ID of 1.

Then you need to modify that selection like so:

bladernr@critical-maas:~$ maas admin boot-source-selection update 1 1 arches="amd64" arches="i386"
Success.
Machine-readable output follows:
{
    "subarches": [
        "*"
    ],
    "arches": [
        "amd64",
        "i386"
    ],
    "id": 1,
    "os": "ubuntu",
    "labels": [
        "*"
    ],
    "release": "xenial",
    "resource_uri": "/MAAS/api/2.0/boot-sources/1/selections/1/"
}

THEN you need to redo the import:
bladernr@critical-maas:~$ maas admin boot-resources import
Success.
Machine-readable output follows:
Import of boot resources started

and that should pull in i386.

Now, I have a suspicion that perhaps we can do the modification BEFORE we run the first import.

So the steps would be:

Find the source ID
find the selections ID
modify (or possibly create) the selection
THEN run the import

which should pull in both i386 and amd64 (or whatever we list/modify).

More can be found here:
http://maas.io/docs/en/manage-cli-images

additionally, maybe it's worth finding a way to list available arches and ask which ones to import, as some users may only need to pull in power, or arm, or amd64. or combinations of the available ones like "amd64, ppc64el"

Jeff Lane (bladernr) on 2016-11-15
description: updated
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers