42 Commits

Author SHA1 Message Date
Lance Albertson
d50c4ad40d Chef 17 support
- Require Chef >= 16.0
- Enable unified_mode
- Update to latest upstream cookbooks for etcd, mariadb and memcached
- Update copyright years

Depends-On: https://review.opendev.org/c/openstack/openstack-chef/+/813950
Change-Id: Ib410ed28388725751a6295c58ce1f5e89c529b28
Signed-off-by: Lance Albertson <lance@osuosl.org>
2021-10-13 23:28:32 -07:00
Zuul
f888e048e7 Merge "Add load-balancer service" 2020-11-20 10:15:24 +00:00
Jens Harbott
e009657be1 Add load-balancer service
In preparation for an openstack-load-balancer cookbook add the service
so that we can create a database, message queues and endpoints.

Change-Id: I4e67ec649124a16470c72bc831bd2825b3741449
2020-11-19 17:36:52 +00:00
Lance Albertson
8d07e9acee Cookstyle 6.19.5 fixes
Also remove unused database resources that somehow got imported in
https://review.opendev.org/701027.

Change-Id: I5241e0f1eb3bf44158bc64019a3880d83a6d4bdc
Depends-On: https://review.opendev.org/756168
Signed-off-by: Lance Albertson <lance@osuosl.org>
2020-10-05 17:02:11 -07:00
Lance Albertson
a45cea15d7 Updates for Train
Added:
- Placement service

Changed:
- Update release to train
- Cookstyle fixes
- Update to mariadb ~> 4.0

Removed:
- Unused rubocop rules

Fixed:
- ChefSpec for wrapper now correctly works with node.role?

Depends-On: https://review.opendev.org/731849
Change-Id: I3e809350541e9c7beab311e5b3e768df1612d9f5
2020-05-29 17:29:10 -07:00
Lance Albertson
abab7d0ecb Stein fixes
- Switch to Stein release
- Cookstyle fixes
- Update cookbook etcd to ~> 5.6
- Update README
- Add myself to author list and OSU Copyright
- Properly fix completions recipe and ensure it works
- Create and start the etcd service in the etcd recipe
- Update delivery configuration to exclude integration cookbooks
- Refactor and update RenderConfigFileMatcher to work with newer
  ChefSpec. This fixes output which was passing but showing error
  messages.

Depends-On: https://review.opendev.org/701027
Change-Id: Iba3eeabe85ab9303147e43eeb550212a46d190f3
2020-03-19 10:52:29 -07:00
Samuel Cassiba
7c31fb629b Convert hyphens to underscores for service names
The Chef Style Guide[1] does not recommend using hyphens for cookbook or
resource names. To maintain consistency, we should follow best
practices.

In order to pass Zuul's one-way CRD requirements[2], both hyphens and
underscores must exist for a compatibility period.

[1]: https://docs.chef.io/ruby.html#use-of-hyphens
[2]: http://lists.openstack.org/pipermail/openstack-dev/2015-February/056515.html

Change-Id: Ic2b6d8f1cdf719791faaebdbd7e29e789eb3f31c
2018-12-15 00:16:38 -08:00
Samuel Cassiba
192d358148 Rename bare-metal to baremetal for Ironic
Change-Id: I55eb4401dbc1e7c8cbd098a2bafca7f414d250de
2018-09-04 15:29:48 -07:00
Seb-Solon
1b779aec83 Add: aodh support
Change-Id: Ifba4d1c4111b212f67a8a8850875b44fa4795dbb
Partial-Bug: #1779940
2018-07-04 16:06:08 -04:00
Jenkins
eadaa68937 Merge "Drop unused messaging attributes" 2017-09-13 14:18:33 +00:00
Jenkins
7830eff2e2 Merge "Initial common Pike updates" 2017-09-13 14:10:50 +00:00
Jens Harbott
e54ba0a245 Drop unused messaging attributes
These attributes were duplicated or are not needed anymore after the
great config refactoring.

Change-Id: I3b580ba36565861b6c78120fc8dc2718f6e2f452
Depends-On: I90f14fd1f0104ac6052349d79deaad342058c9e1
2017-09-12 12:58:21 +00:00
Jens Harbott
f3389a2b8b Add support for Designate DNSaaS project
The cookbook for installing Designate is being developed at [1]
currently, it needs to be added to some base service definitions.

[1] https://github.com/cloudbau/cookbook-openstack-dns

