Bug 1485359 - [Docs][OSP10][osp-d] Updating the Overcloud
Summary: [Docs][OSP10][osp-d] Updating the Overcloud
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: documentation
Version: 10.0 (Newton)
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Lukas Bezdicka
QA Contact: RHOS Documentation Team
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-08-25 13:12 UTC by Robin Cernin
Modified: 2018-04-10 06:06 UTC (History)
13 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-04-10 06:06:30 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Robin Cernin 2017-08-25 13:12:55 UTC
Description of problem:

There seems to be a bug in the documentation at https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/10/html-single/upgrading_red_hat_openstack_platform/#sect-Updating_the_Overcloud

$ openstack overcloud deploy --update-plan-only \
  --templates  \
  -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
  -e /home/stack/templates/network-environment.yaml \
  -e /home/stack/templates/storage-environment.yaml \
  -e /home/stack/templates/rhel-registration/environment-rhel-registration.yaml \
  [-e <environment_file>|...]

...

 Performing a package update on all nodes using the openstack overcloud update command. For example:

$ openstack overcloud update stack -i overcloud

The Above to me seems wrong because of one reason:

1) The modified -e files (including network-environment.yaml) are not uploaded to swift if they are not placed within --templates path.

Proof:

TLDR; --templates by default points to /usr/share/openstack-tripleo-heat-templates which are eventually the files uploaded to swift and the -e are left-out because they are in /home/stack/virt/

[stack@undercloud-0 ~]$ cat overcloud_deploy.sh 
#!/bin/bash

timeout 180m openstack overcloud deploy \
--templates \
--libvirt-type kvm \
--ntp-server clock.redhat.com \
--control-scale 3 \
--control-flavor controller \
--compute-scale 2 \
--compute-flavor compute \
--ceph-storage-scale 3 \
--ceph-storage-flavor ceph \
-e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml \
-e /home/stack/virt/internal.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
-e /home/stack/virt/network/network-environment.yaml \
-e /home/stack/virt/hostnames.yml \
-e /home/stack/virt/debug.yaml \
--log-file overcloud_deployment_72.log


[stack@undercloud-0 ~]$ cp overcloud_deploy.sh overcloud_deploy-update-only.sh

[stack@undercloud-0 ~]$ vi overcloud_deploy-update-only.sh

[stack@undercloud-0 ~]$ cat overcloud_deploy-update-only.sh
#!/bin/bash

timeout 180m openstack overcloud deploy --update-plan-only \
--templates \
--libvirt-type kvm \
--ntp-server clock.redhat.com \
--control-scale 3 \
--control-flavor controller \
--compute-scale 2 \
--compute-flavor compute \
--ceph-storage-scale 3 \
--ceph-storage-flavor ceph \
-e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml \
-e /home/stack/virt/internal.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
-e /home/stack/virt/network/network-environment.yaml \
-e /home/stack/virt/hostnames.yml \
-e /home/stack/virt/debug.yaml \
--log-file overcloud_deployment_72.log

[stack@undercloud-0 ~]$ source stackrc

[stack@undercloud-0 ~]$ bash overcloud_deploy-update-only.sh
Removing the current plan files
Uploading new plan files
Started Mistral Workflow. Execution ID: c628b88d-cbab-4472-88e6-abf025d0d7de
Plan updated
Deploying templates in the directory /tmp/tripleoclient-Q5CLWw/tripleo-heat-templates
Overcloud Endpoint: http://10.0.0.107:5000/v2.0
Overcloud Deployed

[stack@undercloud-0 ~]$ swift list
ov-2veuulxl6r-0-vo2x2ai6lx3k-CephStorage-7ioohfiupxfw
ov-2veuulxl6r-1-yxxdnw5qk4xl-CephStorage-efxqwqcb6uxg
ov-2veuulxl6r-2-wwukiwnkd6gd-CephStorage-3sct3fzidaut
ov-j4ozwfzvrmq-0-arxel3trfste-Controller-udrq4oebk7w4
ov-j4ozwfzvrmq-1-cfn37ouvm5yv-Controller-3sqjwuttaviu
ov-j4ozwfzvrmq-2-i6krgjru46mx-Controller-6srk7e5ys5fr
ov-me5umuxy7q-0-onfb36nijvbg-NovaCompute-wkhsonrnm5ka
ov-me5umuxy7q-1-ounwngkmqx4o-NovaCompute-pnf6qgnfdbeg
overcloud
overcloud-swift-rings

[stack@undercloud-0 ~]$ swift download overcloud environments/network-environment.yaml
environments/network-environment.yaml [auth 0.454s, headers 0.617s, total 0.618s, 0.017 MB/s]

