Commit Graph

162 Commits (701c146bd748bcf9c0228cea593539a3521661ca)

Author SHA1 Message Date
Steve Baker 51b0cc4c13 New command "overcloud node extract provisioned"
As a first step to upgrade to a nova-less undercloud, the baremetal
deployment yaml which represents the current overcloud needs to be
built.

This command builds the yaml for an existing overcloud using the
heat stack output AnsibleHostVarsMap and a list of all baremetal
nodes. When the generated yaml is used to run "openstack overcloud
node provision" no changes will be made to any nodes.

Blueprint: nova-less-deploy
Change-Id: I47c885697bf36b999fd0ad9bd99a23990440ed62
2020-05-06 20:29:30 +00:00
Zuul a8d2ba9fbe Merge "Cleanup py27 support" 2020-04-28 18:49:01 +00:00
Rabi Mishra 7cef22cc68 Remove openstack overcloud failures command
This was added to fetch the ansible errors via mistral api. We had
long removed the json_error.py callback plugin that used to write
ansible-errors.json, when moving ansible code to tripleo-ansible
repo and the command is useless now. Also, users won't need it as
they can get the errors from ansible.log.

Change-Id: Iceb4c282f3ae9fcb2c3836263ba66f5792e42334
2020-04-16 11:41:57 +05:30
Andreas Jaeger 655e0178a1 Cleanup py27 support
Make a few cleanups:
- Remove python 2.7 stanza from setup.py
- Add requires on python >= 3.6 to setup.cfg so that pypi and pip
  know about the requirement
- Remove obsolete sections from setup.cfg:
  * Wheel is not needed for python 3 only repo
  * Some other sections are obsolete
- Update classifiers
- Update requirements, no need for python_version anymore

Change-Id: I45b5b8582b67b39823a6e21221c491842b390b96
2020-04-04 17:19:56 +02:00
Zuul f88603ed1a Merge "Remove overcloud remote execute command" 2020-04-04 00:26:58 +00:00
Rabi Mishra bbf504006c Remove overcloud remote execute command
This inteface is probably not used and does not work by default as
we've disabled os-collect-config on overcloud nodes since rocky.

This uses heat software deployments and swift temp url based signaling
which does not go with config-download and ansible based roadmap without
mistral and swift.

If required users/operators can write custom playbooks to do additional
configuration required on nodes.

Change-Id: I931bae6953b00290c006a02cc24c6c9718d5d6ac
2020-04-02 11:53:19 +05:30
Daniel Bengtsson 5600af1012 Stop testing python 2 in tox.
Remove python 2 from envlist parameter. Check the link:

https://etherpad.openstack.org/p/drop-python2-support
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

The plan is drop the python 2 support from OpenStack in Ussuri release.
Move the basepython parameter.

Change-Id: I52b974f7c701c8a46001a29bdf5f7b077f898cba
2020-04-02 03:16:24 +00:00
Steve Baker 708afba0b1 Switch to ansible for overcloud node (un)provision
Change-Id: Iaa10d3d3e5f9facd6b03ba0e55f90f532d691abd
Story: 2007212
Task: 38457
2020-03-26 20:04:09 +00:00
Zuul ed75570496 Merge "Start moving the import CLI command to the Ansible implementation" 2020-03-07 02:50:26 +00:00
Zuul 88986bd7d3 Merge "TripleO Validations Logging CLI Introduction" 2020-02-29 02:41:36 +00:00
Zuul e4e11d6905 Merge "Migrate the openstack overcloud delete command to use Ansible" 2020-02-27 04:29:42 +00:00
Gael Chamoulaud 4fbd5ffe4f
TripleO Validations Logging CLI Introduction
This patch adds logging support for validations. It introduces two new
Tripleo Validator commands to allow the user to get the executions
history and get the details of them.

Change-Id: Ie80318a7fa684adb7c3bf7c99d526b0de64b0904
Depends-On: I502c38d3f27db3c6f62a47190136dd03627956bc
Depends-On: I0cb2743d1d4d118320a799c6820d48f9b917498f
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2020-02-26 14:34:41 +01:00
Kevin Carter 2c028c4a52 Convert the support deployment and workflow to ansible
This change converts the support deployment and workflow process to use an ansible
playbook instead of a mistral workflow. The overcloud_support module has been
updated and moved to the V2 client and all tests in support of this new process
have been updated.

Story: 2007212
Task: 38431
Task: 38432
Depends-On: I606f1ee3bc323e5c83d09ca9bc8f7e4033e81e70
Change-Id: If47e1e64e251e72d5bc8d0eb253d931257fd2ca8
Signed-off-by: Kevin Carter <kecarter@redhat.com>
2020-02-23 01:21:55 +00:00
Dougal Matthews c94f64ef9a Migrate the openstack overcloud delete command to use Ansible
The overcloud delete command will now use the ansible playbook found
within the tripleo-ansible project to process the stack delete workflow.

