Commit Graph

33 Commits

Author SHA1 Message Date
Radosław Piliszek 83bc574ba5 Cleanup py27 support
Removes and/or replaces all mentions of py27.

Cleans up obsolete requirements and their lower-constraints.

Update cliff minimum to 3.1.0 in requirements.txt, which has a fix for
story 2005891.

Change-Id: I52cffa2f1aee944f79c4618ea20b779755792f2a
2020-04-20 18:04:19 +00:00
Mark Goddard 1579dc6c41 Use pbr to build the project
Python Build Reasonableness (PBR) [1] is used by most OpenStack projects
for building python packages, so we should fall into line here.

[1] https://pypi.python.org/pypi/pbr

Change-Id: Ic74a62eeb65e7158ce75a082e68652c2e50a2a91
Story: #2001637
Task: #6648
2018-03-08 16:37:08 +00:00
Mark Goddard eef61c7955 Add release notes & bump version for kayobe 3.1.0 release
This release is based on the OpenStack Pike release.
2018-02-26 17:10:31 +00:00
Mark Goddard 62074a841d Add missing kayobe command entry points to setup.py
This allows Cliff to register commands for them.
2017-12-20 17:57:04 +00:00
Mark Goddard a2cbe94b76 Improve bare metal compute node management
Adds these new commands:

kayobe baremetal compute inspect
kayobe baremetal compute manage
kayobe baremetal compute provide

These can be used to set the provision state of ironic nodes in the
baremetal-compute group.
2017-12-13 11:30:26 +00:00
Mark Goddard 107de9323a Add a command to check network connectivity between hosts
kayobe network connectivity check
2017-11-02 12:12:07 +00:00
Mark Goddard c246f634ad Kayobe 3.0.0 release
Adds support for the OpenStack pike release.

Update python module version, edit release notes.
2017-09-20 21:04:03 +01:00
Mark Goddard de32048646 Add commands to generate and save overcloud service configuration
Adds these commands:

kayobe overcloud service configuration generate
kayobe overcloud service configuration save

The former generates configuration for kolla-ansible, the latter copies
kolla-ansible configuration from the overcloud hosts to the ansible control
host.
2017-09-18 21:41:48 +01:00
Mark Goddard 7c7bbc064a Kayobe 2.0.0 release
Update python module version to 2.0.0, edit release notes.
2017-09-18 21:40:01 +01:00
Mark Goddard 0c03d18626 Add kayobe overcloud host upgrade
This command performs necessary changes on the host to prepare the control
plane for an upgrade.

Currently this performs a workaround for issue #14, RabbitMQ upgrade failure.

We clear stale entries from /etc/hosts on the overcloud hosts and from the
rabbitmq containers, which allows the upgrade to complete successfully. The
source of the stale entries is currently unknown.
2017-09-18 13:04:27 +01:00
Mark Goddard 1c1d92b4db Add command to save overcloud introspection data
The CLI command is:

kayobe overcloud introspection data save [--output-dir <dir>] [--output-format <format>]

This command will save introspection data collected by the seed host's ironic
inspector service to the control host for analysis.
2017-08-22 18:35:47 +00:00
Mark Goddard 5d6658b353 Improve ironic deployment image build for overcloud
Overcloud deployment images can now be built via:

kayobe overcloud deployment image build

This should be done prior to running kayobe overcloud service deploy.
In order to build IPA images, the ipa_build_images variable should be
set to True. In this case, these images will be used by the overcloud's
ironic inspector service during hardware inspection, and by ironic
during provisioning.
2017-08-22 15:12:05 +00:00
Mark Goddard ebb81e49f1 Add command to build IPA deployment images for the seed
The CLI command is:

kayobe seed deployment image build

This command will build Ironic Python Agent (IPA) kernel and ramdisk images
using the Diskimage Builder (DIB) ironic-agent element. The built images will
be copied to the appropriate location in the bifrost_deploy container on the
seed.

