Commit Graph

108 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
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 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
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
Zuul 6102a1ac01 Merge "Add Designate sink service to allinone role" 2018-09-11 13:09:52 +00:00
Samuel Cassiba 26d48d94af Add Designate sink service to allinone role
Change-Id: I1403aa3bed01f1fd225f0f4cf3e2abca4bd6d973
2018-09-10 19:36:51 -07:00
Samuel Cassiba c99306ce47 Add Tempest testing to allinone role
Change-Id: I608d1055fb7d4db5b45593bbbab1789a3470b8cc
2018-09-08 16:15:15 -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 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 3df1fba78e Cleaned up minimal role, deprecated provisioning cookbook
- The minimal role contains a subset of allinone for use in integration. This
  allows to execute Tempest at the end of the Chef run.
- Being that chef-provisioning-vagrant is no longer working as of ChefDK 2.x,
  the provisioning cookbook serves no functional purpose.

Change-Id: I99a6de49640356c98adadf3237dc68383be06bb4
Implements: blueprint modern-chef
Depends-On: https://review.openstack.org/542612
Depends-On: https://review.openstack.org/542613
2018-02-09 15:08:20 +00: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
Jenkins f6a4bf69ea Merge "Added etcd as an available base service" 2017-09-22 05:22:05 +00:00
Jens Harbott 0398e8f13c Add cookbook to deploy Designate service
Depends-On: I3407e698dd990661d280f25fc3de93aaa1477354
Change-Id: I633f115a49f2780de56ef627ed2ac9c0d07ba6c0
2017-09-12 09:04:23 +00:00
Samuel Cassiba ea523064a0 Added etcd as an available base service
- Added etcd recipe to allinone and multinode-controller roles
  to make an etcd service available as a base service.

Change-Id: Ibc966d8b4848f5829e4cd1706f55a3dde63d6656
Depends-On: Id2f934a9fc408276cb0a25afc2f65ec5f5c54c15
2017-08-22 09:54:41 -04: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 020c81d106 Update things for Ocata release
- Remove old workaround for oslo-privsep
- Set up nova cells
- Add databags for keystone fernet keys
- Drop ceilometer-{api,collector}

Change-Id: I256b9d4294282ede5235d6d86cf14d48667e9430
Depends-On: I8bc2eb5622b14457ef80cb70bf7a1d60c9fe9793
Depends-On: Ib87e9b5142b835c4be5e07b9d53e39b48b6f605e
Depends-On: I28c27caacc09a3e46eca135a6c4f5a841f4715f9
Depends-On: I77ac294fd8e1cd4e6bc39667ddfdea21c4daed8a
2017-03-30 14:28:36 +00:00
Jens Rosenboom 5a22e2dcc0 Add testing for nova placement-api recipe
The placement_api recipe is being added to the compute cookbook, so we
add an example data bag for it and include the recipe in the allinone
role that is referenced for integration testing.

Change-Id: Ie75d743a94973b2e9a37e1df8e7a0f691d3358f0
Depends-On: I1d1f1cc7046cb30a91894a0c884bc861d7f3dd95
2017-03-06 18:04:08 +00:00
Jan Klare 4e2a25f99a add neutron-lbaas-dashboard recipe to allinone role
Depends-On: I4f407598acccd2d21d4204b936122963ebd4f7c8
Change-Id: I1a602324c6bf035723bc79e24722b61ef025c44d
2017-02-17 15:33:10 +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 66045d888d Differentiate between Ubuntu and CentOS for integration
Change-Id: I438fe85a2883029973fa2f5f8b263b7689334c8f
2016-04-06 10:18:00 -07:00
Samuel Cassiba 75f5f89044 Remove api-ec2 references
api-ec2 is being replaced by the `openstack-ec2` cookbook.

Change-Id: I2dbbafaf8641ece00d4181d1ea4ba93f00eed6ed
2016-03-18 08:05:14 -07:00
Jan Klare 7fc714104b add heat back to allinone role after refactoring
* added orchestration recipes to integration test (allinone role)
* added heat queries back to basic_queries in Rakefile (were removed previously
  until refactore)

Change-Id: Ic1a1863343be0d0d21b66a804af18c67ee625ee0
Implements: blueprint cookbook-refactoring
Depends-On: I16a29e28068d106f0edcbe04cb529aabbbed1ac5
2016-03-08 10:55:54 +01:00
Jan Klare de3c86d681 fix recipe order for allinone role and bootstrap.sh
Change-Id: I75088a00dc17b8a4907a1314d82aff500c5dccfe
2016-03-07 09:15:14 +01:00
Jan Klare 91d871fd99 refactored allinone role to include the splittet network recipes
* recipes in openstack-network should be splittet to allow more modular
  setups
* included _bridge_config_example recipe in allinone role

Change-Id: Iac85ee8790f1e43a1c684fbccf0cf22deffc2f30
Depends-On: I6383575862ba110b3f3b5cba227288dc026fce77
2016-03-02 08:05:33 +01:00
Samuel Cassiba 261c35122a Remove locale cookbook from allinone role
The locale cookbook is broken on CentOS 7 and fails to converge.

Change-Id: I359e5dce2bdf9fbb65e31b20b04a41157b1b1198
2016-02-16 17:01:55 -08: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 f890bfeb0d Fix interface selection to be automatic
Added a list of possible interfaces for which the
vagrant provisioner will choose the first one that
is available.  No more editing the test recipes.

Cleaned up the os selection to hide the
version specific stuff to be consistent with the
environment logic.

Fixed up some file modes.

Forced the chef client config directory as it can search
in bad places in some scenarios.