Change-Id: I3407e698dd990661d280f25fc3de93aaa1477354
2017-09-12 09:01:01 +00:00
Samuel Cassiba
ffbf83d17f Initial common Pike updates
- Bumped chefdk to 1.6.1
- Switched release to pike
- Added is_release attribute for testing, defaults to false
- Added RDO deps repo for testing pre-release packages
- Added ubuntu-cloud proposed repo for testing pre-release packages
- Switched the default linter to cookstyle
- Normalized the banner message
- Dropped pip installation method for python-openstackclient since the
  packages are fresh enough

Change-Id: I7a67ba2520b8e44efec6edd8506f96b0e0dc913b
2017-09-11 23:38:26 -07:00
Samuel Cassiba
1e2bd7a338 Corrects rabbitmq user, yum cache cleaning
- corrects the rabbitmq 'guest' user to 'openstack' to for a more secure
  installation, as 'guest' is not secure and is deleted in other
  non-Chef deployments.
- adds update_yum_cache attribute to conditionally include the yum
  recipe, removing the hardcoded entries from the run lists. This
  prevents yum.conf from showing up on Debian-based machines.
- enforces GPG checking for RDO packages, uses correct key.

Change-Id: I89714e06eab803985ebffcdff5ff77655287c3e6
2017-04-09 18:35:44 -07:00
Jan Klare
9e066bdf53 database and message queue refactoring
* adapted the database and message queue attributes to fit to the ones used for
  the openstack services
* added optional attribute to allow setting an specific endpoint for the db root
  user (useful in hardening scenarios)

Implements: blueprint cookbook-refactoring
Change-Id: Iae7e302973805af3cb44be1b29d0e61e76eb0aa0
2016-02-18 15:18:35 +01:00
Jan Klare
1858c025b2 library cleanup and refactoring
* version bump to 13.0.0 for mitaka release
* removed suse support
* removed general endpoint method, since we should be able to always specify
  which endpoint we need
* removed fallbacks in specific_endpoint method, since this behaviour is not a
  very obvious one to the user and it should rather return an error than an
  unexpected result
* dry public, internal and admin endpoint methods
* removed obsolete private methods
* adapted method calls for admin_endpoint in libraries/cli.rb
* refactored set_endpoints_by_interface recipe to directly call address_for
  instead of address, since the recipe already checks for an existing attribute
  ..['bind_interface'] and therefore address would redirect to address_for
  anyways
* moved the nested hash order for the public, internal and admin attributes to
  to be more clear and to break all existing calls to fix them during the
  refactoring process of all cookbooks
  e.g: node['openstack']['endpoints']['internal']['identity'] is now
  node['openstack']['endpoints']['identity']['internal'] and can be moved into
  the identity cookbook. This also streamlines these endpoint attributes with
  the bind_interface and host attributes
* removed dependency on openstack-identity cookbooks by moving openrc recipe to
  opentack-identity (same for corrensponding specs and template)
* removed address method and use the address (or hostname) defined in the
  endpoints hash directly (logic to set this attribute should rather be
  done in a wrapper (with a fitting method) instead of a static and predefined
  one)
* removed set_endpoints_by_interface recipe since logic for defining the
  endpoints will be moved to wrapper cookbooks
* added helper method merge_config_options for generation of config hashes used
  in service config templates
* added template for openstack-service.conf.erb which can be used by all service
  cookbooks
* deleted all endpoints attibutes, since these are moved to the service
  cookbooks for easier dependency handling

Implements: blueprint cookbook-refactoring
Change-Id: I0547182085eed91d05384fdd7734408a839a9a2c
2016-02-05 08:38:07 +01:00
Mark Vanderwiel
818c927a3d Allow rabbit mq kombu ssl configuration
Add the rest of the kombu ssl configuration options.

After this patch goes in, will need to update each cookbook
that uses rabbit mq to add these to the conf file.

Change-Id: Ie89f48b4a471d48df88f185a1012da9eb63071bd
Partial-Bug: 1464706
2015-06-15 13:59:13 -05:00
Mark Vanderwiel
fafc3c83ac Allow oslo rabbit heartbeat configuration
In order to allow components to better handle and respond to mq failures,
oslo has some heartbeat options that are useful.

Change-Id: I75b2b5e140095bdc828df6af13159170aa08839c
Partial-Bug: #1462438
2015-06-05 11:51:18 -05:00
Mark Vanderwiel
fc217f6ce4 Cleanup minor rubocop offenses
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: Ic0c0677de44642e0994c0b95a3c270cbd4749b40
2015-06-02 11:45:59 -05:00
Wei Hu
22c46294d6 Add rabbitmq max_retries and retry_interval attr
Oslo.message using rabbit_max_retries and rabbit_retry_interval to
define reconnect rabbitmq server times and interval when can not
connect to rabbitmq server.