This allows us to build a customised image with site- or hardware- specific
extensions.
2017-08-22 15:12:05 +00:00
Mark Goddard c01f5834cb Add kayobe seed vm deprovision command
This command will destroy the seed VM and all associated data volumes.
2017-08-07 12:08:41 +00:00
Mark Goddard f76f244a38 Add configuration for seed hypervisor
Currently supports configuration of:
- Local networking
- NTP
- Libvirt storage pools and networks
2017-08-07 12:08:41 +00:00
Mark Goddard a220f0fb60 Update setup.py version to 1.1.0 2017-07-17 16:11:57 +01:00
Mark Goddard 2693269955 Support destroying the overcloud services
'kayobe overcloud service destroy' will destroy all containers,
container images, and volumes on the overcloud hosts. All data will
be lost, so use wisely!
2017-07-11 17:49:41 +01:00
Mark Goddard 447b678e3e Use correct version in setup.py, 1.0.0 2017-07-11 17:49:41 +01:00
Mark Goddard 328455ec10 Add control host upgrade, stop using yum on host
Ansible is now a dependency of kayobe, and should either be installed
in a virtualenv or in the site python packages, so we no longer need
to install it via yum.

Also stop running the kolla.yml playbook during control host bootstrap, as it
is now run when required.
2017-07-11 17:49:41 +01:00
Mark Goddard f06483eb68 Support encryption of configuration using Ansible Vault 2017-04-20 14:30:02 +01:00
Mark Goddard 7807016862 License kayobe project under Apache2
All python files now have a license header and copyright notice
2017-04-06 10:15:29 +01:00
Mark Goddard 3fd26401e0 Add CLI commands to reconfigure and upgrade the overcloud services
kayobe overcloud service reconfigure maps to kolla's reconfigure command.
kayobe overcloud service upgrade maps to kolla's upgrade command.
2017-04-05 14:22:48 +01:00
Mark Goddard 35aab4e4fe Add kayobe overcloud hardware inspect command
Performs hardware inspection of controllers using existing ironic nodes
2017-04-05 11:23:44 +01:00
Mark Goddard 17c198fc69 Support configuration of BIOS and RAID for controllers 2017-04-05 11:05:48 +01:00
stack 45e62f4bbc Add version requirements to dependencies 2017-04-04 10:37:47 +01:00
Mark Goddard 456b10e074 Allow specification of container images to build
Also adds a command to pull container images
2017-04-01 09:25:10 +01:00
Mark Goddard 7b2be06725 Add kayobe 'overcloud deprovision command'
This will deprovision the overcloud controller nodes using Bifrost.
2017-03-24 16:14:48 +00:00
stack 99abd72374 Read setup.py install_requires from requirements.txt file 2017-03-22 09:32:52 +00:00
Mark Goddard 3ca08afd93 Add kayobe CLI command to configure the physical network
Currently this can configure interfaces on DellOS6 switches only but can be
extended to support other makes and models.
2017-03-16 11:02:53 +00:00
Mark Goddard 3067a28b3e Add commands for building seed and overcloud container images 2017-03-15 10:19:42 +00:00
Mark Goddard b05f02391c Discovery of overcloud hosts from Bifrost's Ironic inventory
This change enables 'zero touch' provisioning of the overcloud hosts. Following
power on of the nodes, they are discovered by Ironic inspector running on the
seed node and registered with the seed node's instance of Ironic. Once discovered
and inspected, Kayobe uses the seed's Ironic inventory to populate its own Ansible
inventory. From here, we can fill out host variables for Bifrost to use when
provisioning the nodes. Finally, we configure Kolla Ansible's inventory.
2017-03-15 10:19:41 +00:00
Mark Goddard 474e48b433 Separate configuration of host OS from service deployment 2017-03-06 14:46:17 +00:00
Mark Goddard caf9b52ac7 Add kayobe python module with CLI
The CLI replaces all existing shell scripts except for
configure-kayobe.sh. Other shell scripts are now removed.
2017-02-28 16:17:54 +00:00