CINXE.COM
Activity log : Bug #2023211 : Bugs : OpenStack Nova Compute Charm
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr"> <head> <meta charset="UTF-8" /> <title>Activity log : Bug #2023211 : Bugs : OpenStack Nova Compute Charm</title> <link rel="apple-touch-icon" sizes="180x180" href="/@@/apple-touch-icon.png?v=2022" /> <link rel="icon" type="image/png" sizes="32x32" href="/@@/favicon-32x32.png?v=2022" /> <link rel="icon" type="image/png" sizes="16x16" href="/@@/favicon-16x16.png?v=2022" /> <link rel="manifest" href="/@@/site.webmanifest?v=2022" /> <link rel="mask-icon" href="/@@/safari-pinned-tab.svg?v=2022" color="#e9531f" /> <link rel="shortcut icon" href="/@@/favicon.ico?v=2022" /> <meta name="msapplication-TileColor" content="#da532c" /> <meta name="msapplication-config" content="/@@/browserconfig.xml?v=2022" /> <meta name="theme-color" content="#ffffff" /> <link type="text/css" rel="stylesheet" media="screen, print" href="/+icing/rev78860d903de6d6d7dd5a0ade63efaca45d3467e2/combo.css" /> <meta name="description" content="[Impact] Since the OpenStack Yoga release is possible to run emulated architectures ( https://docs.openstack.org/nova/latest/admin/hw-emulation-architecture.html ), although riscv64 is not in the list of supported architectures. In the Launchpad build farm, we run a cluster of riscv64 virtual machines that deal with building riscv64 artifacts, including .debs for Ubuntu itself. We don't currently have hypervisor-capable riscv64 hardware to run these on, so we're using qemu system emulation..." /> <meta property="og:description" content="[Impact] Since the OpenStack Yoga release is possible to run emulated architectures ( https://docs.openstack.org/nova/latest/admin/hw-emulation-architecture.html ), although riscv64 is not in the list of supported architectures. In the Launchpad build farm, we run a cluster of riscv64 virtual machines that deal with building riscv64 artifacts, including .debs for Ubuntu itself. We don't currently have hypervisor-capable riscv64 hardware to run these on, so we're using qemu system emulation..." /> <meta property="og:title" content="Activity log : Bug #2023211 : Bugs : OpenStack Nova Compute Charm" /> <meta property="og:type" content="website" /> <meta property="og:image" content="/@@/launchpad-og-image.png" /> <meta property="og:url" content="https://bugs.launchpad.net/charm-nova-compute/+bug/2023211/+activity" /> <meta property="og:site_name" content="Launchpad" /> <script type="text/javascript"> var LP = { cache: {}, links: {} }; </script> <script type="text/javascript">var cookie_scope = '; Path=/; Secure; Domain=.launchpad.net';</script> <script type="text/javascript" src="/+combo/rev78860d903de6d6d7dd5a0ade63efaca45d3467e2/?yui/yui/yui-min.js&lp/meta.js&yui/loader/loader-min.js"></script> <script type="text/javascript"> var raw = null; if (LP.devmode) { raw = 'raw'; } YUI.GlobalConfig = { combine: true, comboBase: '/+combo/rev78860d903de6d6d7dd5a0ade63efaca45d3467e2/?', root: 'yui/', filter: raw, debug: false, fetchCSS: false, maxURLLength: 2000, groups: { lp: { combine: true, base: '/+combo/rev78860d903de6d6d7dd5a0ade63efaca45d3467e2/?lp/', comboBase: '/+combo/rev78860d903de6d6d7dd5a0ade63efaca45d3467e2/?', root: 'lp/', // comes from including lp/meta.js modules: LP_MODULES, fetchCSS: false } } }</script> <script type="text/javascript"> // we need this to create a single YUI instance all events and code // talks across. All instances of YUI().use should be based off of // LPJS instead. var LPJS = new YUI(); </script> <script id="base-layout-load-scripts" type="text/javascript"> //<![CDATA[ LPJS.use('base', 'node', 'console', 'event', 'oop', 'lp', 'lp.app.foldables','lp.app.sorttable', 'lp.app.inlinehelp', 'lp.app.links', 'lp.bugs.bugtask_index', 'lp.bugs.subscribers', 'lp.app.ellipsis', 'lp.code.branchmergeproposal.diff', 'lp.views.global', function(Y) { Y.on("domready", function () { var global_view = new Y.lp.views.Global(); global_view.render(); Y.lp.app.sorttable.SortTable.init(); Y.lp.app.inlinehelp.init_help(); Y.lp.activate_collapsibles(); Y.lp.app.foldables.activate(); Y.lp.app.links.check_valid_lp_links(); }); Y.on('lp:context:web_link:changed', function(e) { window.location = e.new_value; }); }); //]]> </script> <script id="base-helper-functions" type="text/javascript"> //<![CDATA[ // This code is pulled from lp.js that needs to be available on every // request. Pulling here to get it outside the scope of the YUI block. function setFocusByName(name) { // Focus the first element matching the given name which can be focused. var nodes = document.getElementsByName(name); var i, node; for (i = 0; i < nodes.length; i++) { node = nodes[i]; if (node.focus) { try { // Trying to focus a hidden element throws an error in IE8. if (node.offsetHeight !== 0) { node.focus(); } } catch (e) { LPJS.use('console', function(Y) { Y.log('In setFocusByName(<' + node.tagName + ' type=' + node.type + '>): ' + e); }); } break; } } } function selectWidget(widget_name, event) { if (event && (event.keyCode === 9 || event.keyCode === 13)) { // Avoid firing if user is tabbing through or simply pressing // enter to submit the form. return; } document.getElementById(widget_name).checked = true; } //]]> </script> </head> <body id="document" itemscope="" itemtype="http://schema.org/WebPage" class="tab-bugs main_only public yui3-skin-sam"> <div class="yui-d0"> <div id="locationbar" class="login-logout"> <div id="logincontrol"><a href="https://bugs.launchpad.net/charm-nova-compute/+bug/2023211/+activity/+login">Log in / Register</a></div> </div><!--id="locationbar"--> <div id="watermark" class="watermark-apps-portlet"> <div> <a href="https://launchpad.net/charm-nova-compute"><img alt="" width="64" height="64" src="/@@/product-logo" /></a> </div> <div class="wide"> <h2 id="watermark-heading"><a href="https://launchpad.net/charm-nova-compute">OpenStack Nova Compute Charm</a></h2> </div> <!-- Application Menu --> <ul class="facetmenu"> <li class="overview"><a href="https://launchpad.net/charm-nova-compute">Overview</a></li> <li class="branches"><a href="https://code.launchpad.net/charm-nova-compute">Code</a></li> <li class="bugs active"><a href="https://bugs.launchpad.net/charm-nova-compute">Bugs</a></li> <li class="specifications"><a href="https://blueprints.launchpad.net/charm-nova-compute">Blueprints</a></li> <li class="translations"><a href="https://translations.launchpad.net/charm-nova-compute">Translations</a></li> <li class="answers"><a href="https://answers.launchpad.net/charm-nova-compute">Answers</a></li> </ul> </div> <div id="maincontent" class="yui-main"> <div class="yui-b" dir="ltr"> <div class="context-publication"> <ol itemprop="breadcrumb" class="breadcrumbs"> <li> <a href="https://bugs.launchpad.net/charm-nova-compute/+bug/2023211">Bug #2023211</a> </li> <li> Activity log </li> </ol> <div id="registration" class="registering"> </div> </div> <div id="request-notifications"> </div> <div> <div class="yui-g"> <div class="top-portlet"> <h1>Activity log for bug #2023211</h1> <table class="listing"> <thead> <tr> <th>Date</th> <th>Who</th> <th>What changed</th> <th>Old value</th> <th>New value</th> <th>Message</th> </tr> </thead> <tbody> <tr> <td>2023-06-07 15:35:28</td> <td><a href="https://launchpad.net/~cjwatson" class="sprite person">Colin Watson</a></td> <td>bug</td> <td></td> <td></td> <td>added bug</td> </tr> <tr> <td>2023-06-07 15:35:28</td> <td><a href="https://launchpad.net/~cjwatson" class="sprite person">Colin Watson</a></td> <td>attachment added</td> <td></td> <td>virsh dumpxml https://bugs.launchpad.net/bugs/2023211/+attachment/5678472/+files/riscv64-qemu-lgw01-001.xml</td> <td></td> </tr> <tr> <td>2023-06-07 16:17:30</td> <td><a href="https://launchpad.net/~axino" class="sprite person">Junien F</a></td> <td>bug</td> <td></td> <td></td> <td>added subscriber The Canonical Sysadmins</td> </tr> <tr> <td>2023-06-08 02:58:38</td> <td><a href="https://launchpad.net/~wgrant" class="sprite person">William Grant</a></td> <td>bug</td> <td></td> <td></td> <td>added subscriber William Grant</td> </tr> <tr> <td>2023-06-24 04:19:37</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>attachment added</td> <td></td> <td>riscv64.diff https://bugs.launchpad.net/charm-nova-compute/+bug/2023211/+attachment/5681715/+files/riscv64.diff</td> <td></td> </tr> <tr> <td>2023-06-24 04:19:48</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>charm-nova-compute: status</td> <td>New</td> <td>Triaged</td> <td></td> </tr> <tr> <td>2023-07-20 14:56:00</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>attachment added</td> <td></td> <td>riscv64-test-vm-generated-by-nova.xml https://bugs.launchpad.net/charm-nova-compute/+bug/2023211/+attachment/5687468/+files/riscv64-test-vm-generated-by-nova.xml</td> <td></td> </tr> <tr> <td>2023-07-20 20:55:07</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>description</td> <td>(Filing this here on the advice of ~freyes. I don't operate the actual Nova installation I'm working with here, so I can't provide most of the software versions and such, but hopefully Canonical people will be able to work out what's involved with PS6.) In the Launchpad build farm, we run a cluster of riscv64 virtual machines that deal with building riscv64 artifacts, including .debs for Ubuntu itself. We don't currently have hypervisor-capable riscv64 hardware to run these on, so we're using qemu system emulation on commodity amd64 hardware. This works OK, but we currently do this in manually-configured libvirt instances; we'd much rather be able to do it on our internal OpenStack clouds. What I've tried so far (on PS6, for Canonical folks to whom that's meaningful): $ wget http://cloud-images.ubuntu.com/server/releases/jammy/release-20220420/ubuntu-22.04-server-cloudimg-riscv64.img $ openstack image create --disk-format qcow2 --file ~cjwatson/ubuntu-22.04-server-cloudimg-riscv64.img --private --property architecture=riscv64 --property item_name=disk1.img --property os_distro=ubuntu --property os_version=22.04 cjwatson-riscv64-test $ openstack image set --property hw_emulation_architecture=riscv64 cjwatson-riscv64-test $ openstack image set --property hw_machine_type=virt cjwatson-riscv64-test $ openstack server create --image cjwatson-riscv64-test --flavor vbuilder --network vbuilder_staging_test_net cjwatson-riscv64-test Invalid image metadata. Error: Architecture name 'riscv64' is not valid (HTTP 400) (Request-ID: req-023932ea-7c90-4be3-89b8-6bd19718919a) This causes me to think that, even if I've left out some property or other (e.g. firmware), basic things like the riscv64 architecture name being valid aren't currently in place. But it's certainly possible I've got something wrong here. If there's a known way to make this work, could it please be documented? I've attached `virsh dumpxml` output from one of the manual libvirt instances we use at present, in case it's useful.</td> <td>[Impact] Since the OpenStack Yoga release is possible to run emulated architectures ( https://docs.openstack.org/nova/latest/admin/hw-emulation-architecture.html ), although riscv64 is not in the list of supported architectures. In the Launchpad build farm, we run a cluster of riscv64 virtual machines that deal with building riscv64 artifacts, including .debs for Ubuntu itself. We don't currently have hypervisor-capable riscv64 hardware to run these on, so we're using qemu system emulation on commodity amd64 hardware. This works OK, but we currently do this in manually-configured libvirt instances; we'd much rather be able to do it on our internal OpenStack clouds. [Test Case] 聽聽$ wget http://cloud-images.ubuntu.com/server/releases/jammy/release-20220420/ubuntu-22.04-server-cloudimg-riscv64.img 聽聽$ openstack image create --disk-format qcow2 --file ~cjwatson/ubuntu-22.04-server-cloudimg-riscv64.img --private --property architecture=riscv64 --property item_name=disk1.img --property os_distro=ubuntu --property os_version=22.04 cjwatson-riscv64-test 聽聽$ openstack image set --property hw_emulation_architecture=riscv64 cjwatson-riscv64-test 聽聽$ openstack image set --property hw_machine_type=virt cjwatson-riscv64-test 聽聽$ openstack server create --image cjwatson-riscv64-test --flavor vbuilder --network vbuilder_staging_test_net cjwatson-riscv64-test Expected result: the created instance reaches to ACTIVE state. Actual result: the "openstack server create" command fails with the following error message: 聽聽Invalid image metadata. Error: Architecture name 'riscv64' is not valid (HTTP 400) (Request-ID: req-023932ea-7c90-4be3-89b8-6bd19718919a) This causes me to think that, even if I've left out some property or other (e.g. firmware), basic things like the riscv64 architecture name being valid aren't currently in place. But it's certainly possible I've got something wrong here. If there's a known way to make this work, could it please be documented? I've attached `virsh dumpxml` output from one of the manual libvirt instances we use at present, in case it's useful.</td> <td></td> </tr> <tr> <td>2023-07-20 20:55:20</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>charm-nova-compute: status</td> <td>Triaged</td> <td>Invalid</td> <td></td> </tr> <tr> <td>2023-07-20 20:55:42</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>bug task added</td> <td></td> <td>nova (Ubuntu)</td> <td></td> </tr> <tr> <td>2023-07-20 20:55:57</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>bug task added</td> <td></td> <td>nova</td> <td></td> </tr> <tr> <td>2023-07-20 20:56:04</td> <td><a href="https://launchpad.net/~freyes" class="sprite person">Felipe Reyes</a></td> <td>nova: assignee</td> <td></td> <td>Felipe Reyes (freyes)</td> <td></td> </tr> <tr> <td>2023-07-25 07:53:27</td> <td><a href="https://launchpad.net/~janitor" class="sprite person-inactive">Launchpad Janitor</a></td> <td>nova (Ubuntu): status</td> <td>New</td> <td>Confirmed</td> <td></td> </tr> <tr> <td>2023-07-25 15:50:32</td> <td><a href="https://launchpad.net/~xypron" class="sprite person">Heinrich Schuchardt</a></td> <td>bug</td> <td></td> <td></td> <td>added subscriber Heinrich Schuchardt</td> </tr> <tr> <td>2023-08-03 00:59:48</td> <td><a href="https://launchpad.net/~jaxvanyang" class="sprite person">Jax Young</a></td> <td>bug</td> <td></td> <td></td> <td>added subscriber Jax Young</td> </tr> <tr> <td>2023-08-09 12:18:58</td> <td><a href="https://launchpad.net/~hudson-openstack" class="sprite person">OpenStack Infra</a></td> <td>nova: status</td> <td>New</td> <td>In Progress</td> <td></td> </tr> <tr> <td>2023-09-25 03:20:11</td> <td><a href="https://launchpad.net/~barryprice" class="sprite person">Barry Price</a></td> <td>bug</td> <td></td> <td></td> <td>added subscriber Barry Price</td> </tr> <tr> <td>2024-12-11 14:52:07</td> <td><a href="https://launchpad.net/~sean-k-mooney" class="sprite person">sean mooney</a></td> <td>nova: status</td> <td>In Progress</td> <td>Invalid</td> <td></td> </tr> <tr> <td>2024-12-14 13:59:29</td> <td><a href="https://launchpad.net/~hudson-openstack" class="sprite person">OpenStack Infra</a></td> <td>nova: status</td> <td>Invalid</td> <td>In Progress</td> <td></td> </tr> </tbody> </table> </div> </div> </div> </div><!-- yui-b --> </div><!-- yui-main --> <!-- yui-b side --> <!-- yui-t4 --> <div id="footer" class="footer"> <div class="lp-arcana"> <div class="lp-branding"> <a href="https://launchpad.net/"><img src="/@@/launchpad-footer-logo.svg" alt="Launchpad" width="65" height="18" /></a> • <a href="https://launchpad.net/+tour">Take the tour</a> • <a href="https://help.launchpad.net/">Read the guide</a> <form id="globalsearch" method="get" accept-charset="UTF-8" action="https://launchpad.net/+search"> <input type="search" id="search-text" name="field.text" /> <input type="image" src="/@@/search" style="vertical-align:5%" alt="Search Launchpad" /> </form> </div> </div> <div class="colophon"> © 2004 <a href="http://canonical.com/">Canonical Ltd.</a> • <a href="https://launchpad.net/legal">Terms of use</a> • <a href="https://www.ubuntu.com/legal/dataprivacy">Data privacy</a> • <a href="/feedback">Contact Launchpad Support</a> • <a href="http://blog.launchpad.net/">Blog</a> • <a href="https://canonical.com/careers">Careers</a> • <a href="https://ubuntu.social/@launchpadstatus">System status</a> <span id="lp-version"> • 78860d9 (<a href="https://dev.launchpad.net/">Get the code!</a>) </span> </div> </div> </div><!-- yui-d0--> <script id="json-cache-script">LP.cache = {"related_features": {}, "context": {"self_link": "https://bugs.launchpad.net/api/devel/charm-nova-compute/+bug/2023211", "web_link": "https://bugs.launchpad.net/charm-nova-compute/+bug/2023211", "resource_type_link": "https://bugs.launchpad.net/api/devel/#bug_task", "bug_link": "https://bugs.launchpad.net/api/devel/bugs/2023211", "milestone_link": null, "status": "Invalid", "status_explanation": null, "importance": "Undecided", "importance_explanation": null, "assignee_link": null, "bug_target_display_name": "OpenStack Nova Compute Charm", "bug_target_name": "charm-nova-compute", "bug_watch_link": null, "date_assigned": null, "date_created": "2023-06-07T15:35:28.537101+00:00", "date_confirmed": null, "date_incomplete": null, "date_in_progress": null, "date_closed": "2023-07-20T20:55:20.477376+00:00", "date_left_new": "2023-06-24T04:19:49.028781+00:00", "date_triaged": null, "date_fix_committed": null, "date_fix_released": null, "date_left_closed": null, "owner_link": "https://bugs.launchpad.net/api/devel/~cjwatson", "target_link": "https://bugs.launchpad.net/api/devel/charm-nova-compute", "title": "Bug #2023211 in OpenStack Nova Compute Charm: \"Run emulated riscv64 VMs on amd64\"", "related_tasks_collection_link": "https://bugs.launchpad.net/api/devel/charm-nova-compute/+bug/2023211/related_tasks", "is_complete": true, "http_etag": "\"ba3372585601064b4aeb9692a60959bddfdcec0d-3723b198c650f14418b85e017029233510c2f0f4\""}};</script> </body> <!-- Facet name: bugs Page type: main_only Has global search: True Has application tabs: True Has side portlets: False At least 16 queries/external actions issued in 0.23 seconds Features: {'profiling.enabled': None, 'hard_timeout': '5000', 'js.yui_version': None, 'app.mainsite_only.canonical_url': None, 'app.maintenance_message': None, 'baselayout.careers_link.disabled': None, 'visible_render_time': None} r78860d9 --> </html>