Change-Id: I6bba768f4cf0c61b92fbc5d682b60f094afb7180
Partial-bug: #1439968
2015-04-17 10:03:16 +08:00
Mark Vanderwiel
e704cdf92d Allow mq setup for keystone
In some cases, keystone notifications are required. This
Add identity to the list of component that could use messaging.

Another patch to identity will update the keystone.conf
template to make use of mq just like the other cookbooks do.

Change-Id: Id4a777e1fae53cd5ac48b860e4ac01a4e70be7e7
Partial-Bug: #1439306
2015-04-16 06:12:17 +00:00
wenchma
e17ae52931 Add kombu_ssl_version attributes for rabbitmq SSL
Change-Id: I40657a15f3cccb115396bf23083320d0f4d82d51
Closes-bug: #1433405
2015-03-20 15:55:01 +08:00
wenchma
141a2a9e14 Add new attributes for openstack-bare-metal cookbook
Update to add the new attributes about database and mq to support
openstack-bare-metal cookbook.

blueprint bare-metal-enablement

Change-Id: I777d04e72cd1e67525716afcf7538d4662a5e204
2015-03-05 01:33:14 +00:00
Mark Vanderwiel
e7a62853a3 rabbit ha cleanups
Add global flag for enabling rabbit ha
node['openstack']['mq']['rabbitmq']['ha'] = true

Change-Id: Iaaea0857d145c1f6cdb82eee6453a50083d9c331
Partial-Bug: #1408705
2015-01-08 13:34:07 -06:00
wenchma
0d118830f2 Enable use_ssl be configurable
Add ability to enable rabbit_defaults use_ssl item can be configured.

Closes-Bug: #1353793

Change-Id: I28d044c3e2d3f49cde974c81db0e66dd69b3ccf2
2014-08-13 17:51:06 +08:00
Ionuț Arțăriși
cf0db5598d add Trove attributes (mq, endpoints, database)
Change-Id: Idb112a2ad9ca8c064b5f023bf3e8916ee04f5857
2014-06-13 11:37:46 +02:00
Matt Odden
bf51e5dc56 Add missing AMQP attributes
There are some settings that are useful for tweaking AMQP
settings in all the service configurations that should
be made available for setting. This adds flags for durable_queues,
auto_delete, and a setting for QPID topology version that
is required to be set correctly to use QPID federation.

There will need to be dependent changes to utilize these
in the project specific cookbooks.

Change-Id: I850c01a40aab02cf4531f7983543ef89e0e60446
2014-05-20 21:56:14 +00:00
Mark Vanderwiel
6050195fe1 Add mq control_exchange to common messaging attributes.
Add common mq control exchange for components.

Change-Id: If89f95f638c3087775aec837e9c827ce42459b0a
Partial-Bug: #1259038
2014-04-02 11:38:50 -05:00
Chris Dearborn
5299ec6586 Removed deprecated connection attributes
This is a follow up change set that removes the now deprecated
messaging and database cookbook connection attributes for host and
port.  These attributes have been replaced with corresponding
attributes in endpoints.

blueprint increase-ip-binding-flexibility

Change-Id: I2a8676155c6e71bd7ea92d1f33145d073cd899d1
2014-03-19 10:34:13 -04:00
yaohaif
0e085331e5 Add a single attribute for qpid protocol
This fixes the issue that there is no single attribute for qpid protocol
attribute, I defined a ['openstack']['mq']['qpid']['protocol']
attribute and it's default value is "tcp", and for the various openstack
service's qpid protocol attribute, we can override this attribute for
all openstack service, or they can override the individual qpid protocol
for the specific openstack service

Change-Id: I4cdae33f9d3f83edbf62d5019f9cb6830a02ab83
2014-03-18 11:39:08 +08:00
Chen Zhiwei
e2a48b7013 Rename openstack-metering to openstack-telemetry
update cookbook attribute name, change metering to telemetry

Change-Id: I066001b38a236fdb84c5de4db13ddf0aa635868a
2014-03-13 02:51:05 -04:00
Matt Thompson
bc5e76a8cb Update qpid attributes
This change finishes off bp use-data-bag-for-qpid-password by removing
the unnecessary qpid attribute and defaulting qpid username to the same
value as openstack.mq.user.