[stack@undercloud-0 ~]$ diff -u /home/stack/virt/network/network-environment.yaml environments/network-environment.yaml 
--- /home/stack/virt/network/network-environment.yaml	2017-08-22 04:52:43.139332733 -0400
+++ environments/network-environment.yaml	2017-08-25 05:58:45.273499704 -0400
@@ -1,43 +1,56 @@
-parameter_defaults:
-    ControlPlaneDefaultRoute: 192.168.24.1
-    ControlPlaneSubnetCidr: '24'
-    DnsServers:
-    - 10.0.0.1
-    EC2MetadataIp: 192.168.24.1
-    ExternalAllocationPools:
-    -   end: 10.0.0.149
-        start: 10.0.0.101
-    ExternalInterfaceDefaultRoute: 10.0.0.1
-    ExternalNetCidr: 10.0.0.0/24
-    ExternalNetworkVlanID: 10
-    InternalApiAllocationPools:
-    -   end: 172.17.1.200
-        start: 172.17.1.10
-    InternalApiNetCidr: 172.17.1.0/24
-    InternalApiNetworkVlanID: 20
-    NeutronBridgeMappings: datacentre:br-ex,tenant:br-isolated
-    NeutronExternalNetworkBridge: ''
-    NeutronNetworkType: vxlan
-    NeutronNetworkVLANRanges: tenant:1000:2000
-    NeutronTunnelTypes: vxlan
-    StorageAllocationPools:
-    -   end: 172.17.3.200
-        start: 172.17.3.10
-    StorageMgmtAllocationPools:
-    -   end: 172.17.4.200
-        start: 172.17.4.10
-    StorageMgmtNetCidr: 172.17.4.0/24
-    StorageMgmtNetworkVlanID: 40
-    StorageNetCidr: 172.17.3.0/24
-    StorageNetworkVlanID: 30
-    TenantAllocationPools:
-    -   end: 172.17.2.200
-        start: 172.17.2.10
-    TenantNetCidr: 172.17.2.0/24
-    TenantNetworkVlanID: 50
+#This file is an example of an environment file for defining the isolated
+#networks and related parameters.
 resource_registry:
-    OS::TripleO::BlockStorage::Net::SoftwareConfig: three-nics-vlans/cinder-storage.yaml
-    OS::TripleO::CephStorage::Net::SoftwareConfig: three-nics-vlans/ceph-storage.yaml
-    OS::TripleO::Compute::Net::SoftwareConfig: three-nics-vlans/compute.yaml
-    OS::TripleO::Controller::Net::SoftwareConfig: three-nics-vlans/controller.yaml
-    OS::TripleO::ObjectStorage::Net::SoftwareConfig: three-nics-vlans/swift-storage.yaml
+  # Network Interface templates to use (these files must exist)
+  OS::TripleO::BlockStorage::Net::SoftwareConfig:
+    ../network/config/single-nic-vlans/cinder-storage.yaml
+  OS::TripleO::Compute::Net::SoftwareConfig:
+    ../network/config/single-nic-vlans/compute.yaml
+  OS::TripleO::Controller::Net::SoftwareConfig:
+    ../network/config/single-nic-vlans/controller.yaml
+  OS::TripleO::ObjectStorage::Net::SoftwareConfig:
+    ../network/config/single-nic-vlans/swift-storage.yaml
+  OS::TripleO::CephStorage::Net::SoftwareConfig:
+    ../network/config/single-nic-vlans/ceph-storage.yaml
+
+parameter_defaults:
+  # This section is where deployment-specific configuration is done
+  # CIDR subnet mask length for provisioning network
+  ControlPlaneSubnetCidr: '24'
+  # Gateway router for the provisioning network (or Undercloud IP)
+  ControlPlaneDefaultRoute: 192.0.2.254
+  EC2MetadataIp: 192.0.2.1  # Generally the IP of the Undercloud
+  # Customize the IP subnets to match the local environment
+  InternalApiNetCidr: 172.17.0.0/24
+  StorageNetCidr: 172.18.0.0/24
+  StorageMgmtNetCidr: 172.19.0.0/24
+  TenantNetCidr: 172.16.0.0/24
+  ExternalNetCidr: 10.0.0.0/24
+  # Customize the VLAN IDs to match the local environment
+  InternalApiNetworkVlanID: 20
+  StorageNetworkVlanID: 30
+  StorageMgmtNetworkVlanID: 40
+  TenantNetworkVlanID: 50
+  ExternalNetworkVlanID: 10
+  # Customize the IP ranges on each network to use for static IPs and VIPs
+  InternalApiAllocationPools: [{'start': '172.17.0.10', 'end': '172.17.0.200'}]
+  StorageAllocationPools: [{'start': '172.18.0.10', 'end': '172.18.0.200'}]
+  StorageMgmtAllocationPools: [{'start': '172.19.0.10', 'end': '172.19.0.200'}]
+  TenantAllocationPools: [{'start': '172.16.0.10', 'end': '172.16.0.200'}]
+  # Leave room if the external network is also used for floating IPs
+  ExternalAllocationPools: [{'start': '10.0.0.10', 'end': '10.0.0.50'}]
+  # Gateway router for the external network
+  ExternalInterfaceDefaultRoute: 10.0.0.1
+  # Uncomment if using the Management Network (see network-management.yaml)
+  # ManagementNetCidr: 10.0.1.0/24
+  # ManagementAllocationPools: [{'start': '10.0.1.10', 'end', '10.0.1.50'}]
+  # Use either this parameter or ControlPlaneDefaultRoute in the NIC templates
+  # ManagementInterfaceDefaultRoute: 10.0.1.1
+  # Define the DNS servers (maximum 2) for the overcloud nodes
+  DnsServers: ["8.8.8.8","8.8.4.4"]
+  # Set to empty string to enable multiple external networks or VLANs
+  NeutronExternalNetworkBridge: "''"
+  # The tunnel type for the tenant network (vxlan or gre). Set to '' to disable tunneling.
+  NeutronTunnelTypes: 'vxlan'
+  # Customize bonding options, e.g. "mode=4 lacp_rate=1 updelay=1000 miimon=100"
+  BondInterfaceOvsOptions: "bond_mode=active-backup"


