Unable to create "kilo" environment in web ui after restore procedure (8.0)

Bug #1567535 reported by sryabin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Confirmed
Medium
Andriy Popovych
8.0.x
Fix Released
Medium
Andriy Popovych
Newton
Confirmed
Medium
Andriy Popovych

Bug Description

Steps to reproduce:
 1. Install Fuel Admin node using ISO 7.0
 2. Install fuel-octane from the source code
 3. Create backup of Fuel Admin node configuration (without any env)
 4. Install Fuel Admin node using ISO 8.0
 5. Install fuel-octane from rpm http://perestroika-repo-tst.infra.mirantis.net/mos-repos/centos/mos8.0-centos7-fuel/proposed/x86_64/Packages/fuel-octane-8.0.0-1.mos1110.noarch.rpm
 6. Restore backup
 7. Go to Web UI
 8. Create new environment with kilo release
Reproducibility:
 100%
Workaround:
  No
Impact:
  Medium
Description of the environment:
VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "8.0"
  api: "1.0"
  build_number: "570"
  build_id: "570"
  fuel-nailgun_sha: "558ca91a854cf29e395940c232911ffb851899c1"
  python-fuelclient_sha: "4f234669cfe88a9406f4e438b1e1f74f1ef484a5"
  fuel-agent_sha: "658be72c4b42d3e1436b86ac4567ab914bfb451b"
  fuel-nailgun-agent_sha: "b2bb466fd5bd92da614cdbd819d6999c510ebfb1"
  astute_sha: "b81577a5b7857c4be8748492bae1dec2fa89b446"
  fuel-library_sha: "c2a335b5b725f1b994f78d4c78723d29fa44685a"
  fuel-ostf_sha: "3bc76a63a9e7d195ff34eadc29552f4235fa6c52"
  fuel-mirror_sha: "fb45b80d7bee5899d931f926e5c9512e2b442749"
  fuelmenu_sha: "78ffc73065a9674b707c081d128cb7eea611474f"
  shotgun_sha: "63645dea384a37dde5c01d4f8905566978e5d906"
  network-checker_sha: "a43cf96cd9532f10794dce736350bf5bed350e9d"
  fuel-upgrade_sha: "616a7490ec7199f69759e97e42f9b97dfc87e85b"
  fuelmain_sha: "d605bcbabf315382d56d0ce8143458be67c53434"

Additional information:
 nailgun=# select id,name,version,state, octet_length(components_metadata) from releases where id = 2 or id = 4;
  4 | Liberty on Ubuntu 14.04 | liberty-8.0 | available | 8058
  2 | Kilo on Ubuntu 14.04 | 2015.1.0-7.0 | available | 2

sryabin (sryabin)
summary: - Unable to create "kilo" environment after restore procedure (8.0)
+ Unable to create "kilo" environment in web ui after restore procedure
+ (8.0)
Changed in fuel:
milestone: none → 8.0-updates
assignee: nobody → Fuel Python Team (fuel-python)
importance: Undecided → High
status: New → Confirmed
tags: added: area-python
Revision history for this message
sryabin (sryabin) wrote :

Looks like this happens because nailgun return 'empty' asnwer for component data request.

curl -H "X-Auth-Token: $TOKEN" http://localhost:8000/api/v1/releases/2/components?_=1461062030221
[]

[pid: 61|app: 0|req: 49/160] 10.21.35.2 () {44 vars in 1071 bytes} [Tue Apr 19 10:34:07 2016] GET /api/v1/releases/2/components?_=1461062030221 => generated 2 bytes in 43 msecs (HTTP/1.1 200) 4 headers in 185 bytes (2 switches on core 0)

no longer affects: fuel/mitaka
Changed in fuel:
assignee: Fuel UI Team (fuel-ui) → Oleg S. Gelbukh (gelbuhos)
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-octane (master)

Reviewed: https://review.openstack.org/318688
Committed: https://git.openstack.org/cgit/openstack/fuel-octane/commit/?id=f73e0c7a9942c2fe211a82dd19107e9fa351e0bd
Submitter: Jenkins
Branch: master

commit f73e0c7a9942c2fe211a82dd19107e9fa351e0bd
Author: Oleg Gelbukh <email address hidden>
Date: Thu May 19 16:54:02 2016 +0300

    Add enable-release command

    This command enables to deploy an older release of OpenStack
    with the upgraded Fuel Master node. Release to enable is
    identified by the ID. Administrator's password is required
    to access the Fuel API.

    Example:

      octane enable-release --id 1 --admin-password admin

    Partial-bug: 1567535
    Change-Id: I625db20e570b177cb46143818ac65c5d78cda0e2

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-octane (stable/8.0)

Fix proposed to branch: stable/8.0
Review: https://review.openstack.org/321590

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-octane (stable/8.0)

Reviewed: https://review.openstack.org/321590
Committed: https://git.openstack.org/cgit/openstack/fuel-octane/commit/?id=6419ca0432cd9a5dceac4eaee4f4e61999183dd4
Submitter: Jenkins
Branch: stable/8.0

commit 6419ca0432cd9a5dceac4eaee4f4e61999183dd4
Author: Oleg Gelbukh <email address hidden>
Date: Thu May 19 16:54:02 2016 +0300

    Add enable-release command

    This command enables to deploy an older release of OpenStack
    with the upgraded Fuel Master node. Release to enable is
    identified by the ID. Administrator's password is required
    to access the Fuel API.

    Example:

      octane enable-release --id 1 --admin-password admin

    Partial-bug: 1567535
    Change-Id: I625db20e570b177cb46143818ac65c5d78cda0e2
    (cherry picked from commit f73e0c7a9942c2fe211a82dd19107e9fa351e0bd)

