Commit Graph

18 Commits

Author SHA1 Message Date
Lance Albertson 89f4b5c1e7 Start Train development
Changed:
- Temporarily disable voting during development
- Update git URI for bind cookbook to use upstream master
- Renamed .kitchen.yml -> kitchen.yml
- Genealogy updated

Fixed:
- Idempotency with use of apt_update resource
- InSpec tests to work with Train
- Cookstyle

Added:
- Data bag for placement service
- Set deprecations_as_errors to true in kitchen.yml

Removed:
- Unused statsd cookbook in Berksfile
- Unused .rubocop.yml

Deprecated:
- LBaaS recipes and tests. This has been deprecated upstream.

Change-Id: I53a28de6aad000a246ff8f610b64dd5201c03b27
2020-06-08 10:59:07 -07:00
Dr. Jens Harbott 5111603bb5 Start Stein development
- Update references from Rocky to Stein.
- Switch to using chef-workstation
- Exclude integration group from Berksfile. This is to ensure ChefSpec tests
  should always work regardless if we're working on integration related
  cookbooks that don't interact with those tests.
- Temporarily disable voting for integration tests due to cookbook version
  conflicts
- Add tests for openstack-common::etcd and openstack-common::completions
- Update tests for Stein
- Update OVS port to check
- Add tests for lbaas but only for kitchen, not for CI pipeline
- Add suite and tests for integration-test

Change-Id: Id451b08e361acc709879a65d0d92b35640a5dba9
2020-03-23 14:22:28 -07:00
Lance Albertson 1fe9d31295 Update tests for using newer mariadb cookbook
This updates the integration tests for the ops-database cookbook so that
it works properly with the new mariadb cookbook. In addition:

- Enable auto_correct for forwarded_port so we can run more than one
  instance at a time with test-kitchen
- Remove mariadb attributes that are no longer needed
- Temporarily disable voting on centos/ubuntu gates since this will
  require a patch from ops-database and we cannot create a circular
  dependency

Depends-On: https://review.opendev.org/710348
Change-Id: I215a777d255b4b5f9a3481f782a2b7b89f9c3a07
2020-02-27 19:05:50 -08:00
Lance Albertson cbc1b9bcf4 Refactor integration tests
This changes the logic so that we use the Berksfile in the cookbook
we're doing changes in instead of what's included in openstack-chef.
This should allow us to properly deal with cookbook dependencies in a
saner fashion with Gerrit without getting into depends-on hell.

This also required refactoring the Rakefile and roles used in Gerrit and
test-kitchen. Each cookbook now has their own role and test role which
includes specific Tempest configuration settings. This will require
updates in most cookbooks' Berksfile to include missing cookbook
dependencies such as ops-database, ops-messaging and integration-test.

Other major changes includes migrating to using InSpec for integration
testing instead of relying on simple commands included in the Rakefile.
I have replaced most of what was included in _run_basic_queries as
InSpec tests which also improves our coverage overall. Currently the
InSpec coverage is fairly basic and should probably include additional
tests, but in general it covers the following:

I've also added minimal non-voting jobs for both platforms so we can
catch any issue we might have missed downstream.

- Services are enabled and running
- Basic commands return sane output
- Openstack users, services and endpoints are correct

The all suites exclude running Tempest due to the fact that InSpec
doesn't have the ability to change the command timeout beyond 600
seconds [1] which is an issue I've run into. It's recommended to run
tempest manually when using test-kitchen.

NOTE: I haven't made any updates to the multi-node test-kitchen
environment in this patch and will plan on doing that later. I don't
believe this will break anything there.

Other various minor changes include:

- Replaced bare-metal cookbook with block-storage in minimal role
- Print out the command that run_command is going to run to help with
  debugging.
- Use different public_ip so that it doesn't interfere with people using
  10.0.0.0/24 locally (like me!).
- Add forwarded port to access Horizon
- Switch to using Chef 15 with test-kitchen
- Include log files from additional services that we were missing
- Add missing databag for aodh and telemetry_metric
- Include a real rndc key in the databag to assist with testing
- Use OSUOSL for EPEL mirror to work around public mirror issues

[1] https://github.com/inspec/inspec/issues/1675

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

Change-Id: Idebc87ebb6acad7d0af222fb9025fefcb9bf5a1e
2020-01-30 10:10:45 -08:00
Lance Albertson 5280706daa Refactor and update test-kitchen suites
This provides a large collection of updates and refactoring to improve
the development environment for the cookbooks using test-kitchen.

The primary change this provides is the addition of the 'minimal' suite
which replicates what the integration test jobs run in Zuul. This is
useful for testing and debugging issues that might be found during CI
jobs.

- Switch run_list to using roles to better match how the zuul jobs work
- Update to using Ubuntu 18.04 instead of 16.04
- Move all attributes from .kitchen.yml files to environments
- Update multi-node and dokken test-kitchen
- Use MariaDB 10.1 by default as 10.0 has been deprecated upstream for
  ubuntu 18.04. Also use OSUOSL mirror as it's more stable than
  upstream
- Don't disable EPEL on RHEL systems
- Synchronize attributes (within reason) between test-kitchen files
- Update roles run_list
- Create openstack_test cookbook and update /etc/apt/sources.list to
  OSUOSL mirrors to improve stability on Ubuntu