story: 2007212
task: 2007212
Depends-On: Ic0bd173ad34d1c01a58a66d9a754acd3093a972c
Change-Id: I9f461803ecf3abdf46c0b2b629e6e6708f3160cb
2020-02-21 13:09:26 -06:00
Kevin Carter 818c7a7a1a
Start moving the import CLI command to the Ansible implementation
Change-Id: I2285b23282a275097512dc35628cb7fa8ac94d61
Signed-off-by: Kevin Carter <kecarter@redhat.com>
2020-02-21 13:02:55 -06:00
Dougal Matthews 73dfcd1b96 Migrate the CLI introspection from Mistral to Ansible
The baremetal introspection command has been implemented in v2 using
an ansible playbook instead of a mistral workflow.

Story: 2007212
Task: 38444
Task: 38445
Change-Id: I61a4d1ae241bd3877abbc77bf4bad226d2502379
2020-02-17 20:36:03 +00:00
apetrich 8bc80382d3 Move undercloud backup from mistral to ansible
This playbook reflects the same behaviour as the mistral workbook
of the same name and adds functionality discussed on this external
bug: https://bugzilla.redhat.com/show_bug.cgi?id=1659888

This also adds a --save-swift parameter (default false)
that makes the backup be saved on swift otherwise it will
be saved on the filesystem.

Depends-On: I309d52eb424a73bd04af167a2a7411ba3bf35674
Change-Id: I054a805e820087a30bd8d27a0b460b6e519849ac
Signed-off-by: Kevin Carter <kecarter@redhat.com>
2020-01-27 17:12:33 +00:00
Dougal Matthews f456ac9312 Prepare tripleoclient for v2 implementations of the commands
This change creates the v2 directories for the new versions of the CLI
commands that use Ansible.

Change-Id: Ic8d9a77a5f75046c1417d195a2e52d3e9c9de796
2020-01-27 13:18:52 +00:00
James Slagle 085e6fc55e Add tripleo launch heat command
Adds a new command under the tripleo namespace for launching the all in
one heat-all process in the foreground. The new command reuses the code
from heat_launcher.py already in place for the tripleo deploy commands.

Launching the heat-all process separately from tripleo deploy allows for
easily spinning up a heat-all environment for stack creation and
generating the config-download ansible content for development and test.

Change-Id: I16d23faca6d8c2d0abf13dbdf91b810717ac585e
2020-01-10 09:06:22 -05:00
Gael Chamoulaud 29b00170b3
TripleO Validator CLI Refactor
This patch hardly refactors the TripleO Validator CLI. The 'List'
subcommand has been split in different new subcommands which does "one
thing and only one thing". It also adds the support for the TripleO
history file and integrates better the CLI with the openstack client
library, which simplifies it a lot.

The subcommands are:

- To display the full list of validations or by group(s):
  ```
  $ openstack tripleo validator list
  ```

- To display full details about one validation:
  ```
  $ openstack tripleo validator show
  ```

- To display the available parameters for one or multiple validations,
  export them in a JSON or YAML file:
  ```
  $ openstack tripleo validator show parameter
  ```

- To display full details about the groups used by the validations:
  ```
  $ openstack tripleo validator group info
  ```

- To run one or several validations by names or by groups:
  ```
  $ openstack tripleo validator run
  ```

Depends-On: I56b9d39c113cfb30695fe8cf2740ae147b0dd3e4
Change-Id: I09e2cba484d3a91915fb9294bc351b5d7f3aca0f
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2019-12-13 15:06:34 +01:00
James Slagle 975f771702 Add openstack overcloud export
Add a new command to export the data from a control plane stack for
multi-stack. The created export file can be used as input into a compute
stack for the multi-stack feature.

Also refactors the overcloud cell export command to use the same common
code.

Closes-Bug: #1850636
Change-Id: I6e145d7a54dcd306c4633ebd4d7471a19a967a86
2019-11-11 16:33:49 -05:00
Zuul 68b56c694b Merge "New command "openstack overcloud node unprovision"" 2019-09-06 06:31:41 +00:00
Steve Baker 2a0266dae1 New command "openstack overcloud node unprovision"
This is a companion command to "openstack overcloud node provision"
which is required for scale-down and should be run after "openstack
overcloud deploy".

It will undeploy any instance which has provisioned=False in the
supplied roles yaml, see this change[1] for the provisioned format.

[1] https://review.opendev.org/#/c/672605/

Change-Id: Ic7705c290220df7c55656fa080ff74315fb2030f
Blueprint: nova-less-deploy
Depends-On: https://review.opendev.org/#/c/672848/
2019-08-27 04:06:35 +00:00
David J Peacock bdfd3bfb1b Implement tripleo container image push command
This patch implements the tripleo container image push command.

