Update ChefSpec due to changes made in apache2 cookbook.
Depends-On: https://review.opendev.org/756168
Change-Id: I3ec792c519650b2d95a976ad50419a9b417a3514
Signed-off-by: Lance Albertson <lance@osuosl.org>
- Cookstyle fixes
- Refactor Berksfile to use groups so we can exclude integration testing
cookbooks
- Update documentation
- Cleanup line wraps
- Enable sensitive resources for the template[/etc/nova/nova.conf] to
resources improve security.
- Update delivery configuration to exclude integration cookbooks
- Fix ChefSpec output.
- Switch package installations to send packages as arrays instead of individual
package resources. This generally speeds up chef runs.
- Cleanup array syntax using %w() instead of []
- Add metadata to enabled_apis as that is the default upstream
- Switch to user resource for managing shell for nova user
- Switch to libvirtd instead of libvirt-bin for Ubuntu service name
Depends-On: https://review.opendev.org/701027
Depends-On: https://review.opendev.org/706151
Depends-On: https://review.opendev.org/708059
Depends-On: https://review.opendev.org/706157
Change-Id: I7e03fb9dace6e288a3b21f33106245b30b52ce9d
- Added basic cellv2 recipe, as it is required from Ocata on
- Style and lint fixes to support newer chefdk
- Rewrote metadata.rb for readability
- Removed ancient Gemfile
Change-Id: I97b453fc419bfbf01679dadf39a256b1f0f99859
The docker-setup receive has been unmaintained and untested for some
time now. The nova-docker project is also being removed from
OpenStack [1] and people are advised to look at deploying Zun as
a replacement.
This also avoids having to rewrite this receipe in order to remove the
use of the deprecated python cookbook.
[1] https://review.openstack.org/430232
Change-Id: Ia8c9db272c6a0353130fc93d446b385fd72ac250
Partial-Bug: 1558538
* added endpoint attributes (moved from common)
* removed qpid as a messaging option (can be incuded in a wrapper)
* removed os-bare-metal dependencies
* deleted default attributes from nova.conf.rb originated in
openstack-common
* removed fedora and suse as supported platform
* adapted optimized endpoint logic
* removed rubocop exceptions in recipes and regenerated the
.rubocop_todo.yaml containing all remaining exceptions
* added versionbumb for refactored os-identity and common
* moved version up to 13.0.0 for mitaka release
* adapted the specs (unit tests) to work again
* refactored spec_helper.rb method "expect_creates_api_paste"
* added new logic into templates/default/nova.conf.erb
* refactored attributes throughout all recipes that were connected to
the attributes used for the nova.conf.erb template to adapt the new
template attribute syntax
* moved all attributes from attributes/default.rb that were used in
nova_conf.erb to attributes/nova_conf.rb
* refactored attributes to fit upcomming template logic
* refactored recipes/nova_common.rb to fit upcomming template logic
* removed all attributes from default.rb and nova.conf.erb which are set
as default in attributes, openstack doc and used to render the template
* removed nova-network as a supported config option
Depends-On: I9cc1b5cc069987ac83e064322c2291772505ff5f
Depends-On: Ifa5a7f4e1df47a3961976e64f654224864c3dcb4
Depends-On: I3262b2e6f792f37c32a446e6567790b82bdd4613
Depends-On: I0547182085eed91d05384fdd7734408a839a9a2c
Implements: blueprint cookbook-refactoring
Change-Id: I9ac9eeb29ab27f31394830e4b6f999d5870cc0e4
Cleaned up all the minor rubocop issues, the ones left relate to
complex logic and what I think is a bug in rubocop for nested
vs compact modules/class definitions.
Change-Id: Ic874a3e0a8d005e410baa40584f0f00dfc805a56
The current cookbook allows the enabled_apis nova.conf key
to include the metadata value. This causes the nove compute
service to try to auto start the api-metadata service. But we
also have the api-metadata recipe in the run list by default which
also tries to start the api-metadata service. This can cause timing
issues with the starting service.
This patch will remove the metadata value from the enabled_apis
attribute, and put out a warning if it's included. The api-metadata
receipe should be used to control this service. By default the
api-metadata recipe is included in the os-compute-api role which
is included in the os-compute-single-controller role. So, in most cases
it's already included in the run list.
Change-Id: Ief1a98cf2ab072a8aa892c65c5fc07d12a02722c
Closes-Bug: #1415220
This includes cookbook-openstack-compute changes required to enable
nova-docker driver as a compute driver and allow user to configure a
compute as docker compute
Implements: blueprint docker-driver-configuration
Change-Id: I6fa7e93a4050419fb0531e17b56da4c32205bce3
In some cases like FiberChannel storage, nova volume-attach will
fail because some utility packages are missing. Adding those
into the compute node set of installed packages.
Change-Id: I974bdd00c9f3d046baae8b6c4b531d54f3d7f45c
Closes-Bug: #1412388
Compute service need to get start after libvirtd process get start.
If not, compute process will raise Hypervisor connection error within
initial attempts of compute resource updates due to lack of libvirt-sock
file.
Change-Id: I4ee0832e97ea93e60ba7978db54e439ace4631df
Closes-Bug: #1412293
The instances path was bring created, but not the state or lock paths.
If these are overridden to different places, nova will fail to start.
Removed the unused hardcoded lock path in api and scheduler recipes.
Moved the path creation to nova-common recipe.
Change-Id: I7538edff91233761a1c6336ca4cfe080eeee093d
Closes-Bug: #1328956
Add support for setting disk_cachemodes and instances_path configuration
flags. Add initialization of instances_path directory with proper owner
and permission settings.
Partially implements: blueprint gpfs-storage-support
Change-Id: I07e0d648530461bd8e0e47f6427b10106bae3f1d
Attribute 'enabled_apis' allows for metadata to be selected or not.
Only include the api-metadata recipe if it's been asked for.
Closes-Bug: 1286300
Change-Id: Ib0f89c9ccf05892840c39af0223985e0553593e6
There is a check in compute.rb for network_type, if 'nova' we
include openstack-compute::network, however, network.rb is also
where we load neutron plugins, and it also has a check for 'nova'
or 'neutron', so it doesn't make sense to not include this with
compute. Otherwise, if you assign this recipe to your compute node
and have 'openstack.compute.network.service_type=neutron' you
won't get your plugins (like openvswitch or nicira or whatnot)
Change-Id: I587ca1db3c7c0635121096dc0bb54f7caa30c784
To keep the "we define platform choices in the attributes" spirit, the
nova-compute "support packages" for ubuntu should be overridable, too.
This change makes them behave just like to the
"#{db_type}_python_packages" in openstack-compute::nova-common.
Change-Id: Id38169121e52e0dc8be808c8822db55069e65e48
Now that almost all of the rubocop blueprints have been completed, make
one final pass through all of the cookbooks ensuring they're all in
sync with each other.
- Upgrade rubocop to 0.18.1
- Fix violations caused by 0.18.1 upgrade
- Move Excludes for non-existent folders to Includes so they
automatically cover future additions
Change-Id: I00254b346718c1c70e8ad6f8b97e4dbf3f56396f
Implements: blueprint lint-and-unit-testing-for-havana
- Adjust .rubocop.yml to include recipes/**
- Ensure all recipes are rubocop compliant
Change-Id: I7ecb3896b5a2b2d93304014a4ab19cb0e3c2e31c
Addresses: blueprint rubocop-for-compute
openstack-network::server does not modify a node if
node['openstack']['compute']['network']['service_type'] is 'nova'.
Change check to use service_type attribute instead of server recipe so
that nova-network can be installed when using allinone-compute.
Change-Id: Iab969b30767d1d47fd5b55e805593a8d8548f0e9
Closes-Bug: #1267411
* The 'openstack-network::server' recipe is most likely contained in a role and
not explicitly in the run_list.
* The sysctl cookbook is unused and was removed as a dependency.
* The test was removed because I could not figure out how to stub the
run_context of the chef_run and we are using ChefSpec 1.2 and all the
documentation is for ChefSpec 3.0. I've commented it out to revisit when we
upgrade to 3.0.
Change-Id: I4f4c60eaec9391c2871942dc95b557468f3bf85a
Since grizzly introduced cinder nfs support, compute nodes will need
nfs client packages to mount nfs shares for cinder.
Change-Id: Id469c3dc480b81438cef8c23b5344fd5a7dd7f7b
Having both nova-network and openstack-network::server in the run_list
caused conflicts when installing packages.
Change-Id: I105eab62d49c1e6d36e2416ae44c73f551d062e5
Need to Array.new vs simply casting to Array. Also, tests would
not pass with the recent grub/lxc work. Was hoping to stub
`#set_boot_kernel_and_trigger_reboot` but found that to be
difficult. Ended up stubbing the result of File.open. This
section needs better testing.
Failure/Error: @chef_run.converge "openstack-compute::libvirt"
Errno::ENOENT:
No such file or directory - /boot/grub/menu.lst
# ./.cookbooks/openstack-compute/recipes/libvirt.rb:34:in `initialize'
# ./.cookbooks/openstack-compute/recipes/libvirt.rb:34:in `open'
# ./.cookbooks/openstack-compute/recipes/libvirt.rb:34:in `set_boot_kernel_and_trigger_reboot'
# ./.cookbooks/openstack-compute/recipes/libvirt.rb:79:in `from_file'
# ./.cookbooks/openstack-compute/spec/libvirt-opensuse_spec.rb:10:in `block (3 levels) in <top (required)>'
Change-Id: Ie97309ff5e1bf30a02714597fe29c1d0df1b1c23
As we have decided to move all cookbooks to use the
[openstack][<service>] attribute namespace convention, move compute
to fit this model.
Change-Id: Ibc19fd5326af0340ea1e3788aa7d2701e187f3a0
In the previous commit, the vast majority of the work to move this
repo to openstack-compute was completed. Functionally it works. This
change is intended to address some cosmetic issues and make it
consistent with work done in other cookbook repos.
All tests pass.
Change-Id: I58216cd87b9ff0a77c599c7b5aab132ab2a9304d
Changed the cookbook name to openstack-compute, fixed all tests, and
addressed attributes. Also addressed calls to external services,
primarily keystone -> openstack-identity.
All tests pass.
Change-Id: Ic567a33cefd78cc3b2217986d3ff7475bc93f874