[stack@undercloud-0 ~]$ swift list overcloud
all-nodes-validation.yaml
bootstrap-config.yaml
capabilities-map.yaml
ci/README.rst
ci/common/all-nodes-validation-disabled.yaml
ci/common/net-config-multinode.yaml
ci/environments/multinode-3nodes.yaml
ci/environments/multinode-core.yaml
ci/environments/multinode.yaml
ci/environments/multinode_major_upgrade.yaml
ci/environments/scenario001-multinode.yaml
ci/environments/scenario002-multinode.yaml
ci/environments/scenario003-multinode.yaml
ci/environments/scenario004-multinode.yaml
ci/pingtests/scenario001-multinode.yaml
ci/pingtests/scenario002-multinode.yaml
ci/pingtests/scenario003-multinode.yaml
ci/pingtests/tenantvm_floatingip.yaml
default_passwords.yaml
deployed-server/README.rst
deployed-server/ctlplane-port.yaml
deployed-server/deployed-server-config.yaml
deployed-server/deployed-server.yaml
deployed-server/scripts/get-occ-config.sh
docker/README-containers.md
docker/copy-etc.sh
docker/copy-json.py
docker/firstboot/install_docker_agents.yaml
docker/firstboot/start_docker_agents.sh
docker/post.j2.yaml
docker/post.yaml
docker/services/README.rst
docker/services/neutron-ovs-agent.yaml
docker/services/nova-compute.yaml
docker/services/nova-libvirt.yaml
docker/services/services.yaml
environments/README.md
environments/ceph-radosgw.yaml
environments/cinder-backup.yaml
environments/cinder-dellps-config.yaml
environments/cinder-dellsc-config.yaml
environments/cinder-eqlx-config.yaml
environments/cinder-netapp-config.yaml
environments/config-debug.yaml
environments/debug.yaml
environments/deployed-server-environment.yaml
environments/deployed-server-noop-ctlplane.yaml
environments/docker-network-isolation.yaml
environments/docker-network.yaml
environments/docker.yaml
environments/enable-swap-partition.yaml
environments/enable-swap.yaml
environments/enable-tls.yaml
environments/external-loadbalancer-vip-v6.yaml
environments/external-loadbalancer-vip.yaml
environments/hyperconverged-ceph.yaml
environments/inject-trust-anchor-hiera.yaml
environments/inject-trust-anchor.yaml
environments/ips-from-pool-all.yaml
environments/ips-from-pool.yaml
environments/logging-environment.yaml
environments/low-memory-usage.yaml
environments/major-upgrade-aodh-migration.yaml
environments/major-upgrade-ceilometer-wsgi-mitaka-newton.yaml
environments/major-upgrade-pacemaker-converge.yaml
environments/major-upgrade-pacemaker-init.yaml
environments/major-upgrade-pacemaker.yaml
environments/major-upgrade-remove-sahara.yaml
environments/manila-cephfsnative-config.yaml
environments/manila-generic-config.yaml
environments/manila-netapp-config.yaml
environments/mongodb-nojournal.yaml
environments/monitoring-environment.yaml
environments/net-bond-with-vlans-no-external.yaml
environments/net-bond-with-vlans-v6.yaml
environments/net-bond-with-vlans.yaml
environments/net-multiple-nics-v6.yaml
environments/net-multiple-nics.yaml
environments/net-single-nic-linux-bridge-with-vlans.yaml
environments/net-single-nic-with-vlans-no-external.yaml
environments/net-single-nic-with-vlans-v6.yaml
environments/net-single-nic-with-vlans.yaml
environments/network-environment.yaml
environments/network-isolation-no-tunneling.yaml
environments/network-isolation-v6.yaml
environments/network-isolation.yaml
environments/network-management-v6.yaml
environments/network-management.yaml
environments/neutron-midonet.yaml
environments/neutron-ml2-bigswitch.yaml
environments/neutron-ml2-cisco-n1kv.yaml
environments/neutron-ml2-cisco-nexus-ucsm.yaml
environments/neutron-ml2-ovn.yaml
environments/neutron-nuage-config.yaml
environments/neutron-opencontrail.yaml
environments/neutron-opendaylight-l3.yaml
environments/neutron-opendaylight.yaml
environments/neutron-ovs-dpdk.yaml
environments/neutron-ovs-dvr.yaml
environments/neutron-plumgrid.yaml
environments/neutron-sriov.yaml
environments/nova-nuage-config.yaml
environments/overcloud-steps.yaml
environments/puppet-ceph-devel.yaml
environments/puppet-ceph-external.yaml
environments/puppet-pacemaker-no-restart.yaml
environments/puppet-pacemaker.yaml
environments/puppet-tenant-vlan.yaml
environments/services/ironic.yaml
environments/services/mistral.yaml
environments/services/sahara.yaml
environments/sshd-banner.yaml
environments/storage-environment.yaml
environments/tls-endpoints-public-dns.yaml
environments/tls-endpoints-public-ip.yaml
environments/updates/README.md
environments/updates/update-from-keystone-admin-internal-api.yaml
environments/updates/update-from-overcloud-compute-hostnames.yaml
environments/updates/update-from-publicvip-on-ctlplane.yaml
environments/use-dns-for-vips.yaml
extraconfig/all_nodes/mac_hostname.j2.yaml
extraconfig/all_nodes/mac_hostname.yaml
extraconfig/all_nodes/random_string.j2.yaml
extraconfig/all_nodes/random_string.yaml
extraconfig/all_nodes/swap-partition.j2.yaml
extraconfig/all_nodes/swap-partition.yaml
extraconfig/all_nodes/swap.j2.yaml
extraconfig/all_nodes/swap.yaml
extraconfig/post_deploy/README
extraconfig/post_deploy/default.yaml
extraconfig/post_deploy/example.yaml
extraconfig/post_deploy/example_run_on_update.yaml
extraconfig/pre_deploy/rhel-registration/environment-rhel-registration.yaml
extraconfig/pre_deploy/rhel-registration/rhel-registration-resource-registry.yaml
extraconfig/pre_deploy/rhel-registration/rhel-registration.yaml
extraconfig/pre_deploy/rhel-registration/scripts/rhel-registration
extraconfig/pre_deploy/rhel-registration/scripts/rhel-unregistration
extraconfig/tasks/aodh_data_migration.sh
extraconfig/tasks/major_upgrade_block_storage.sh
extraconfig/tasks/major_upgrade_ceilometer_wsgi_mitaka_newton.yaml
extraconfig/tasks/major_upgrade_ceph_mon.sh
extraconfig/tasks/major_upgrade_ceph_storage.sh
extraconfig/tasks/major_upgrade_check.sh
extraconfig/tasks/major_upgrade_compute.sh
extraconfig/tasks/major_upgrade_controller_pacemaker_1.sh
extraconfig/tasks/major_upgrade_controller_pacemaker_2.sh
extraconfig/tasks/major_upgrade_controller_pacemaker_3.sh
extraconfig/tasks/major_upgrade_controller_pacemaker_4.sh
extraconfig/tasks/major_upgrade_controller_pacemaker_5.sh
extraconfig/tasks/major_upgrade_controller_pacemaker_6.sh
extraconfig/tasks/major_upgrade_object_storage.sh
extraconfig/tasks/major_upgrade_pacemaker.yaml
extraconfig/tasks/major_upgrade_pacemaker_init.j2.yaml
extraconfig/tasks/major_upgrade_pacemaker_init.yaml
extraconfig/tasks/major_upgrade_pacemaker_migrations.sh
extraconfig/tasks/mitaka_to_newton_aodh_data_migration.yaml
extraconfig/tasks/mitaka_to_newton_ceilometer_wsgi_upgrade.pp
extraconfig/tasks/pacemaker_common_functions.sh
extraconfig/tasks/pacemaker_maintenance_mode.sh
extraconfig/tasks/pacemaker_resource_restart.sh
extraconfig/tasks/post_puppet_pacemaker.yaml
extraconfig/tasks/post_puppet_pacemaker_restart.yaml
extraconfig/tasks/pre_puppet_pacemaker.yaml
extraconfig/tasks/ssh/host_public_key.yaml
extraconfig/tasks/ssh/known_hosts_config.yaml
extraconfig/tasks/swift-ring-deploy.yaml
extraconfig/tasks/swift-ring-update.yaml
extraconfig/tasks/yum_update.sh
extraconfig/tasks/yum_update.yaml
extraconfig/tasks/yum_update_noop.yaml
firstboot/os-net-config-mappings.yaml
firstboot/userdata_default.yaml
firstboot/userdata_dev_rsync.yaml
firstboot/userdata_example.yaml
firstboot/userdata_heat_admin.yaml
hosts-config.yaml
j2_excludes.yaml
net-config-bond.yaml
net-config-bridge.yaml
net-config-linux-bridge.yaml
net-config-noop.yaml
net-config-static-bridge-with-external-dhcp.yaml
net-config-static-bridge.yaml
net-config-static.yaml
network/config/bond-with-vlans/README.md
network/config/bond-with-vlans/ceph-storage.yaml
network/config/bond-with-vlans/cinder-storage.yaml
network/config/bond-with-vlans/compute-dpdk.yaml
network/config/bond-with-vlans/compute.yaml
network/config/bond-with-vlans/controller-no-external.yaml
network/config/bond-with-vlans/controller-v6.yaml
network/config/bond-with-vlans/controller.yaml
network/config/bond-with-vlans/swift-storage.yaml
network/config/multiple-nics/README.md
network/config/multiple-nics/ceph-storage.yaml
network/config/multiple-nics/cinder-storage.yaml
network/config/multiple-nics/compute.yaml
network/config/multiple-nics/controller-v6.yaml
network/config/multiple-nics/controller.yaml
network/config/multiple-nics/swift-storage.yaml
network/config/single-nic-linux-bridge-vlans/README.md
network/config/single-nic-linux-bridge-vlans/ceph-storage.yaml
network/config/single-nic-linux-bridge-vlans/cinder-storage.yaml
network/config/single-nic-linux-bridge-vlans/compute.yaml
network/config/single-nic-linux-bridge-vlans/controller-v6.yaml
network/config/single-nic-linux-bridge-vlans/controller.yaml
network/config/single-nic-linux-bridge-vlans/swift-storage.yaml
network/config/single-nic-vlans/README.md
network/config/single-nic-vlans/ceph-storage.yaml
network/config/single-nic-vlans/cinder-storage.yaml
network/config/single-nic-vlans/compute.yaml
network/config/single-nic-vlans/controller-no-external.yaml
network/config/single-nic-vlans/controller-v6.yaml
network/config/single-nic-vlans/controller.yaml
network/config/single-nic-vlans/swift-storage.yaml
network/endpoints/build_endpoint_map.py
network/endpoints/endpoint_data.yaml
network/endpoints/endpoint_map.yaml
network/external.yaml
network/external_v6.yaml
network/internal_api.yaml
network/internal_api_v6.yaml
network/management.yaml
network/management_v6.yaml
network/networks.yaml
network/ports/ctlplane_vip.yaml
network/ports/external.yaml
network/ports/external_from_pool.yaml
network/ports/external_from_pool_v6.yaml
network/ports/external_v6.yaml
network/ports/from_service.yaml
network/ports/from_service_v6.yaml
network/ports/internal_api.yaml
network/ports/internal_api_from_pool.yaml
network/ports/internal_api_from_pool_v6.yaml
network/ports/internal_api_v6.yaml
network/ports/management.yaml
network/ports/management_from_pool.yaml
network/ports/management_from_pool_v6.yaml
network/ports/management_v6.yaml
network/ports/net_ip_list_map.yaml
network/ports/net_ip_map.yaml
network/ports/net_vip_map_external.yaml
network/ports/net_vip_map_external_v6.yaml
network/ports/noop.yaml
network/ports/storage.yaml
network/ports/storage_from_pool.yaml
network/ports/storage_from_pool_v6.yaml
network/ports/storage_mgmt.yaml
network/ports/storage_mgmt_from_pool.yaml
network/ports/storage_mgmt_from_pool_v6.yaml
network/ports/storage_mgmt_v6.yaml
network/ports/storage_v6.yaml
network/ports/tenant.yaml
network/ports/tenant_from_pool.yaml
network/ports/tenant_from_pool_v6.yaml
network/ports/tenant_v6.yaml
network/ports/vip.yaml
network/ports/vip_v6.yaml
network/service_net_map.j2.yaml
network/service_net_map.yaml
network/storage.yaml
network/storage_mgmt.yaml
network/storage_mgmt_v6.yaml
network/storage_v6.yaml
network/tenant.yaml
network/tenant_v6.yaml
overcloud-resource-registry-puppet.j2.yaml
overcloud-resource-registry-puppet.yaml
overcloud.j2.yaml
overcloud.yaml
puppet/all-nodes-config.yaml
puppet/blockstorage-config.yaml
puppet/blockstorage-role.yaml
puppet/cephstorage-config.yaml
puppet/cephstorage-role.yaml
puppet/compute-config.yaml
puppet/compute-role.yaml
puppet/config.role.j2.yaml
puppet/controller-config-pacemaker.yaml
puppet/controller-config.yaml
puppet/controller-role.yaml
puppet/deploy-artifacts.sh
puppet/deploy-artifacts.yaml
puppet/extraconfig/all_nodes/neutron-midonet-all-nodes.yaml
puppet/extraconfig/all_nodes/neutron-ml2-cisco-nexus-ucsm.j2.yaml
puppet/extraconfig/all_nodes/neutron-ml2-cisco-nexus-ucsm.yaml
puppet/extraconfig/pre_deploy/README
puppet/extraconfig/pre_deploy/compute/neutron-ml2-bigswitch.yaml
puppet/extraconfig/pre_deploy/compute/neutron-opencontrail.yaml
puppet/extraconfig/pre_deploy/compute/nova-nuage.yaml
puppet/extraconfig/pre_deploy/controller/cinder-eqlx.yaml
puppet/extraconfig/pre_deploy/controller/cinder-netapp.yaml
puppet/extraconfig/pre_deploy/controller/multiple.yaml
puppet/extraconfig/pre_deploy/controller/neutron-ml2-bigswitch.yaml
puppet/extraconfig/pre_deploy/controller/neutron-ml2-cisco-n1kv.yaml
puppet/extraconfig/pre_deploy/default.yaml
puppet/extraconfig/pre_deploy/per_node.yaml
puppet/extraconfig/tls/ca-inject.yaml
puppet/extraconfig/tls/tls-cert-inject.yaml
puppet/manifests/overcloud_controller_pacemaker.pp
puppet/manifests/overcloud_role.pp
puppet/objectstorage-config.yaml
puppet/objectstorage-role.yaml
puppet/post.j2.yaml
puppet/post.yaml
puppet/role.role.j2.yaml
puppet/services/README.rst
puppet/services/aodh-api.yaml
puppet/services/aodh-base.yaml
puppet/services/aodh-evaluator.yaml
puppet/services/aodh-listener.yaml
puppet/services/aodh-notifier.yaml
puppet/services/apache.yaml
puppet/services/ca-certs.yaml
puppet/services/ceilometer-agent-central.yaml
puppet/services/ceilometer-agent-compute.yaml
puppet/services/ceilometer-agent-notification.yaml
puppet/services/ceilometer-api.yaml
puppet/services/ceilometer-base.yaml
puppet/services/ceilometer-collector.yaml
puppet/services/ceilometer-expirer.yaml
puppet/services/ceph-base.yaml
puppet/services/ceph-client.yaml
puppet/services/ceph-external.yaml
puppet/services/ceph-mon.yaml
puppet/services/ceph-osd.yaml
puppet/services/ceph-rgw.yaml
puppet/services/cinder-api.yaml
puppet/services/cinder-backend-dellps.yaml
puppet/services/cinder-backend-dellsc.yaml
puppet/services/cinder-backup.yaml
puppet/services/cinder-base.yaml
puppet/services/cinder-scheduler.yaml
puppet/services/cinder-volume.yaml
puppet/services/database/mongodb-base.yaml
puppet/services/database/mongodb.yaml
puppet/services/database/mysql.yaml
puppet/services/database/redis-base.yaml
puppet/services/database/redis.yaml
puppet/services/glance-api.yaml
puppet/services/glance-base.yaml
puppet/services/glance-registry.yaml
puppet/services/gnocchi-api.yaml
puppet/services/gnocchi-base.yaml
puppet/services/gnocchi-metricd.yaml
puppet/services/gnocchi-statsd.yaml
puppet/services/haproxy.yaml
puppet/services/heat-api-cfn.yaml
puppet/services/heat-api-cloudwatch.yaml
puppet/services/heat-api.yaml
puppet/services/heat-base.yaml
puppet/services/heat-engine.yaml
puppet/services/horizon.yaml
puppet/services/ironic-api.yaml
puppet/services/ironic-base.yaml
puppet/services/ironic-conductor.yaml
puppet/services/keepalived.yaml
puppet/services/kernel.yaml
puppet/services/keystone.yaml
puppet/services/logging/fluentd-base.yaml
puppet/services/logging/fluentd-client.yaml
puppet/services/logging/fluentd-config.yaml
puppet/services/manila-api.yaml
puppet/services/manila-backend-cephfs.yaml
puppet/services/manila-backend-generic.yaml
puppet/services/manila-backend-netapp.yaml
puppet/services/manila-base.yaml
puppet/services/manila-scheduler.yaml
puppet/services/manila-share.yaml
puppet/services/memcached.yaml
puppet/services/monitoring/sensu-base.yaml
puppet/services/monitoring/sensu-client.yaml
puppet/services/network/contrail-analytics.yaml
puppet/services/network/contrail-base.yaml
puppet/services/network/contrail-config.yaml
puppet/services/network/contrail-control.yaml
puppet/services/network/contrail-database.yaml
puppet/services/network/contrail-webui.yaml
puppet/services/neutron-api.yaml
puppet/services/neutron-base.yaml
puppet/services/neutron-bigswitch-agent.yaml
puppet/services/neutron-compute-plugin-midonet.yaml
puppet/services/neutron-compute-plugin-nuage.yaml
puppet/services/neutron-compute-plugin-opencontrail.yaml
puppet/services/neutron-compute-plugin-ovn.yaml
puppet/services/neutron-compute-plugin-plumgrid.yaml
puppet/services/neutron-dhcp.yaml
puppet/services/neutron-l3-compute-dvr.yaml
puppet/services/neutron-l3.yaml
puppet/services/neutron-metadata.yaml
puppet/services/neutron-midonet.yaml
puppet/services/neutron-ovs-agent.yaml
puppet/services/neutron-ovs-dpdk-agent.yaml
puppet/services/neutron-plugin-ml2-ovn.yaml
puppet/services/neutron-plugin-ml2.yaml
puppet/services/neutron-plugin-nuage.yaml
puppet/services/neutron-plugin-opencontrail.yaml
puppet/services/neutron-plugin-plumgrid.yaml
puppet/services/neutron-sriov-agent.yaml
puppet/services/nova-api.yaml
puppet/services/nova-base.yaml
puppet/services/nova-compute.yaml
puppet/services/nova-conductor.yaml
puppet/services/nova-consoleauth.yaml
puppet/services/nova-ironic.yaml
puppet/services/nova-libvirt.yaml
puppet/services/nova-metadata.yaml
puppet/services/nova-scheduler.yaml
puppet/services/nova-vnc-proxy.yaml
puppet/services/opendaylight-api.yaml
puppet/services/opendaylight-ovs.yaml
puppet/services/pacemaker.yaml
puppet/services/pacemaker/ceilometer-agent-central.yaml
puppet/services/pacemaker/ceilometer-agent-notification.yaml
puppet/services/pacemaker/ceilometer-api.yaml
puppet/services/pacemaker/ceilometer-collector.yaml
puppet/services/pacemaker/cinder-api.yaml
puppet/services/pacemaker/cinder-backup.yaml
puppet/services/pacemaker/cinder-scheduler.yaml
puppet/services/pacemaker/cinder-volume.yaml
puppet/services/pacemaker/core.yaml
puppet/services/pacemaker/database/mongodb.yaml
puppet/services/pacemaker/database/mysql.yaml
puppet/services/pacemaker/database/redis.yaml
puppet/services/pacemaker/glance-api.yaml
puppet/services/pacemaker/glance-registry.yaml
puppet/services/pacemaker/gnocchi-api.yaml
puppet/services/pacemaker/gnocchi-metricd.yaml
puppet/services/pacemaker/gnocchi-statsd.yaml
puppet/services/pacemaker/haproxy.yaml
puppet/services/pacemaker/heat-api-cfn.yaml
puppet/services/pacemaker/heat-api-cloudwatch.yaml
puppet/services/pacemaker/heat-api.yaml
puppet/services/pacemaker/heat-engine.yaml
puppet/services/pacemaker/horizon.yaml
puppet/services/pacemaker/keystone.yaml
puppet/services/pacemaker/manila-share.yaml
puppet/services/pacemaker/memcached.yaml
puppet/services/pacemaker/neutron-dhcp.yaml
puppet/services/pacemaker/neutron-l3.yaml
puppet/services/pacemaker/neutron-metadata.yaml
puppet/services/pacemaker/neutron-midonet.yaml
puppet/services/pacemaker/neutron-ovs-agent.yaml
puppet/services/pacemaker/neutron-plugin-ml2.yaml
puppet/services/pacemaker/neutron-plugin-nuage.yaml
puppet/services/pacemaker/neutron-plugin-opencontrail.yaml
puppet/services/pacemaker/neutron-plugin-plumgrid.yaml
puppet/services/pacemaker/neutron-server.yaml
puppet/services/pacemaker/nova-api.yaml
puppet/services/pacemaker/nova-conductor.yaml
puppet/services/pacemaker/nova-consoleauth.yaml
puppet/services/pacemaker/nova-scheduler.yaml
puppet/services/pacemaker/nova-vnc-proxy.yaml
puppet/services/pacemaker/rabbitmq.yaml
puppet/services/pacemaker/sahara-api.yaml
puppet/services/pacemaker/sahara-engine.yaml
puppet/services/rabbitmq.yaml
puppet/services/sahara-api.yaml
puppet/services/sahara-base.yaml
puppet/services/sahara-engine.yaml
puppet/services/services.yaml
puppet/services/snmp.yaml
puppet/services/sshd.yaml
puppet/services/swift-base.yaml
puppet/services/swift-proxy.yaml
puppet/services/swift-ringbuilder.yaml
puppet/services/swift-storage.yaml
puppet/services/time/ntp.yaml
puppet/services/time/timezone.yaml
puppet/services/tripleo-firewall.yaml
puppet/services/tripleo-packages.yaml
puppet/services/vip-hosts.yaml
roles_data.yaml
user-environment.yaml
user-files/home/stack/virt/network/three-nics-vlans/ceph-storage.yaml
user-files/home/stack/virt/network/three-nics-vlans/cinder-storage.yaml
user-files/home/stack/virt/network/three-nics-vlans/compute.yaml
user-files/home/stack/virt/network/three-nics-vlans/controller.yaml
user-files/home/stack/virt/network/three-nics-vlans/swift-storage.yaml
validation-scripts/all-nodes.sh
[stack@undercloud-0 ~]$ swift list overcloud | grep network-environment.yaml
environments/network-environment.yaml