Change-Id: Ifc2588e9e62582530f19c852715dea3ff68d9fa4
Co-Authored-By: Alex Schultz <aschultz@redhat.com>
2019-08-23 15:22:34 -06:00
Zuul d4fbe7ee69 Merge "Add Python 3 Train unit tests" 2019-08-12 22:48:09 +00:00
Zuul 7dc07529d4 Merge "Add overcloud cell export command" 2019-07-29 10:08:05 +00:00
Corey Bryant e099e19af3 Add Python 3 Train unit tests
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.

See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html

Change-Id: Ie27e6107a7334a3a2f9aeb054b0c559c0440db51
Story: #2005924
Task: #34253
2019-07-24 10:25:57 +02:00
Martin Schuppert aa0d29fb44 Add overcloud cell export command
[1] provides the steps on how to setup multiple cells using tripleo.
This requires to extract deployment information from the overcloud
/control plane stack which then is used as input for the cell
deployment.

With this patch we provide a new tripleoclient functionality which
helps
to automate the export steps from [1]:
* Export the default cell EndpointMap
* Export the default cell HostsEntry
* Export AllNodesConfig and GlobalConfig information
* Export passwords

[1] https://docs.openstack.org/tripleo-docs/latest/install/advanced_deployment/deploy_cellv2.html#deploy-an-additional-nova-cell-v2

Depends-On: https://review.opendev.org/672415

Change-Id: Id7fdbf029a6dd1b45e9801c9cf8814a15a157ee0
2019-07-24 09:57:40 +02:00
Zuul bc56ab81a8 Merge "Implement tripleo container image show command" 2019-07-19 03:30:43 +00:00
David J Peacock 4fc5e74243 Implement tripleo container image show command
This patch implements the tripleo container image show command, AKA,
inspect.

Change-Id: I03b7bb724881eeb3b737845d9a731d4b4f6ee786
2019-07-17 08:54:30 -04:00
Zuul c6d441b24c Merge "Implement tripleo container image delete command" 2019-07-04 03:12:09 +00:00
David J Peacock 978e16efdb Implement tripleo container image delete command
This patch implements the tripleo container image delete command.

Change-Id: I1f028e9ea14f6f5a9fe6ccf608be08b9fd569b9e
2019-07-03 09:31:54 -04:00
Alex Schultz e096cca54a Remove undercloud deploy
This was a left over from the development of the containerized
undercloud and has been deprecated for some time. Additionally it just
redirected to the undercloud install logic anyway.

Change-Id: I96709e67064c8b3347c9dfcd511ba823eb9dc370
2019-06-26 07:24:37 -06:00
Alex Schultz 8de77cbe70 Add minion installation
Add the ability to install an undercloud minion which is connected to an
original undercloud. This minion can have either heat-engine or
ironic-conductor deployed on it.

Adds two new openstack commands for the minion install and a new
minion.conf can be used to configure them.

openstack undercloud minion install
openstack undercloud minion upgrade

Depends-On: https://review.opendev.org/#/c/656984
Change-Id: I61832f5088be172eaf31b36a9cca8dc289580bb2
Related-Blueprint: undercloud-minion
2019-06-21 07:44:21 -06:00
David J Peacock 611b286cea Implement tripleo container image list command
This patch implements the tripleo container image list command, reading
for a remote registry URL, e.g. localhost:8787.

Returns a single column ascii table with full names of each image
discovered.

Change-Id: I44d19692fb7ab16797460215a98baf75e6b82034
2019-06-04 17:01:42 -04:00
Dmitry Tantsur 417d5b2da8 nova-less-deploy: command for deploying nodes with ironic
This changes introduces the command `overcloud node provision` that
takes a file with roles, deployes the requested nodes and creates
an environment file. See the spec for details:
http://specs.openstack.org/openstack/tripleo-specs/specs/stein/nova-less-deploy.html

Change-Id: I806fcbdabf0bb93fa222f3fa76944f0f50267011
Depends-On: https://review.openstack.org/637191
Implements: blueprint nova-less-deploy
2019-03-19 10:18:26 +01:00
Zenghui Shi aa3d6adb4b Create commands for configuring BIOS on given nodes
This commit introduces two new commands to configure BIOS:

1) openstack overcloud node bios configure --configuration <..> [--all-manageable|uuid1,uuid2,..]
2) openstack overcloud node bios reset [--all-manageable|uuid1,uuid2,..]

The first command applys BIOS configuration on given nodes or all manageable nodes;
the second command resets BIOS configuration to factory default on given nodes or all manageable nodes;

