Commit Graph

74 Commits

Author SHA1 Message Date
Ghanshyam Mann 0a53c4a961 Retire openstack-chef: remove repo content
OpenStack-chef project is retiring
- https://review.opendev.org/c/openstack/governance/+/905279

this commit remove the content of this project repo

Depends-On: https://review.opendev.org/c/openstack/project-config/+/909134
Change-Id: Idb3769e91814eb7703a3a4787f485fab1caa97f8
2024-02-17 20:47:50 -08:00
Lance Albertson 7d2ecf253c CentOS 8 support
This adds support for testing CentOS 8.

- Update documentation
  - Add references to CentOS 8
  - Update genealogy to include latest releases
  - Update minimum Chef requirement
  - Add Bare Metal to list of cookbooks when creating a stable branch
- Include memcached in identity role
- Update InSpec tests for CentOS 8
- Ensure we install the yum package on rpm distros (required by Chef to
  run properly and is missing on the default image)
- Remove yum-epel attributes in integration since it breaks on EL8

Change-Id: Ie648432021325150fdd2fd7ab7f1af10bc69b655
Signed-off-by: Lance Albertson <lance@osuosl.org>
2021-10-22 16:29:33 -07:00
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 ecfce0207d Remove deprecate Glance Registry service
The Glance Registry service has been deprecated upstream and needs to be removed
from the run list here for testing.

Needed-By: https://review.opendev.org/690401
Depends-On: https://review.opendev.org/691732
Change-Id: Ib9ef88684bab8ab5f8919646a88f1b2bee1beadf
Signed-off-by: Lance Albertson <lance@osuosl.org>
2019-10-28 12:21:12 -07: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
Lance Albertson d3a307d917 Add CentOS 7 for integration check and gate jobs
I'd really like to re-enable integration tests for CentOS since we use
it quite a bit. This should also hopefully catch any issues that might
be missed.

Change-Id: I2be43a81c5c8d4e36253b740affe7223f7a54acd
Signed-off-by: Lance Albertson <lance@osuosl.org>
2019-07-07 22:14:03 -07: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 d248359638 Regenerate JSON artifacts
Depends-On: I72a1775369f955901260173b061f28640055c808
Change-Id: I35f35c402aff7c333d34f0d623b3d24595f59760
Implements: blueprint deprecate-rakefiles
2018-07-12 15:42:32 -07: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 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
Zuul f7a6752317 Merge "Implemented Chef 13 support for Test Kitchen and CI" 2018-01-23 10:23:42 +00: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
Samuel Cassiba a317a117c8 Updated integration attributes and methods
- Implemented changes consistent with cookstyle
- DRY the environment files
- Added tempest recipes in minimal role; drop build-essential
- Corrected url for chefdk with current scheme
- Removed nova smoke test since this is handled by tempest and tends to fire
  before nova is available in integration

Implements blueprint modern-chef

Change-Id: I5c5371eed12b282a527576822b270cce8b0e76a7
2017-12-23 21:54:20 -08:00
Samuel Cassiba f6ce85b324 Initial repo Pike updates
- Switched default linter to cookstyle
- Renamed rake tasks to conform with Chef conventions
- Added repo, memcached, libvirtd overrides for testing
- Added Python wrapper recipe

Change-Id: I91d380006d8ca8b81a05c629aff444321ada13e7
2017-09-27 09:04:37 +00:00
Samuel Cassiba 2873826b76 Refactored provisioning cookbook for Ocata, ChefDK updates
- changed to a more alive fork of statsd, as att-cloud/statsd has been stale
  for years
- renamed multi-node to multinode to be consistent with OpenStack
  naming conventions
- introduced network node in the multinode scenario
- bumped mysql2 to 0.4.5 to align with upstream
- removed nova cell setup helper since it is no longer needed