When I have created copy of the templates in templates directory and included it in --templates the files within -e are uploaded and reflect my changes.

[stack@undercloud-0 ~]$ cp -R /usr/share/openstack-tripleo-heat-templates/* templates/

[stack@undercloud-0 ~]$ cp virt/network/network-environment.yaml ~/templates/environments/network-environment.yaml 

[stack@undercloud-0 ~]$ cat overcloud_deploy-update-only.sh
#!/bin/bash

timeout 180m openstack overcloud deploy --update-plan-only \
--templates /home/stack/templates \
--libvirt-type kvm \
--ntp-server clock.redhat.com \
--control-scale 3 \
--control-flavor controller \
--compute-scale 2 \
--compute-flavor compute \
--ceph-storage-scale 3 \
--ceph-storage-flavor ceph \
-e /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml \
-e /home/stack/templates/internal.yaml \
-e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \
-e /home/stack/templates/network/network-environment.yaml \
-e /home/stack/templates/hostnames.yml \
-e /home/stack/templates/debug.yaml \
--log-file overcloud_deployment_72.log


[stack@undercloud-0 ~]$ bash overcloud_deploy-update-only.sh 
Removing the current plan files
Uploading new plan files
Started Mistral Workflow. Execution ID: 90b3ce7a-fd93-464b-b644-8cf1b8d6c0d1
Plan updated
Deploying templates in the directory /tmp/tripleoclient-t9Fceo/tripleo-heat-templates
Overcloud Endpoint: http://10.0.0.107:5000/v2.0
Overcloud Deployed

[stack@undercloud-0 ~]$ swift list overcloud | grep network-environment.yaml
environments/network-environment.yaml
network/network-environment.yaml
network/network-environment.yaml.orig

[stack@undercloud-0 ~]$ swift download overcloud environments/network-environment.yaml
environments/network-environment.yaml [auth 0.501s, headers 0.651s, total 0.652s, 0.011 MB/s]
         
[stack@undercloud-0 ~]$ diff -u ~/virt/network/network-environment.yaml environments/network-environment.yaml


Version-Release number of selected component (if applicable):

[stack@undercloud-0 ~]$ rpm -qa | egrep "tripleo|heat"
openstack-heat-common-7.0.5-1.el7ost.noarch
openstack-tripleo-image-elements-5.3.0-2.el7ost.noarch
python-tripleoclient-5.4.2-2.el7ost.noarch
openstack-tripleo-0.0.8-0.2.4de13b3git.el7ost.noarch
openstack-heat-api-7.0.5-1.el7ost.noarch
openstack-tripleo-ui-1.2.0-1.el7ost.noarch
python-heat-agent-0-0.12.1e6015dgit.el7ost.noarch
openstack-tripleo-heat-templates-5.3.0-4.el7ost.noarch
puppet-tripleo-5.6.1-1.el7ost.noarch
puppet-heat-9.5.0-1.el7ost.noarch
openstack-tripleo-puppet-elements-5.3.0-1.el7ost.noarch
openstack-heat-api-cfn-7.0.5-1.el7ost.noarch
python-heatclient-1.5.2-1.el7ost.noarch
openstack-heat-engine-7.0.5-1.el7ost.noarch
heat-cfntools-1.3.0-2.el7ost.noarch
openstack-tripleo-validations-5.1.2-1.el7ost.noarch
openstack-tripleo-common-5.4.2-3.el7ost.noarch
openstack-heat-templates-0-0.12.1e6015dgit.el7ost.noarch


How reproducible:

See above steps to Reproduce.

Comment 1 Lukas Bezdicka 2017-08-28 13:24:25 UTC
Hi,
update-plan only changes the templates in the swift but it also splits for user provided env and what templates provided. Your changes should be in user-files and user-environment. Also minor update does not apply any change in networking.

Comment 2 Robin Cernin 2017-09-02 12:28:18 UTC
network-environment is uploaded to user-files only if its in path of --templates.

Comment 3 Robin Cernin 2017-09-02 12:30:41 UTC
I really don't think the -e are not accounted to swift if are out of --templates, but if you say that minor updates is not doing any network changes that's ok.

Comment 4 Lucy Bopf 2017-11-24 04:50:12 UTC
Lukas,

Is there a requirement for documentation updates here? I'm unsure why the bug is assigned to you; should it be moved to a different component?

Comment 5 Lukas Bezdicka 2018-04-06 11:56:46 UTC
I'm sorry for very late reply - no, there shouldn't be any update to docs, the files in swift are supposed to be hidden from the user. The extra environment the user is uploading - in this case network-environment - is placed into user-environment.yaml and user-files. I think we should just close this as not a bug.

Comment 6 Lucy Bopf 2018-04-10 06:06:30 UTC
Thanks for confirming, Lukas.

I'm closing the bug as you suggest.


Note You need to log in before you can comment on or make changes to this bug.