[tripleoclient] Additional "overcloud node" commands

Bug #1595205 reported by Julie Pichon
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
tripleo
Fix Released
High
Julie Pichon

Bug Description

Based on a recent email thread [1], we should try to work with Ironic more nicely and create the following new commands, which aim to reuse the new Mistral workflows more closely than the "baremetal import/configure boot/introspection bulk start" commands currently do.

  openstack overcloud node import
  openstack overcloud node configure
  openstack overcloud node introspect
  openstack overcloud node provide

This should live on top on the on-going Mistral patch series [2].

[1] http://lists.openstack.org/pipermail/openstack-dev/2016-May/095456.html
[2] https://review.openstack.org/#/c/327780

Julie Pichon (jpichon)
Changed in tripleo:
assignee: nobody → Julie Pichon (jpichon)
Julie Pichon (jpichon)
description: updated
Revision history for this message
Dougal Matthews (d0ugal) wrote :
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to python-tripleoclient (master)

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

Changed in tripleo:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

Changed in tripleo:
importance: Undecided → High
milestone: none → newton-3
Julie Pichon (jpichon)
tags: added: tripleoclient
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

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

Reviewed: https://review.openstack.org/334411
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=13011dc04175d65df559936c14574a11f0d47b3c
Submitter: Jenkins
Branch: master

commit 13011dc04175d65df559936c14574a11f0d47b3c
Author: Julie Pichon <email address hidden>
Date: Mon Jun 27 10:11:42 2016 +0100

    Add 'openstack overcloud node provide' command

    Change-Id: Id8660fc63ff29478b4f40d9a3f656e26f8149426
    Partial-Bug: #1595205

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/336595
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=6108b3be7d5911c44f23f51fd843704a3e92f53c
Submitter: Jenkins
Branch: master

commit 6108b3be7d5911c44f23f51fd843704a3e92f53c
Author: Julie Pichon <email address hidden>
Date: Fri Jul 1 15:07:26 2016 +0100

    Add 'openstack overcloud node introspect' command

    Change-Id: I1c58d9c825543cf402ff417d1fd05e89759e3ecd
    Partial-Bug: #1595205

Revision history for this message
Julie Pichon (jpichon) wrote :

A recap of the patches related to that bug, since they weren't all linked here (due to being in tripleo-common, and/or network issues I guess):

- Provide command: https://review.openstack.org/#/c/334411/ (Merged)

- Introspect command: https://review.openstack.org/#/c/336595/ (Merged)

- Import command:
 - Common: Mistral action update (adding an argument): https://review.openstack.org/#/c/348875/
 - Client: https://review.openstack.org/#/c/339727/

- Configure command:
 - Common: New 'configure boot option' action: https://review.openstack.org/#/c/354174/
 - Common: New 'configure root device' action + new workflows: https://review.openstack.org/#/c/355947/
 - Client: https://review.openstack.org/#/c/344875/

tags: added: common
Revision history for this message
Julie Pichon (jpichon) wrote :

Both the 'tripleo-common' and 'tripleoclient' patches are dependent series, so you only need the tip of each series in order to test all of the new commands.

1. Clone and cd into the tripleo-common repository
$ git clone git://git.openstack.org/openstack/tripleo-common

2. Download the tripleo-common patch series at https://review.openstack.org/#/c/355947/

-> If your SSH key on the machine is set up to work with Gerrit, you can simply download it with git review (pip install git-review):
$ git review -d 355947

-> Otherwise, click on 'Download' on the top right corner of the Gerrit review, make sure the drop-down reads 'anonymous http' and download the latest patchset
$ git fetch https://git.openstack.org/openstack/tripleo-common refs/changes/47/355947/2 && git checkout FETCH_HEAD
(Currently, this ends with /2 because there are 2 patchsets but the reference will change when new ones get uploaded)

You can check you've got the right review downloaded with git log, then you need to set up Mistral with the new workflows and actions.

3. Load your OpenStack credentials, e.g.
$ . ~/stackrc

4. Create the new commands Mistral actions by following the instructions in the README:
http://git.openstack.org/cgit/openstack/tripleo-common/tree/README.rst#n22

5. Update the Mistral workflows:
$ mistral workbook-update ~/tripleo-common/workbooks/baremetal.yaml
(If this doesn't work because the workflows don't exist yet, try with workbook-create)

6. Go back to your home directory and get the python-tripleoclient repo
$ git clone git://git.openstack.org/openstack/python-tripleoclient

7. Download the client patch series at https://review.openstack.org/#/c/344875/

-> If your SSH key on the machine is set up to work with gerrit, you can simply download it with gerrit review:
$ git review -d 344875