Change-Id: If4d4d45981c8895ca57cba9c34fa1eea4b8871e3
Depends-On: I950605f384405b55737af77bc4224f1e18fee8e1
Depends-On: I4c26aea78220eb20fc4e5e964af93414855df5f6
Depends-On: I3112615cec3dd80c63779d164893b4171773856c
Depends-On: I97b453fc419bfbf01679dadf39a256b1f0f99859
Depends-On: Iba9ba7110dfde7635edc6706ecbbafbdbb161002
Depends-On: Ie1d5f27a9cf8803044568a31e4dae7654b02c9a1
Depends-On: I7c2950270f88cc9d54de593460009c6741913796
Depends-On: I16d6f892f325a80eb3eabd10110177246b63663f
Depends-On: Ie61ae3ca685738fe1de98fc9223d3e39535ce000
Depends-On: I63e6680cec8b66e2ece2d2627c0b413f5d401317
2017-08-02 16:58:56 -04:00
Jens Rosenboom 887f82636d Only run a minimal integration test setup
Currently integration tests running on Infra instances are failing
because they are hitting the 8GB memory limit. So we remove all but
the most basic services from being deployed, creating effectively a
minimal-in-one setup.

Change-Id: Ica74ed9a79e7aa6800a9b5e874013df99f6654aa
Depends-On: I9e7b24ba40c9f8303eae1325ced1f5a787466888
2017-05-30 06:08:21 +00:00
Samuel Cassiba db2a2ff569 Adds yum/apt cache attributes, corrects MQ binding
- adds an override for update_apt_cache / update_yum_cache, to stop
  apt.conf from showing up on RHEL and vice versa
- corrects node['openstack']['bind_service']['mq']['host'] in multinode
- deprecates nova-cert recipe
- corrects multinode roles, adds neutron-lbaas-dashboard

Depends-On: I89714e06eab803985ebffcdff5ff77655287c3e6
Depends-On: I457c239f0ff80eb78c49f7a1aae989a8368df80f
Depends-On: Iea2070467503f9a434e927e2580ef2b4135e98f7

Change-Id: I7946275f1e354de210e2ec9e9ceba3436063f5a0
2017-04-07 15:33:34 -07:00
Jens Rosenboom 5c9be13219 Fix memcached_servers setting for integration test
When running with chef-local, the search that is used to determine the
list of memcached_servers fails, leaving this setting empty for
integration tests. As a workaround, set the corresponding variable
explicitly in the allinone environmnet.

Also fix the Rakefile in order to allow the integration test to be
run more than once without issues.

Change-Id: I526de86e674477075c8ea51b31473d7a376723d7
2017-02-10 10:49:06 +01:00
Samuel Cassiba f9ffdfa11f Enables Ubuntu Xenial release (16.04)
- replaces ubuntu14 with ubuntu16
- style fixes to make rubocop happy
- converts smoke tests to python-openstackclient
- tweaks memory limits for multi_node
- corrects ethernet interface naming
- prunes misleading pre-provisioning environment files
- uses atlas for vagrant images
- makes the destroy_all recipe work again

Change-Id: I79aa5f793614f5430c613dc0b2fc241434fde1f9
Implements: blueprint newton-xenial
2016-12-12 14:13:44 +01:00
Jan Klare e4870d3dab add telemetry to allinone setup, data bag items
- adds telemetry to allinone role
- add telemetry-related data bag items
- use database as default store until gnocchi packages work on trusty
- add some basic ceilometer api querys to Rakefile

Change-Id: I87ff3df0dc92b9e9f5c7abc06727b53be521d8c7
Depends-On: If513cb2715d8266845bd6541d12005edef70f11c
Depends-On: I432555c558adfd9db07b27acd15365e333a13dc2
2016-06-14 09:41:40 +02:00
Jan Klare 49bc780dd4 multi_node example added and role cleanup
* remove unused roles (may be refactored and added back later)
* added multi_node scenario to deploy controller + 2 compute nodes on vagrant

Depends-On: Idc605fed9066abbfbc1d6cd67805bf2a1aa1c31c
Change-Id: Ie32b743c09cdd3f805a374e1cb9e15f07978166a
2016-05-09 17:36:06 +02:00
Samuel Cassiba e449ed20bd Override lc_messages_dir for mariadb
Works around an issue with the mariadb cookbook

Change-Id: I05279668b8a39717bbfba2f22aca115ba314d176
2016-04-15 11:03:46 -07:00
Jenkins c0cca20fea Merge "Use default cirros image defined in cookbook" 2016-04-11 00:43:07 +00:00
Mark Vanderwiel 787cf94902 lint cleanups
noticed a few lints that are easily cleaned up.

Change-Id: Id94acbd2a9f46c72c34753ff3ba835e33864a9aa
2016-04-08 12:20:02 -05:00
Mark Vanderwiel 07193a0c25 Use default cirros image defined in cookbook
Not need to respecify image in env when already
done in cookcook.