Change-Id: I3ee99989c54fcda746eacb5c38011308494dc394
Implements: blueprint use-data-bag-for-qpid-password
2014-03-11 16:28:05 +00:00
Chris Dearborn
f6da45d11f Add ability to specify IP for service
The problem that this change addresses is that the address_for method
will not work correctly if there are multiple IP address associated
with the specified interface.

The approach to solving this problem and moving towards the overall
goal of having one place where service networking information is
stored is to convert address_for calls into endpoints, and add a
address() method to the endpoints interface for IP address resolution.

The address() method has the following behavior: if the
bind_interface of an endpoint is set, then the IP is looked up on
the interface.  Otherwise, the IP specified in the host attribute is
returned.  This allows the caller to choose either method of
determining what IP a service will be bound to.

This initial change switches both the openstack-ops-database and
openstack-ops-messaging cookbooks over to use endpoints instead of
address_for.  The other cookbooks will be switched over time.

blueprint increase-ip-binding-flexibility

Change-Id: I527e4e734f3c1eea9ac2567e0a90524d78ee867e
2014-03-06 08:38:41 -05:00
Matt Thompson
64b61d0db8 Add notification_topics attribute to network
This change adds the notification_topics attribute for the network
cookbook.  This commit will need to be merged before
https://review.openstack.org/#/c/75910/.

Change-Id: I65d24bf5c981e3540b1a530f7343983b6c513cc2
2014-02-28 09:11:30 +00:00
Hugh Saunders
562c2b6f2e Add notification_topic attributes for all services
These will be added to service config templates in subsequent patches.

Change-Id: I19b274d641f50e3c176bd038505140ffe92038c6
2014-02-26 16:02:37 +00:00
Matt Thompson
589d4be508 Changing to qpid does not set qpid attributes
The case statement needs to check the node's service_type, not the
default.  Checking the default will always result in the rabbitmq
attributes being set.

Change-Id: Iaa83d07c12b21037b60d938e7eb1b5f548777d2a
Closes-Bug: #1282528
2014-02-20 11:42:49 +00:00
invsblduck
7f9b68bb19 tighter control of mq attribute defaults
remove repetitive copy/paste blocks that are developing drift (eg., qpid
'reconnect' missing for compute, rabbit 'ha' missing for image, and
rabbit 'use_ssl' missing for network).

this provides more reliable assignment of defaults and better visibility
of the one-off tweaks (eg., notification_topics).

Change-Id: Iba6fd99de86ea5ce5afab1654c4bc7e7d32f3e51
2014-02-19 11:05:07 -08:00
Jenkins
970654cd19 Merge "Assign attributes for rabbit/qpid image mq notification_topic" 2014-02-12 14:01:41 +00:00
Andy McCrae
7c64e66fb6 Assign attributes for rabbit/qpid image mq notification_topic
- Add default['openstack']['mq']['block-storage']['notification_topic'] to
  messaging attributes.
- Add default['openstack']['mq']['block-storage']['rabbit']['notification_topic']
  to messaging attributes.
- Add default['openstack']['mq']['block-storage']['qpid']['notification_topic']
  to messaging attributes.

Change-Id: I7f7262abeb09171ab2bcaee67b70928b2a37c2d0
Partial-Bug: #1276099
2014-02-10 17:16:54 +00:00
Andy McCrae
8ad552adbf Assign attributes for rabbit/qpid image mq notification_topic
- Add default['openstack']['mq']['image']['notification_topic'] to
  messaging attributes.
- Add default['openstack']['mq']['image']['rabbit']['notification_topic'] to
  messaging attributes.
- Add default['openstack']['mq']['image']['qpid']['notification_topic'] to
  messaging attributes.

Change-Id: If410076d2d869831dfcb68c01e05c762f9d0b073
Partial-Bug: #1274879
2014-01-31 13:18:44 +00:00
Matt Thompson
c741059eda Initial step to clean up db and mq attributes
Here we move db and mq attributes already present in default.rb
attributes into new files (database.rb,messaging.rb).  Additionally, we
pull in rabbit/mq attributes from
openstack-{block-storage,compute,image,metering,network} while
transforming namespace from openstack.SERVICE.mq and
openstack.SERVICE.rabbit to openstack.mq.SERVICE
and openstack.mq.SERVICE.rabbit.  Lastly, we copy
openstack.SERVICE.db.username attribute from
openstack-{compute,dashboard,identity,image,metering,network} while
transforming namespace to openstack.db.SERVICE.username.

Change-Id: I50c900aa2ba92ce53f4a6ad05aeabd59e701b514
Implements: blueprint clean-up-attr-for-mq-and-db
2014-01-24 08:54:12 +00:00