Revision history for this message
Oleg S. Gelbukh (gelbuhos) wrote :

Added command that enables old release for deployment to fuel-octane suit. The next step to solve this bug is defining proper default value for component_metadata for older release and implementing it in DB migration scripts.

Revision history for this message
Oleg S. Gelbukh (gelbuhos) wrote :

Since UI is not critical to deploy the environment, as it can be created via CLI, changing this bug to 'Medium'.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-octane (stable/mitaka)

Fix proposed to branch: stable/mitaka
Review: https://review.openstack.org/332931

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-octane (stable/mitaka)
Download full text (40.5 KiB)

Reviewed: https://review.openstack.org/332931
Committed: https://git.openstack.org/cgit/openstack/fuel-octane/commit/?id=24f3c396612eb0c69fbf06bab3cebbb9ca829426
Submitter: Jenkins
Branch: stable/mitaka

commit b34d749f1c281dafbdbf155bd86830dc8f2a9aa2
Author: Ilya Kharin <email address hidden>
Date: Wed Jun 22 21:10:56 2016 +0300

    Support mock==1.8.0 in unit tests

    Use assert_called_once_with instead of assert_called_once that was
    introduced in 2.0.0.

    Change-Id: Ifb7699d4b552d148984961727355f0e23b487c7c

commit d60f1905143bb7576ffd670595de1c4aeafd7b34
Author: Ilya Kharin <email address hidden>
Date: Wed Jun 22 02:01:52 2016 +0300

    Allow to authorize by the predefined admin_token

    The admin_token_auth middleware is added to keystone pipelines to
    allow authorization by admin_token.

    Change-Id: Ic03150305a669fad1446436a68051fb9aa25b892

commit cc7fab59f44ffef60285f8732d798f52469b2530
Author: Ilya Kharin <email address hidden>
Date: Wed Jun 22 01:47:01 2016 +0300

    Reset default_domain_id before the keystone task

    The default_domain_id should be removed from keystone.conf after restore
    of DB and before to apply the keystone puppet task to avoid of using the
    configured domain as a default.

    Change-Id: I05a6c48532e8042496b3d8ccef53d65bf8c44653

commit e3f82399d567dbcfc1ae9a1ecbddba7bf5028fc8
Author: Ilya Kharin <email address hidden>
Date: Wed Jun 22 01:32:47 2016 +0300

    Add helper function to iterate over parameters

    The helpers.iterate_parameters function allows to iterate over lines of
    INI-like files along with a context of information, such section,
    parameter and value.

    Change-Id: I55b179118116fd5dacf100754057ea6589782dc2

commit 5ed370a4fbb3369d0f75873d205ac7f0c655f93a
Author: Ilya Kharin <email address hidden>
Date: Wed Jun 22 01:18:05 2016 +0300

    Add update_file context manager for local files

    The subprocess.update_file function provides an ability to update
    content of a local file by iterating over lines of an original file and
    forming a result content in a temporary file to replace the original
    file in the end. This function is very useful to change configuration
    files.

    Change-Id: I433a5da67887b231400dd63131799019f45c277c

commit 58f31e6c5f408630c42565ee53de6b59457bc84c
Author: Oleg Gelbukh <email address hidden>
Date: Wed Jun 22 14:34:03 2016 +0000

    Escape passwords passed to openstack client

    If special symbols are used in password for 'admin' user in
    OpenStack, octane passes them to command line client as is
    and it breaks shell.

    Properly escape the password before passing it to subprocess.

    Change-Id: Iad635aec6d5b5cc32975937e00205b7e89dc99d9
    Closes-bug: 1585960

commit 896aba1191eeb59cf85cc8be6a2ae67e08b76070
Author: Yuriy Taraday <email address hidden>
Date: Wed Jun 22 15:28:45 2016 +0300

    Add absolute_import to util/docker.py to avoid local tempfile module

    Closes-Bug: 1595156
    Change-Id: I9484efce6fa7aec1b41cf592f9e9768d85931fa7

commit 46586a62df962b2ce00b5d8a63f6fd34c920a1f4
Author: Oleg Gelbukh <email address hidden>
Date: Thu M...

tags: added: in-stable-mitaka
tags: added: on-verification
tags: removed: on-verification
tags: added: on-verification
Revision history for this message
Ekaterina Shutova (eshutova) wrote :

Verified on MOS 8.0 + MU2 updates.

Now it's possible to add Kilo release:
[root@fuel ~]# fuel release
id | name | state | operating_system | version
---|-------------------------|-------------|------------------|-------------
4 | Liberty on Ubuntu 14.04 | available | Ubuntu | liberty-8.0
3 | Liberty on CentOS 6.5 | unavailable | CentOS | liberty-8.0
2 | Kilo on Ubuntu 14.04 | manageonly | Ubuntu | 2015.1.0-7.0
1 | Kilo on CentOS 6.5 | unavailable | CentOS | 2015.1.0-7.0
[root@fuel /]# octane enable-release --id 2 --admin-password admin
2016-07-05 15:36:06 INFO requests.packages.urllib3.connectionpool Starting new HTTP connection (1): 10.109.0.2
2016-07-05 15:36:06 INFO requests.packages.urllib3.connectionpool Starting new HTTP connection (1): 10.109.0.2
2016-07-05 15:36:06 INFO requests.packages.urllib3.connectionpool Starting new HTTP connection (1): 10.109.0.2
2016-07-05 15:36:06 INFO requests.packages.urllib3.connectionpool Starting new HTTP connection (1): 10.109.0.2
After that Kilo release is available in UI.

tags: removed: on-verification
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.