Change-Id: I38a7a86b58893b912af99fabf04ca9052f914346
2015-11-06 11:04:32 -06: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
Mark Vanderwiel 1e560bd5d1 update identity role for using apache as default
Use the new server-apache recipe as the default in the
identity role.

Change-Id: Ibac938b516383c82c43d49939c6825049e203920
Implements: blueprint keystone-apache
2015-09-01 14:01:37 -05:00
Lan Qi song 94ccdfe1fa Add support for cinder-backup service
This patch depends on:https://review.openstack.org/#/c/180076/
Implements: blueprint chef-cinder-backup
Change-Id: I97f2fcbf17e60220ca29ee86b871cb4ff81d3e24
2015-05-05 10:09:42 +00:00
Mark Vanderwiel 7850d3b04d Include client recipe in controllers
For testing suite it's nice to have all the clients avaiable.
All in one role is updated to include the clients.
For multi, just add to test recipes to allow for flexibility.

Change-Id: I0b25363e35942e90d48bf008a9967bbe9e0fef64
2015-04-20 10:12:06 -05:00
Mark Vanderwiel 917de05735 Remove commented out ironic conductor
The bugin ubuntu packaging has been fixed:
https://bugs.launchpad.net/bugs/1429962

Change-Id: I31686bd4195d34f920b718e07bcac2af94852ab1
Related-Bug: #1429245
2015-03-31 13:04:23 -05:00
wenchma 8316f7e93b Include the recipe identity_registration in os-bare-metal-api role
Change-Id: I078d4fd77505677910496972d8fcba231770c7ae
Closes-bug: #1431198
2015-03-17 15:15:30 +00:00
Mark Vanderwiel aa48cfbb43 Partial revert of putting bare-metal in repo roles
Bug https://bugs.launchpad.net/ubuntu/+source/ironic/+bug/1429962
in ubuntu repo will cause our repo tests to fail.
To allow progress while this gets fixed, pulling bare-metal
conductor from the os-compute-worker role.

The other bare-metal patches for the cookbook should also get in to
allow clean tests to be run.

Change-Id: I936d90a93141402aac0639576da04fd4e2c8752e
Related-Bug: #1429245
2015-03-09 15:02:15 -05:00
wenchma d4c9172edf Add roles for cookbook openstack-bare-metal
* Adds cookbook-openstack-bare-metal to Berksfile
* Updates infrastructure.yml
* Adds the roles for openstack-bare-metal services
* Adds databag items for openstack-bare-metal

blueprint bare-metal-enablement

Change-Id: Id26509013d33757be65c5f1df6ac11cf33cb6552
2015-03-05 22:19:23 +08:00
Mark Vanderwiel 016a08eadc Update repo with new testing suite
The new testing suite is based upon Chef 12, Chef DK and
Chef Provisioning.  It supports all in one and multi node
environments.  It will be used as the base for future gate
integration testing.  There's is more work to as noted in
the TODO list at the botton of the readme.

Note: to get this thru the existing gate, had to keep the existing
Gemfile.  Added a Gemfile-Provisioning for new stuff and updated
readme with some notes on that.  When we make the switch to kilo
rake gates, we can decide what type of gates the repo needs. I think
it's ready for rubocop at least and maybe continue with something
like spiecweasel to look at the role and environment syntax.

Added draft bootstrap and test default to rubocop to rakefile to
allow for easy integration with new gate rake jobs.

Change-Id: I187df8b78c4cecfb783ab26a6b66b8e8dd6745bd
2015-02-26 15:09:06 -06:00
Chen Zhiwei 9780e56900 Cleanup ceph cookbook, replace with upstream ceph cookbook
The stackforge ceph cookbook was replaced by upstream ceph cookbook,
so remove the roles defined in stackforge ceph cookbook and replace
with upstream ceph cookbook in Berksfile.

Change-Id: I2d12cb6c2c480a37ee1cfeaf5b76f068b6781160
Partial-Bug: #1409943
2015-01-20 18:07:44 +08:00
Mark Vanderwiel db4b5d5e64 Fix object storage recipe names
The names are missing the "-server' for some the recipes.

Change-Id: Ief474de42d606acb6eb77e8343a5ce38b59d2902
2014-11-17 13:08:54 -06:00
galstrom21 569f4af706 Adding roles from cookbook-ceph
* Adding cookbook-ceph to Berksfile
* Updating infrastructure.yml
* Updated Gemfile.lock

Change-Id: I9f132efefdf5b78ea1a8d1ee66185c89e13713de
Partial-Bug: 1348324
2014-08-04 07:34:57 -05:00
Mark Vanderwiel adbd34e188 Add in new openrc to all in one
Allow openrc to be used in all in one for demos and testing.

Change-Id: I1b0a1ae95cf43c6cc5aeee545764faba7e25c1c2
Implements: blueprint moveopenrc
2014-04-30 10:04:38 -05:00
Darren Birkett d96f0d4768 convert roles from ruby to json
test-kitchen/chef-zero does not like ruby roles. Converting them to json
makes test-kitchen happy, and doesn't really hurt anything/anyone else.

Change-Id: Id716c5459103ce340dae4ddef05e16c1a37374fd
2014-04-30 09:01:36 +01:00
Luis A. Garcia bc4f233e7d Add os-telemetry role
This patch adds an all-in-one os-telemetry role with all telemetry
service roles, like we have for all other projects.

Change-Id: Ia72d950b5765ba96cf312e888b5f4cc76093766c
Closes-Bug: #1312324
2014-04-24 10:14:41 -07:00