instack-undercloud is no longer in use by the TripleO project. Removing
the code to avoid confusion. Stable branches will continue to be
maintained for their life however no new features should be added.
Change-Id: I63a813c7c1ffd30ca30017133d31a497b77a9a4d
Blueprint: remove-instack-undercloud
We want to turn this on for Queens, and we might as well do it early
in the cycle so we have a chance to address any issues that may come
up.
We also want to migrate any existing stacks to use the convergence
engine to reduce the support matrix. This patch includes a post-config
step do so.
Change-Id: I96952f78cb95252d2bc6c0df64561d07df51dc5a
This can be then be used in places that require a IP
address to be wrapped in square brackets if it is IPv6.
Change-Id: Idb437dee5ddec0a015c68847b9514f7bbb3f70a1
This is needed for upgrade. In the future we may support custom
resource classes, but let's at least make sure we have one.
Depends-On: I027ee4ccf5db51729f036aceab047f2b65d0b368
Change-Id: I5d0ef61e1527927882802f01c4f5c82b1f495cdd
Closes-Bug: #1708653
In order to improve the user experiance, we should validate that the
provided local_interface actually exists prior to trying to configure
the undercloud with it. If net_config_override is not used and the
local_interface does not exist, an error will be returned to the
user early on in the installation process. Additionally if the user
does not have an undercloud.conf, a warning is printed to show that
the defaults will be used.
Change-Id: Ia2a7e7fc916f6d2b62e212cb42641494b88d6d17
Closes-Bug: #1709177
This is a manual sync of our requirements from g-r. I believe the
bot is not proposing updates because we had an entry in
requirements.txt that was not in g-r, so the update script was
failing. Once this merges we should get automated updates again.
Change-Id: I7daf819ccc965d10b80929ae80f6606ed3511661
We don't really need to use setup-neutron from os-cloud-config to create
the ctlplane network and subnet. As simple as they are, it's more
straightforward and clear to just use neutron commands directly.
This removes all depedencies on os-cloud-config from instack-undercloud
so we can remove that requirement from requirements.txt (and moves us
closer to deprecating that entire repo).
Change-Id: I88a4359884429f85f1ef356d50abb0bf664a5540
TL;DR:
To support upgrades, we need to make sure _member_ role is still
assigned to the admin user if that role assignment existed before
the undercloud was upgraded.
Background:
Until fairly recently, keystone created a _member_ role and this was
applied to all users, including the admin role used for overcloud
deployments.
This creates a problem on upgrade however, because puppet isn't
aware of any existing role assignments, hence it deletes them,
and heat contains a reference to a keystone trust, which expects
to delegate this role (by default all roles are delegated, so
on an older deployment the trust will delegate _member_ and admin).
The _member_ role is not needed anymore by new deployments, and is
no longer created, so we need to detect the existence of this legacy
role, and apply it only for environments where it exists - we can
safely ignore connection errors trying to connect to keystone and
read the roles during an intial deployment, because no new deployments
should ever contain the _member_ role, it's only an upgrade issue.
This patch is a Puppet collector, that will collect the admin role
assignement resource, and makes sure we assign both admin and _member_
based on a flag set by undercloud.py that is passed via hiera.
Closes-Bug: #1571708
Co-Authored-By: Steven Hardy <shardy@redhat.com>
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com>
Change-Id: I06ccdeb01e0aa69754855a0dcae3087725399583
Add default plan creation to undercloud installation. Default deployment plan,
consisting of files located in /usr/share/openstack-tripleo-heat-templates,
is created at the end of undercloud installation.
Partially implements: blueprint instack-undercloud-ui-config
Change-Id: Idcabe3a4f216e185e82130a457d9b1fe85cdd387
Further reduces reliance on elements and moves more logic to puppet.
With this patch, the list of elements being used in the undercloud is
quite small and much easier to reason about logically.
This patch depends on a packaging update for instack-undercloud:
https://review.rdoproject.org/r/#/c/1074/
blueprint undercloud-elements
Change-Id: If6036e9eb68e0af1e1989918d310c8ddf57b9622
Moves the python code in 02-undercloud-stack-heat-metadata to be part of
the instack_undercloud python module instead of an element.
This depends on adding jq and pystache as package dependencies for
instack-undercloud:
https://review.rdoproject.org/r/#/c/1074/
blueprint undercloud-elements
Change-Id: I087bbc44080d94206f1489a1ecc7ccbb777bde3c
Pulls in the validation portion of
https://github.com/cybertron/tripleo-scripts/blob/master/undercloud_wizard.py
and runs it on the undercloud configuration before starting
installation. This should catch a number of common mistakes when
configuring the undercloud, including addresses that do not fall
in the specified CIDR and misconfigured DHCP ranges.
Since we've now added a number of similar validation steps, I also
went ahead and combined them all into one call to clean up the
install() function a bit.
The wizard UI will be coming in a follow-up commit.
Change-Id: I08a2a8e2ea6bb8fcf92bba168720d5c4cafe1d18
It turns out that it is possible to install the undercloud on a
2 GB system, but it will cause all kinds of weird problems and not
perform well. Let's be explicit about our requirements and refuse
to install in such an environment.
Change-Id: I7aae41b57cb82e1d776b200ff56fd90756eff19e
-Very incomplete testing right now
-Puts the password and stackrc files in the current user's home
directory during the install. Given that they now have secure
permissions and we recommend doing that anyway, I think it's fine,
but it is a non-trivial change in behavior.
This was done because it's awkward to read a root-owned file from
a Python process running as a regular user.
-Uses oslo.config instead of the bash-style answers file. A sample
conf file created by the oslo.config generator is included (for
now, although we may want to generate that dynamically at some
point). Backwards compatibility with existing answers files is
maintained for now, but is deprecated.
-Hard-codes the image path in instack-test-overcloud to . It's
difficult to extract the value from the conf file in bash (unless
they overrode the default, there's nothing for ConfigParser to read),
and since it's just a simple sanity test script I think that's okay,
at least for now.
Change-Id: I09270997dea7fdad2b40dfb303967ff425b55a9b