Change-Id: Ib674ec5f331109ac26c1d49e45b17f9a650e2616
2016-04-07 09:29:14 -05:00
Jens Rosenboom 5f04755bed Fix dashboard integration testing
The data bags were using the wrong keys, leading to the generated files
being empty.

Set some more attributes to fix the generated apache config.

Change-Id: Ic61f5e20002628694ae11c8a9ba6ddfff607e581
2016-03-10 11:21:16 +01:00
Jan Klare 893e074425 use Array for apache2 listen attributes
* remove empty hash as value for apache.listen from testing environment

Depends-On: I7304932c19398c2bd245bbb7cbad6df4f487047e
Depends-On: Id91fb812ba91dab2803c68d24adaddbe0fde7a5e
Change-Id: Ia135f648acf0aec19b8de9f0de4aae3b45ac86ff
2016-03-02 15:00:04 +01:00
Jenkins 8e407bfa0b Merge "Temporarily disable gpgcheck for RDO" 2016-02-23 18:16:59 +00:00
Jenkins d68b66be9c Merge "Increment CentOS release" 2016-02-22 16:21:13 +00:00
Samuel Cassiba d275d8afa0 Increment CentOS release
* 7.2 image is available upstream

Change-Id: I5266bfd32d90969c640b4af1e5a96dad249480c5
2016-02-17 18:56:12 -08:00
Samuel Cassiba 50a683dc4c Temporarily disable gpgcheck for RDO
Change-Id: Idad2c506690c262eca9451b8a2e9dbbb20a15939
2016-02-16 22:04:56 -08:00
Mark Vanderwiel c1965ae7a7 fix ubuntu-cloud-keyring gate issue
The images are "pre-cached" with apt repo data and this can become
stale and in our case we hit missing packages like:
ubuntu-cloud-keyring.  I added a apt cookbook option to force
the repo cache updates to happen each time. This seems to fix the
issue.

Change-Id: Icfd075e9d2eb4ea2f9768b09f5075b3b1ed3d383
2016-02-16 12:25:12 -06:00
Jan Klare 481af2f96a adaptions for refactored cookbooks in mitaka cycle
* added new test scenarion allione (and all the needed files for it)
* removed old test scenarios aio-nova and aio-neutron as well as multi-neutron
  and multi-node and the related files since they will not work with the
  refactored cookbooks
* removed databag items for currently untested service cookbooks
* modified Rakefile to use new test scenarios for local and jenkins integration
  testing
* adapted README and docs to fit new test setup and explain the new
  attributes/template logic (with TODO)
* adapted Berksfile to use the master apache2 cookbook to comply with the
  dependencies in identity and dashboard
* removed image_upload recipe since this is already done in the
  integration-test::setup one
* moved recipe integration-test to a different chef_run to allow all services to
  be restarted in delayed actions of first run before using them
* removed heat from the testing stack until refactored
* removed tempest unit tests 'run_tests.sh' from integration testing scenarion,
  since there is no need to run tempests unit tests in our deployment

Depends-On: I0547182085eed91d05384fdd7734408a839a9a2c
Depends-On: I3262b2e6f792f37c32a446e6567790b82bdd4613
Depends-On: I80ed8a7892b59f7fd582505445a31b0df8d68752
Depends-On: Ia7fd927f42f4a1e484e8f2d34c52b1dc6d0ce6dd
Depends-On: Ifd11f86c576d7dbb709bdd302d41e39e900e1b74
Depends-On: Ida408a025f1a3e6a632108a9a32877026e286116
Depends-On: Idadc97bd7380d6c4f9f6f33d9c6b1215a5f24772
Depends-On: I9ac9eeb29ab27f31394830e4b6f999d5870cc0e4
Depends-On: Ifa5a7f4e1df47a3961976e64f654224864c3dcb4
Depends-On: I9cc1b5cc069987ac83e064322c2291772505ff5f
Implements: blueprint cookbook-refactoring

Change-Id: Icf0921229e9473a842d7ce5706027d56229e11d4
2016-02-10 09:25:55 +01:00
Mark Vanderwiel fb1b9d8a1f Add heat into single controller roles
Keep flushing out our stack by adding heat into the default mix.
I look into adding a simple heat stack integration test with
another patch.