Depends-On: Icdaa734a44c55c830c0109d25488b68838e8736f
Change-Id: I809883e0e54a66bca58a0e45c035c69bcc39dcd1
2019-03-11 12:55:39 +01:00
Carlos Camacho b3af96f74e Add new CLI option openstack tripleo validate run
This submission starts with the integration of the current supported
Mistral workflows for running the validations.

This submission integrates the running of all current installed validations
based on group validations or single validations.

Change-Id: Ib86005596e046587a4608a755a15ce8620105f8b
Implements: blueprint validation-framework
Depends-On: I294ab0016fda9587b405ef08dba3212b8e46a816
2019-03-05 09:27:51 +01:00
Carlos Camacho 6f6d6332bb Add new CLI option openstack tripleo validate list
This submission starts with the integration of the current supported
Mistral workflows for running the validations.

This submission integrates the listing of all current installed validations.

Change-Id: Ic4a396598dcfdb55a0858bea95e9a2fcfc7b46e6
Implements: blueprint validation-framework
Depends-On: I294ab0016fda9587b405ef08dba3212b8e46a816
2019-03-05 09:27:19 +01:00
Zuul 61d6a04b07 Merge "Add overcloud admin ssh authorize command." 2019-02-12 12:23:45 +00:00
Zuul 1a5bb1396e Merge "Add Python 3.6 classifier to setup.cfg" 2019-02-08 16:32:58 +00:00
Sofer Athlan-Guyot db28418901 Add overcloud admin ssh authorize command.
This is needed in reprovisioning upgrade to be able to deploy new keys
without having to run an entire deployment.

We add some error handling:
 - raise an error if no host is found;
 - display a message if ssh connection fails

Change-Id: I4cbcfe4aa5596969ee501a41645b9b29e9a7236d
Implements: blueprint upgrades-with-os
2019-02-08 14:43:05 +01:00
zhouxinyong 927cb07930 Change openstack-dev to openstack-discuss in setup.cfg
Change-Id: Id835c01a134903ad2a9d3243ece2c704daea3040
2019-01-24 10:48:49 +08:00
qingszhao d2afa792e6 Add Python 3.6 classifier to setup.cfg
Change-Id: I778582f2d1980610b0fa9a961e18151a7a34e48a
2018-11-30 07:37:48 +00:00
Zuul 39ab0458ac Merge "Drop obsolete `overcloud ceph-upgrade run`" 2018-08-06 11:37:57 +00:00
Zuul dd6a1a8322 Merge "Update/upgrade commands for services with external installers" 2018-08-06 11:34:20 +00:00
Jiri Stransky ba31c7afc0 Drop obsolete `overcloud ceph-upgrade run`
After switching from Heat workflow resources to external_deploy_tasks,
the `ceph-upgrade run` command no longer works and can be
dropped. Instead we'll be using `external-update run` and
`external-upgrade run` commands.

Partial-Bug: #1783949
Change-Id: I228ce6228d0bd0bd4d40bc7a7cdd6bfe98a7a6ed
2018-07-27 09:04:40 +02:00
Jiri Stransky 457ffd753f Update/upgrade commands for services with external installers
New `openstack overcloud external-update run` and `openstack overcloud
external-upgrade run` commands are defined. These are meant to perform
updates and upgrades for services deployed via
external_deploy_tasks. A separate command is used because external
installers don't fit well within the --nodes and --roles selection
pattern we've established for the normal `update run` and `upgrade
run` commands.

Partial-Bug: #1783949
Depends-On: Ib2474e8f69711cd6610a78884d5032ffd19ad249
Depends-On: I982032a0eadfbfb7f1eadee9cae26c8cd5fcdbba
Change-Id: Ib2f32ae8ac234b0c25b0e1ff1f8f8d8e041185e0
2018-07-27 09:01:37 +02:00
Bogdan Dobrelya a9dd33a8c1 Generate ansible.cfg for UC/standalone deployments
Add CLI command that allows to generate and manually
customize the default ansible configuration used with
UC/standalone deployments. Use the config generator
from tripleo common ansible actions for that.

If there is no pre-created user's ansible.cfg in
--output-dir, generate the default one with as a part of
the deployment command.

Depends-On: Ie7dd9039ee74aac046679e831ffda143257e3825
Change-Id: I695916e9271392127635834078e57655857182f1
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
2018-07-12 12:11:41 +00:00
James Slagle d25d360185 openstack overcloud failures
Add a new command to tripleoclient:
openstack overcloud failures

The command shows the deployment failures based on a plan name and makes
use of the tripleo.deployment.v1.get_plan_deployment_failures
workflow.

Change-Id: I9ce4ab9e6c690abb5aed887f8fe6add4bbf52167
Depends-On: I16d2dd0b3022cd5964919d07dd0ec603490a3ed7
2018-05-31 15:28:53 -04:00