-> Otherwise, click on 'Download' on the top right corner of the Gerrit review, make sure the drop-down reads 'anonymous http' and download the latest patchset
$ git fetch https://git.openstack.org/openstack/python-tripleoclient refs/changes/75/344875/4 && git checkout FETCH_HEAD
(Currently, this ends with /4 because there are 4 patchsets but the reference will change when new patchsets get uploaded, make sure to get the latest)

8. Install the new python client
$ sudo python setup.py develop
('install' instead of 'develop' should work too)

9. Check if it worked, and 'overcloud node import', 'overcloud node configure' are available
$ openstack help | grep overcloud

To get an idea of how to use them next:
$ openstack help overcloud node import
$ openstack help overcloud node configure

Let me know if you hit any issue when testing the patches.

Julie Pichon (jpichon)
tags: added: tripleo-common
removed: common
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to python-tripleoclient (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/358012

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

Reviewed: https://review.openstack.org/339727
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=dbe3b866a5b524440dd6b324a2ed411b8268d8bf
Submitter: Jenkins
Branch: master

commit dbe3b866a5b524440dd6b324a2ed411b8268d8bf
Author: Julie Pichon <email address hidden>
Date: Fri Jul 8 11:19:23 2016 +0000

    Add 'openstack overcloud node import' command

    The new commands aim to simplify the node management workflow
    [1]. Additional configuration will be possible via 'openstack overcloud
    node configure.'

    [1] http://lists.openstack.org/pipermail/openstack-dev/2016-May/095456.html

    Change-Id: I704438da31a31a90f882ddd01ba02e3ca62549ac
    Depends-On: Iea9b7f3b49f99f810ce759f65b45b88c1c40f010
    Partial-Bug: #1595205

Revision history for this message
Steven Hardy (shardy) wrote :

Can we have an updated summary of what remains to close this bug please? Bit confused by the various Partial-Bug references and trying to figure out if this will land for newton.

Revision history for this message
Julie Pichon (jpichon) wrote :

All the patches related to Provide, Introspect and Import have merged (both tripleo-common and client).

None of the patches related to configure have merged yet. The remaining patches are:

tripleo-common:
 - Mistral action for configuring the boot option: https://review.openstack.org/#/c/354174/
 - Mistral action for configuring the root device + new configuration workflows: https://review.openstack.org/#/c/355947/

Client:
 - New 'overcloud node configure' command: https://review.openstack.org/#/c/344875/
 - Migrate existing configure command to use Mistral: https://review.openstack.org/#/c/358012/

I didn't expect this task to get this big. Perhaps it can be closed as done, and we can track the migration of "configure" to use Mistral separately if that's more convenient.

Revision history for this message
Julie Pichon (jpichon) wrote :

Update: The 4 patches mentioned in the previous comment are now all +2A and in the process of merging.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

Reviewed: https://review.openstack.org/344875
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=d0b6de2b4a70527bc03dada31bf2e9b365dfdcc6
Submitter: Jenkins
Branch: master

commit d0b6de2b4a70527bc03dada31bf2e9b365dfdcc6
Author: Julie Pichon <email address hidden>
Date: Wed Jul 20 14:13:58 2016 +0000

    Add 'openstack overcloud node configure' command

    Calls to the Mistral workflows to configure boot options and the root
    device.

    Change-Id: Ifd868fcdd6ed2d54b40c2e1861558d0233731be5
    Depends-On: I5ba0a3710012c44822dd3b8e69662bbef04d3787
    Closes-Bug: #1595205

Changed in tripleo:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to python-tripleoclient (master)

Reviewed: https://review.openstack.org/358012
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=6900d694e3724b2bd4caf7b82b63f60d2657a5cc
Submitter: Jenkins
Branch: master

commit 6900d694e3724b2bd4caf7b82b63f60d2657a5cc
Author: Julie Pichon <email address hidden>
Date: Fri Aug 19 15:54:29 2016 +0000

    Use Mistral for baremetal boot configuration

    This updates the 'baremetal configure boot' command to work with the
    new Mistral workflow. The Root Device tests have migrated to
    tripleo-common where the main code now lives as a Mistral action (see
    dependent patch).

    Change-Id: I3acbfd7900177fc2159448b839b71599e8e51d5f
    Depends-On: I5ba0a3710012c44822dd3b8e69662bbef04d3787
    Related-Bug: #1595205

Revision history for this message
Julie Pichon (jpichon) wrote :

All merged now.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/python-tripleoclient 5.0.0

This issue was fixed in the openstack/python-tripleoclient 5.0.0 release.

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.