Change-Id: Ie6d7b56a78f7fadbd28e6d27a46446a46c3c5ebd
Signed-off-by: Lance Albertson <lance@osuosl.org>
2019-08-06 10:52:40 +00:00
Jens Harbott 9e62a39913 Updates for Rocky deployment
OpenStack Rocky is only supported on Ubuntu Bionic, so we no longer can
run any sensible tests on Xenial.

- Update default mariadb version to 10.1

Depends-On: https://review.openstack.org/645119
Depends-On: https://review.openstack.org/645162
Change-Id: Ifcf73e49a77e497b19700566a3a13ebfc9ca9741
2019-03-21 12:48:44 +00:00
Samuel Cassiba bd5961e8cc Update the example roles and AIO Kitchen scenario
This change:
- pins poise at known stable releases for Kitchen
- removes deprecated build toolchain cookbook dependency

Change-Id: I6c25a071fa6db1b498adb56500ae5456ecf98781
2018-12-14 17:16:56 -08:00
Roger Luethi 055bc0d047 Add openstack-orchestration::dashboard recipe
Depends-On: Ifb2018623bd4df250c2d3d8c5a7473f6cff94fe8

Change-Id: I644cb6e70f77e7f4b652c4f293801e5287375aac
2018-10-31 15:05:45 +01:00
Samuel Cassiba c7f32a5694 Add designate to default kitchen scenario
Change-Id: If28a3870a3822c257da20ef3bbefcd1a43789bcd
2018-09-10 19:35:44 -07:00
Samuel Cassiba 8fa54db5cf Add ironic to integration
Depends-On: https://review.openstack.org/599690
Change-Id: Idb9a075381615e5ed99090764e1afd7f5eab09d9
2018-09-04 19:42:09 -07:00
Samuel Cassiba 074d05cddf Use CentOS 7.5 for test-kitchen
Change-Id: Ie7eb1367ecd0d7138ba8ae547fcebc36f41c02ab
2018-07-21 12:36:31 -07:00
Samuel Cassiba 670db4e110 Support Chef 14 in Test Kitchen scenarios
- Chef 14 support has stablized, so we want to start using it.
- Docker support needed some tweaks for the AIO scenario to converge
  with Chef 14.

Change-Id: I8aac7a2e5d07caa66a2926873f2fbd7c2ace9650
2018-04-24 14:01:20 +00:00
Roger Luethi a65f9d6579 kitchen: add a public IP address
Adding an IP address gives the kitchen user (among other things) access
to the OpenStack Dashboard (horizon) at https://10.0.0.81/.

Change-Id: Ia08fd57b17aff081ad9aba8b365811669ac7a2fb
2018-04-04 14:31:56 +02:00
Samuel Cassiba 8193580838 Remove dedicated network node for multinode, remove cloudwatch
* cloudwatch has been deprecated since Havana, removed in Queens
* chef pinning is relaxed to major versions
* remove dedicated network node for multinode testing

Change-Id: I397bf5e61d13d217206e07351b0dbb91125c3212
2018-03-13 17:18:33 -07:00
Samuel Cassiba 3689fd2503 Pin test kitchen to chef 13.6.4
- chef 13.7 breaks in fun and exciting ways. until the next release emerges,
  to fix this, the temporary solution is to pin to 13.6

Change-Id: I5d4ccb946a9090b2de1811aa9207ca4b85b4aafb
2018-02-08 06:36:33 -08:00
Samuel Cassiba fe9f27aa65 Disabled epel repo, cleaned up environments files
- EPEL being enabled on CentOS causes issues with RDO packages, in that an
  update will conflict on an EPEL package, rendering yum updates impossible
- Simplified example environments files by paring down unused environments
  files, eliminating the need for platform switches

Change-Id: I21da50a91373fb473fe2554d96940730c4d4d81d
Implements: blueprint modern-chef
2018-01-28 15:56:33 -08:00
Samuel Cassiba 9a0b2b6622 Implemented Chef 13 support for Test Kitchen and CI
- implemented foodcritic and cookstyle corrections
- simplified environments files to a single environment for each scenario,
  as opposed to one environment file per OS flavor
- updated inspec test for tempest from package

Implements blueprint modern-chef

Depends-On: If971a472c1fd9149a891200548a267655620fce2
Depends-On: Ib268737d2f5c3196061d89202d806c3af1c54e72
Change-Id: I5f1cb87573098623aa9f8c224a89527ce813e055
2018-01-17 03:32:14 +00:00
Roger Luethi 962633f25a Add support for kitchen testing
This changeset adds support for testing openstack-chef-repo with kitchen
and tempest.

Out of 63 tests, 33 pass and 30 are skipped, same as with current CI
tests.

The recipe, run_tempest in openstack-integration-test, is called at the
end of the installation phase.

In addition, a tempest run can be executed manually with
"kitchen verify".

Depends-On: I98706b1fc2c65a2359ca9b117a9491c0569514bd
Change-Id: I90c4ab627e3834ba9fd5791c425320e9536f7826
2017-09-23 14:34:32 +00:00