can not upload network yaml for a node group created post deployment

Bug #1472651 reported by Marcin Iwinski
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
High
Fedor Zhadaev
6.1.x
Won't Fix
High
Andrew Woodward

Bug Description

It's not possible to upload new network yaml to an environment that is already deployed. This prevents expanding of existing environment with new nodegroups forcing users to pre-create artificial nodegroups and corresponding networks.

VERSION:
  feature_groups:
    - mirantis
    - experimental
  production: "docker"
  release: "6.1"
  openstack_version: "2014.2.2-6.1"
  api: "1.0"
  build_number: "521"
  build_id: "2015-06-08_06-13-27"
  nailgun_sha: "4340d55c19029394cd5610b0e0f56d6cb8cb661b"
  python-fuelclient_sha: "4fc55db0265bbf39c369df398b9dc7d6469ba13b"
  astute_sha: "7766818f079881e2dbeedb34e1f67e517ed7d479"
  fuel-library_sha: "f43c2ae1af3b493ee0e7810eab7bb7b50c986c7d"
  fuel-ostf_sha: "7c938648a246e0311d05e2372ff43ef1eb2e2761"
  fuelmain_sha: "bcc909ffc5dd5156ba54cae348b6a07c1b607b24"

Steps to reproduce:
1) create new environment with neutron+gre
fuel env create --name nodegroup-test --release 2 --nst gre

2) create new node group in this environment
fuel --env 1 nodegroup --create --name "tor1"

3) download network yaml
fuel --env 1 network --download

4) modify the file reflecting new network addressing scheme

5) upload the file
fuel --env-1 network --upload

6) add new nodes to the environment

7) deploy changes

8) once finished create a new nodegroup
fuel --env 1 nodegroup --create --name "tor2"

This operation finishes successfully

9) download new network yaml
fuel --env 1 network --download

10) modify network details of newly created nodegroup

11) upload modified yaml
fuel --env-1 network --upload

Expected behavior:
New yaml is accepted, networks associated with newly created nodegroup are updated based on information from yaml so user can expand existing environment with compute nodes in new network segments

Current behavior:
Upload fails with the following error:
403 Client Error: Forbidden (Network configuration can't be changed after, or in deploy.)

Changed in fuel:
assignee: nobody → Fuel Python Team (fuel-python)
milestone: none → 7.0
importance: Undecided → Low
status: New → Confirmed
Marcin Iwinski (iwi)
description: updated
Revision history for this message
Andrew Woodward (xarses) wrote :

Will be fixed as part of the templates changes. Untill then we can just disable the check in 6.1. This needs a backport to 6.1 that removes the check

Changed in fuel:
importance: Low → High
assignee: Fuel Python Team (fuel-python) → Ryan Moe (rmoe)
Andrew Woodward (xarses)
tags: added: feature-nodegroup
Changed in fuel:
assignee: Ryan Moe (rmoe) → Aleksey Kasatkin (alekseyk-ru)
tags: added: feature-advanced-networking
Fedor Zhadaev (fzhadaev)
Changed in fuel:
assignee: Aleksey Kasatkin (alekseyk-ru) → Fedor Zhadaev (fzhadaev)
Fedor Zhadaev (fzhadaev)
tags: added: tricky
Changed in fuel:
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-web (master)

Fix proposed to branch: master
Review: https://review.openstack.org/211632

Revision history for this message
Fedor Zhadaev (fzhadaev) wrote :

Work is still in progress.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-web (master)

Reviewed: https://review.openstack.org/211632
Committed: https://git.openstack.org/cgit/stackforge/fuel-web/commit/?id=a4a14215774084b34c4087bb13a6e2ed6bd8848f
Submitter: Jenkins
Branch: master

commit a4a14215774084b34c4087bb13a6e2ed6bd8848f
Author: Fedor Zhadaev <email address hidden>
Date: Tue Aug 11 18:28:10 2015 +0300

    Allow updating networks after deployment

    Since user can add new nodes for already deployed
    cluster he also should be able to change already created
    networks for it.
      * Extended list of states of cluster when updating of networks is enabled
      * Added check for conflicts of new IP-ranges with already allocated IPs
      * Field 'meta' of Network DB-model was made mutable
      * Fixed logic of using flag 'use_gateway' from network metadata
      * Added tests for new functionality

    Change-Id: I9cc77a63b9b6695eb0639b8dbf9e42607b60287f
    Closes-bug: #1472651

Changed in fuel:
status: In Progress → Fix Committed
tags: added: on-verification
Revision history for this message
Alexander Bochkarev (abochkarev) wrote :

Verified on 285 ISO.

Changed in fuel:
status: Fix Committed → Fix Released
tags: removed: on-verification
Revision history for this message
Vitaly Sedelnik (vsedelnik) wrote :

Andrew, please provide a change you propose to backport to 6.1. The CR https://review.openstack.org/211632 looks to be a part of template networking feature and cannot be backported.

Revision history for this message
Aleksey Kasatkin (alekseyk-ru) wrote :

https://review.openstack.org/211632 touches some parts of code which are not related to this bug (MutableDict, check for gateways). Other parts can be backported.

Revision history for this message
Vitaly Sedelnik (vsedelnik) wrote :

Won't Fix for 6.1-updates because this is pretty big change

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.