Fix length of heat auth_encryption_key to 32 chars

Depends-On: Ie8d62b449ec272f5cb7a06acdd54b3437aa57f98

Change-Id: I683aafcb060cdcb80ff7ccd025a5bd228c9b41c7
2015-10-02 14:56:13 -05:00
Jens Rosenboom 013925d1ac Fix integration testing
The current setup breaks external connectivity for the test instance.
In order to avoid this, do not set the
external_network_bridge_interface. This will default to the external
network being set up on eth1.

After that, installation is still failing, add removing pre-installed
libvirt as a workaround for [0].

[0] https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1499199

Change-Id: If4dfaaa0a6aa089e395be6979d1b06cc70132645
2015-09-26 10:40:08 +02:00
Eric Alwais 061bdd761a Adding the bare-metal documentation
Adding the how to build a bare-metal document for AIO.

Change-Id: I011ebf28252d1956288705f0da71a6a5f2fef017
2015-09-15 23:21:08 -07:00
JJ Asghar ee980c55bf Updates for Liberty
Changed a few references from kilo to liberty

Change-Id: I1cd083712aa869f0b4291a23096fead195e7993d
2015-08-27 18:15:48 -05:00
Mark Vanderwiel 6f2718a65b Update centos environments to catch up
Many changes have gone in to the ubuntu environments, this
catches up the centos ones.

Change-Id: Ib68cab13e33f44aff1a176028161f0e3005bab52
2015-08-12 10:02:53 -05:00
Jenkins d93ee7c58f Merge "AIO-Neutron changes" 2015-08-12 07:34:36 +00:00
JJ Asghar 3549f970b1 AIO-Neutron changes
It seems there are some changes that the local creation of aio-neutron
need to be updated with. This will fix and get aio-neutron working again.

Change-Id: I25881480e1fec261b5113a7b22d8cdc17bc286ac
2015-08-11 09:56:47 -05:00
Mark Vanderwiel a2bbed7dd8 Enable create volume consistently
Have all the repo test environments enable the basic test volume
creation to allow for consistency and easier testing.

Change-Id: I4d829839872a571694bd940481b3979d9b6e7d85
2015-06-30 11:38:56 -05:00
Jenkins f7d1057c6b Merge "Enable RDO midstream repos" 2015-06-26 19:00:04 +00:00
Samuel Cassiba aef8d43896 Enable RDO midstream repos
Closes-Bug: 1467718

Change-Id: If32eac10a1f013539d373aa4d702b4789bc270d6
2015-06-22 18:31:09 -07:00
Mark Vanderwiel c5e77f20dd CI TEST
This will allow a basic all in one environment test to be run against
the openstack cookbook repo.  Once in place, it can also then be used
by individual cookbook patches to run the same tests.  This is just a
starting point for our CI work, see the todo list below.

- setup for using new experiemental gate
- run aio neutron environment
- run tests
- check for idempotency

TODOs
- get basic networking (local or flat) working on one nic
- gather logging info for failures (infra publish gate change?)
- multinode environment

Change-Id: I23ebc6092fc563ebfa0a9882668a5f51937a3013
2015-06-16 16:59:51 -05:00
Mark Vanderwiel 0390aa9200 Allow env var REPO_OS to easily switch between platforms
Use a env var instead of manually editing repo files to use
centos.   This also makes it easy for new tools like, test-patch
to switch between the platforms.

Next step will be to allow REPO_DEVICE=  to easily
setup the network interfaces in the multi node cases.

I think env vars are a simple way to handle this, but we could also
consider an user config file ~/openstack-chef-repo.cnf.  Thoughts?

Change-Id: I82e82b35b51e08ff503fdb10fa1ce041c4be4af2
2015-04-29 12:12:48 -05:00
JJ Asghar 39414f452a Fix for rabbit user issue.
This creates the rabbit user to admin instead of guest. This is
important for multi setups and also to confirm that we don't leverage
the guest user for aio.

Change-Id: I98d5c14badd8e1230a4f13d4d50a6c54556c19af
Closes-Bug: 1434304
2015-03-23 17:08:33 -05:00
Mark Vanderwiel 03e2169504 Initial kilo updates
Change-Id: I9bbe279c526d58efbed4ce08f0557b5ab4639208
Partial-Bug: #1426424
2015-03-02 13:49:09 -06:00