diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 28503713..00000000 --- a/.gitignore +++ /dev/null @@ -1,26 +0,0 @@ -# Add patterns in here to exclude files created by tools integrated with this -# repository, such as test frameworks from the project's recommended workflow, -# rendered documentation and package builds. -# -# Don't add patterns to exclude files created by preferred personal tools -# (editors, IDEs, your operating system itself even). These should instead be -# maintained outside the repository, for example in a ~/.gitignore file added -# with: -# -# git config --global core.excludesfile '~/.gitignore' - -pkg/ -Gemfile.lock -vendor/ -spec/fixtures/ -.vagrant/ -.bundle/ -coverage/ -.idea/ -*.iml -/openstack -/log - -# Files created by releasenotes build -releasenotes/build -.tox diff --git a/.pdkignore b/.pdkignore deleted file mode 100644 index 7e3277ab..00000000 --- a/.pdkignore +++ /dev/null @@ -1,52 +0,0 @@ -# common list used in puppetlabs repos -.git/ -.*.sw[op] -.metadata -.yardoc -.yardwarns -*.iml -/.bundle/ -/.idea/ -/.vagrant/ -/coverage/ -/bin/ -/doc/ -/Gemfile.local -/Gemfile.lock -/junit/ -/log/ -/pkg/ -/spec/fixtures/manifests/ -/spec/fixtures/modules/* -/tmp/ -/vendor/ -/convert_report.txt -/update_report.txt -.DS_Store -.project -.envrc -/inventory.yaml -/spec/fixtures/litmus_inventory.yaml -/.fixtures.yml -/Gemfile -/.gitattributes -/.gitignore -/.pdkignore -/.puppet-lint.rc -/Rakefile -/rakelib/ -/.rspec -/..yml -/.yardopts -/spec/ -/.vscode/ -/.sync.yml -/.devcontainer/ -# OpenStack-specific files -/bindep.txt -/.gitreview -/releasenotes/ -/setup.cfg -/setup.py -/tox.ini -/.zuul.yaml diff --git a/.zuul.yaml b/.zuul.yaml deleted file mode 100644 index 03befc43..00000000 --- a/.zuul.yaml +++ /dev/null @@ -1,7 +0,0 @@ -- project: - templates: - - puppet-openstack-check-jobs - - puppet-openstack-module-unit-jobs - - puppet-openstack-integration-jobs-scenario003 - - puppet-openstack-litmus-jobs - - release-notes-jobs-python3 diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index ed2c90f3..00000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,53 +0,0 @@ -## 8.0.0 and beyond - -From 8.0.0 release and beyond, release notes are published on -[docs.openstack.org](https://docs.openstack.org/releasenotes/puppet-sahara/). - -##2015-11-25 - 7.0.0 -###Summary - -This is a backwards-incompatible major release for OpenStack Liberty. - -####Backwards-incompatible changes -- remove kilo deprecated parameters - -####Features -- add distribute mode support -- introduce Sahara extended logging class -- remove POSIX file modes -- add tag to package and service resources -- add sahara::config class -- add sahara::db::sync -- add support of SSL -- add an ability to manage use_stderr parameter -- reflect provider change in puppet-openstacklib -- introduce sahara::db class -- db: use postgresql lib class for psycopg package -- add new parameter 'plugins' for Sahara -- configure rpc options separately from ceilometer notifications - -####Bugfixes -- rely on autorequire for config resource ordering -- remove Sqlite validation for database_connection - -####Maintenance -- initial msync run for all Puppet OpenStack modules -- try to use zuul-cloner to prepare fixtures -- remove class_parameter_defaults puppet-lint check -- acceptance: use common bits from puppet-openstack-integration - -##2015-10-10 - 6.1.0 -###Summary - -This is a maintenance and features release in the Kilo series. - -####Features -- Update parameters for Sahara - -####Maintenance -- acceptance: checkout stable/kilo puppet modules - -##2015-07-08 - 6.0.0 -###Summary - -- Initial release of the puppet-sahara module diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst deleted file mode 100644 index 9adb3957..00000000 --- a/CONTRIBUTING.rst +++ /dev/null @@ -1,19 +0,0 @@ -The source repository for this project can be found at: - - https://opendev.org/openstack/puppet-sahara - -Pull requests submitted through GitHub are not monitored. - -To start contributing to OpenStack, follow the steps in the contribution guide -to set up and use Gerrit: - - https://docs.openstack.org/contributors/code-and-documentation/quick-start.html - -Bugs should be filed on Launchpad: - - https://bugs.launchpad.net/puppet-sahara - -For more specific information about contributing to this repository, see the -Puppet OpenStack contributor guide: - - https://docs.openstack.org/puppet-openstack-guide/latest/contributor/contributing.html diff --git a/Gemfile b/Gemfile deleted file mode 100644 index 3f465614..00000000 --- a/Gemfile +++ /dev/null @@ -1,36 +0,0 @@ -source ENV['GEM_SOURCE'] || "https://rubygems.org" - -group :development, :test, :system_tests do - spec_helper_dir = '/home/zuul/src/opendev.org/openstack/puppet-openstack_spec_helper' - if File.directory?(spec_helper_dir) - if ENV['ZUUL_PROJECT'] == 'openstack/puppet-openstack_spec_helper' - gem 'puppet-openstack_spec_helper', - :path => '../..', - :require => 'false' - else - gem 'puppet-openstack_spec_helper', - :path => spec_helper_dir, - :require => 'false' - end - else - spec_helper_version = ENV['ZUUL_BRANCH'] || "master" - gem 'puppet-openstack_spec_helper', - :git => 'https://opendev.org/openstack/puppet-openstack_spec_helper', - :ref => spec_helper_version, - :require => 'false' - end -end - -if facterversion = ENV['FACTER_GEM_VERSION'] - gem 'facter', facterversion, :require => false -else - gem 'facter', :require => false -end - -if puppetversion = ENV['PUPPET_GEM_VERSION'] - gem 'puppet', puppetversion, :require => false -else - gem 'puppet', :require => false -end - -# vim:ft=ruby diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 68c771a0..00000000 --- a/LICENSE +++ /dev/null @@ -1,176 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - diff --git a/README.md b/README.md deleted file mode 100644 index 1cb80345..00000000 --- a/README.md +++ /dev/null @@ -1,120 +0,0 @@ -Team and repository tags -======================== - -[![Team and repository tags](https://governance.openstack.org/tc/badges/puppet-sahara.svg)](https://governance.openstack.org/tc/reference/tags/index.html) - - - -sahara -====== - -#### Table of Contents - -1. [Overview - What is the sahara module?](#overview) -2. [Module Description - What does the module do?](#module-description) -3. [Setup - The basics of getting started with sahara](#setup) -4. [Implementation - An under-the-hood peek at what the module is doing](#implementation) -5. [Limitations - OS compatibility, etc.](#limitations) -6. [Development - Guide for contributing to the module](#development) -7. [Contributors - Those with commits](#contributors) -8. [Release Notes - Release notes for the project](#release-notes) -9. [Repository - The project source code repository](#repository) - -Overview --------- - -The sahara module is a part of [OpenStack](https://opendev.org/openstack), an effort -by the OpenStack infrastructure team to provide continuous integration testing and -code review for OpenStack and OpenStack community projects as part of the core software. -The Sahara module itself is used to flexibly configure and manage the clustering service for OpenStack. - -Module Description ------------------- - -The sahara module is an attempt to make Puppet capable of managing the -entirety of sahara. - -Setup ------ - -**What the sahara module affects:** - -* [Sahara](https://docs.openstack.org/sahara/latest/), the data processing service for OpenStack. - -### Installing Sahara - - puppet module install openstack/sahara - -### Beginning with sahara - -To use the sahara module's functionality you will need to declare multiple -resources. This is not an exhaustive list of all the components needed; we -recommend you consult and understand the -[core of openstack](https://docs.openstack.org) documentation. - -Examples of usage can be found in the *examples* directory. - -Implementation --------------- - -### sahara - -puppet-sahara is a combination of Puppet manifests and ruby code to deliver -configuration and extra functionality through types and providers. - -### Types - -#### sahara_config - -The `sahara_config` provider is a children of the ini_setting provider. It allows one to write an entry in the `/etc/sahara/sahara.conf` file. - -```puppet -sahara_config { 'DEFAULT/use_neutron' : - value => True, -} -``` - -This will write `use_neutron=True` in the `[DEFAULT]` section. - -##### name - -Section/setting name to manage from `sahara.conf` - -##### value - -The value of the setting to be defined. - -##### secret - -Whether to hide the value from Puppet logs. Defaults to `false`. - -##### ensure_absent_val - -If value is equal to ensure_absent_val then the resource will behave as if `ensure => absent` was specified. Defaults to `` - -Limitations ------------ - -None. - -Development ------------ - -Developer documentation for the entire puppet-openstack project. - -* https://docs.openstack.org/puppet-openstack-guide/latest/ - -Contributors ------------- - -* https://github.com/openstack/puppet-sahara/graphs/contributors - -Release Notes -------------- - -* https://docs.openstack.org/releasenotes/puppet-sahara - -Repository ----------- - -* https://opendev.org/openstack/puppet-sahara diff --git a/README.rst b/README.rst new file mode 100644 index 00000000..543210df --- /dev/null +++ b/README.rst @@ -0,0 +1,8 @@ +This project is no longer maintained. + +The contents of this repository are still available in the Git source code +management system. To see the contents of this repository before it reached its +end of life, please check out the previous commit with "git checkout HEAD^1". + +For any further questions, please email openstack-discuss@lists.openstack.org +or join #openstack-dev on OFTC. diff --git a/Rakefile b/Rakefile deleted file mode 100644 index 168d1081..00000000 --- a/Rakefile +++ /dev/null @@ -1 +0,0 @@ -require 'puppet-openstack_spec_helper/rake_tasks' diff --git a/bindep.txt b/bindep.txt deleted file mode 100644 index d6645f86..00000000 --- a/bindep.txt +++ /dev/null @@ -1,12 +0,0 @@ -# This is a cross-platform list tracking distribution packages needed by tests; -# see https://docs.openstack.org/infra/bindep/ for additional information. - -libxml2-devel [test platform:rpm] -libxml2-dev [test platform:dpkg] -libxslt-devel [test platform:rpm] -libxslt1-dev [test platform:dpkg] -ruby-devel [test platform:rpm] -ruby-dev [test platform:dpkg] -zlib1g-dev [test platform:dpkg] -zlib-devel [test platform:rpm] -puppet [build] diff --git a/doc/requirements.txt b/doc/requirements.txt deleted file mode 100644 index 592fa6b5..00000000 --- a/doc/requirements.txt +++ /dev/null @@ -1,6 +0,0 @@ -# This is required for the docs build jobs -sphinx>=3.5.1 # BSD -openstackdocstheme>=2.2.7 # Apache-2.0 - -# This is required for the releasenotes build jobs -reno>=3.2.0 # Apache-2.0 diff --git a/examples/basic.pp b/examples/basic.pp deleted file mode 100644 index 212d0681..00000000 --- a/examples/basic.pp +++ /dev/null @@ -1,72 +0,0 @@ -# First, install a mysql server -class { 'mysql::server': - # sahara documentation recommends this configuration. - override_options => { - 'mysqld' => { - 'max_allowed_packet' => '256M', - }, - }, - - # many configurations will need this line, too - package_name => 'mariadb-galera-server', - - # if you're installing into an existing openstack - manage_config_file => false, - purge_conf_dir => false, -} - -# Then, create a database -class { 'sahara::db::mysql': - password => 'a_big_secret', -} - -# Then the common class -class { 'sahara': - database_connection => 'mysql+pymysql://sahara:a_big_secret@127.0.0.1:3306/sahara', - debug => true, - host => '0.0.0.0', - port => 8386, - use_floating_ips => true, -} - -# Keystone authtoken parameters -class { 'sahara::keystone::authtoken': - password => 'a_big_secret', -} - -# Setup API service in Apache -class { 'sahara::service::api': - service_name => 'httpd', -} - -# On Ubuntu there are Apache configuration that is dropped when the -# sahara-api package is installed. The puppet-sahara module will remove -# these and fix the apache configuration for you but the Ubuntu packages -# requires these files to exist for upgrading the sahara-api package to not -# break. -if ($facts['os']['name'] == 'Ubuntu') { - ensure_resource('file', '/etc/apache2/sites-available/sahara-api.conf', { - 'ensure' => 'present', - 'content' => '', - }) - ensure_resource('file', '/etc/apache2/sites-enabled/sahara-api.conf', { - 'ensure' => 'present', - 'content' => '', - }) - - Package['sahara-api'] -> File['/etc/apache2/sites-available/sahara-api.conf'] - -> File['/etc/apache2/sites-enabled/sahara-api.conf'] ~> Anchor['sahara::install::end'] -} - -include apache -class { 'sahara::wsgi::apache': - workers => 2, -} - -# Setup the engine service -class { 'sahara::service::engine': } - -# Finally, make it accessible -class { 'sahara::keystone::auth': - password => 'secrete', -} diff --git a/lib/puppet/provider/sahara.rb b/lib/puppet/provider/sahara.rb deleted file mode 100644 index 076e6289..00000000 --- a/lib/puppet/provider/sahara.rb +++ /dev/null @@ -1,28 +0,0 @@ -require 'puppet/provider/openstack' -require 'puppet/provider/openstack/auth' - -class Puppet::Provider::Sahara < Puppet::Provider::Openstack - - extend Puppet::Provider::Openstack::Auth - - def self.flavors_list - unless @flavors_hash - list = request('flavor', 'list') - @flavors_hash = Hash[list.collect { |flavor| [ flavor[:id], flavor[:name] ] } ] - end - @flavors_hash - end - - def self.network_list - unless @network_hash - list = request('network', 'list') - @network_hash = Hash[list.collect { |network| [ network[:id], network[:name] ] } ] - end - @network_hash - end - - def self.reset - @flavors_hash = nil - @network_hash = nil - end -end diff --git a/lib/puppet/provider/sahara_api_paste_ini/ini_setting.rb b/lib/puppet/provider/sahara_api_paste_ini/ini_setting.rb deleted file mode 100644 index 809e2dc8..00000000 --- a/lib/puppet/provider/sahara_api_paste_ini/ini_setting.rb +++ /dev/null @@ -1,10 +0,0 @@ -Puppet::Type.type(:sahara_api_paste_ini).provide( - :ini_setting, - :parent => Puppet::Type.type(:openstack_config).provider(:ini_setting) -) do - - def self.file_path - '/etc/sahara/api-paste.ini' - end - -end diff --git a/lib/puppet/provider/sahara_api_uwsgi_config/ini_setting.rb b/lib/puppet/provider/sahara_api_uwsgi_config/ini_setting.rb deleted file mode 100644 index 9ceef185..00000000 --- a/lib/puppet/provider/sahara_api_uwsgi_config/ini_setting.rb +++ /dev/null @@ -1,8 +0,0 @@ -Puppet::Type.type(:sahara_api_uwsgi_config).provide( - :ini_setting, - :parent => Puppet::Type.type(:openstack_config).provider(:ini_setting) -) do - def self.file_path - '/etc/sahara/sahara-api-uwsgi.ini' - end -end diff --git a/lib/puppet/provider/sahara_cluster_template/openstack.rb b/lib/puppet/provider/sahara_cluster_template/openstack.rb deleted file mode 100644 index 7f83aac5..00000000 --- a/lib/puppet/provider/sahara_cluster_template/openstack.rb +++ /dev/null @@ -1,84 +0,0 @@ -require 'puppet/provider/sahara' - -Puppet::Type.type(:sahara_cluster_template).provide( - :openstack, - :parent => Puppet::Provider::Sahara -) do - - desc 'Provider for managing Sahara cluster templates.' - - @credentials = Puppet::Provider::Openstack::CredentialsV3.new - - mk_resource_methods - - def initialize(value={}) - super(value) - @property_flush = {} - end - - def create - options = [] - options << '--name' << @resource[:name] - options << '--node-groups' << @resource[:node_groups] - options << '--autoconfig' if @resource[:auto_config] - options << '--description' << @resource[:description] if @resource[:description] - self.class.request('dataprocessing cluster template', 'create', options) - end - - def exists? - @property_hash[:ensure] == :present - end - - def destroy - self.class.request('dataprocessing cluster template', 'delete', id) - @property_hash.clear - end - - def node_groups=(value) - @property_flush[:node_groups] = value - end - - def auto_config=(value) - @property_flush[:auto_config] = value - end - - def description=(value) - @property_flush[:description] = value - end - - def self.instances - list = request('dataprocessing cluster template', 'list') - list.collect do |template| - template_info = request('dataprocessing cluster template', 'show', template[:id]) - new({ - :name => template_info[:name], - :ensure => :present, - :id => template_info[:id], - :node_groups => template_info[:node_groups].split(',').map(&:strip), - :auto_config => template_info[:use_autoconfig].downcase.to_sym, - }) - end - end - - def self.prefetch(resources) - cluster_templates = instances - resources.keys.each do |name| - if provider = cluster_templates.find{ |template| template.name == name } - resources[name].provider = provider - end - end - end - - def flush - options = [] - if @property_flush && !@property_flush.empty? - options << @property_hash[:id] - options << '--autoconfig-enable' if @property_flush[:auto_config] == :true - options << '--autoconfig-disable' if @property_flush[:auto_config] == :false - options << '--node-groups' << @property_flush[:node_groups] if @property_flush[:node_groups] - options << '--description' << @property_flush[:description] if @property_flush[:description] - self.class.request('dataprocessing cluster template', 'update', options) - @property_flush.clear - end - end -end diff --git a/lib/puppet/provider/sahara_config/openstackconfig.rb b/lib/puppet/provider/sahara_config/openstackconfig.rb deleted file mode 100644 index 93cbe953..00000000 --- a/lib/puppet/provider/sahara_config/openstackconfig.rb +++ /dev/null @@ -1,10 +0,0 @@ -Puppet::Type.type(:sahara_config).provide( - :openstackconfig, - :parent => Puppet::Type.type(:openstack_config).provider(:ruby) -) do - - def self.file_path - '/etc/sahara/sahara.conf' - end - -end diff --git a/lib/puppet/provider/sahara_node_group_template/openstack.rb b/lib/puppet/provider/sahara_node_group_template/openstack.rb deleted file mode 100644 index 2ff69876..00000000 --- a/lib/puppet/provider/sahara_node_group_template/openstack.rb +++ /dev/null @@ -1,156 +0,0 @@ -require 'puppet/provider/sahara' - -Puppet::Type.type(:sahara_node_group_template).provide( - :openstack, - :parent => Puppet::Provider::Sahara -) do - - desc 'Provider for managing Sahara node group templates.' - - @credentials = Puppet::Provider::Openstack::CredentialsV3.new - - mk_resource_methods - - def initialize(value={}) - super(value) - @property_flush = {} - end - - def create - options = [] - options << '--name' << @resource[:name] - options << '--plugin' << @resource[:plugin] - options << '--plugin-version' << @resource[:plugin_version] - options << '--description' << @resource[:description] if @resource[:description] - options << '--auto-security-group' if @resource[:auto_security_group] - - if @resource[:floating_ip_pool] - # we need only of network - network_id = self.class.request('network', 'show', @resource[:floating_ip_pool])[:id] - options << '--floating-ip-pool' << network_id - end - - options << '--flavor' << @resource[:flavor] - options << '--processes' << @resource[:node_processes] - options << '--security-groups' << @resource[:security_groups] unless @resource[:security_groups].empty? - self.class.request('dataprocessing node group template', 'create', options) - end - - def exists? - @property_hash[:ensure] == :present - end - - def destroy - self.class.request('dataprocessing node group template', 'delete', id) - @property_hash.clear - end - - def plugin=(value) - fail('Property \'plugin\' can\'t be updated') - end - - def plugin_version=(value) - fail('Property \'version\' can\'t be updated') - end - - def flavor - # we can set flavor as in format as in format - flavors = self.class.flavors_list - if flavors[@property_hash[:flavor]] == @resource[:flavor] or - @property_hash[:flavor] == @resource[:flavor] - @resource[:flavor] - else - @property_hash[:flavor] - end - end - - def floating_ip_pool - # this should be only , but we can accept - # name of network as input, because user may know - # network name, but not a network - networks = self.class.network_list - if networks[@property_hash[:floating_ip_pool]] == @resource[:floating_ip_pool] or - @property_hash[:floating_ip_pool] == @resource[:floating_ip_pool] - @resource[:floating_ip_pool] - else - @property_hash[:floating_ip_pool] - end - end - - def flavor=(value) - @property_flush[:flavor] = value - end - - def node_processes=(value) - @property_flush[:node_processes] = value - end - - def floating_ip_pool=(value) - @property_flush[:floating_ip_pool] = value - end - - def auto_security_group=(value) - @property_flush[:auto_security_group] = value - end - - def description=(value) - @property_flush[:description] = value - end - - def security_groups=(value) - @property_flush[:security_groups] = value - end - - def self.instances - list = request('dataprocessing node group template', 'list') - list.collect do |template| - template_info = request('dataprocessing node group template', 'show', template[:id]) - new({ - :name => template_info[:name], - :ensure => :present, - :id => template_info[:id], - :plugin => template_info[:plugin_name], - :plugin_version => template_info[:plugin_version], - :flavor => template_info[:flavor_id], - :description => template_info[:description], - :node_processes => template_info[:node_processes].split(',').map(&:strip), - :auto_security_group => template_info[:auto_security_group].downcase.to_sym, - :floating_ip_pool => template_info[:floating_ip_pool], - :security_groups => string2list(template_info[:security_groups]), - }) - end - end - - def self.string2list(input) - return [] if input.eql? "None" - return input[1..-2].split(",").map { |x| x.match(/'(.*?)'/)[1] } - end - - def self.prefetch(resources) - node_group_templates = instances - resources.keys.each do |name| - if provider = node_group_templates.find{ |template| template.name == name } - resources[name].provider = provider - end - end - end - - def flush - options = [] - if @property_flush && !@property_flush.empty? - options << @property_hash[:id] - options << '--auto-security-group-enable' if @property_flush[:auto_security_group] == :true - options << '--auto-security-group-disable' if @property_flush[:auto_security_group] == :false - options << '--flavor' << @property_flush[:flavor] if @property_flush[:flavor] - options << '--description' << @property_flush[:description] if @property_flush[:description] - options << '--floating-ip-pool' << @property_flush[:floating_ip_pool] if @property_flush[:floating_ip_pool] - options << '--processes' << @property_flush[:node_processes] if @property_flush[:node_processes] - if @property_flush[:security_groups] - # OSC has not ability to unset security groups at all for sahara template - options << '--security-groups' << @property_flush[:security_groups] unless @property_flush[:security_groups].empty? - end - self.class.request('dataprocessing node group template', 'update', options) - @property_flush.clear - end - end -end diff --git a/lib/puppet/type/sahara_api_paste_ini.rb b/lib/puppet/type/sahara_api_paste_ini.rb deleted file mode 100644 index f8d264d3..00000000 --- a/lib/puppet/type/sahara_api_paste_ini.rb +++ /dev/null @@ -1,57 +0,0 @@ -Puppet::Type.newtype(:sahara_api_paste_ini) do - - ensurable - - newparam(:name, :namevar => true) do - desc 'Section/setting name to manage from /etc/sahara/api-paste.ini' - newvalues(/\S+\/\S+/) - end - - newproperty(:value) do - desc 'The value of the setting to be defined.' - munge do |value| - value = value.to_s.strip - value.capitalize! if value =~ /^(true|false)$/i - value - end - - def is_to_s( currentvalue ) - if resource.secret? - return '[old secret redacted]' - else - return currentvalue - end - end - - def should_to_s( newvalue ) - if resource.secret? - return '[new secret redacted]' - else - return newvalue - end - end - end - - newparam(:secret, :boolean => true) do - desc 'Whether to hide the value from Puppet logs. Defaults to `false`.' - - newvalues(:true, :false) - - defaultto false - end - - newparam(:ensure_absent_val) do - desc 'A value that is specified as the value property will behave as if ensure => absent was specified' - defaultto('') - end - - newparam(:key_val_separator) do - desc 'The separator string to use between each setting name and value.' - defaultto('=') - end - - autorequire(:anchor) do - ['sahara::install::end'] - end - -end diff --git a/lib/puppet/type/sahara_api_uwsgi_config.rb b/lib/puppet/type/sahara_api_uwsgi_config.rb deleted file mode 100644 index ec88346f..00000000 --- a/lib/puppet/type/sahara_api_uwsgi_config.rb +++ /dev/null @@ -1,27 +0,0 @@ -Puppet::Type.newtype(:sahara_api_uwsgi_config) do - - ensurable - - newparam(:name, :namevar => true) do - desc 'Section/setting name to manage from sahara-api-uwsgi.ini' - newvalues(/\S+\/\S+/) - end - - newparam(:ensure_absent_val) do - desc 'A value that is specified as the value property will behave as if ensure => absent was specified' - defaultto('') - end - - autorequire(:anchor) do - ['sahara::install::end'] - end - - newproperty(:value) do - desc 'The value of the setting to be defined.' - munge do |value| - value = value.to_s.strip - value.capitalize! if value =~ /^(true|false)$/i - value - end - end -end diff --git a/lib/puppet/type/sahara_cluster_template.rb b/lib/puppet/type/sahara_cluster_template.rb deleted file mode 100644 index 5f6c6e8f..00000000 --- a/lib/puppet/type/sahara_cluster_template.rb +++ /dev/null @@ -1,61 +0,0 @@ -Puppet::Type.newtype(:sahara_cluster_template) do - - ensurable - - newparam(:name, :namevar => true) do - desc 'The name of this cluster template.' - newvalues(/\S+/) - end - - newproperty(:id) do - desc 'The unique Id of the cluster template.' - validate do |v| - raise ArgumentError, 'This is a read only property' - end - end - - newproperty(:description) do - desc 'The description of this cluster template.' - end - - newproperty(:node_groups, :array_matching => :all) do - desc 'List of the node groups(names or IDs) and numbers of instances for each one of them.' - defaultto { fail 'Property \'node_groups\' is required.' } - validate do |group| - args = group.split(':') - raise ArgumentError, 'You should specify node_groups in format format' unless args.count == 2 - raise ArgumentError, 'Node group count should be an integer' unless args[1].to_i.to_s == args[1] - end - - def insync?(is) - is.sort == should.sort - end - end - - newproperty(:auto_config) do - desc 'If enabled, instances of the cluster will be automatically configured' - newvalues(/(t|T)rue/, /(f|F)alse/, true, false) - defaultto(true) - munge do |value| - value.to_s.downcase.to_sym - end - end - - validate do - if self[:node_groups].empty? - raise ArgumentError, 'You should specify at least one node group.' - end - end - - autorequire(:anchor) do - ['sahara::service::end'] - end - - autorequire(:sahara_node_group_template) do - templates = [] - self[:node_groups].each do |template| - templates.push(template.split(':')[0]) - end - templates - end -end diff --git a/lib/puppet/type/sahara_config.rb b/lib/puppet/type/sahara_config.rb deleted file mode 100644 index 5abb661b..00000000 --- a/lib/puppet/type/sahara_config.rb +++ /dev/null @@ -1,59 +0,0 @@ -Puppet::Type.newtype(:sahara_config) do - ensurable - - newparam(:name, :namevar => true) do - desc 'Section/setting name to manage from sahara.conf' - newvalues(/\S+\/\S+/) - end - - newproperty(:value, :array_matching => :all) do - desc 'The value of the setting to be defined.' - def insync?(is) - return true if @should.empty? - return false unless is.is_a? Array - return false unless is.length == @should.length - return ( - is & @should == is or - is & @should.map(&:to_s) == is - ) - end - munge do |value| - value = value.to_s.strip - value.capitalize! if value =~ /^(true|false)$/i - value - end - - def is_to_s(currentvalue) - if resource.secret? - return '[old secret redacted]' - else - return currentvalue - end - end - - def should_to_s(newvalue) - if resource.secret? - return '[new secret redacted]' - else - return newvalue - end - end - end - - newparam(:secret, :boolean => true) do - desc 'Whether to hide the value from Puppet logs. Defaults to `false`.' - - newvalues(:true, :false) - - defaultto false - end - - newparam(:ensure_absent_val) do - desc 'A value that is specified as the value property will behave as if ensure => absent was specified' - defaultto('') - end - - autorequire(:anchor) do - ['sahara::install::end'] - end -end diff --git a/lib/puppet/type/sahara_node_group_template.rb b/lib/puppet/type/sahara_node_group_template.rb deleted file mode 100644 index 5196c160..00000000 --- a/lib/puppet/type/sahara_node_group_template.rb +++ /dev/null @@ -1,80 +0,0 @@ -Puppet::Type.newtype(:sahara_node_group_template) do - - ensurable - - newparam(:name, :namevar => true) do - desc 'The name of this node group template.' - newvalues(/\S+/) - end - - newproperty(:id) do - desc 'The unique Id of the node group template.' - validate do |v| - raise ArgumentError, 'This is a read only property' - end - end - - newproperty(:plugin) do - desc 'The plugin name for current template' - defaultto { fail 'Property \'plugin\' is required.' } - newvalues(/\S+/) - end - - newproperty(:description) do - desc 'The description of this node group template.' - end - - newproperty(:plugin_version) do - desc 'The version of plugin for this template' - defaultto { fail 'Property \'plugin_version\' is required.' } - newvalues(/\S+/) - end - - newproperty(:node_processes, :array_matching => :all) do - desc 'List of the processes that will be launched on each instance' - defaultto { fail 'Property \'node_processes\' is required.' } - - def insync?(is) - is.sort == should.sort - end - end - - newproperty(:flavor) do - desc 'The id or name of the flavor assigned to this node group template' - defaultto { fail 'Property \'flavor\' is required.' } - newvalues(/\S+/) - end - - newproperty(:floating_ip_pool) do - desc 'The id or name of floating ip pool' - newvalues(/\S+/) - end - - newproperty(:auto_security_group) do - desc 'Indicates if an additional security group should be created for the node group' - newvalues(/(t|T)rue/, /(f|F)alse/, true, false) - defaultto(true) - munge do |value| - value.to_s.downcase.to_sym - end - end - - newproperty(:security_groups, :array_matching => :all) do - desc 'List of the processes that will be launched on each instance' - defaultto([]) - - def insync?(is) - is.sort == should.sort - end - end - - validate do - if self[:node_processes].empty? - raise ArgumentError, 'You should specify at least one node process.' - end - end - - autorequire(:anchor) do - ['sahara::service::end'] - end -end diff --git a/manifests/client.pp b/manifests/client.pp deleted file mode 100644 index daf03734..00000000 --- a/manifests/client.pp +++ /dev/null @@ -1,26 +0,0 @@ -# == Class: sahara::client -# -# Installs the sahara python library. -# -# === Parameters -# -# [*package_ensure*] -# (Optional) Ensure state for package. -# Default: present. -# -class sahara::client ( - $package_ensure = 'present' -) { - - include sahara::deps - include sahara::params - - package { 'python-saharaclient': - ensure => $package_ensure, - name => $::sahara::params::client_package_name, - tag => ['openstack', 'openstackclient'], - } - - include openstacklib::openstackclient - -} diff --git a/manifests/config.pp b/manifests/config.pp deleted file mode 100644 index ca9a40fe..00000000 --- a/manifests/config.pp +++ /dev/null @@ -1,35 +0,0 @@ -# == Class: sahara::config -# -# This class is used to manage arbitrary Sahara configurations. -# -# === Parameters -# -# [*sahara_config*] -# (optional) Allow configuration of arbitrary Sahara configurations. -# The value is an hash of sahara_config resources. Example: -# { 'DEFAULT/foo' => { value => 'fooValue'}, -# 'DEFAULT/bar' => { value => 'barValue'} -# } -# In yaml format, Example: -# sahara_config: -# DEFAULT/foo: -# value: fooValue -# DEFAULT/bar: -# value: barValue -# -# [*sahara_api_paste_ini*] -# (optional) Allow configuration of /etc/sahara/api-paste.ini options. -# -# NOTE: The configuration MUST NOT be already handled by this module -# or Puppet catalog compilation will fail with duplicate resources. -# -class sahara::config ( - Hash $sahara_config = {}, - Hash $sahara_api_paste_ini = {}, -) { - - include sahara::deps - - create_resources('sahara_config', $sahara_config) - create_resources('sahara_api_paste_ini', $sahara_api_paste_ini) -} diff --git a/manifests/db.pp b/manifests/db.pp deleted file mode 100644 index 21f9f093..00000000 --- a/manifests/db.pp +++ /dev/null @@ -1,71 +0,0 @@ -# == Class: sahara:db -# -# Configure the Sahara database -# -# == Parameters -# -# [*database_db_max_retries*] -# (optional) Maximum retries in case of connection error or deadlock error -# before error is raised. Set to -1 to specify an infinite retry count. -# Defaults to $facts['os_service_default'] -# -# [*database_connection*] -# (Optional) The connection string to use to connect to the database. -# Defaults to 'mysql+pymysql://sahara:secrete@localhost:3306/sahara' -# -# [*database_max_retries*] -# (Optional) Maximum number of database connection retries during startup. -# Set to -1 to specify an infinite retry count. -# Defaults to $facts['os_service_default']. -# -# [*database_connection_recycle_time*] -# (Optional) Timeout before idle SQL connections are reaped. -# Defaults to $facts['os_service_default']. -# -# [*database_retry_interval*] -# (optional) Interval between retries of opening a database connection. -# Defaults to $facts['os_service_default']. -# -# [*database_max_pool_size*] -# (optional) Maximum number of SQL connections to keep open in a pool. -# Defaults to $facts['os_service_default']. -# -# [*database_max_overflow*] -# (optional) If set, use this value for max_overflow with sqlalchemy. -# Defaults to $facts['os_service_default']. -# -# [*database_pool_timeout*] -# (Optional) If set, use this value for pool_timeout with SQLAlchemy. -# Defaults to $facts['os_service_default'] -# -# [*mysql_enable_ndb*] -# (Optional) If True, transparently enables support for handling MySQL -# Cluster (NDB). -# Defaults to $facts['os_service_default'] -# -class sahara::db ( - $database_db_max_retries = $facts['os_service_default'], - $database_connection = 'mysql+pymysql://sahara:secrete@localhost:3306/sahara', - $database_connection_recycle_time = $facts['os_service_default'], - $database_max_pool_size = $facts['os_service_default'], - $database_max_retries = $facts['os_service_default'], - $database_retry_interval = $facts['os_service_default'], - $database_max_overflow = $facts['os_service_default'], - $database_pool_timeout = $facts['os_service_default'], - $mysql_enable_ndb = $facts['os_service_default'], -) { - - include sahara::deps - - oslo::db { 'sahara_config': - db_max_retries => $database_db_max_retries, - connection => $database_connection, - connection_recycle_time => $database_connection_recycle_time, - max_pool_size => $database_max_pool_size, - max_retries => $database_max_retries, - retry_interval => $database_retry_interval, - max_overflow => $database_max_overflow, - pool_timeout => $database_pool_timeout, - mysql_enable_ndb => $mysql_enable_ndb, - } -} diff --git a/manifests/db/mysql.pp b/manifests/db/mysql.pp deleted file mode 100644 index 44ae7cfe..00000000 --- a/manifests/db/mysql.pp +++ /dev/null @@ -1,61 +0,0 @@ -# == Class: sahara::db::mysql -# -# The sahara::db::mysql class creates a MySQL database for sahara. -# It must be used on the MySQL server. -# -# === Parameters -# -# [*password*] -# (Required) Password to connect to the database. -# -# [*dbname*] -# (Optional) Name of the database. -# Defaults to 'sahara'. -# -# [*user*] -# (Optional) User to connect to the database. -# Defaults to 'sahara'. -# -# [*host*] -# (Optional) The default source host user is allowed to connect from. -# Defaults to '127.0.0.1' -# -# [*allowed_hosts*] -# (Optional) Other hosts the user is allowed to connect from. -# Defaults to 'undef'. -# -# [*charset*] -# (Optional) The database charset. -# Defaults to 'utf8'. -# -# [*collate*] -# (Optional) Charset collate of sahara database. -# Defaults to 'utf8_general_ci'. -# -class sahara::db::mysql( - String[1] $password, - $dbname = 'sahara', - $user = 'sahara', - $host = '127.0.0.1', - $allowed_hosts = undef, - $charset = 'utf8', - $collate = 'utf8_general_ci', -) { - - include sahara::deps - - ::openstacklib::db::mysql{ 'sahara': - user => $user, - password => $password, - dbname => $dbname, - host => $host, - charset => $charset, - collate => $collate, - allowed_hosts => $allowed_hosts, - } - - Anchor['sahara::db::begin'] - ~> Class['sahara::db::mysql'] - ~> Anchor['sahara::db::end'] - -} diff --git a/manifests/db/postgresql.pp b/manifests/db/postgresql.pp deleted file mode 100644 index 1fc871fd..00000000 --- a/manifests/db/postgresql.pp +++ /dev/null @@ -1,49 +0,0 @@ -# == Class: sahara::db::postgresql -# -# The sahara::db::postgresql creates a PostgreSQL database for sahara. -# It must be used on the PostgreSQL server. -# -# === Parameters -# -# [*password*] -# (Required) Password to connect to the database. -# -# [*dbname*] -# (Optional) Name of the database. -# Defaults to 'sahara'. -# -# [*user*] -# (Optional) User to connect to the database. -# Defaults to 'sahara'. -# -# [*encoding*] -# (Optional) The charset to use for the database. -# Default to undef. -# -# [*privileges*] -# (Optional) Privileges given to the database user. -# Default to 'ALL' -# -class sahara::db::postgresql( - $password, - $dbname = 'sahara', - $user = 'sahara', - $encoding = undef, - $privileges = 'ALL', -) { - - include sahara::deps - - ::openstacklib::db::postgresql { 'sahara': - password => $password, - dbname => $dbname, - user => $user, - encoding => $encoding, - privileges => $privileges, - } - - Anchor['sahara::db::begin'] - ~> Class['sahara::db::postgresql'] - ~> Anchor['sahara::db::end'] - -} diff --git a/manifests/db/sync.pp b/manifests/db/sync.pp deleted file mode 100644 index 53c3d7c3..00000000 --- a/manifests/db/sync.pp +++ /dev/null @@ -1,41 +0,0 @@ -# -# Class to execute sahara dbsync -# -# == Parameters -# -# [*extra_params*] -# (Optional) String of extra command line parameters to append -# to the sahara-db-manage command. -# Defaults to '--config-file /etc/sahara/sahara.conf' -# -# [*db_sync_timeout*] -# (Optional) Timeout for the execution of the db_sync -# Defaults to 300 -# -class sahara::db::sync( - $extra_params = '--config-file /etc/sahara/sahara.conf', - $db_sync_timeout = 300, -) { - - include sahara::deps - include sahara::params - - exec { 'sahara-dbmanage': - command => "sahara-db-manage ${extra_params} upgrade head", - path => '/usr/bin', - user => $::sahara::params::user, - refreshonly => true, - try_sleep => 5, - tries => 10, - timeout => $db_sync_timeout, - logoutput => on_failure, - subscribe => [ - Anchor['sahara::install::end'], - Anchor['sahara::config::end'], - Anchor['sahara::dbsync::begin'] - ], - notify => Anchor['sahara::dbsync::end'], - tag => 'openstack-db', - } - -} diff --git a/manifests/deps.pp b/manifests/deps.pp deleted file mode 100644 index 9462970d..00000000 --- a/manifests/deps.pp +++ /dev/null @@ -1,56 +0,0 @@ -# == Class: sahara::deps -# -# Sahara anchors and dependency management -# -class sahara::deps { - # Setup anchors for install, config and service phases of the module. These - # anchors allow external modules to hook the begin and end of any of these - # phases. Package or service management can also be replaced by ensuring the - # package is absent or turning off service management and having the - # replacement depend on the appropriate anchors. When applicable, end tags - # should be notified so that subscribers can determine if installation, - # config or service state changed and act on that if needed. - anchor { 'sahara::install::begin': } - -> Package<| tag == 'sahara-package'|> - ~> anchor { 'sahara::install::end': } - -> anchor { 'sahara::config::begin': } - -> Sahara_config<||> - ~> anchor { 'sahara::config::end': } - -> anchor { 'sahara::db::begin': } - -> anchor { 'sahara::db::end': } - ~> anchor { 'sahara::dbsync::begin': } - -> anchor { 'sahara::dbsync::end': } - ~> anchor { 'sahara::service::begin': } - ~> Service<| tag == 'sahara-service' |> - ~> anchor { 'sahara::service::end': } - - # paste-api.ini config should occur in the config block also. - Anchor['sahara::config::begin'] - -> Sahara_api_paste_ini<||> - ~> Anchor['sahara::config::end'] - - # policy config should occur in the config block also. - Anchor['sahara::config::begin'] - -> Openstacklib::Policy<| tag == 'sahara' |> - -> Anchor['sahara::config::end'] - - # On any uwsgi config change, we must restart Sahara API. - Anchor['sahara::config::begin'] - -> Sahara_api_uwsgi_config<||> - ~> Anchor['sahara::config::end'] - - # all db settings should be applied and all packages should be installed - # before dbsync starts - Oslo::Db<||> -> Anchor['sahara::dbsync::begin'] - - # We need openstackclient before marking service end so that sahara - # will have clients available to create resources. This tag handles the - # openstackclient but indirectly since the client is not available in - # all catalogs that don't need the client class (like many spec tests) - Package<| tag == 'openstackclient'|> - -> Anchor['sahara::service::end'] - - # Installation or config changes will always restart services. - Anchor['sahara::install::end'] ~> Anchor['sahara::service::begin'] - Anchor['sahara::config::end'] ~> Anchor['sahara::service::begin'] -} diff --git a/manifests/healthcheck.pp b/manifests/healthcheck.pp deleted file mode 100644 index 475a7709..00000000 --- a/manifests/healthcheck.pp +++ /dev/null @@ -1,41 +0,0 @@ -# == Class: sahara::healthcheck -# -# Configure oslo_middleware options in healthcheck section -# -# == Params -# -# [*detailed*] -# (Optional) Show more detailed information as part of the response. -# Defaults to $facts['os_service_default'] -# -# [*backends*] -# (Optional) Additional backends that can perform health checks and report -# that information back as part of a request. -# Defaults to $facts['os_service_default'] -# -# [*disable_by_file_path*] -# (Optional) Check the presense of a file to determine if an application -# is running on a port. -# Defaults to $facts['os_service_default'] -# -# [*disable_by_file_paths*] -# (Optional) Check the presense of a file to determine if an application -# is running on a port. Expects a "port:path" list of strings. -# Defaults to $facts['os_service_default'] -# -class sahara::healthcheck ( - $detailed = $facts['os_service_default'], - $backends = $facts['os_service_default'], - $disable_by_file_path = $facts['os_service_default'], - $disable_by_file_paths = $facts['os_service_default'], -) { - - include sahara::deps - - oslo::healthcheck { 'sahara_config': - detailed => $detailed, - backends => $backends, - disable_by_file_path => $disable_by_file_path, - disable_by_file_paths => $disable_by_file_paths, - } -} diff --git a/manifests/init.pp b/manifests/init.pp deleted file mode 100644 index 9fa8d8d1..00000000 --- a/manifests/init.pp +++ /dev/null @@ -1,382 +0,0 @@ -# == Class: sahara -# -# Sahara base package & configuration -# -# === Parameters -# -# [*package_ensure*] -# (Optional) Ensure state for package -# Defaults to 'present'. -# -# [*host*] -# (Optional) Hostname for sahara to listen on -# Defaults to $facts['os_service_default']. -# -# [*port*] -# (Optional) Port for sahara to listen on -# Defaults to $facts['os_service_default']. -# -# [*plugins*] -# (Optional) List of plugins to be loaded. -# Sahara preserves the order of the list when returning it. -# Defaults to $facts['os_service_default']. -# -# [*use_floating_ips*] -# (Optional) Whether to use floating IPs to communicate with instances. -# Defaults to $facts['os_service_default']. -# -# [*node_domain*] -# (Optional) The suffix of the node's FQDN. -# Defaults to $facts['os_service_default']. -# -# [*use_designate*] -# (Optional) Use Designate for internal and external hostnames resolution. -# Defaults to $facts['os_service_default']. -# -# [*nameservers*] -# (Optional) IP addresses of Designate nameservers. -# Defaults to $facts['os_service_default']. -# -# [*use_ssl*] -# (optional) Enable SSL on the API server -# Defaults to false -# -# [*cert_file*] -# (optinal) Certificate file to use when starting API server securely -# Defaults to $facts['os_service_default']. -# -# [*key_file*] -# (optional) Private key file to use when starting API server securely -# Defaults to $facts['os_service_default']. -# -# [*ca_file*] -# (optional) CA certificate file to use to verify connecting clients -# Defaults to $facts['os_service_default']. -# -# == database configuration options -# -# [*sync_db*] -# (Optional) Enable dbsync -# Defaults to true. -# -# == rpc backend options -# -# [*default_transport_url*] -# (optional) A URL representing the messaging driver to use and its full -# configuration. Transport URLs take the form: -# transport://user:pass@host1:port[,hostN:portN]/virtual_host -# Defaults to $facts['os_service_default'] -# -# [*rpc_response_timeout*] -# (Optional) Seconds to wait for a response from a call. -# Defaults to $facts['os_service_default'] -# -# [*control_exchange*] -# (Optional) The default exchange to scope topics. -# Defaults to $facts['os_service_default']. -# -# [*amqp_durable_queues*] -# (optional) Use durable queues in AMQP -# Defaults to $facts['os_service_default']. -# -# [*rabbit_ha_queues*] -# (Optional) Use durable queues in RabbitMQ. -# Defaults to $facts['os_service_default']. -# -# [*rabbit_use_ssl*] -# (Optional) Connect over SSL for RabbitMQ. -# Defaults to $facts['os_service_default']. -# -# [*rabbit_login_method*] -# (Optional) Method to auth with the rabbit server. -# Defaults to $facts['os_service_default']. -# -# [*rabbit_retry_interval*] -# (Optional) Reconnection attempt frequency for rabbit. -# Defaults to $facts['os_service_default']. -# -# [*rabbit_retry_backoff*] -# (Optional) Backoff between reconnection attempts for rabbit. -# Defaults to $facts['os_service_default']. -# -# [*rabbit_heartbeat_in_pthread*] -# (Optional) EXPERIMENTAL: Run the health check heartbeat thread -# through a native python thread. By default if this -# option isn't provided the health check heartbeat will -# inherit the execution model from the parent process. By -# example if the parent process have monkey patched the -# stdlib by using eventlet/greenlet then the heartbeat -# will be run through a green thread. -# Defaults to $facts['os_service_default'] -# -# [*rabbit_quorum_queue*] -# (Optional) Use quorum queues in RabbitMQ. -# Defaults to $facts['os_service_default'] -# -# [*rabbit_quorum_delivery_limit*] -# (Optional) Each time a message is rdelivered to a consumer, a counter is -# incremented. Once the redelivery count exceeds the delivery limit -# the message gets dropped or dead-lettered. -# Defaults to $facts['os_service_default'] -# -# [*rabbit_quorum_max_memory_length*] -# (Optional) Limit the number of messages in the quorum queue. -# Defaults to $facts['os_service_default'] -# -# [*rabbit_quorum_max_memory_bytes*] -# (Optional) Limit the number of memory bytes used by the quorum queue. -# Defaults to $facts['os_service_default'] -# -# [*kombu_ssl_version*] -# (optional) SSL version to use (valid only if SSL enabled). -# Valid values are TLSv1, SSLv23 and SSLv3. SSLv2 may be -# available on some distributions. -# Defaults to $facts['os_service_default']. -# -# [*kombu_ssl_keyfile*] -# (Optional) SSL key file (valid only if SSL enabled). -# Defaults to $facts['os_service_default']. -# -# [*kombu_ssl_certfile*] -# (Optional) SSL cert file (valid only if SSL enabled). -# Defaults to $facts['os_service_default']. -# -# [*kombu_ssl_ca_certs*] -# (Optional) SSL certification authority file (valid only if SSL enabled). -# Defaults to $facts['os_service_default']. -# -# [*kombu_reconnect_delay*] -# (Optional) Backoff on cancel notification (valid only if SSL enabled). -# (floating-point value) -# Defaults to $facts['os_service_default']. -# -# [*kombu_failover_strategy*] -# (Optional) Determines how the next RabbitMQ node is chosen in case the one -# we are currently connected to becomes unavailable. Takes effect only if -# more than one RabbitMQ node is provided in config. (string value) -# Defaults to $facts['os_service_default']. -# -# [*kombu_compression*] -# (optional) Possible values are: gzip, bz2. If not set compression will not -# be used. This option may notbe available in future versions. EXPERIMENTAL. -# (string value) -# Defaults to $facts['os_service_default']. -# -# [*amqp_server_request_prefix*] -# (Optional) Address prefix used when sending to a specific server -# Defaults to $facts['os_service_default']. -# -# [*amqp_broadcast_prefix*] -# (Optional) address prefix used when broadcasting to all servers -# Defaults to $facts['os_service_default']. -# -# [*amqp_group_request_prefix*] -# (Optional) address prefix when sending to any server in group -# Defaults to $facts['os_service_default']. -# -# [*amqp_container_name*] -# (Optional) Name for the AMQP container -# Defaults to $facts['os_service_default']. -# -# [*amqp_idle_timeout*] -# (Optional) Timeout for inactive connections -# Defaults to $facts['os_service_default']. -# -# [*amqp_trace*] -# (Optional) Debug: dump AMQP frames to stdout -# Defaults to $facts['os_service_default']. -# -# [*amqp_ssl_ca_file*] -# (Optional) CA certificate PEM file to verify server certificate -# Defaults to $facts['os_service_default']. -# -# [*amqp_ssl_cert_file*] -# (Optional) Identifying certificate PEM file to present to clients -# Defaults to $facts['os_service_default']. -# -# [*amqp_ssl_key_file*] -# (Optional) Private key PEM file used to sign cert_file certificate -# Defaults to $facts['os_service_default']. -# -# [*amqp_ssl_key_password*] -# (Optional) Password for decrypting ssl_key_file (if encrypted) -# Defaults to $facts['os_service_default']. -# -# [*amqp_sasl_mechanisms*] -# (Optional) Space separated list of acceptable SASL mechanisms -# Defaults to $facts['os_service_default']. -# -# [*amqp_sasl_config_dir*] -# (Optional) Path to directory that contains the SASL configuration -# Defaults to $facts['os_service_default']. -# -# [*amqp_sasl_config_name*] -# (Optional) Name of configuration file (without .conf suffix) -# Defaults to $facts['os_service_default']. -# -# [*amqp_username*] -# (Optional) User name for message broker authentication -# Defaults to $facts['os_service_default']. -# -# [*amqp_password*] -# (Optional) Password for message broker authentication -# Defaults to $facts['os_service_default']. -# -# [*purge_config*] -# (optional) Whether to set only the specified config options -# in the sahara config. -# Defaults to false. -# -# [*default_ntp_server*] -# (optional) default ntp server to be used by the cluster instances -# Defaults to $facts['os_service_default'] -# -class sahara( - $package_ensure = 'present', - $host = $facts['os_service_default'], - $port = $facts['os_service_default'], - $plugins = $facts['os_service_default'], - $use_floating_ips = $facts['os_service_default'], - $node_domain = $facts['os_service_default'], - $use_designate = $facts['os_service_default'], - $nameservers = $facts['os_service_default'], - Boolean $use_ssl = false, - $ca_file = $facts['os_service_default'], - $cert_file = $facts['os_service_default'], - $key_file = $facts['os_service_default'], - Boolean $sync_db = true, - $default_transport_url = $facts['os_service_default'], - $rpc_response_timeout = $facts['os_service_default'], - $control_exchange = $facts['os_service_default'], - $amqp_durable_queues = $facts['os_service_default'], - $rabbit_ha_queues = $facts['os_service_default'], - $rabbit_use_ssl = $facts['os_service_default'], - $rabbit_login_method = $facts['os_service_default'], - $rabbit_retry_interval = $facts['os_service_default'], - $rabbit_retry_backoff = $facts['os_service_default'], - $rabbit_heartbeat_in_pthread = $facts['os_service_default'], - $rabbit_quorum_queue = $facts['os_service_default'], - $rabbit_quorum_delivery_limit = $facts['os_service_default'], - $rabbit_quorum_max_memory_length = $facts['os_service_default'], - $rabbit_quorum_max_memory_bytes = $facts['os_service_default'], - $kombu_ssl_version = $facts['os_service_default'], - $kombu_ssl_keyfile = $facts['os_service_default'], - $kombu_ssl_certfile = $facts['os_service_default'], - $kombu_ssl_ca_certs = $facts['os_service_default'], - $kombu_reconnect_delay = $facts['os_service_default'], - $kombu_failover_strategy = $facts['os_service_default'], - $kombu_compression = $facts['os_service_default'], - $amqp_server_request_prefix = $facts['os_service_default'], - $amqp_broadcast_prefix = $facts['os_service_default'], - $amqp_group_request_prefix = $facts['os_service_default'], - $amqp_container_name = $facts['os_service_default'], - $amqp_idle_timeout = $facts['os_service_default'], - $amqp_trace = $facts['os_service_default'], - $amqp_ssl_ca_file = $facts['os_service_default'], - $amqp_ssl_cert_file = $facts['os_service_default'], - $amqp_ssl_key_file = $facts['os_service_default'], - $amqp_ssl_key_password = $facts['os_service_default'], - $amqp_sasl_mechanisms = $facts['os_service_default'], - $amqp_sasl_config_dir = $facts['os_service_default'], - $amqp_sasl_config_name = $facts['os_service_default'], - $amqp_username = $facts['os_service_default'], - $amqp_password = $facts['os_service_default'], - Boolean $purge_config = false, - $default_ntp_server = $facts['os_service_default'], -) { - - include sahara::deps - include sahara::params - include sahara::db - - package { 'sahara-common': - ensure => $package_ensure, - name => $::sahara::params::common_package_name, - tag => ['openstack', 'sahara-package'], - } - - resources { 'sahara_config': - purge => $purge_config, - } - - sahara_config { - 'DEFAULT/plugins': value => join(any2array($plugins),','); - 'DEFAULT/use_floating_ips': value => $use_floating_ips; - 'DEFAULT/node_domain': value => $node_domain; - 'DEFAULT/use_designate': value => $use_designate; - 'DEFAULT/nameservers': value => join(any2array($nameservers), ','); - 'DEFAULT/host': value => $host; - 'DEFAULT/port': value => $port; - 'DEFAULT/default_ntp_server': value => $default_ntp_server; - } - - oslo::messaging::default { 'sahara_config': - transport_url => $default_transport_url, - rpc_response_timeout => $rpc_response_timeout, - control_exchange => $control_exchange, - } - - oslo::messaging::rabbit { 'sahara_config': - rabbit_ha_queues => $rabbit_ha_queues, - rabbit_use_ssl => $rabbit_use_ssl, - kombu_failover_strategy => $kombu_failover_strategy, - kombu_compression => $kombu_compression, - kombu_reconnect_delay => $kombu_reconnect_delay, - kombu_ssl_version => $kombu_ssl_version, - kombu_ssl_keyfile => $kombu_ssl_keyfile, - kombu_ssl_certfile => $kombu_ssl_certfile, - kombu_ssl_ca_certs => $kombu_ssl_ca_certs, - amqp_durable_queues => $amqp_durable_queues, - rabbit_login_method => $rabbit_login_method, - rabbit_retry_interval => $rabbit_retry_interval, - rabbit_retry_backoff => $rabbit_retry_backoff, - heartbeat_in_pthread => $rabbit_heartbeat_in_pthread, - rabbit_quorum_queue => $rabbit_quorum_queue, - rabbit_quorum_delivery_limit => $rabbit_quorum_delivery_limit, - rabbit_quorum_max_memory_length => $rabbit_quorum_max_memory_length, - rabbit_quorum_max_memory_bytes => $rabbit_quorum_max_memory_bytes, - } - - oslo::messaging::amqp { 'sahara_config': - server_request_prefix => $amqp_server_request_prefix, - broadcast_prefix => $amqp_broadcast_prefix, - group_request_prefix => $amqp_group_request_prefix, - container_name => $amqp_container_name, - idle_timeout => $amqp_idle_timeout, - trace => $amqp_trace, - ssl_ca_file => $amqp_ssl_ca_file, - ssl_cert_file => $amqp_ssl_cert_file, - ssl_key_file => $amqp_ssl_key_file, - ssl_key_password => $amqp_ssl_key_password, - sasl_mechanisms => $amqp_sasl_mechanisms, - sasl_config_dir => $amqp_sasl_config_dir, - sasl_config_name => $amqp_sasl_config_name, - username => $amqp_username, - password => $amqp_password, - } - - if $use_ssl { - if is_service_default($cert_file) { - fail('The cert_file parameter is required when use_ssl is set to true') - } - if is_service_default($key_file) { - fail('The key_file parameter is required when use_ssl is set to true') - } - sahara_config { - 'ssl/cert_file': value => $cert_file; - 'ssl/key_file': value => $key_file; - 'ssl/ca_file': value => $ca_file; - } - } else { - sahara_config { - 'ssl/cert_file': ensure => absent; - 'ssl/key_file': ensure => absent; - 'ssl/ca_file': ensure => absent; - } - } - - if $sync_db { - include sahara::db::sync - } - -} diff --git a/manifests/keystone/auth.pp b/manifests/keystone/auth.pp deleted file mode 100644 index b68fac94..00000000 --- a/manifests/keystone/auth.pp +++ /dev/null @@ -1,129 +0,0 @@ -# == Class: sahara::keystone::auth -# -# Configures sahara service and endpoint in Keystone. -# -# === Parameters -# -# [*password*] -# (Required) Password for Sahara user. -# -# [*service_name*] -# (Optional) Name of the service. -# Defaults to 'sahara' -# -# [*auth_name*] -# (Optional) Username for sahara service. -# Defaults to 'sahara'. -# -# [*email*] -# (Optional) Email for Sahara user. -# Defaults to 'sahara@localhost'. -# -# [*tenant*] -# (Optional) Tenant for Sahara user. -# Defaults to 'services'. -# -# [*roles*] -# (Optional) List of roles assigned to sahara user. -# Defaults to ['admin'] -# -# [*system_scope*] -# (Optional) Scope for system operations. -# Defaults to 'all' -# -# [*system_roles*] -# (Optional) List of system roles assigned to sahara user. -# Defaults to [] -# -# [*configure_endpoint*] -# (Optional) Should Sahara endpoint be configured? -# Defaults to true. -# -# [*configure_user*] -# (Optional) Should the service user be configured? -# Defaults to true -# -# [*configure_user_role*] -# (Optional) Should the admin role be configured for the service user? -# Defaults to true -# -# [*service_type*] -# (Optional) Type of service. -# Defaults to 'data-processing'. -# -# [*service_description*] -# (Optional) Description of service. -# Defaults to 'Sahara Data Processing'. -# -# [*region*] -# (Optional) Region for endpoint. -# Defaults to 'RegionOne'. -# -# [*public_url*] -# (Optional) The endpoint's public url. -# This url should *not* contain any trailing '/'. -# Defaults to 'http://127.0.0.1:8386' -# -# [*admin_url*] -# (Optional) The endpoint's admin url. -# This url should *not* contain any trailing '/'. -# Defaults to 'http://127.0.0.1:8386' -# -# [*internal_url*] -# (Optional) The endpoint's internal url. -# This url should *not* contain any trailing '/'. -# Defaults to 'http://127.0.0.1:8386' -# -# === Examples -# -# class { 'sahara::keystone::auth': -# password => 'secret', -# public_url => 'https://10.0.0.10:8386', -# internal_url => 'https://10.0.0.11:8386', -# admin_url => 'https://10.0.0.11:8386', -# } -# -class sahara::keystone::auth( - $password, - $service_name = 'sahara', - $auth_name = 'sahara', - $email = 'sahara@localhost', - $tenant = 'services', - $roles = ['admin'], - $system_scope = 'all', - $system_roles = [], - $service_type = 'data-processing', - $service_description = 'Sahara Data Processing', - $configure_endpoint = true, - $configure_user = true, - $configure_user_role = true, - $region = 'RegionOne', - $public_url = 'http://127.0.0.1:8386', - $admin_url = 'http://127.0.0.1:8386', - $internal_url = 'http://127.0.0.1:8386', -) { - - include sahara::deps - - Keystone::Resource::Service_identity['sahara'] -> Anchor['sahara::service::end'] - - keystone::resource::service_identity { 'sahara': - configure_user => $configure_user, - configure_user_role => $configure_user_role, - configure_endpoint => $configure_endpoint, - service_type => $service_type, - service_description => $service_description, - service_name => $service_name, - auth_name => $auth_name, - region => $region, - password => $password, - email => $email, - tenant => $tenant, - roles => $roles, - system_scope => $system_scope, - system_roles => $system_roles, - public_url => $public_url, - admin_url => $admin_url, - internal_url => $internal_url, - } -} diff --git a/manifests/keystone/authtoken.pp b/manifests/keystone/authtoken.pp deleted file mode 100644 index a294124c..00000000 --- a/manifests/keystone/authtoken.pp +++ /dev/null @@ -1,284 +0,0 @@ -# class: sahara::keystone::authtoken -# -# Configure the keystone_authtoken and the trustee sections in the -# configuration file -# -# === Parameters -# -# [*password*] -# (Required) Password to create for the service user -# -# [*username*] -# (Optional) The name of the service user -# Defaults to 'sahara' -# -# [*auth_url*] -# (Optional) The URL to use for authentication. -# Defaults to 'http:://127.0.0.1:5000' -# -# [*project_name*] -# (Optional) Service project name -# Defaults to 'services' -# -# [*user_domain_name*] -# (Optional) Name of domain for $username -# Defaults to 'Default' -# -# [*project_domain_name*] -# (Optional) Name of domain for $project_name -# Defaults to 'Default' -# -# [*system_scope*] -# (Optional) Scope for system operations -# Defaults to $facts['os_service_default'] -# -# [*insecure*] -# (Optional) If true, explicitly allow TLS without checking server cert -# against any certificate authorities. WARNING: not recommended. Use with -# caution. -# Defaults to $facts['os_service_default'] -# -# [*auth_section*] -# (Optional) Config Section from which to load plugin specific options -# Defaults to $facts['os_service_default']. -# -# [*auth_type*] -# (Optional) Authentication type to load -# Defaults to $facts['os_service_default'] -# -# [*www_authenticate_uri*] -# (Optional) Complete public Identity API endpoint. -# Defaults to 'http://127.0.0.1:5000/'. -# -# [*auth_version*] -# (Optional) API version of the admin Identity API endpoint. -# Defaults to $facts['os_service_default']. -# -# [*cache*] -# (Optional) Env key for the swift cache. -# Defaults to $facts['os_service_default']. -# -# [*cafile*] -# (Optional) A PEM encoded Certificate Authority to use when verifying HTTPs -# connections. -# Defaults to $facts['os_service_default']. -# -# [*certfile*] -# (Optional) Required if identity server requires client certificate -# Defaults to $facts['os_service_default']. -# -# [*delay_auth_decision*] -# (Optional) Do not handle authorization requests within the middleware, but -# delegate the authorization decision to downstream WSGI components. Boolean -# value -# Defaults to $facts['os_service_default']. -# -# [*enforce_token_bind*] -# (Optional) Used to control the use and type of token binding. Can be set -# to: "disabled" to not check token binding. "permissive" (default) to -# validate binding information if the bind type is of a form known to the -# server and ignore it if not. "strict" like "permissive" but if the bind -# type is unknown the token will be rejected. "required" any form of token -# binding is needed to be allowed. Finally the name of a binding method that -# must be present in tokens. String value. -# Defaults to $facts['os_service_default']. -# -# [*http_connect_timeout*] -# (Optional) Request timeout value for communicating with Identity API -# server. -# Defaults to $facts['os_service_default']. -# -# [*http_request_max_retries*] -# (Optional) How many times are we trying to reconnect when communicating -# with Identity API Server. Integer value -# Defaults to $facts['os_service_default']. -# -# [*include_service_catalog*] -# (Optional) Indicate whether to set the X-Service-Catalog header. If False, -# middleware will not ask for service catalog on token validation and will -# not set the X-Service-Catalog header. Boolean value. -# Defaults to $facts['os_service_default']. -# -# [*keyfile*] -# (Optional) Required if identity server requires client certificate -# Defaults to $facts['os_service_default']. -# -# [*memcache_pool_conn_get_timeout*] -# (Optional) Number of seconds that an operation will wait to get a memcached -# client connection from the pool. Integer value -# Defaults to $facts['os_service_default']. -# -# [*memcache_pool_dead_retry*] -# (Optional) Number of seconds memcached server is considered dead before it -# is tried again. Integer value -# Defaults to $facts['os_service_default']. -# -# [*memcache_pool_maxsize*] -# (Optional) Maximum total number of open connections to every memcached -# server. Integer value -# Defaults to $facts['os_service_default']. -# -# [*memcache_pool_socket_timeout*] -# (Optional) Number of seconds a connection to memcached is held unused in -# the pool before it is closed. Integer value -# Defaults to $facts['os_service_default']. -# -# [*memcache_pool_unused_timeout*] -# (Optional) Number of seconds a connection to memcached is held unused in -# the pool before it is closed. Integer value -# Defaults to $facts['os_service_default']. -# -# [*memcache_secret_key*] -# (Optional, mandatory if memcache_security_strategy is defined) This string -# is used for key derivation. -# Defaults to $facts['os_service_default']. -# -# [*memcache_security_strategy*] -# (Optional) If defined, indicate whether token data should be authenticated -# or authenticated and encrypted. If MAC, token data is authenticated (with -# HMAC) in the cache. If ENCRYPT, token data is encrypted and authenticated in the -# cache. If the value is not one of these options or empty, auth_token will -# raise an exception on initialization. -# Defaults to $facts['os_service_default']. -# -# [*memcache_use_advanced_pool*] -# (Optional) Use the advanced (eventlet safe) memcached client pool. The -# advanced pool will only work under python 2.x Boolean value -# Defaults to $facts['os_service_default']. -# -# [*memcached_servers*] -# (Optional) Optionally specify a list of memcached server(s) to use for -# caching. If left undefined, tokens will instead be cached in-process. -# Defaults to $facts['os_service_default']. -# -# [*manage_memcache_package*] -# (Optional) Whether to install the python-memcache package. -# Defaults to false. -# -# [*region_name*] -# (Optional) The region in which the identity server can be found. -# Defaults to $facts['os_service_default']. -# -# [*token_cache_time*] -# (Optional) In order to prevent excessive effort spent validating tokens, -# the middleware caches previously-seen tokens for a configurable duration -# (in seconds). Set to -1 to disable caching completely. Integer value -# Defaults to $facts['os_service_default']. -# -# [*service_token_roles*] -# (Optional) A choice of roles that must be present in a service token. -# Service tokens are allowed to request that an expired token -# can be used and so this check should tightly control that -# only actual services should be sending this token. Roles -# here are applied as an ANY check so any role in this list -# must be present. For backwards compatibility reasons this -# currently only affects the allow_expired check. (list value) -# Defaults to $facts['os_service_default']. -# -# [*service_token_roles_required*] -# (optional) backwards compatibility to ensure that the service tokens are -# compared against a list of possible roles for validity -# true/false -# Defaults to $facts['os_service_default']. -# -# [*service_type*] -# (Optional) The name or type of the service as it appears in the service -# catalog. This is used to validate tokens that have restricted access rules. -# Defaults to $facts['os_service_default']. -# -# [*interface*] -# (Optional) Interface to use for the Identity API endpoint. Valid values are -# "public", "internal" or "admin". -# Defaults to $facts['os_service_default']. -# -class sahara::keystone::authtoken( - String[1] $password, - $username = 'sahara', - $auth_url = 'http://127.0.0.1:5000/', - $project_name = 'services', - $user_domain_name = 'Default', - $project_domain_name = 'Default', - $system_scope = $facts['os_service_default'], - $insecure = $facts['os_service_default'], - $auth_section = $facts['os_service_default'], - $auth_type = 'password', - $www_authenticate_uri = 'http://127.0.0.1:5000/', - $auth_version = $facts['os_service_default'], - $cache = $facts['os_service_default'], - $cafile = $facts['os_service_default'], - $certfile = $facts['os_service_default'], - $delay_auth_decision = $facts['os_service_default'], - $enforce_token_bind = $facts['os_service_default'], - $http_connect_timeout = $facts['os_service_default'], - $http_request_max_retries = $facts['os_service_default'], - $include_service_catalog = $facts['os_service_default'], - $keyfile = $facts['os_service_default'], - $memcache_pool_conn_get_timeout = $facts['os_service_default'], - $memcache_pool_dead_retry = $facts['os_service_default'], - $memcache_pool_maxsize = $facts['os_service_default'], - $memcache_pool_socket_timeout = $facts['os_service_default'], - $memcache_pool_unused_timeout = $facts['os_service_default'], - $memcache_secret_key = $facts['os_service_default'], - $memcache_security_strategy = $facts['os_service_default'], - $memcache_use_advanced_pool = $facts['os_service_default'], - $memcached_servers = $facts['os_service_default'], - $manage_memcache_package = false, - $region_name = $facts['os_service_default'], - $token_cache_time = $facts['os_service_default'], - $service_token_roles = $facts['os_service_default'], - $service_token_roles_required = $facts['os_service_default'], - $service_type = $facts['os_service_default'], - $interface = $facts['os_service_default'], -) { - - include sahara::deps - - keystone::resource::authtoken { 'sahara_config': - username => $username, - password => $password, - project_name => $project_name, - auth_url => $auth_url, - www_authenticate_uri => $www_authenticate_uri, - auth_version => $auth_version, - auth_type => $auth_type, - auth_section => $auth_section, - user_domain_name => $user_domain_name, - project_domain_name => $project_domain_name, - system_scope => $system_scope, - insecure => $insecure, - cache => $cache, - cafile => $cafile, - certfile => $certfile, - delay_auth_decision => $delay_auth_decision, - enforce_token_bind => $enforce_token_bind, - http_connect_timeout => $http_connect_timeout, - http_request_max_retries => $http_request_max_retries, - include_service_catalog => $include_service_catalog, - keyfile => $keyfile, - memcache_pool_conn_get_timeout => $memcache_pool_conn_get_timeout, - memcache_pool_dead_retry => $memcache_pool_dead_retry, - memcache_pool_maxsize => $memcache_pool_maxsize, - memcache_pool_socket_timeout => $memcache_pool_socket_timeout, - memcache_secret_key => $memcache_secret_key, - memcache_security_strategy => $memcache_security_strategy, - memcache_use_advanced_pool => $memcache_use_advanced_pool, - memcache_pool_unused_timeout => $memcache_pool_unused_timeout, - memcached_servers => $memcached_servers, - manage_memcache_package => $manage_memcache_package, - region_name => $region_name, - token_cache_time => $token_cache_time, - service_token_roles => $service_token_roles, - service_token_roles_required => $service_token_roles_required, - service_type => $service_type, - interface => $interface, - } - - sahara_config { - 'trustee/username' : value => $username; - 'trustee/password' : value => $password, secret => true; - 'trustee/project_name' : value => $project_name; - 'trustee/auth_url' : value => $auth_url; - 'trustee/user_domain_name' : value => $user_domain_name; - 'trustee/project_domain_name' : value => $project_domain_name; - } -} diff --git a/manifests/logging.pp b/manifests/logging.pp deleted file mode 100644 index ea44c3c4..00000000 --- a/manifests/logging.pp +++ /dev/null @@ -1,151 +0,0 @@ -# == Class sahara::logging -# -# sahara extended logging configuration -# -# === Parameters -# -# [*debug*] -# (Optional) Should the daemons log debug messages -# Defaults to $facts['os_service_default']. -# -# [*use_syslog*] -# Use syslog for logging. -# (Optional) Defaults to $facts['os_service_default']. -# -# [*use_json*] -# Use json for logging. -# (Optional) Defaults to $facts['os_service_default']. -# -# [*use_journal*] -# Use journal for logging. -# (Optional) Defaults to $facts['os_service_default']. -# -# [*use_stderr*] -# (Optional) Use stderr for logging -# Defaults to $facts['os_service_default']. -# -# [*log_facility*] -# Syslog facility to receive log lines. -# (Optional) Defaults to $facts['os_service_default']. -# -# [*log_file*] -# (optional) Where to log -# Defaults to $facts['os_service_default'] -# -# [*watch_log_file*] -# (Optional) Uses logging handler designed to watch file system (boolean value). -# Defaults to $facts['os_service_default'] -# -# [*log_dir*] -# (Optional) Directory where logs should be stored. -# If set to $facts['os_service_default'], it will not log to any directory. -# Defaults to '/var/log/sahara' -# -# [*logging_context_format_string*] -# (Optional) Format string to use for log messages with context. -# Defaults to $facts['os_service_default']. -# Example: '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s\ -# [%(request_id)s %(user_identity)s] %(instance)s%(message)s' -# -# [*logging_default_format_string*] -# (Optional) Format string to use for log messages without context. -# Defaults to $facts['os_service_default']. -# Example: '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s\ -# [-] %(instance)s%(message)s' -# -# [*logging_debug_format_suffix*] -# (Optional) Formatted data to append to log format when level is DEBUG. -# Defaults to $facts['os_service_default']. -# Example: '%(funcName)s %(pathname)s:%(lineno)d' -# -# [*logging_exception_prefix*] -# (Optional) Prefix each line of exception output with this format. -# Defaults to $facts['os_service_default']. -# Example: '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s' -# -# [*log_config_append*] -# (Optional) The name of an additional logging configuration file. -# Defaults to $facts['os_service_default']. -# See https://docs.python.org/2/howto/logging.html -# -# [*default_log_levels*] -# (0ptional) Hash of logger (keys) and level (values) pairs. -# Defaults to $facts['os_service_default']. -# Example: -# {'amqp' => 'WARN', 'amqplib' => 'WARN', 'boto' => 'WARN', -# 'sqlalchemy' => 'WARN', 'suds' => 'INFO', 'iso8601' => 'WARN', -# 'requests.packages.urllib3.connectionpool' => 'WARN' } -# -# [*publish_errors*] -# (Optional) Publish error events (boolean value). -# Defaults to $facts['os_service_default'] (false if unconfigured). -# -# [*fatal_deprecations*] -# (Optional) Make deprecations fatal (boolean value) -# Defaults to $facts['os_service_default'] (false if unconfigured). -# -# [*instance_format*] -# (Optional) If an instance is passed with the log message, format it -# like this (string value). -# Defaults to $facts['os_service_default']. -# Example: '[instance: %(uuid)s] ' -# -# [*instance_uuid_format*] -# (Optional) If an instance UUID is passed with the log message, format -# It like this (string value). -# Defaults to $facts['os_service_default']. -# Example: instance_uuid_format='[instance: %(uuid)s] ' - -# [*log_date_format*] -# (Optional) Format string for %%(asctime)s in log records. -# Defaults to $facts['os_service_default']. -# Example: 'Y-%m-%d %H:%M:%S' -# -class sahara::logging( - $debug = $facts['os_service_default'], - $use_syslog = $facts['os_service_default'], - $use_json = $facts['os_service_default'], - $use_journal = $facts['os_service_default'], - $use_stderr = $facts['os_service_default'], - $log_facility = $facts['os_service_default'], - $log_file = $facts['os_service_default'], - $watch_log_file = $facts['os_service_default'], - $log_dir = '/var/log/sahara', - $logging_context_format_string = $facts['os_service_default'], - $logging_default_format_string = $facts['os_service_default'], - $logging_debug_format_suffix = $facts['os_service_default'], - $logging_exception_prefix = $facts['os_service_default'], - $log_config_append = $facts['os_service_default'], - $default_log_levels = $facts['os_service_default'], - $publish_errors = $facts['os_service_default'], - $fatal_deprecations = $facts['os_service_default'], - $instance_format = $facts['os_service_default'], - $instance_uuid_format = $facts['os_service_default'], - $log_date_format = $facts['os_service_default'], -) { - - include sahara::deps - - oslo::log { 'sahara_config': - debug => $debug, - use_syslog => $use_syslog, - use_json => $use_json, - use_journal => $use_journal, - use_stderr => $use_stderr, - log_file => $log_file, - watch_log_file => $watch_log_file, - log_dir => $log_dir, - syslog_log_facility => $log_facility, - logging_context_format_string => $logging_context_format_string, - logging_default_format_string => $logging_default_format_string, - logging_debug_format_suffix => $logging_debug_format_suffix, - logging_exception_prefix => $logging_exception_prefix, - log_config_append => $log_config_append, - default_log_levels => $default_log_levels, - publish_errors => $publish_errors, - fatal_deprecations => $fatal_deprecations, - log_date_format => $log_date_format, - instance_format => $instance_format, - instance_uuid_format => $instance_uuid_format, - } -} diff --git a/manifests/notify.pp b/manifests/notify.pp deleted file mode 100644 index eb36efde..00000000 --- a/manifests/notify.pp +++ /dev/null @@ -1,35 +0,0 @@ -# == Class: sahara::notify -# -# Ceilometer notifications configuration for Sahara -# -# === Parameters -# -# [*notification_transport_url*] -# (Optional) A URL representing the messaging driver to use for notifications -# and its full configuration. Transport URLs take the form: -# transport://user:pass@host1:port[,hostN:portN]/virtual_host -# Defaults to $facts['os_service_default'] -# -# [*notification_driver*] -# (Optional) Notification driver to use. -# Defaults to $facts['os_service_default']. -# -# [*notification_topics*] -# (Optional) Topic to use for notifications. -# Defaults to $facts['os_service_default']. -# -class sahara::notify ( - $notification_transport_url = $facts['os_service_default'], - $notification_driver = $facts['os_service_default'], - $notification_topics = $facts['os_service_default'], -) { - - include sahara::deps - - oslo::messaging::notifications { 'sahara_config': - transport_url => $notification_transport_url, - driver => $notification_driver, - topics => $notification_topics, - } - -} diff --git a/manifests/params.pp b/manifests/params.pp deleted file mode 100644 index 278544b4..00000000 --- a/manifests/params.pp +++ /dev/null @@ -1,37 +0,0 @@ -# == Class: sahara::params -# -# Parameters for puppet-sahara -# -class sahara::params { - include openstacklib::defaults - - $client_package_name = 'python3-saharaclient' - $user = 'sahara' - $group = 'sahara' - - case $facts['os']['family'] { - 'RedHat': { - $common_package_name = 'openstack-sahara-common' - $api_package_name = 'openstack-sahara-api' - $engine_package_name = 'openstack-sahara-engine' - $api_service_name = 'openstack-sahara-api' - $engine_service_name = 'openstack-sahara-engine' - $sahara_wsgi_script_path = '/var/www/cgi-bin/sahara' - $sahara_wsgi_script_source = '/usr/bin/sahara-wsgi-api' - $plugin_package_name_base = 'python3-sahara-plugin-' - } - 'Debian': { - $common_package_name = 'sahara-common' - $api_package_name = 'sahara-api' - $engine_package_name = 'sahara-engine' - $api_service_name = 'sahara-api' - $engine_service_name = 'sahara-engine' - $sahara_wsgi_script_path = '/usr/lib/cgi-bin/sahara' - $sahara_wsgi_script_source = '/usr/bin/sahara-wsgi-api' - $plugin_package_name_base = 'python3-sahara-plugin-' - } - default: { - fail("Unsupported osfamily: ${facts['os']['family']}") - } - } -} diff --git a/manifests/plugin.pp b/manifests/plugin.pp deleted file mode 100644 index ec043823..00000000 --- a/manifests/plugin.pp +++ /dev/null @@ -1,23 +0,0 @@ -# == Define: sahara::plugin -# -# Sahara plugin configuration -# -# === Parameters -# -# [*package_ensure*] -# (Optional) Ensure state for package -# Defaults to 'present'. -# -define sahara::plugin( - $package_ensure = 'present', -) { - - include sahara::deps - include sahara::params - - package { "sahara-plugin-${name}": - ensure => $package_ensure, - name => "${::sahara::params::plugin_package_name_base}${name}", - tag => ['openstack', 'sahara-package'], - } -} diff --git a/manifests/policy.pp b/manifests/policy.pp deleted file mode 100644 index 35a70584..00000000 --- a/manifests/policy.pp +++ /dev/null @@ -1,81 +0,0 @@ -# == Class: sahara::policy -# -# Configure the sahara policies -# -# === Parameters -# -# [*enforce_scope*] -# (Optional) Whether or not to enforce scope when evaluating policies. -# Defaults to $facts['os_service_default']. -# -# [*enforce_new_defaults*] -# (Optional) Whether or not to use old deprecated defaults when evaluating -# policies. -# Defaults to $facts['os_service_default']. -# -# [*policies*] -# (Optional) Set of policies to configure for sahara -# Example : -# { -# 'sahara-context_is_admin' => { -# 'key' => 'context_is_admin', -# 'value' => 'true' -# }, -# 'sahara-default' => { -# 'key' => 'default', -# 'value' => 'rule:admin_or_owner' -# } -# } -# Defaults to empty hash. -# -# [*policy_path*] -# (Optional) Path to the sahara policy.yaml file -# Defaults to /etc/sahara/policy.yaml -# -# [*policy_default_rule*] -# (Optional) Default rule. Enforced when a requested rule is not found. -# Defaults to $facts['os_service_default']. -# -# [*policy_dirs*] -# (Optional) Path to the sahara policy folder -# Defaults to $facts['os_service_default'] -# -# [*purge_config*] -# (optional) Whether to set only the specified policy rules in the policy -# file. -# Defaults to false. -# -class sahara::policy ( - $enforce_scope = $facts['os_service_default'], - $enforce_new_defaults = $facts['os_service_default'], - Hash $policies = {}, - $policy_path = '/etc/sahara/policy.yaml', - $policy_default_rule = $facts['os_service_default'], - $policy_dirs = $facts['os_service_default'], - Boolean $purge_config = false, -) { - - include sahara::deps - include sahara::params - - $policy_parameters = { - policies => $policies, - policy_path => $policy_path, - file_user => 'root', - file_group => $::sahara::params::group, - file_format => 'yaml', - purge_config => $purge_config, - tag => 'sahara', - } - - create_resources('openstacklib::policy', { $policy_path => $policy_parameters }) - - oslo::policy { 'sahara_config': - enforce_scope => $enforce_scope, - enforce_new_defaults => $enforce_new_defaults, - policy_file => $policy_path, - policy_default_rule => $policy_default_rule, - policy_dirs => $policy_dirs, - } - -} diff --git a/manifests/service/api.pp b/manifests/service/api.pp deleted file mode 100644 index bcfdebf7..00000000 --- a/manifests/service/api.pp +++ /dev/null @@ -1,87 +0,0 @@ -# == Class: sahara::service::api -# -# Installs & configure the Sahara API service -# -# === Parameters -# -# [*api_workers*] -# (Optional) Number of workers for Sahara API service -# 0 means all-in-one-thread configuration -# Defaults to $facts['os_workers'] -# -# [*enabled*] -# (Optional) Should the service be enabled. -# Defaults to 'true'. -# -# [*manage_service*] -# (Optional) Whether the service should be managed by Puppet. -# Defaults to 'true'. -# -# [*package_ensure*] -# (Optional) Ensure state for package. -# Defaults to 'present' -# -# [*service_name*] -# (Optional) Name of the service that will be providing the -# server functionality of sahara-api. -# If the value is 'httpd', this means sahara-api will be a web -# service, and you must use another class to configure that -# web service. For example, use class { 'sahara::wsgi::apache'...} -# to make sahara-api be a web app using apache mod_wsgi. -# Defaults to '$::sahara::params::api_service_name' -# -class sahara::service::api ( - $api_workers = $facts['os_workers'], - Boolean $enabled = true, - Boolean $manage_service = true, - $package_ensure = 'present', - $service_name = $::sahara::params::api_service_name, -) inherits sahara::params { - - include sahara::deps - include sahara::policy - - if $facts['os']['name'] == 'Ubuntu' and $service_name == $::sahara::params::api_service_name { - fail('The Sahara API must be run with WSGI on Ubuntu') - } - - package { 'sahara-api': - ensure => $package_ensure, - name => $::sahara::params::api_package_name, - tag => ['openstack', 'sahara-package'], - } - - sahara_config { - 'DEFAULT/api_workers': value => $api_workers; - } - - if $manage_service { - if $enabled { - $service_ensure = 'running' - } else { - $service_ensure = 'stopped' - } - - if $service_name == $::sahara::params::api_service_name { - service { 'sahara-api': - ensure => $service_ensure, - name => $::sahara::params::api_service_name, - enable => $enabled, - hasstatus => true, - hasrestart => true, - tag => 'sahara-service', - } - } elsif $service_name == 'httpd' { - if $facts['os']['name'] != 'Ubuntu' { - service { 'sahara-api': - ensure => 'stopped', - name => $::sahara::params::api_service_name, - enable => false, - tag => 'sahara-service', - } - Service['sahara-api'] -> Service[$service_name] - } - Service<| title == 'httpd' |> { tag +> 'sahara-service' } - } - } -} diff --git a/manifests/service/engine.pp b/manifests/service/engine.pp deleted file mode 100644 index db9054f4..00000000 --- a/manifests/service/engine.pp +++ /dev/null @@ -1,115 +0,0 @@ -# == Class: sahara::service::engine -# -# Installs & configure the Sahara Engine service -# -# === Parameters -# -# [*enabled*] -# (Optional) Should the service be enabled. -# Defaults to 'true'. -# -# [*manage_service*] -# (Optional) Whether the service should be managed by Puppet. -# Defaults to 'true'. -# -# [*package_ensure*] -# (Optional) Ensure state for package. -# Defaults to 'present' -# -# [*periodic_enable*] -# (Optional) Enable periodic tasks. -# Defaults to $facts['os_service_default'] -# -# [*periodic_fuzzy_delay*] -# (Optional) Range in seconds to randomly delay when starting the periodic -# task scheduler to reduse stampending. -# Defaults to $facts['os_service_default'] -# -# [*periodic_interval_max*] -# (Optional) Max interval size between periodic tasks execution in seconds. -# Defaults to $facts['os_service_default'] -# -# [*min_transient_cluster_active_time*] -# (Optional) Minimal "lifetime" in seconds for a transient cluster. -# Defaults to $facts['os_service_default'] -# -# [*cleanup_time_for_incomplete_clusters*] -# (Optional) Maximal time (in hours) for clusters allowed to be in states -# other than "Active", "Deleting" or "Error". -# Defaults to $facts['os_service_default'] -# -# [*periodic_coordinator_backend_url*] -# (Optional) The backend URL to use for distributed periodic tasks -# coordination. -# Defaults to $facts['os_service_default'] -# -# [*periodic_workers_number*] -# (Optional) Number of threads to run periodic tasks. -# Defaults to $facts['os_service_default'] -# -# [*coordinator_heartbeat_interval*] -# (Optional) Interval size between heartbeat execution in seconds. -# Defaults to $facts['os_service_default'] -# -# [*hash_ring_replicas_count*] -# (Optional) Number of points that belongs to each number on a hash ring. -# Defaults to $facts['os_service_default'] -# -class sahara::service::engine ( - Boolean $enabled = true, - Boolean $manage_service = true, - $package_ensure = 'present', - $periodic_enable = $facts['os_service_default'], - $periodic_fuzzy_delay = $facts['os_service_default'], - $periodic_interval_max = $facts['os_service_default'], - $min_transient_cluster_active_time = $facts['os_service_default'], - $cleanup_time_for_incomplete_clusters = $facts['os_service_default'], - $periodic_coordinator_backend_url = $facts['os_service_default'], - $periodic_workers_number = $facts['os_service_default'], - $coordinator_heartbeat_interval = $facts['os_service_default'], - $hash_ring_replicas_count = $facts['os_service_default'], -) { - - include sahara::deps - include sahara::params - - package { 'sahara-engine': - ensure => $package_ensure, - name => $::sahara::params::engine_package_name, - tag => ['openstack', 'sahara-package'], - } - - if $manage_service { - if $enabled { - $service_ensure = 'running' - } else { - $service_ensure = 'stopped' - } - - service { 'sahara-engine': - ensure => $service_ensure, - name => $::sahara::params::engine_service_name, - enable => $enabled, - hasstatus => true, - hasrestart => true, - tag => 'sahara-service', - } - } - - oslo::coordination{ 'sahara_config': - backend_url => $periodic_coordinator_backend_url, - manage_config => false - } - - sahara_config { - 'DEFAULT/periodic_enable': value => $periodic_enable; - 'DEFAULT/periodic_fuzzy_delay': value => $periodic_fuzzy_delay; - 'DEFAULT/periodic_interval_max': value => $periodic_interval_max; - 'DEFAULT/min_transient_cluster_active_time': value => $min_transient_cluster_active_time; - 'DEFAULT/cleanup_time_for_incomplete_clusters': value => $cleanup_time_for_incomplete_clusters; - 'DEFAULT/periodic_coordinator_backend_url': value => $periodic_coordinator_backend_url, secret => true; - 'DEFAULT/periodic_workers_number': value => $periodic_workers_number; - 'DEFAULT/coordinator_heartbeat_interval': value => $coordinator_heartbeat_interval; - 'DEFAULT/hash_ring_replicas_count': value => $hash_ring_replicas_count; - } -} diff --git a/manifests/wsgi/apache.pp b/manifests/wsgi/apache.pp deleted file mode 100644 index 831c8cbf..00000000 --- a/manifests/wsgi/apache.pp +++ /dev/null @@ -1,190 +0,0 @@ -# -# Copyright (C) 2018 Binero -# -# Author: Tobias Urdin -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# -# == Class: sahara::wsgi::apache -# -# Install Sahara API under apache with mod_wsgi. -# -# == Parameters: -# -# [*servername*] -# (Optional) The servername for the virtualhost. -# Defaults to $facts['networking']['fqdn'] -# -# [*port*] -# (Optional) The port. -# Defaults to 8386 -# -# [*bind_host*] -# (Optional) The host/ip address Apache will listen on. -# Defaults to undef (listen on all ip addresses). -# -# [*path*] -# (Optional) The prefix for the endpoint. -# Defaults to '/' -# -# [*ssl*] -# (Optional) Use ssl. -# Defaults to false -# -# [*workers*] -# (Optional) Number of WSGI workers to spawn. -# Defaults to $facts['os_workers'] -# -# [*priority*] -# (Optional) The priority for the vhost. -# Defaults to 10 -# -# [*threads*] -# (Optional) The number of threads for the vhost. -# Defaults to 1 -# -# [*wsgi_process_display_name*] -# (Optional) Name of the WSGI process display-name. -# Defaults to undef -# -# [*ssl_cert*] -# [*ssl_key*] -# [*ssl_chain*] -# [*ssl_ca*] -# [*ssl_crl_path*] -# [*ssl_crl*] -# [*ssl_certs_dir*] -# (Optional) apache::vhost ssl parameters. -# Default to apache::vhost 'ssl_*' defaults -# -# [*access_log_file*] -# (Optional) The log file name for the virtualhost. -# Defaults to undef. -# -# [*access_log_pipe*] -# (Optional) Specifies a pipe where Apache sends access logs for -# the virtualhost. -# Defaults to undef. -# -# [*access_log_syslog*] -# (Optional) Sends the virtualhost access log messages to syslog. -# Defaults to undef. -# -# [*access_log_format*] -# (Optional) The log format for the virtualhost. -# Defaults to undef. -# -# [*error_log_file*] -# (Optional) The error log file name for the virtualhost. -# Defaults to undef. -# -# [*error_log_pipe*] -# (Optional) Specifies a pipe where Apache sends error logs for -# the virtualhost. -# Defaults to undef. -# -# [*error_log_syslog*] -# (Optional) Sends the virtualhost error log messages to syslog. -# Defaults to undef. -# -# [*custom_wsgi_process_options*] -# (Optional) gives you the oportunity to add custom process options or to -# overwrite the default options for the WSGI main process. -# eg. to use a virtual python environment for the WSGI process -# you could set it to: -# { python-path => '/my/python/virtualenv' } -# Defaults to {} -# -# [*headers*] -# (Optional) Headers for the vhost. -# Defaults to undef -# -# [*request_headers*] -# (Optional) Modifies collected request headers in various ways. -# Defaults to undef -# -# == Example: -# -# include apache -# class { 'sahara::wsgi::apache': } -# -class sahara::wsgi::apache ( - $servername = $facts['networking']['fqdn'], - $port = 8386, - $bind_host = undef, - $path = '/', - $ssl = false, - $workers = $facts['os_workers'], - $ssl_cert = undef, - $ssl_key = undef, - $ssl_chain = undef, - $ssl_ca = undef, - $ssl_crl_path = undef, - $ssl_crl = undef, - $ssl_certs_dir = undef, - $wsgi_process_display_name = undef, - $threads = 1, - $priority = 10, - $access_log_file = undef, - $access_log_pipe = undef, - $access_log_syslog = undef, - $access_log_format = undef, - $error_log_file = undef, - $error_log_pipe = undef, - $error_log_syslog = undef, - $custom_wsgi_process_options = {}, - $headers = undef, - $request_headers = undef, -) { - - include sahara::deps - include sahara::params - - Anchor['sahara::install::end'] -> Class['apache'] - - ::openstacklib::wsgi::apache { 'sahara_wsgi': - bind_host => $bind_host, - bind_port => $port, - group => $::sahara::params::group, - path => $path, - priority => $priority, - servername => $servername, - ssl => $ssl, - ssl_ca => $ssl_ca, - ssl_cert => $ssl_cert, - ssl_certs_dir => $ssl_certs_dir, - ssl_chain => $ssl_chain, - ssl_crl => $ssl_crl, - ssl_crl_path => $ssl_crl_path, - ssl_key => $ssl_key, - threads => $threads, - user => $::sahara::params::user, - workers => $workers, - wsgi_daemon_process => 'sahara', - wsgi_process_display_name => $wsgi_process_display_name, - wsgi_process_group => 'sahara', - wsgi_script_dir => $::sahara::params::sahara_wsgi_script_path, - wsgi_script_file => 'app', - wsgi_script_source => $::sahara::params::sahara_wsgi_script_source, - headers => $headers, - request_headers => $request_headers, - custom_wsgi_process_options => $custom_wsgi_process_options, - access_log_file => $access_log_file, - access_log_pipe => $access_log_pipe, - access_log_syslog => $access_log_syslog, - access_log_format => $access_log_format, - error_log_file => $error_log_file, - error_log_pipe => $error_log_pipe, - error_log_syslog => $error_log_syslog, - } -} diff --git a/manifests/wsgi/uwsgi.pp b/manifests/wsgi/uwsgi.pp deleted file mode 100644 index dbbe4a68..00000000 --- a/manifests/wsgi/uwsgi.pp +++ /dev/null @@ -1,41 +0,0 @@ -# -# Copyright 2021 Thomas Goirand -# -# Author: Thomas Goirand -# -# == Class: sahara::wsgi::uwsgi -# -# Configure the UWSGI service for Sahara API. -# -# == Parameters -# -# [*processes*] -# (Optional) Number of processes. -# Defaults to $facts['os_workers']. -# -# [*threads*] -# (Optional) Number of threads. -# Defaults to 32. -# -# [*listen_queue_size*] -# (Optional) Socket listen queue size. -# Defaults to 100 -# -class sahara::wsgi::uwsgi ( - $processes = $facts['os_workers'], - $threads = 32, - $listen_queue_size = 100, -){ - - include sahara::deps - - if $facts['os']['name'] != 'Debian'{ - warning('This class is only valid for Debian, as other operating systems are not using uwsgi by default.') - } - - sahara_api_uwsgi_config { - 'uwsgi/processes': value => $processes; - 'uwsgi/threads': value => $threads; - 'uwsgi/listen': value => $listen_queue_size; - } -} diff --git a/metadata.json b/metadata.json deleted file mode 100644 index 90da305d..00000000 --- a/metadata.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "author": "Red Hat and OpenStack Contributors", - "dependencies": [ - { - "name": "openstack/keystone", - "version_requirement": ">=23.0.0 <24.0.0" - }, - { - "name": "puppetlabs/inifile", - "version_requirement": ">=2.0.0 <7.0.0" - }, - { - "name": "puppetlabs/stdlib", - "version_requirement": ">=5.0.0 <10.0.0" - }, - { - "name": "openstack/openstacklib", - "version_requirement": ">=23.0.0 <24.0.0" - }, - { - "name": "openstack/oslo", - "version_requirement": ">=23.0.0 <24.0.0" - } - ], - "description": "Installs and configures OpenStack Sahara (Data Processing).", - "issues_url": "https://bugs.launchpad.net/puppet-sahara", - "license": "Apache-2.0", - "name": "openstack-sahara", - "operatingsystem_support": [ - { - "operatingsystem": "Debian", - "operatingsystemrelease": [ - "12" - ] - }, - { - "operatingsystem": "RedHat", - "operatingsystemrelease": [ - "9" - ] - }, - { - "operatingsystem": "CentOS", - "operatingsystemrelease": [ - "9" - ] - }, - { - "operatingsystem": "Ubuntu", - "operatingsystemrelease": [ - "22.04" - ] - } - ], - "project_page": "https://launchpad.net/puppet-sahara", - "requirements": [ - { - "name": "puppet", - "version_requirement": ">= 7.0.0 < 8.0.0" - } - ], - "source": "https://opendev.org/openstack/puppet-sahara.git", - "summary": "Puppet module for OpenStack Sahara", - "version": "23.0.0" -} diff --git a/releasenotes/notes/add-log_file-for-logging-98ab323c1e1528b8.yaml b/releasenotes/notes/add-log_file-for-logging-98ab323c1e1528b8.yaml deleted file mode 100644 index e40d4c81..00000000 --- a/releasenotes/notes/add-log_file-for-logging-98ab323c1e1528b8.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - Add the log_file option for logging. diff --git a/releasenotes/notes/add-openstackclient-client-aa1d52a23f5818cd.yaml b/releasenotes/notes/add-openstackclient-client-aa1d52a23f5818cd.yaml deleted file mode 100644 index 7fe57825..00000000 --- a/releasenotes/notes/add-openstackclient-client-aa1d52a23f5818cd.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -features: - - Add openstackclient installation to the client class. diff --git a/releasenotes/notes/add-pool_timeout-option-for-db-831ff90d2497a2a7.yaml b/releasenotes/notes/add-pool_timeout-option-for-db-831ff90d2497a2a7.yaml deleted file mode 100644 index be303891..00000000 --- a/releasenotes/notes/add-pool_timeout-option-for-db-831ff90d2497a2a7.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - Adds the pool_timeout option for configuring oslo.db. This will - configure this value for pool_timeout with SQLAlchemy. diff --git a/releasenotes/notes/add-service_token_roles-option-88fd7bdb8d69271d.yaml b/releasenotes/notes/add-service_token_roles-option-88fd7bdb8d69271d.yaml deleted file mode 100644 index ad0f1614..00000000 --- a/releasenotes/notes/add-service_token_roles-option-88fd7bdb8d69271d.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - Add support to configure service_token_roles in authtoken middleware. diff --git a/releasenotes/notes/add-use_journal-option-for-logging-a2bb990d189eaf7a.yaml b/releasenotes/notes/add-use_journal-option-for-logging-a2bb990d189eaf7a.yaml deleted file mode 100644 index 12b190e7..00000000 --- a/releasenotes/notes/add-use_journal-option-for-logging-a2bb990d189eaf7a.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - Adds the use_journal option for configuring oslo.log. This will enable - passing the logs to journald. diff --git a/releasenotes/notes/add_db_sync_timeout-bdf17ecebf68285b.yaml b/releasenotes/notes/add_db_sync_timeout-bdf17ecebf68285b.yaml deleted file mode 100644 index 233445f6..00000000 --- a/releasenotes/notes/add_db_sync_timeout-bdf17ecebf68285b.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -features: - - Adds db_sync_timeout parameter to db sync. diff --git a/releasenotes/notes/add_messaging_default_parameters-87a3598135f23e34.yaml b/releasenotes/notes/add_messaging_default_parameters-87a3598135f23e34.yaml deleted file mode 100644 index 4809dbe3..00000000 --- a/releasenotes/notes/add_messaging_default_parameters-87a3598135f23e34.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - Add new parameter "rpc_response_timeout", seconds to wait for a - response from a call diff --git a/releasenotes/notes/add_mysql_enable_ndb-option-91663a4be11b4b89.yaml b/releasenotes/notes/add_mysql_enable_ndb-option-91663a4be11b4b89.yaml deleted file mode 100644 index 2e28c5c6..00000000 --- a/releasenotes/notes/add_mysql_enable_ndb-option-91663a4be11b4b89.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - Add mysql_enable_ndb parameter to select mysql storage engine. diff --git a/releasenotes/notes/add_oslo_messaging_amqp-2969450d2f6f1f5e.yaml b/releasenotes/notes/add_oslo_messaging_amqp-2969450d2f6f1f5e.yaml deleted file mode 100644 index 6e75e37f..00000000 --- a/releasenotes/notes/add_oslo_messaging_amqp-2969450d2f6f1f5e.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -features: - - Add support for oslo_messaging_amqp backend via puppet-oslo resource \ No newline at end of file diff --git a/releasenotes/notes/add_transport_url_parameters-973b95ec1ad18717.yaml b/releasenotes/notes/add_transport_url_parameters-973b95ec1ad18717.yaml deleted file mode 100644 index 8ad53d11..00000000 --- a/releasenotes/notes/add_transport_url_parameters-973b95ec1ad18717.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -features: - - Add oslo.messaging transport_url parameters via puppet-oslo resource -deprecations: - - control_exchange moved to sahara class definition as it is intrinsic to - default messaging configuration. It can no longer be set via the - notify class and will be removed in a future release. diff --git a/releasenotes/notes/add_watch_log_file-option-bd3cdb1579b5f34a.yaml b/releasenotes/notes/add_watch_log_file-option-bd3cdb1579b5f34a.yaml deleted file mode 100644 index 639a2033..00000000 --- a/releasenotes/notes/add_watch_log_file-option-bd3cdb1579b5f34a.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - The new ``sahara::logging::watch_log_file`` parameter has been added. diff --git a/releasenotes/notes/apache-headers-4f55acf423449fe3.yaml b/releasenotes/notes/apache-headers-4f55acf423449fe3.yaml deleted file mode 100644 index ee7542ae..00000000 --- a/releasenotes/notes/apache-headers-4f55acf423449fe3.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The ``sahara::wsgi::apache`` class now supports customizing - request/response headers added by apache. diff --git a/releasenotes/notes/api_paste-b94e191896840944.yaml b/releasenotes/notes/api_paste-b94e191896840944.yaml deleted file mode 100644 index 898bbc9d..00000000 --- a/releasenotes/notes/api_paste-b94e191896840944.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -features: - - Add api_paste type/provider. diff --git a/releasenotes/notes/api_paste_ini-separator-4d27dd2c2e38b587.yaml b/releasenotes/notes/api_paste_ini-separator-4d27dd2c2e38b587.yaml deleted file mode 100644 index 95e2d7ee..00000000 --- a/releasenotes/notes/api_paste_ini-separator-4d27dd2c2e38b587.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``key_val_separator`` parameter has been added to - the ``sahara_api_paste_ini`` resource type. diff --git a/releasenotes/notes/authtoken-c3466f4f6028a182.yaml b/releasenotes/notes/authtoken-c3466f4f6028a182.yaml deleted file mode 100644 index cb100abe..00000000 --- a/releasenotes/notes/authtoken-c3466f4f6028a182.yaml +++ /dev/null @@ -1,9 +0,0 @@ ---- -features: - - Allow to configure authtoken parameters, useful when running Keystone - v3 API. This class is sahara::keystone::authtoken and parameters are - consistent with other modules. -deprecations: - - sahara::admin_user, sahara::admin_password, sahara::auth_uri, - sahara::identity_uri, sahara::admin_tenant_name and sahara::memcached_servers - are deprecated. Please use sahara::keystone::authtoken::* parameters instead. diff --git a/releasenotes/notes/centos-9-support-b41acc365124e556.yaml b/releasenotes/notes/centos-9-support-b41acc365124e556.yaml deleted file mode 100644 index c3876a08..00000000 --- a/releasenotes/notes/centos-9-support-b41acc365124e556.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - Now this module supports CentOS 9 and Red Hat Enterprise Linux 9. diff --git a/releasenotes/notes/configure_user-and-user_role-674e4d5fcd799b6b.yaml b/releasenotes/notes/configure_user-and-user_role-674e4d5fcd799b6b.yaml deleted file mode 100644 index cf8c2919..00000000 --- a/releasenotes/notes/configure_user-and-user_role-674e4d5fcd799b6b.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -features: - - | - The following parameters have been added to the ``sahara::keystone::auth`` - class. - - - ``configure_user`` - - ``configure_user_role`` diff --git a/releasenotes/notes/coordination-tunables-706dcf5d895831d0.yaml b/releasenotes/notes/coordination-tunables-706dcf5d895831d0.yaml deleted file mode 100644 index 45b81e44..00000000 --- a/releasenotes/notes/coordination-tunables-706dcf5d895831d0.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -features: - - | - The following two parameters have been added to - the ``sahara::service::engine`` class. - - - ``coordinator_heartbeat_interval`` - - ``hash_ring_replicas_count`` diff --git a/releasenotes/notes/default-domain-ef6bd3e929f3ee74.yaml b/releasenotes/notes/default-domain-ef6bd3e929f3ee74.yaml deleted file mode 100644 index c554c06f..00000000 --- a/releasenotes/notes/default-domain-ef6bd3e929f3ee74.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -issues: - - | - Keystone v2.0 API was removed so we need to set a default value - for user_domain_name and project_domain name, which will be - Default as it is already in some other classes in modules. - diff --git a/releasenotes/notes/deprecate-sahara-all-7b730356a653c0ab.yaml b/releasenotes/notes/deprecate-sahara-all-7b730356a653c0ab.yaml deleted file mode 100644 index afb32573..00000000 --- a/releasenotes/notes/deprecate-sahara-all-7b730356a653c0ab.yaml +++ /dev/null @@ -1,20 +0,0 @@ ---- -upgrade: - - | - The now deprecated sahara::service::all class that manages the sahara-all service - is not recommended to be used as the sahara-all service has minimal testing upstream. - It's recommended that deployments move to using the separate API and engine services - which can be deployed like shown in the puppet-sahara/examples/basic.pp file. - Please see below on how to move away from the sahara-all service. - - - Set ```enabled``` to ```false``` in ```sahara::service::all``` will stop the sahara-all service - - Setup ```sahara::service::api``` and ```sahara::wsgi::apache``` classes - - Setup ```sahara::service::engine``` class - - Full example on how this is done can be seen in the puppet-sahara/examples/basic.pp - examples file. -deprecations: - - | - The sahara::service::all class that manages the sahara-all service is deprecated. - It's recommended to not use the sahara-all service and instead use the separated - API and engine services, the sahara-all service has minimal testing upstream. diff --git a/releasenotes/notes/deprecate-zmq-9200f5610c782962.yaml b/releasenotes/notes/deprecate-zmq-9200f5610c782962.yaml deleted file mode 100644 index 68402cc3..00000000 --- a/releasenotes/notes/deprecate-zmq-9200f5610c782962.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -deprecations: - - | - The following ZeroMQ parameters in ::sahara is now deprecated and has no effect: - - - ``zeromq_bind_address`` - - ``zeromq_contexts`` - - ``zeromq_topic_backlog`` - - ``zeromq_ipc_dir`` - - ``zeromq_host`` - - ``cast_timeout`` diff --git a/releasenotes/notes/deprecate_allow_insecure_clients-option-9904fa81e65daa02.yaml b/releasenotes/notes/deprecate_allow_insecure_clients-option-9904fa81e65daa02.yaml deleted file mode 100644 index 72dff754..00000000 --- a/releasenotes/notes/deprecate_allow_insecure_clients-option-9904fa81e65daa02.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - allow_insecure_clients option is now deprecated for removal, the - parameter has no effect. diff --git a/releasenotes/notes/deprecate_auth_uri_parameter-ab52236f17ac79c8.yaml b/releasenotes/notes/deprecate_auth_uri_parameter-ab52236f17ac79c8.yaml deleted file mode 100644 index 86d56c01..00000000 --- a/releasenotes/notes/deprecate_auth_uri_parameter-ab52236f17ac79c8.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - auth_uri is deprecated and will be removed in a future release. - Please use www_authenticate_uri instead. diff --git a/releasenotes/notes/deprecate_database_min_pool_size-option-bcd06862bec24736.yaml b/releasenotes/notes/deprecate_database_min_pool_size-option-bcd06862bec24736.yaml deleted file mode 100644 index 03e58c2b..00000000 --- a/releasenotes/notes/deprecate_database_min_pool_size-option-bcd06862bec24736.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - database_min_pool_size option is now deprecated for removal, the - parameter has no effect. diff --git a/releasenotes/notes/deprecate_database_options-71d8da72522273b7.yaml b/releasenotes/notes/deprecate_database_options-71d8da72522273b7.yaml deleted file mode 100644 index 19762900..00000000 --- a/releasenotes/notes/deprecate_database_options-71d8da72522273b7.yaml +++ /dev/null @@ -1,12 +0,0 @@ ---- -deprecations: - - | - The following options have been deprecated, as those options have been - moved to sahara::db class. - - - ``sahara::database_connection`` - - ``sahara::database_idle_timeout`` - - ``sahara::database_max_overflow`` - - ``sahara::database_max_pool_size`` - - ``sahara::database_max_retries`` - - ``sahara::database_retry_interval`` diff --git a/releasenotes/notes/deprecate_idle_timeout_parameter-818761eb6dd10c51.yaml b/releasenotes/notes/deprecate_idle_timeout_parameter-818761eb6dd10c51.yaml deleted file mode 100644 index 09e76c41..00000000 --- a/releasenotes/notes/deprecate_idle_timeout_parameter-818761eb6dd10c51.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - database_idle_timeout is deprecated and will be removed in a future - release. Please use database_connection_recycle_time instead. diff --git a/releasenotes/notes/deprecate_pki_related_parameters-bad17553aa076f9d.yaml b/releasenotes/notes/deprecate_pki_related_parameters-bad17553aa076f9d.yaml deleted file mode 100644 index 7aa4e60a..00000000 --- a/releasenotes/notes/deprecate_pki_related_parameters-bad17553aa076f9d.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -deprecations: - - check_revocations_for_cached option is now deprecated for removal, the - parameter has no effect. - - hash_algorithms option is now deprecated for removal, the parameter - has no effect. diff --git a/releasenotes/notes/deprecate_rabbit_max_retries-172913e235f23547.yaml b/releasenotes/notes/deprecate_rabbit_max_retries-172913e235f23547.yaml deleted file mode 100644 index 2337f97b..00000000 --- a/releasenotes/notes/deprecate_rabbit_max_retries-172913e235f23547.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -deprecations: - - | - The configuration option ``rabbit_max_retries`` is now deprecated and - will be removed in the future. diff --git a/releasenotes/notes/deprecate_revocation_cache_time_parameter-7e6e3ab6bfc3e3c9.yaml b/releasenotes/notes/deprecate_revocation_cache_time_parameter-7e6e3ab6bfc3e3c9.yaml deleted file mode 100644 index 438a9136..00000000 --- a/releasenotes/notes/deprecate_revocation_cache_time_parameter-7e6e3ab6bfc3e3c9.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - revocation_cache_time option is now deprecated for removal, the - parameter has no effect. diff --git a/releasenotes/notes/deprecate_rpc_backend_parameter-3c92f3cb31cdb3cb.yaml b/releasenotes/notes/deprecate_rpc_backend_parameter-3c92f3cb31cdb3cb.yaml deleted file mode 100644 index 7d90f552..00000000 --- a/releasenotes/notes/deprecate_rpc_backend_parameter-3c92f3cb31cdb3cb.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - sahara::rpc_backend is deprecated and will be removed in a future - release. Please use sahara::default_transport_url instead. diff --git a/releasenotes/notes/deprecate_use_neutron-813591a235e7135f.yaml b/releasenotes/notes/deprecate_use_neutron-813591a235e7135f.yaml deleted file mode 100644 index 8bbcc2e2..00000000 --- a/releasenotes/notes/deprecate_use_neutron-813591a235e7135f.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -deprecations: - - | - The configuration option ``use_neutron`` is now deprecated and - will be removed in the future. diff --git a/releasenotes/notes/deprecated_liberty-fb0633f26040dc46.yaml b/releasenotes/notes/deprecated_liberty-fb0633f26040dc46.yaml deleted file mode 100644 index e86622f3..00000000 --- a/releasenotes/notes/deprecated_liberty-fb0633f26040dc46.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -deprecations: - - Remove deprecated parameters since Liberty release. diff --git a/releasenotes/notes/designate-opts-56b531f3517b4390.yaml b/releasenotes/notes/designate-opts-56b531f3517b4390.yaml deleted file mode 100644 index cc15d3f4..00000000 --- a/releasenotes/notes/designate-opts-56b531f3517b4390.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -features: - - | - The ``sahara`` class now supports the following two parameters. - - - ``use_designate`` - - ``nameservers`` diff --git a/releasenotes/notes/drop-fedora-c21985ebeac4df46.yaml b/releasenotes/notes/drop-fedora-c21985ebeac4df46.yaml deleted file mode 100644 index 71818df4..00000000 --- a/releasenotes/notes/drop-fedora-c21985ebeac4df46.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - Fedora is no longer supported. diff --git a/releasenotes/notes/drop_qpid-2aa008638bbdee5b.yaml b/releasenotes/notes/drop_qpid-2aa008638bbdee5b.yaml deleted file mode 100644 index 6cda35ff..00000000 --- a/releasenotes/notes/drop_qpid-2aa008638bbdee5b.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -other: - - Drop all Qpid support, it was removed from Oslo in Mitaka. diff --git a/releasenotes/notes/external_install_mgmt_hook-a781254f35613a671.yaml b/releasenotes/notes/external_install_mgmt_hook-a781254f35613a671.yaml deleted file mode 100644 index eeb3c9b5..00000000 --- a/releasenotes/notes/external_install_mgmt_hook-a781254f35613a671.yaml +++ /dev/null @@ -1,10 +0,0 @@ ---- -prelude: > - Add hooks for external install & svc management. -features: - - This adds defined anchor points for external modules to - hook into the software install, config and service dependency - chain. This allows external modules to manage software - installation (virtualenv, containers, etc) and service management - (pacemaker) without needing rely on resources that may change or - be renamed. diff --git a/releasenotes/notes/fix_log_dir_documentation-f0d49e76c2a78b1d.yaml b/releasenotes/notes/fix_log_dir_documentation-f0d49e76c2a78b1d.yaml deleted file mode 100644 index 25e070f3..00000000 --- a/releasenotes/notes/fix_log_dir_documentation-f0d49e76c2a78b1d.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -fixes: - - Fixed documentation for log_dir parameter diff --git a/releasenotes/notes/healthcheck-8487fe35fdd908c7.yaml b/releasenotes/notes/healthcheck-8487fe35fdd908c7.yaml deleted file mode 100644 index bbde6cab..00000000 --- a/releasenotes/notes/healthcheck-8487fe35fdd908c7.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``sahara::healthcheck`` class has been added. This class manages - parameters of healthcheck middlware in oslo.middleware. diff --git a/releasenotes/notes/httpd-logs-piped-syslog-c18f4f191519de5b.yaml b/releasenotes/notes/httpd-logs-piped-syslog-c18f4f191519de5b.yaml deleted file mode 100644 index 07cadc9e..00000000 --- a/releasenotes/notes/httpd-logs-piped-syslog-c18f4f191519de5b.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -features: - - | - Added parameters for advanced configuration of httpd access and error log - destinations including piped logging and syslog (see `mod_syslog`). Note - that mod_syslog requires Apache2 >= 2.5.0. diff --git a/releasenotes/notes/keystone-auth-name-1a3385c23b2682e6.yaml b/releasenotes/notes/keystone-auth-name-1a3385c23b2682e6.yaml deleted file mode 100644 index 835c883b..00000000 --- a/releasenotes/notes/keystone-auth-name-1a3385c23b2682e6.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -fixes: - - The keystone auth class has been updated to provide a default service_name - to allow a user to specify a custom auth_name that may not contain the - name of the service. diff --git a/releasenotes/notes/keystone-authtoken-interface-7d98af82eb230ebd.yaml b/releasenotes/notes/keystone-authtoken-interface-7d98af82eb230ebd.yaml deleted file mode 100644 index 572e5d7f..00000000 --- a/releasenotes/notes/keystone-authtoken-interface-7d98af82eb230ebd.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``sahara::keystone::authtoken::interface`` parameter has been added, - which can be used to set the interface parameter in authtoken middleware. diff --git a/releasenotes/notes/keystone-authtoken-memcached-ea0660e81f256eda.yaml b/releasenotes/notes/keystone-authtoken-memcached-ea0660e81f256eda.yaml deleted file mode 100644 index 576a0684..00000000 --- a/releasenotes/notes/keystone-authtoken-memcached-ea0660e81f256eda.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -fixes: - - Added the ability to manage the memcached servers - for keystone_authtoken in sahara diff --git a/releasenotes/notes/keystone-authtoken-service_type-dacd48ef5df0a299.yaml b/releasenotes/notes/keystone-authtoken-service_type-dacd48ef5df0a299.yaml deleted file mode 100644 index 36c0fce2..00000000 --- a/releasenotes/notes/keystone-authtoken-service_type-dacd48ef5df0a299.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``sahara::keystone::authtoken::service_type`` parameter has been - added to configure the service_type parameter in authtoken middleware. diff --git a/releasenotes/notes/log-json-1fc3ec44fad0db5c.yaml b/releasenotes/notes/log-json-1fc3ec44fad0db5c.yaml deleted file mode 100644 index 41c04132..00000000 --- a/releasenotes/notes/log-json-1fc3ec44fad0db5c.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - Expose use_json logging parameter, which enables JSON formatted logging. diff --git a/releasenotes/notes/migrate-policy-format-from-json-to-yaml-a36c92fbad2c46e8.yaml b/releasenotes/notes/migrate-policy-format-from-json-to-yaml-a36c92fbad2c46e8.yaml deleted file mode 100644 index fd7e1a85..00000000 --- a/releasenotes/notes/migrate-policy-format-from-json-to-yaml-a36c92fbad2c46e8.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - Now policy.yaml is used by default instead of policy.json. diff --git a/releasenotes/notes/node_domain-c08ce1989a557833.yaml b/releasenotes/notes/node_domain-c08ce1989a557833.yaml deleted file mode 100644 index 1a1340a8..00000000 --- a/releasenotes/notes/node_domain-c08ce1989a557833.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - The new ``sahara::node_domain`` parameter has been added. diff --git a/releasenotes/notes/openstack_db_tag-acac480da506925b.yaml b/releasenotes/notes/openstack_db_tag-acac480da506925b.yaml deleted file mode 100644 index 4872e117..00000000 --- a/releasenotes/notes/openstack_db_tag-acac480da506925b.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -features: - - Add openstack-db tag to Exec that run db-sync. diff --git a/releasenotes/notes/os_workers-2922e3073027045d.yaml b/releasenotes/notes/os_workers-2922e3073027045d.yaml deleted file mode 100644 index 5616f0d7..00000000 --- a/releasenotes/notes/os_workers-2922e3073027045d.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -other: - - Parameters that control the number of spawned child processes for - distributing processing have had their default value changed from - ::processorcount to ::os_workers. diff --git a/releasenotes/notes/oslo_policy-enforce_scope-ab95aa24029f1318.yaml b/releasenotes/notes/oslo_policy-enforce_scope-ab95aa24029f1318.yaml deleted file mode 100644 index 68bbd558..00000000 --- a/releasenotes/notes/oslo_policy-enforce_scope-ab95aa24029f1318.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``sahara::policy::enforce_scope`` parameter has been added to - support the corresponding parameter in oslo.policy library. diff --git a/releasenotes/notes/periodic-params-e6124089874c896b.yaml b/releasenotes/notes/periodic-params-e6124089874c896b.yaml deleted file mode 100644 index 3f0f1ccb..00000000 --- a/releasenotes/notes/periodic-params-e6124089874c896b.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -features: - - | - The following parameters have been added to the ``sahara::service::engine`` - class. - - - ``periodic_enable`` - - ``periodic_fuzzy_delay`` - - ``periodic_interval_max`` - - ``min_transient_cluster_active_time`` - - ``cleanup_time_for_incomplete_clusters`` diff --git a/releasenotes/notes/periodic_coordinator-f06bb6e17913f0ae.yaml b/releasenotes/notes/periodic_coordinator-f06bb6e17913f0ae.yaml deleted file mode 100644 index a4780bcf..00000000 --- a/releasenotes/notes/periodic_coordinator-f06bb6e17913f0ae.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -features: - - | - The ``sahara::service::engine`` class now support the following two - parameters. - - - ``periodic_coordinator_backend_url`` - - ``periodic_workers_number`` diff --git a/releasenotes/notes/plugin-7754b64caa4a80cc.yaml b/releasenotes/notes/plugin-7754b64caa4a80cc.yaml deleted file mode 100644 index 4c3b974f..00000000 --- a/releasenotes/notes/plugin-7754b64caa4a80cc.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``sahara::plugin`` defined resource type has been added. This can - be used to manage plugin packages. diff --git a/releasenotes/notes/policy-dirs-a4b2936cf9b39553.yaml b/releasenotes/notes/policy-dirs-a4b2936cf9b39553.yaml deleted file mode 100644 index 945a998d..00000000 --- a/releasenotes/notes/policy-dirs-a4b2936cf9b39553.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - There is now a new policy_dirs parameter in the sahara::policy class, - so one can set a custom path. diff --git a/releasenotes/notes/policy-enforce_new_defaults-c1d3140eeb308fd7.yaml b/releasenotes/notes/policy-enforce_new_defaults-c1d3140eeb308fd7.yaml deleted file mode 100644 index 4d699f8b..00000000 --- a/releasenotes/notes/policy-enforce_new_defaults-c1d3140eeb308fd7.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - | - The new ``sahara::policy::enforce_new_defaults`` parameter has been - added. diff --git a/releasenotes/notes/policy_default_rule-b542330c571a76fd.yaml b/releasenotes/notes/policy_default_rule-b542330c571a76fd.yaml deleted file mode 100644 index 1cc92ea9..00000000 --- a/releasenotes/notes/policy_default_rule-b542330c571a76fd.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - The new ``sahara::policy::policy_default_rule`` parameter has been added. diff --git a/releasenotes/notes/policy_purge_config-a161198abf89ec46.yaml b/releasenotes/notes/policy_purge_config-a161198abf89ec46.yaml deleted file mode 100644 index ecb17aed..00000000 --- a/releasenotes/notes/policy_purge_config-a161198abf89ec46.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -features: - - | - Adds new purge_config parameter. When set to true, the policy file is - cleared during configuration process. This allows to remove any existing - rules before applying them or clean the file when all policies got removed. diff --git a/releasenotes/notes/provider-deprecate-at-params-8b0a649a3b201804.yaml b/releasenotes/notes/provider-deprecate-at-params-8b0a649a3b201804.yaml deleted file mode 100644 index cff7426c..00000000 --- a/releasenotes/notes/provider-deprecate-at-params-8b0a649a3b201804.yaml +++ /dev/null @@ -1,12 +0,0 @@ ---- -deprecations: - - | - The following resource types have been using the credential written in - the ``[keystone_authtoken]`` section of ``sahara.conf``. However this - behavior has been deprecated and now these resource types first look for - the yaml files in ``/etc/openstack/puppet``. Make sure one of - ``clouds.yaml`` or ``admin-clouds.yaml`` (which is created by - puppet-keystone) is created in that directory. - - - ``sahara_cluster_template`` - - ``sahara_node_group_template`` diff --git a/releasenotes/notes/puppet4-mysql-func-d65ac0d184e963e5.yaml b/releasenotes/notes/puppet4-mysql-func-d65ac0d184e963e5.yaml deleted file mode 100644 index 9db533ed..00000000 --- a/releasenotes/notes/puppet4-mysql-func-d65ac0d184e963e5.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - This module now requires a puppetlabs-mysql version >= 6.0.0 diff --git a/releasenotes/notes/pymysql-e57bf1f0289dd426.yaml b/releasenotes/notes/pymysql-e57bf1f0289dd426.yaml deleted file mode 100644 index 3556c0c8..00000000 --- a/releasenotes/notes/pymysql-e57bf1f0289dd426.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -features: - - Support of PyMySQL driver for MySQL backend. diff --git a/releasenotes/notes/rabbit-connection-params-deprecation-8d265821e92a1eeb.yaml b/releasenotes/notes/rabbit-connection-params-deprecation-8d265821e92a1eeb.yaml deleted file mode 100644 index 7e7c8c25..00000000 --- a/releasenotes/notes/rabbit-connection-params-deprecation-8d265821e92a1eeb.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -deprecations: - - sahara::rabbit_host, sahara::rabbit_hosts, sahara::rabbit_password, - sahara::rabbit_port, sahara::rabbit_userid and - sahara::rabbit_virtual_host are deprecated. - sahara::default_transport_url should be used instead. diff --git a/releasenotes/notes/rabbit-quorum-queue-b158cb7190931c19.yaml b/releasenotes/notes/rabbit-quorum-queue-b158cb7190931c19.yaml deleted file mode 100644 index 236cac1f..00000000 --- a/releasenotes/notes/rabbit-quorum-queue-b158cb7190931c19.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - | - The ``sahara`` class now supports options for quorum queues in RabbitMQ. diff --git a/releasenotes/notes/rabbitmq-heartbeat-over-pthread-92b1a2b083a55f71.yaml b/releasenotes/notes/rabbitmq-heartbeat-over-pthread-92b1a2b083a55f71.yaml deleted file mode 100644 index 496d2279..00000000 --- a/releasenotes/notes/rabbitmq-heartbeat-over-pthread-92b1a2b083a55f71.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -features: - - | - Allow users to run the RabbitMQ heartbeat over a native python thread in the - oslo.messaging RabbitMQ driver, by using the `rabbit_heartbeat_in_pthread` - option in configuration. diff --git a/releasenotes/notes/release-note-ubuntu-py3-a6d73eb76b4cdc0c.yaml b/releasenotes/notes/release-note-ubuntu-py3-a6d73eb76b4cdc0c.yaml deleted file mode 100644 index 8ec2452c..00000000 --- a/releasenotes/notes/release-note-ubuntu-py3-a6d73eb76b4cdc0c.yaml +++ /dev/null @@ -1,10 +0,0 @@ ---- -prelude: > - In this release Ubuntu has moved all projects that supported it to python3 - which means that there will be a lot of changes. The Puppet OpenStack project - does not test the upgrade path from python2 to python3 packages so there might - be manual steps required when moving to the python3 packages. -upgrade: - - | - Ubuntu packages are now using python3, the upgrade path is not tested by - Puppet OpenStack. Manual steps may be required when upgrading. diff --git a/releasenotes/notes/remove-amqp_allow_insecure_clients-bf3e10bf597a6dd6.yaml b/releasenotes/notes/remove-amqp_allow_insecure_clients-bf3e10bf597a6dd6.yaml deleted file mode 100644 index 15c3364d..00000000 --- a/releasenotes/notes/remove-amqp_allow_insecure_clients-bf3e10bf597a6dd6.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - The ``sahara::amqp_allow_insecure_clients`` parameter has been removed. diff --git a/releasenotes/notes/remove-auth-uri-6e8192fa908904e8.yaml b/releasenotes/notes/remove-auth-uri-6e8192fa908904e8.yaml deleted file mode 100644 index b3e37197..00000000 --- a/releasenotes/notes/remove-auth-uri-6e8192fa908904e8.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - The deprecated parameter auth_uri is now removed, please use www_authenticate_uri. diff --git a/releasenotes/notes/remove-centos-8-6b0df7fbe174a2b6.yaml b/releasenotes/notes/remove-centos-8-6b0df7fbe174a2b6.yaml deleted file mode 100644 index 7451387e..00000000 --- a/releasenotes/notes/remove-centos-8-6b0df7fbe174a2b6.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - CentOS 8 Stream is no longer supported by this module. diff --git a/releasenotes/notes/remove-database-params-238483b0f8acddd7.yaml b/releasenotes/notes/remove-database-params-238483b0f8acddd7.yaml deleted file mode 100644 index 0c3c2c13..00000000 --- a/releasenotes/notes/remove-database-params-238483b0f8acddd7.yaml +++ /dev/null @@ -1,16 +0,0 @@ ---- -upgrade: - - | - The following parameters of the ``sahara`` class has been removed. - - - ``database_min_pool_size`` - - ``database_connection`` - - ``database_idle_timeout`` - - ``database_max_overflow`` - - ``database_max_pool_size`` - - ``database_max_retries`` - - ``database_retry_interval`` - - - | - The ``database_min_pool_size`` parameter of the ``sahara::db`` class has - been removed. diff --git a/releasenotes/notes/remove-deprecated-9b2cb5075aff7623.yaml b/releasenotes/notes/remove-deprecated-9b2cb5075aff7623.yaml deleted file mode 100644 index a9c5f331..00000000 --- a/releasenotes/notes/remove-deprecated-9b2cb5075aff7623.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -upgrade: - - | - The deprecated parameters admin_user, admin_password, admin_tenant_name, - auth_uri, identity_uri and memcached_servers in ::sahara is now removed. - - | - The deprecated parameter sahara::use_neutron is now removed. diff --git a/releasenotes/notes/remove-deprecated-logging-aa871a1215dc22bf.yaml b/releasenotes/notes/remove-deprecated-logging-aa871a1215dc22bf.yaml deleted file mode 100644 index 83979a5c..00000000 --- a/releasenotes/notes/remove-deprecated-logging-aa871a1215dc22bf.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -upgrade: - - | - The deprecated parameters use_syslog, use_stderr, log_facility, log_dir and - debug in the init class is now removed. Please set them in the logging class. diff --git a/releasenotes/notes/remove-deprecated-notifications-options-81a359d87135f912.yaml b/releasenotes/notes/remove-deprecated-notifications-options-81a359d87135f912.yaml deleted file mode 100644 index 74664f45..00000000 --- a/releasenotes/notes/remove-deprecated-notifications-options-81a359d87135f912.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -other: - - Remove deprecated sahara::notify::enable_notifications parameter. - - Remove deprecated sahara::notify::control_exchange parameter. - - Remove deprecated sahara::notify::notification_level parameter. diff --git a/releasenotes/notes/remove-deprecated-rabbit-params-97ead9799e3aca70.yaml b/releasenotes/notes/remove-deprecated-rabbit-params-97ead9799e3aca70.yaml deleted file mode 100644 index 99d58e84..00000000 --- a/releasenotes/notes/remove-deprecated-rabbit-params-97ead9799e3aca70.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -upgrade: - - | - The deprecated sahara::rabbit_host, sahara::rabbit_hosts, sahara::rabbit_password, - sahara::rabbit_port, sahara::rabbit_userid and sahara::rabit_virtual_host are now - removed. Please use sahara::default_transport_url instead. diff --git a/releasenotes/notes/remove-deprecated-zmq-2930f5610c7a82932.yaml b/releasenotes/notes/remove-deprecated-zmq-2930f5610c7a82932.yaml deleted file mode 100644 index 875b5737..00000000 --- a/releasenotes/notes/remove-deprecated-zmq-2930f5610c7a82932.yaml +++ /dev/null @@ -1,11 +0,0 @@ ---- -upgrade: - - | - The following ZeroMQ parameters in ::sahara are now removed: - - - ``zeromq_bind_address`` - - ``zeromq_contexts`` - - ``zeromq_topic_backlog`` - - ``zeromq_ipc_dir`` - - ``zeromq_host`` - - ``cast_timeout`` diff --git a/releasenotes/notes/remove-enable-notifications-opt-04f02fc287db8dd7.yaml b/releasenotes/notes/remove-enable-notifications-opt-04f02fc287db8dd7.yaml deleted file mode 100644 index 287983cb..00000000 --- a/releasenotes/notes/remove-enable-notifications-opt-04f02fc287db8dd7.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -deprecations: - - The 'enable' option has been removed from sahara, so - sahara::notify::enable_notifications will be removed. - The 'level' option does not exist in the oslo.messaging, - so we will remove sahara::notify::notification_level. - diff --git a/releasenotes/notes/remove-puppet-6-0827f6c57fe04b35.yaml b/releasenotes/notes/remove-puppet-6-0827f6c57fe04b35.yaml deleted file mode 100644 index 78061d56..00000000 --- a/releasenotes/notes/remove-puppet-6-0827f6c57fe04b35.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -upgrade: - - | - Puppet 6 is no longer supported. diff --git a/releasenotes/notes/remove-sahara-all-6baa65d6baf6b9dc.yaml b/releasenotes/notes/remove-sahara-all-6baa65d6baf6b9dc.yaml deleted file mode 100644 index c1d82b1f..00000000 --- a/releasenotes/notes/remove-sahara-all-6baa65d6baf6b9dc.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -upgrade: - - | - The deprecated sahara::service::all class is removed. Please use the specific - classes to deploy the API and engine services. diff --git a/releasenotes/notes/remove_deprecated_keystone_revocation_cache_time_option-bd19d353c15987de.yaml b/releasenotes/notes/remove_deprecated_keystone_revocation_cache_time_option-bd19d353c15987de.yaml deleted file mode 100644 index e7fe971b..00000000 --- a/releasenotes/notes/remove_deprecated_keystone_revocation_cache_time_option-bd19d353c15987de.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -upgrade: - - Deprecated keystone::authtoken::revocation_cache_time option has been removed. diff --git a/releasenotes/notes/remove_deprecated_keystone_signing_dir_option-857136c11bf5cd7d.yaml b/releasenotes/notes/remove_deprecated_keystone_signing_dir_option-857136c11bf5cd7d.yaml deleted file mode 100644 index 30b68c31..00000000 --- a/releasenotes/notes/remove_deprecated_keystone_signing_dir_option-857136c11bf5cd7d.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -upgrade: - - Deprecated keystone authtoken signing_dir option is removed in Pike. diff --git a/releasenotes/notes/remove_deprecated_pki_related_options-9b40f1ecf72e891b.yaml b/releasenotes/notes/remove_deprecated_pki_related_options-9b40f1ecf72e891b.yaml deleted file mode 100644 index 62af34f1..00000000 --- a/releasenotes/notes/remove_deprecated_pki_related_options-9b40f1ecf72e891b.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -upgrade: - - | - The deprecated pki related options check_revocations_for_cached and - hash_algorithms option has been removed. diff --git a/releasenotes/notes/remove_deprecated_rabbit_max_retries_option-9bf83ffdadb5019f.yaml b/releasenotes/notes/remove_deprecated_rabbit_max_retries_option-9bf83ffdadb5019f.yaml deleted file mode 100644 index 8675ed06..00000000 --- a/releasenotes/notes/remove_deprecated_rabbit_max_retries_option-9bf83ffdadb5019f.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -upgrade: - - Deprecated sahara::rabbit_max_retries option has been removed. diff --git a/releasenotes/notes/remove_idle_timeout_option-b160806cda86d4bc.yaml b/releasenotes/notes/remove_idle_timeout_option-b160806cda86d4bc.yaml deleted file mode 100644 index 6ba54d41..00000000 --- a/releasenotes/notes/remove_idle_timeout_option-b160806cda86d4bc.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -upgrade: - - Deprecated idle_timeout option has been removed. diff --git a/releasenotes/notes/remove_qpid-0b446db43fdea617.yaml b/releasenotes/notes/remove_qpid-0b446db43fdea617.yaml deleted file mode 100644 index c59a436d..00000000 --- a/releasenotes/notes/remove_qpid-0b446db43fdea617.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -deprecations: - - Remove QPID messaging support. - Qpid messaging driver is removed from oslo.messaging so we won't support - anymore. diff --git a/releasenotes/notes/remove_verbose-5409d6030c7794e5.yaml b/releasenotes/notes/remove_verbose-5409d6030c7794e5.yaml deleted file mode 100644 index 9a865cd5..00000000 --- a/releasenotes/notes/remove_verbose-5409d6030c7794e5.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -other: - - The verbose option was marked to be removed in Ocata, - in Newton the option was deprecated. diff --git a/releasenotes/notes/rspec-puppet-facts-a858ae8d93a726a9.yaml b/releasenotes/notes/rspec-puppet-facts-a858ae8d93a726a9.yaml deleted file mode 100644 index 8053b7dd..00000000 --- a/releasenotes/notes/rspec-puppet-facts-a858ae8d93a726a9.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -other: - - Tests updated to leverage rspec-puppet-facts for testing - multiple OS versions. diff --git a/releasenotes/notes/sahara-api-wsgi-a0ca5cf632af6a39.yaml b/releasenotes/notes/sahara-api-wsgi-a0ca5cf632af6a39.yaml deleted file mode 100644 index 04ab871a..00000000 --- a/releasenotes/notes/sahara-api-wsgi-a0ca5cf632af6a39.yaml +++ /dev/null @@ -1,9 +0,0 @@ ---- -features: - - | - Added new class sahara::wsgi::apache, you can now run the API under Apache - with mod_wsgi. -other: - - | - Added support for running Sahara API in WSGI, like on Ubuntu where eventlet - is not supported. diff --git a/releasenotes/notes/service_token_roles_required-b6513e923d43f2b7.yaml b/releasenotes/notes/service_token_roles_required-b6513e923d43f2b7.yaml deleted file mode 100644 index 60a45217..00000000 --- a/releasenotes/notes/service_token_roles_required-b6513e923d43f2b7.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -features: - - Service_token_roles_required missing in the server config file which - allows backwards compatibility to ensure that the service tokens are - compared against a list of possible roles for validity. diff --git a/releasenotes/notes/stop-reading-authtoken-opts-d06097cb2053aa42.yaml b/releasenotes/notes/stop-reading-authtoken-opts-d06097cb2053aa42.yaml deleted file mode 100644 index 36d7b57e..00000000 --- a/releasenotes/notes/stop-reading-authtoken-opts-d06097cb2053aa42.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -upgrade: - - | - The following resource types no longer attempts to load user credentials - from the ``[keystone_authtoken]`` section in ``sahara.conf``. - - - ``sahara_cluster_template`` - - ``sahara_node_group_template`` diff --git a/releasenotes/notes/switch_to_oslo-4ebb3a914d2d8b4e.yaml b/releasenotes/notes/switch_to_oslo-4ebb3a914d2d8b4e.yaml deleted file mode 100644 index fc6923a0..00000000 --- a/releasenotes/notes/switch_to_oslo-4ebb3a914d2d8b4e.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - Switch to puppet-oslo resource usage (instead of - manual configuration file editing). diff --git a/releasenotes/notes/system_scope-keystone-c4ace132b5baac65.yaml b/releasenotes/notes/system_scope-keystone-c4ace132b5baac65.yaml deleted file mode 100644 index f3f21f88..00000000 --- a/releasenotes/notes/system_scope-keystone-c4ace132b5baac65.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -features: - - | - The ``system_scope`` parameter has been added to - the ``sahara::keystone::authtoken`` class. - - - | - The ``sahara::keystone::auth`` class now supports customizing roles assigned - to the sahara service user. - - - | - The ``sahara::keystone::auth`` class now supports defining assignmet of - system-scoped roles to the sahara service user. diff --git a/releasenotes/notes/ubuntu-jammy-986dcb76cda8a622.yaml b/releasenotes/notes/ubuntu-jammy-986dcb76cda8a622.yaml deleted file mode 100644 index b6e0f8a7..00000000 --- a/releasenotes/notes/ubuntu-jammy-986dcb76cda8a622.yaml +++ /dev/null @@ -1,8 +0,0 @@ ---- -features: - - | - This module now supports Ubuntu 22.04 (Jammy Jellyfish). - -upgrade: - - | - This module no longer supports Ubuntu 20.04 (Focal Fossa). diff --git a/releasenotes/notes/use-reno-1caaec4ba5aa4285.yaml b/releasenotes/notes/use-reno-1caaec4ba5aa4285.yaml deleted file mode 100644 index 41cef2f1..00000000 --- a/releasenotes/notes/use-reno-1caaec4ba5aa4285.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - Release notes are no longer maintained by hand, we now use the reno tool to - manage them. diff --git a/releasenotes/notes/use_oslo_zmq-7041d12c8bf2c724.yaml b/releasenotes/notes/use_oslo_zmq-7041d12c8bf2c724.yaml deleted file mode 100644 index 8bb63fca..00000000 --- a/releasenotes/notes/use_oslo_zmq-7041d12c8bf2c724.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -features: - - Switch to using oslo::zmq messaging instead of manual - configuring parameters in sahara. diff --git a/releasenotes/notes/uwsgi-3e06e4dd9bdc0a36.yaml b/releasenotes/notes/uwsgi-3e06e4dd9bdc0a36.yaml deleted file mode 100644 index 6b0d9672..00000000 --- a/releasenotes/notes/uwsgi-3e06e4dd9bdc0a36.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -features: - - | - A new class sahara::wsgi::uwsgi exist to allow configuring uwsgi in - operating systems that support this (ie: currently Debian). This helps - configuring the number of processes, threads and listen socket. - Also, a new sahara_api_uwsgi_config provider now exist. diff --git a/releasenotes/notes/verbose-deprecation-2cc63616acbfd49e.yaml b/releasenotes/notes/verbose-deprecation-2cc63616acbfd49e.yaml deleted file mode 100644 index ecfc2567..00000000 --- a/releasenotes/notes/verbose-deprecation-2cc63616acbfd49e.yaml +++ /dev/null @@ -1,4 +0,0 @@ ---- -deprecations: - - verbose option is now deprecated for removal, the - parameter has no effect. diff --git a/releasenotes/source/2023.1.rst b/releasenotes/source/2023.1.rst deleted file mode 100644 index d1238479..00000000 --- a/releasenotes/source/2023.1.rst +++ /dev/null @@ -1,6 +0,0 @@ -=========================== -2023.1 Series Release Notes -=========================== - -.. release-notes:: - :branch: stable/2023.1 diff --git a/releasenotes/source/2023.2.rst b/releasenotes/source/2023.2.rst deleted file mode 100644 index a4838d7d..00000000 --- a/releasenotes/source/2023.2.rst +++ /dev/null @@ -1,6 +0,0 @@ -=========================== -2023.2 Series Release Notes -=========================== - -.. release-notes:: - :branch: stable/2023.2 diff --git a/releasenotes/source/_static/.placeholder b/releasenotes/source/_static/.placeholder deleted file mode 100644 index e69de29b..00000000 diff --git a/releasenotes/source/conf.py b/releasenotes/source/conf.py deleted file mode 100644 index 501710de..00000000 --- a/releasenotes/source/conf.py +++ /dev/null @@ -1,256 +0,0 @@ -# -*- coding: utf-8 -*- -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -#sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ------------------------------------------------ - - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be -# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom -# ones. -extensions = [ - 'openstackdocstheme', - 'reno.sphinxext', -] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -copyright = '2017, Puppet OpenStack Developers' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '' -# The full version, including alpha/beta/rc tags. -release = '' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = [] - -# The reST default role (used for this markup: `text`) to use for all -# documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'native' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - -# If true, keep warnings as "system message" paragraphs in the built documents. -#keep_warnings = False - - -# -- Options for HTML output ---------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'openstackdocs' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -# html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# Add any extra paths that contain custom files (such as robots.txt or -# .htaccess) here, relative to this directory. These files are copied -# directly to the root of the documentation. -#html_extra_path = [] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'puppet-saharaReleaseNotesdoc' - - -# -- Options for LaTeX output --------------------------------------------- - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, -# author, documentclass [howto, manual, or own class]). -latex_documents = [ - ('index', 'puppet-saharaReleaseNotes.tex', 'puppet-sahara Release Notes Documentation', - '2017, Puppet OpenStack Developers', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output --------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'puppet-saharareleasenotes', 'puppet-sahara Release Notes Documentation', - ['2017, Puppet OpenStack Developers'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------- - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'puppet-saharaReleaseNotes', 'puppet-sahara Release Notes Documentation', - '2017, Puppet OpenStack Developers', 'puppet-saharaReleaseNotes', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' - -# If true, do not generate a @detailmenu in the "Top" node's menu. -#texinfo_no_detailmenu = False - -# -- Options for Internationalization output ------------------------------ -locale_dirs = ['locale/'] - -# openstackdocstheme options -openstackdocs_repo_name = 'openstack/puppet-sahara' -openstackdocs_bug_project = 'puppet-sahara' -openstackdocs_bug_tag = '' -openstackdocs_auto_name = False diff --git a/releasenotes/source/index.rst b/releasenotes/source/index.rst deleted file mode 100644 index 0856f2c8..00000000 --- a/releasenotes/source/index.rst +++ /dev/null @@ -1,34 +0,0 @@ -======================================= -Welcome to puppet-sahara Release Notes! -======================================= - -Contents -======== - -.. toctree:: - :maxdepth: 2 - - unreleased - 2023.2 - 2023.1 - zed - yoga - xena - wallaby - victoria - ussuri - train - stein - rocky - queens - pike - ocata - newton - mitaka - - -Indices and tables -================== - -* :ref:`genindex` -* :ref:`search` diff --git a/releasenotes/source/mitaka.rst b/releasenotes/source/mitaka.rst deleted file mode 100644 index 97ab8d1d..00000000 --- a/releasenotes/source/mitaka.rst +++ /dev/null @@ -1,6 +0,0 @@ -============================ - Mitaka Series Release Notes -============================ - -.. release-notes:: - :branch: origin/stable/mitaka diff --git a/releasenotes/source/newton.rst b/releasenotes/source/newton.rst deleted file mode 100644 index 97036ed2..00000000 --- a/releasenotes/source/newton.rst +++ /dev/null @@ -1,6 +0,0 @@ -=================================== - Newton Series Release Notes -=================================== - -.. release-notes:: - :branch: origin/stable/newton diff --git a/releasenotes/source/ocata.rst b/releasenotes/source/ocata.rst deleted file mode 100644 index ebe62f42..00000000 --- a/releasenotes/source/ocata.rst +++ /dev/null @@ -1,6 +0,0 @@ -=================================== - Ocata Series Release Notes -=================================== - -.. release-notes:: - :branch: origin/stable/ocata diff --git a/releasenotes/source/pike.rst b/releasenotes/source/pike.rst deleted file mode 100644 index e43bfc0c..00000000 --- a/releasenotes/source/pike.rst +++ /dev/null @@ -1,6 +0,0 @@ -=================================== - Pike Series Release Notes -=================================== - -.. release-notes:: - :branch: stable/pike diff --git a/releasenotes/source/queens.rst b/releasenotes/source/queens.rst deleted file mode 100644 index 36ac6160..00000000 --- a/releasenotes/source/queens.rst +++ /dev/null @@ -1,6 +0,0 @@ -=================================== - Queens Series Release Notes -=================================== - -.. release-notes:: - :branch: stable/queens diff --git a/releasenotes/source/rocky.rst b/releasenotes/source/rocky.rst deleted file mode 100644 index 40dd517b..00000000 --- a/releasenotes/source/rocky.rst +++ /dev/null @@ -1,6 +0,0 @@ -=================================== - Rocky Series Release Notes -=================================== - -.. release-notes:: - :branch: stable/rocky diff --git a/releasenotes/source/stein.rst b/releasenotes/source/stein.rst deleted file mode 100644 index efaceb66..00000000 --- a/releasenotes/source/stein.rst +++ /dev/null @@ -1,6 +0,0 @@ -=================================== - Stein Series Release Notes -=================================== - -.. release-notes:: - :branch: stable/stein diff --git a/releasenotes/source/train.rst b/releasenotes/source/train.rst deleted file mode 100644 index 58390039..00000000 --- a/releasenotes/source/train.rst +++ /dev/null @@ -1,6 +0,0 @@ -========================== -Train Series Release Notes -========================== - -.. release-notes:: - :branch: stable/train diff --git a/releasenotes/source/unreleased.rst b/releasenotes/source/unreleased.rst deleted file mode 100644 index 2334dd5c..00000000 --- a/releasenotes/source/unreleased.rst +++ /dev/null @@ -1,5 +0,0 @@ -============================== - Current Series Release Notes -============================== - - .. release-notes:: diff --git a/releasenotes/source/ussuri.rst b/releasenotes/source/ussuri.rst deleted file mode 100644 index e21e50e0..00000000 --- a/releasenotes/source/ussuri.rst +++ /dev/null @@ -1,6 +0,0 @@ -=========================== -Ussuri Series Release Notes -=========================== - -.. release-notes:: - :branch: stable/ussuri diff --git a/releasenotes/source/victoria.rst b/releasenotes/source/victoria.rst deleted file mode 100644 index 4efc7b6f..00000000 --- a/releasenotes/source/victoria.rst +++ /dev/null @@ -1,6 +0,0 @@ -============================= -Victoria Series Release Notes -============================= - -.. release-notes:: - :branch: stable/victoria diff --git a/releasenotes/source/wallaby.rst b/releasenotes/source/wallaby.rst deleted file mode 100644 index d77b5659..00000000 --- a/releasenotes/source/wallaby.rst +++ /dev/null @@ -1,6 +0,0 @@ -============================ -Wallaby Series Release Notes -============================ - -.. release-notes:: - :branch: stable/wallaby diff --git a/releasenotes/source/xena.rst b/releasenotes/source/xena.rst deleted file mode 100644 index 1be85be3..00000000 --- a/releasenotes/source/xena.rst +++ /dev/null @@ -1,6 +0,0 @@ -========================= -Xena Series Release Notes -========================= - -.. release-notes:: - :branch: stable/xena diff --git a/releasenotes/source/yoga.rst b/releasenotes/source/yoga.rst deleted file mode 100644 index 43cafdea..00000000 --- a/releasenotes/source/yoga.rst +++ /dev/null @@ -1,6 +0,0 @@ -========================= -Yoga Series Release Notes -========================= - -.. release-notes:: - :branch: unmaintained/yoga diff --git a/releasenotes/source/zed.rst b/releasenotes/source/zed.rst deleted file mode 100644 index 9608c05e..00000000 --- a/releasenotes/source/zed.rst +++ /dev/null @@ -1,6 +0,0 @@ -======================== -Zed Series Release Notes -======================== - -.. release-notes:: - :branch: stable/zed diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index d56f757e..00000000 --- a/setup.cfg +++ /dev/null @@ -1,15 +0,0 @@ -[metadata] -name = puppet-sahara -summary = Puppet module for OpenStack Sahara -description_file = - README.md -author = OpenStack -author_email = openstack-discuss@lists.openstack.org -home_page = https://docs.openstack.org/puppet-openstack-guide/latest -license = Apache License, Version 2.0 -classifier = - Intended Audience :: Developers - Intended Audience :: Information Technology - Intended Audience :: System Administrators - License :: OSI Approved :: Apache Software License - Operating System :: POSIX :: Linux diff --git a/setup.py b/setup.py deleted file mode 100644 index 31d6ada1..00000000 --- a/setup.py +++ /dev/null @@ -1,21 +0,0 @@ -# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or -# implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -import setuptools - -setuptools.setup( - setup_requires=['pbr>=2.0.0'], - py_modules=[], - pbr=True) diff --git a/spec/acceptance/10_basic_sahara_spec.rb b/spec/acceptance/10_basic_sahara_spec.rb deleted file mode 100644 index ab5ee014..00000000 --- a/spec/acceptance/10_basic_sahara_spec.rb +++ /dev/null @@ -1,31 +0,0 @@ -require 'spec_helper_acceptance' - -describe 'basic sahara' do - - context 'default parameters' do - - it 'should work with no errors' do - pp= <<-EOS - include openstack_integration - include openstack_integration::repos - include openstack_integration::apache - include openstack_integration::rabbitmq - include openstack_integration::mysql - include openstack_integration::memcached - include openstack_integration::keystone - class { 'openstack_integration::sahara': - integration_enable => false, - } - EOS - - - # Run it twice and test for idempotency - apply_manifest(pp, :catch_failures => true) - apply_manifest(pp, :catch_changes => true) - end - - describe port(8386) do - it { is_expected.to be_listening.with('tcp') } - end - end -end diff --git a/spec/acceptance/99_sahara_config_spec.rb b/spec/acceptance/99_sahara_config_spec.rb deleted file mode 100644 index 627ed45c..00000000 --- a/spec/acceptance/99_sahara_config_spec.rb +++ /dev/null @@ -1,101 +0,0 @@ -require 'spec_helper_acceptance' - -describe 'basic sahara_config resource' do - - context 'default parameters' do - - it 'should work with no errors' do - pp= <<-EOS - Exec { logoutput => 'on_failure' } - - File <||> -> Sahara_config <||> - File <||> -> Sahara_api_paste_ini <||> - - file { '/etc/sahara' : - ensure => directory, - } - file { '/etc/sahara/sahara.conf' : - ensure => file, - } - file { '/etc/sahara/api-paste.ini' : - ensure => file, - } - - sahara_config { 'DEFAULT/thisshouldexist' : - value => 'foo', - } - - sahara_config { 'DEFAULT/thisshouldnotexist' : - value => '', - } - - sahara_config { 'DEFAULT/thisshouldexist2' : - value => '', - ensure_absent_val => 'toto', - } - - sahara_config { 'DEFAULT/thisshouldnotexist2' : - value => 'toto', - ensure_absent_val => 'toto', - } - - sahara_config { 'DEFAULT/thisshouldexist3' : - value => ['foo', 'bar'], - } - - sahara_api_paste_ini { 'DEFAULT/thisshouldexist' : - value => 'foo', - } - - sahara_api_paste_ini { 'DEFAULT/thisshouldnotexist' : - value => '', - } - - sahara_api_paste_ini { 'DEFAULT/thisshouldexist2' : - value => '', - ensure_absent_val => 'toto', - } - - sahara_api_paste_ini { 'DEFAULT/thisshouldnotexist2' : - value => 'toto', - ensure_absent_val => 'toto', - } - - sahara_api_paste_ini { 'DEFAULT/thisshouldexist3' : - value => 'foo', - key_val_separator => ':' - } - EOS - - - # Run it twice and test for idempotency - apply_manifest(pp, :catch_failures => true) - apply_manifest(pp, :catch_changes => true) - end - - describe file('/etc/sahara/sahara.conf') do - it { is_expected.to exist } - it { is_expected.to contain('thisshouldexist=foo') } - it { is_expected.to contain('thisshouldexist2=') } - it { is_expected.to contain('thisshouldexist3=foo') } - it { is_expected.to contain('thisshouldexist3=bar') } - - describe '#content' do - subject { super().content } - it { is_expected.to_not match /thisshouldnotexist/ } - end - end - - describe file('/etc/sahara/api-paste.ini') do - it { is_expected.to exist } - it { is_expected.to contain('thisshouldexist=foo') } - it { is_expected.to contain('thisshouldexist2=') } - it { is_expected.to contain('thisshouldexist3:foo') } - - describe '#content' do - subject { super().content } - it { is_expected.to_not match /thisshouldnotexist/ } - end - end - end -end diff --git a/spec/classes/sahara_api_spec.rb b/spec/classes/sahara_api_spec.rb deleted file mode 100644 index 41d2fe5b..00000000 --- a/spec/classes/sahara_api_spec.rb +++ /dev/null @@ -1,145 +0,0 @@ -require 'spec_helper' - -describe 'sahara::service::api' do - - shared_examples 'sahara-api eventlet' do - context 'with default params' do - - it { - should contain_class('sahara::deps') - should contain_class('sahara::policy') - should contain_class('sahara::params') - } - - it { should contain_package('sahara-api').with( - :ensure => 'present', - :name => platform_params[:api_package_name], - :tag => ['openstack', 'sahara-package'], - )} - - it { should contain_sahara_config('DEFAULT/api_workers').with_value(2) } - - it { should contain_service('sahara-api').with( - :ensure => 'running', - :name => platform_params[:api_service_name], - :enable => true, - :hasstatus => true, - :hasrestart => true, - :tag => 'sahara-service', - )} - end - - context 'with custom params' do - let :params do - { - :api_workers => '4', - :enabled => false, - :package_ensure => 'absent', - :manage_service => false, - } - end - - it { should contain_package('sahara-api').with( - :ensure => 'absent', - :name => platform_params[:api_package_name], - :tag => ['openstack', 'sahara-package'], - )} - - it { should contain_sahara_config('DEFAULT/api_workers').with_value(4) } - - it { should_not contain_service('sahara-api') } - end - end - - shared_examples 'sahara-api eventlet ubuntu' do - context 'with default params' do - it { should raise_error(Puppet::Error, /The Sahara API must be run with WSGI on Ubuntu/) } - end - end - - shared_examples 'sahara-api wsgi' do - let :pre_condition do - 'include apache' - end - - let :params do - { - :service_name => 'httpd', - } - end - - context 'with default params' do - it { should contain_package('sahara-api').with( - :ensure => 'present', - :name => platform_params[:api_package_name], - :tag => ['openstack', 'sahara-package'], - )} - - it { should contain_service('sahara-api').with( - :ensure => 'stopped', - :name => platform_params[:api_service_name], - :enable => false, - :tag => 'sahara-service', - )} - end - end - - shared_examples 'sahara-api wsgi ubuntu' do - let :pre_condition do - 'include apache' - end - - let :params do - { - :service_name => 'httpd', - } - end - - context 'with default params' do - it { should contain_package('sahara-api').with( - :ensure => 'present', - :name => platform_params[:api_package_name], - :tag => ['openstack', 'sahara-package'], - )} - - it { should_not contain_service('sahara-api') } - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts) - end - - case facts[:os]['family'] - when 'Debian' - let (:platform_params) do - { - :api_package_name => 'sahara-api', - :api_service_name => 'sahara-api' - } - end - when 'RedHat' - let (:platform_params) do - { - :api_package_name => 'openstack-sahara-api', - :api_service_name => 'openstack-sahara-api' - } - end - end - - if facts[:os]['name'] == 'Ubuntu' - it_behaves_like 'sahara-api eventlet ubuntu' - it_behaves_like 'sahara-api wsgi ubuntu' - else - it_behaves_like 'sahara-api eventlet' - it_behaves_like 'sahara-api wsgi' - end - - end - end - -end diff --git a/spec/classes/sahara_client_spec.rb b/spec/classes/sahara_client_spec.rb deleted file mode 100644 index 1429b701..00000000 --- a/spec/classes/sahara_client_spec.rb +++ /dev/null @@ -1,57 +0,0 @@ -# -# Unit tests for sahara::client -# -require 'spec_helper' - -describe 'sahara::client' do - - shared_examples 'sahara client' do - - it { is_expected.to contain_class('sahara::deps') } - it { is_expected.to contain_class('sahara::params') } - - context 'with default parameters' do - it { is_expected.to contain_package('python-saharaclient').with( - :ensure => 'present', - :tag => ['openstack', 'openstackclient'], - ) - } - end - - context 'with package_ensure parameter provided' do - let :params do - { :package_ensure => false } - end - it { is_expected.to contain_package('python-saharaclient').with( - :ensure => false, - :name => platform_params[:client_package_name], - :tag => ['openstack', 'openstackclient'], - ) - } - end - - it { is_expected.to contain_class('openstacklib::openstackclient') } - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts) - end - - let(:platform_params) do - case facts[:os]['family'] - when 'Debian' - { :client_package_name => 'python3-saharaclient' } - when 'RedHat' - { :client_package_name => 'python3-saharaclient' } - end - end - - it_configures 'sahara client' - end - end - -end diff --git a/spec/classes/sahara_config_spec.rb b/spec/classes/sahara_config_spec.rb deleted file mode 100644 index 00a3b394..00000000 --- a/spec/classes/sahara_config_spec.rb +++ /dev/null @@ -1,48 +0,0 @@ -require 'spec_helper' - -describe 'sahara::config' do - - - shared_examples 'sahara-config' do - let :params do - { :sahara_config => { - 'DEFAULT/foo' => { 'value' => 'fooValue' }, - 'DEFAULT/bar' => { 'value' => 'barValue' }, - 'DEFAULT/baz' => { 'ensure' => 'absent' } - }, - :sahara_api_paste_ini => { - 'DEFAULT/foo2' => { 'value' => 'fooValue' }, - 'DEFAULT/bar2' => { 'value' => 'barValue' }, - 'DEFAULT/baz2' => { 'ensure' => 'absent' } - } - } - end - - it { is_expected.to contain_class('sahara::deps') } - - it 'configures arbitrary sahara configurations' do - is_expected.to contain_sahara_config('DEFAULT/foo').with_value('fooValue') - is_expected.to contain_sahara_config('DEFAULT/bar').with_value('barValue') - is_expected.to contain_sahara_config('DEFAULT/baz').with_ensure('absent') - end - - it 'configures arbitrary sahara-api-paste configurations' do - is_expected.to contain_sahara_api_paste_ini('DEFAULT/foo2').with_value('fooValue') - is_expected.to contain_sahara_api_paste_ini('DEFAULT/bar2').with_value('barValue') - is_expected.to contain_sahara_api_paste_ini('DEFAULT/baz2').with_ensure('absent') - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts) - end - - it_configures 'sahara-config' - end - end - -end diff --git a/spec/classes/sahara_db_mysql_spec.rb b/spec/classes/sahara_db_mysql_spec.rb deleted file mode 100644 index 32d2498f..00000000 --- a/spec/classes/sahara_db_mysql_spec.rb +++ /dev/null @@ -1,89 +0,0 @@ -# -# Unit tests for sahara::db::mysql -# -require 'spec_helper' - -describe 'sahara::db::mysql' do - - let :pre_condition do - ['include mysql::server'] - end - - let :params do - { :dbname => 'sahara', - :password => 'saharapass', - :user => 'sahara', - :charset => 'utf8', - :collate => 'utf8_general_ci', - :host => '127.0.0.1', - } - end - - shared_examples 'sahara mysql database' do - it { should contain_class('sahara::deps') } - - context 'when omiting the required parameter password' do - before { params.delete(:password) } - it { expect { is_expected.to raise_error(Puppet::Error) } } - end - - it 'creates a mysql database' do - is_expected.to contain_openstacklib__db__mysql('sahara').with( - :user => params[:user], - :dbname => params[:dbname], - :password => params[:password], - :host => params[:host], - :charset => params[:charset] - ) - end - - context 'overriding allowed_hosts param to array' do - before :each do - params.merge!( - :allowed_hosts => ['127.0.0.1','%'] - ) - end - - it { - is_expected.to contain_openstacklib__db__mysql('sahara').with( - :user => params[:user], - :dbname => params[:dbname], - :password => params[:password], - :host => params[:host], - :charset => params[:charset], - :allowed_hosts => ['127.0.0.1','%'] - )} - end - - context 'overriding allowed_hosts param to string' do - before :each do - params.merge!( - :allowed_hosts => '192.168.1.1' - ) - end - - it { - is_expected.to contain_openstacklib__db__mysql('sahara').with( - :user => params[:user], - :dbname => params[:dbname], - :password => params[:password], - :host => params[:host], - :charset => params[:charset], - :allowed_hosts => '192.168.1.1' - )} - end - - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts) - end - it_configures 'sahara mysql database' - end - end - -end diff --git a/spec/classes/sahara_db_postgresql_spec.rb b/spec/classes/sahara_db_postgresql_spec.rb deleted file mode 100644 index 25ebc883..00000000 --- a/spec/classes/sahara_db_postgresql_spec.rb +++ /dev/null @@ -1,48 +0,0 @@ -require 'spec_helper' - -describe 'sahara::db::postgresql' do - - shared_examples 'sahara::db::postgresql' do - let :req_params do - { :password => 'saharapass' } - end - - let :pre_condition do - 'include postgresql::server' - end - - context 'with only required parameters' do - let :params do - req_params - end - - it { is_expected.to contain_class('sahara::deps') } - - it { is_expected.to contain_openstacklib__db__postgresql('sahara').with( - :user => 'sahara', - :password => 'saharapass', - :dbname => 'sahara', - :encoding => nil, - :privileges => 'ALL', - )} - end - - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts({ - # puppet-postgresql requires the service_provider fact provided by - # puppetlabs-postgresql. - :service_provider => 'systemd' - })) - end - - it_configures 'sahara::db::postgresql' - end - end - -end diff --git a/spec/classes/sahara_db_spec.rb b/spec/classes/sahara_db_spec.rb deleted file mode 100644 index 593b8eaa..00000000 --- a/spec/classes/sahara_db_spec.rb +++ /dev/null @@ -1,63 +0,0 @@ -require 'spec_helper' - -describe 'sahara::db' do - shared_examples 'sahara::db' do - context 'with default parameters' do - it { should contain_class('sahara::deps') } - - it { is_expected.to contain_oslo__db('sahara_config').with( - :db_max_retries => '', - :connection => 'mysql+pymysql://sahara:secrete@localhost:3306/sahara', - :connection_recycle_time => '', - :max_pool_size => '', - :max_retries => '', - :retry_interval => '', - :max_overflow => '', - :pool_timeout => '', - :mysql_enable_ndb => '', - )} - end - - context 'with specific parameters' do - let :params do - { - :database_db_max_retries => '-1', - :database_connection => 'mysql+pymysql://sahara:sahara@localhost/sahara', - :database_connection_recycle_time => '3601', - :database_max_retries => '11', - :database_retry_interval => '11', - :database_max_pool_size => '11', - :database_max_overflow => '21', - :database_pool_timeout => '21', - :mysql_enable_ndb => true, - } - end - - it { should contain_class('sahara::deps') } - - it { is_expected.to contain_oslo__db('sahara_config').with( - :db_max_retries => '-1', - :connection => 'mysql+pymysql://sahara:sahara@localhost/sahara', - :connection_recycle_time => '3601', - :max_pool_size => '11', - :max_retries => '11', - :retry_interval => '11', - :max_overflow => '21', - :pool_timeout => '21', - :mysql_enable_ndb => true, - )} - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_behaves_like 'sahara::db' - end - end -end diff --git a/spec/classes/sahara_db_sync_spec.rb b/spec/classes/sahara_db_sync_spec.rb deleted file mode 100644 index 41eb7b01..00000000 --- a/spec/classes/sahara_db_sync_spec.rb +++ /dev/null @@ -1,71 +0,0 @@ -require 'spec_helper' - -describe 'sahara::db::sync' do - - shared_examples 'sahara-dbsync' do - - context 'default patameters' do - - it { is_expected.to contain_class('sahara::deps') } - - it 'runs sahara-dbmanage' do - is_expected.to contain_exec('sahara-dbmanage').with( - :command => 'sahara-db-manage --config-file /etc/sahara/sahara.conf upgrade head', - :path => '/usr/bin', - :user => 'sahara', - :refreshonly => 'true', - :try_sleep => 5, - :tries => 10, - :timeout => 300, - :logoutput => 'on_failure', - :subscribe => ['Anchor[sahara::install::end]', - 'Anchor[sahara::config::end]', - 'Anchor[sahara::dbsync::begin]'], - :notify => 'Anchor[sahara::dbsync::end]', - :tag => 'openstack-db', - ) - end - end - - context 'overriding params' do - let :params do - { - :extra_params => '--config-file /etc/sahara/sahara01.conf', - :db_sync_timeout => 750, - } - end - - it { - is_expected.to contain_exec('sahara-dbmanage').with( - :command => 'sahara-db-manage --config-file /etc/sahara/sahara01.conf upgrade head', - :path => '/usr/bin', - :user => 'sahara', - :refreshonly => 'true', - :try_sleep => 5, - :tries => 10, - :timeout => 750, - :logoutput => 'on_failure', - :subscribe => ['Anchor[sahara::install::end]', - 'Anchor[sahara::config::end]', - 'Anchor[sahara::dbsync::begin]'], - :notify => 'Anchor[sahara::dbsync::end]', - :tag => 'openstack-db', - ) - } - end - - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts()) - end - - it_configures 'sahara-dbsync' - end - end - -end diff --git a/spec/classes/sahara_engine_spec.rb b/spec/classes/sahara_engine_spec.rb deleted file mode 100644 index a6f5dcad..00000000 --- a/spec/classes/sahara_engine_spec.rb +++ /dev/null @@ -1,118 +0,0 @@ -require 'spec_helper' - -describe 'sahara::service::engine' do - shared_examples 'sahara::service::engine' do - context 'with default params' do - it { - should contain_class('sahara::deps') - should contain_class('sahara::params') - } - - it { should contain_package('sahara-engine').with( - :ensure => 'present', - :name => platform_params[:engine_package_name], - :tag => ['openstack', 'sahara-package'], - )} - - it { should contain_service('sahara-engine').with( - :ensure => 'running', - :name => platform_params[:engine_service_name], - :enable => true, - :hasstatus => true, - :hasrestart => true, - :tag => 'sahara-service', - )} - - it 'should configure default coordination parameters' do - should contain_oslo__coordination('sahara_config').with( - :backend_url => '', - :manage_config => false, - ) - - should contain_sahara_config('DEFAULT/periodic_enable').with_value('') - should contain_sahara_config('DEFAULT/periodic_fuzzy_delay').with_value('') - should contain_sahara_config('DEFAULT/periodic_interval_max').with_value('') - should contain_sahara_config('DEFAULT/min_transient_cluster_active_time').with_value('') - should contain_sahara_config('DEFAULT/cleanup_time_for_incomplete_clusters').with_value('') - should contain_sahara_config('DEFAULT/periodic_coordinator_backend_url').with_value('').with_secret(true) - should contain_sahara_config('DEFAULT/periodic_workers_number').with_value('') - should contain_sahara_config('DEFAULT/coordinator_heartbeat_interval').with_value('') - should contain_sahara_config('DEFAULT/hash_ring_replicas_count').with_value('') - end - end - - context 'with custom params' do - let :params do - { - :enabled => false, - :manage_service => false, - :package_ensure => 'absent', - :periodic_enable => true, - :periodic_fuzzy_delay => 60, - :periodic_interval_max => 61, - :min_transient_cluster_active_time => 30, - :cleanup_time_for_incomplete_clusters => 0, - :periodic_coordinator_backend_url => 'etcd3+http://127.0.0.1:2379', - :periodic_workers_number => 4, - :coordinator_heartbeat_interval => 1, - :hash_ring_replicas_count => 40, - } - end - - it { should contain_package('sahara-engine').with( - :ensure => 'absent', - :name => platform_params[:engine_package_name], - :tag => ['openstack', 'sahara-package'], - )} - - it { should_not contain_service('sahara-engine') } - - it 'should configure the custom values' do - should contain_oslo__coordination('sahara_config').with( - :backend_url => 'etcd3+http://127.0.0.1:2379', - :manage_config => false, - ) - - should contain_sahara_config('DEFAULT/periodic_enable').with_value(true) - should contain_sahara_config('DEFAULT/periodic_fuzzy_delay').with_value(60) - should contain_sahara_config('DEFAULT/periodic_interval_max').with_value(61) - should contain_sahara_config('DEFAULT/min_transient_cluster_active_time').with_value(30) - should contain_sahara_config('DEFAULT/cleanup_time_for_incomplete_clusters').with_value(0) - should contain_sahara_config('DEFAULT/periodic_coordinator_backend_url').with_value('etcd3+http://127.0.0.1:2379').with_secret(true) - should contain_sahara_config('DEFAULT/periodic_workers_number').with_value(4) - should contain_sahara_config('DEFAULT/coordinator_heartbeat_interval').with_value(1) - should contain_sahara_config('DEFAULT/hash_ring_replicas_count').with_value(40) - end - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts) - end - - case facts[:os]['family'] - when 'Debian' - let (:platform_params) do - { - :engine_package_name => 'sahara-engine', - :engine_service_name => 'sahara-engine' - } - end - when 'RedHat' - let (:platform_params) do - { - :engine_package_name => 'openstack-sahara-engine', - :engine_service_name => 'openstack-sahara-engine' - } - end - end - - it_behaves_like 'sahara::service::engine' - end - end - -end diff --git a/spec/classes/sahara_healthcheck_spec.rb b/spec/classes/sahara_healthcheck_spec.rb deleted file mode 100644 index 3292d9e4..00000000 --- a/spec/classes/sahara_healthcheck_spec.rb +++ /dev/null @@ -1,55 +0,0 @@ -require 'spec_helper' - -describe 'sahara::healthcheck' do - - shared_examples_for 'sahara::healthcheck' do - - context 'with default parameters' do - let :params do - {} - end - - it 'configures default values' do - is_expected.to contain_oslo__healthcheck('sahara_config').with( - :detailed => '', - :backends => '', - :disable_by_file_path => '', - :disable_by_file_paths => '', - ) - end - end - - context 'with specific parameters' do - let :params do - { - :detailed => true, - :backends => ['disable_by_file'], - :disable_by_file_path => '/etc/sahara/healthcheck/disabled', - :disable_by_file_paths => ['8042:/etc/sahara/healthcheck/disabled'], - } - end - - it 'configures specified values' do - is_expected.to contain_oslo__healthcheck('sahara_config').with( - :detailed => true, - :backends => ['disable_by_file'], - :disable_by_file_path => '/etc/sahara/healthcheck/disabled', - :disable_by_file_paths => ['8042:/etc/sahara/healthcheck/disabled'], - ) - end - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_configures 'sahara::healthcheck' - end - end - -end diff --git a/spec/classes/sahara_init_spec.rb b/spec/classes/sahara_init_spec.rb deleted file mode 100644 index 9bc7d55d..00000000 --- a/spec/classes/sahara_init_spec.rb +++ /dev/null @@ -1,257 +0,0 @@ -# -# Unit tests for sahara::init -# -require 'spec_helper' - -describe 'sahara' do - - let :params do - { - :purge_config => false, - } - end - - shared_examples 'sahara' do - it { is_expected.to contain_class('sahara::deps') } - it { is_expected.to contain_class('sahara::params') } - it { is_expected.to contain_class('sahara::db') } - it { is_expected.to contain_class('mysql::bindings::python') } - it { is_expected.to contain_exec('sahara-dbmanage') } - - it 'passes purge to resource' do - is_expected.to contain_resources('sahara_config').with({ - :purge => false - }) - end - end - - shared_examples 'sahara config' do - context 'with default params' do - it { is_expected.to contain_sahara_config('DEFAULT/use_floating_ips').with_value('') } - it { is_expected.to contain_sahara_config('DEFAULT/node_domain').with_value('') } - it { is_expected.to contain_sahara_config('DEFAULT/use_designate').with_value('') } - it { is_expected.to contain_sahara_config('DEFAULT/nameservers').with_value('') } - it { is_expected.to contain_sahara_config('DEFAULT/host').with_value('') } - it { is_expected.to contain_sahara_config('DEFAULT/port').with_value('') } - it { is_expected.to contain_sahara_config('DEFAULT/plugins').with_value('') } - - it { is_expected.to contain_oslo__messaging__rabbit('sahara_config').with( - :rabbit_use_ssl => '', - :heartbeat_timeout_threshold => '', - :heartbeat_rate => '', - :heartbeat_in_pthread => '', - :kombu_reconnect_delay => '', - :kombu_failover_strategy => '', - :amqp_durable_queues => '', - :kombu_compression => '', - :kombu_ssl_ca_certs => '', - :kombu_ssl_certfile => '', - :kombu_ssl_keyfile => '', - :kombu_ssl_version => '', - :rabbit_ha_queues => '', - :rabbit_retry_interval => '', - :rabbit_quorum_queue => '', - :rabbit_quorum_delivery_limit => '', - :rabbit_quorum_max_memory_length => '', - :rabbit_quorum_max_memory_bytes => '', - ) } - it { is_expected.to contain_oslo__messaging__default('sahara_config').with( - :transport_url => '', - :rpc_response_timeout => '', - :control_exchange => '' - ) } - it { is_expected.to contain_sahara_config('DEFAULT/default_ntp_server').with_value('') } - end - - context 'with passing params' do - let :params do { - :host => 'localhost', - :port => '8387', - :plugins => ['plugin1', 'plugin2'], - :default_transport_url => 'rabbit://guest2:pass@localhost2:5673', - :rpc_response_timeout => '120', - :control_exchange => 'openstack', - :default_ntp_server => 'pool.ntp.org', - } - end - - it { is_expected.to contain_sahara_config('DEFAULT/host').with_value('localhost') } - it { is_expected.to contain_sahara_config('DEFAULT/plugins').with_value('plugin1,plugin2') } - it { is_expected.to contain_sahara_config('DEFAULT/transport_url').with_value('rabbit://guest2:pass@localhost2:5673') } - it { is_expected.to contain_sahara_config('DEFAULT/rpc_response_timeout').with_value('120') } - it { is_expected.to contain_sahara_config('DEFAULT/control_exchange').with_value('openstack') } - it { is_expected.to contain_sahara_config('DEFAULT/default_ntp_server').with_value('pool.ntp.org') } - end - - end - - shared_examples 'sahara rpc' do - context 'when passing params' do - before do - params.merge!({ - :rabbit_ha_queues => true, - :amqp_durable_queues => true, - :rabbit_heartbeat_in_pthread => true, - :kombu_reconnect_delay => '1.0', - :kombu_compression => 'gzip', - :kombu_failover_strategy => 'round-robin', - :rabbit_quorum_queue => true, - :rabbit_quorum_delivery_limit => 3, - :rabbit_quorum_max_memory_length => 5, - :rabbit_quorum_max_memory_bytes => 1073741824, - }) - end - - it { is_expected.to contain_oslo__messaging__rabbit('sahara_config').with( - :rabbit_use_ssl => '', - :heartbeat_timeout_threshold => '', - :heartbeat_rate => '', - :heartbeat_in_pthread => true, - :kombu_reconnect_delay => '1.0', - :kombu_failover_strategy => 'round-robin', - :amqp_durable_queues => true, - :kombu_compression => 'gzip', - :rabbit_quorum_queue => true, - :rabbit_quorum_delivery_limit => 3, - :rabbit_quorum_max_memory_length => 5, - :rabbit_quorum_max_memory_bytes => 1073741824, - ) } - end - - context 'with rabbit ssl cert parameters' do - before do - params.merge!({ - :rabbit_use_ssl => true, - :kombu_ssl_ca_certs => '/etc/ca.cert', - :kombu_ssl_certfile => '/etc/certfile', - :kombu_ssl_keyfile => '/etc/key', - :kombu_ssl_version => 'TLSv1', - }) - end - it { is_expected.to contain_oslo__messaging__rabbit('sahara_config').with( - :rabbit_use_ssl => true, - :kombu_ssl_ca_certs => '/etc/ca.cert', - :kombu_ssl_certfile => '/etc/certfile', - :kombu_ssl_keyfile => '/etc/key', - :kombu_ssl_version => 'TLSv1', - )} - end - - context 'with rabbit ssl disabled' do - before do - params.merge!({ - :rabbit_use_ssl => false, - }) - end - - it { is_expected.to contain_oslo__messaging__rabbit('sahara_config').with( - :rabbit_use_ssl => false, - )} - end - - context 'with amqp rpc' do - - context 'with default parameters' do - it { is_expected.to contain_oslo__messaging__amqp('sahara_config').with( - :server_request_prefix => '', - :broadcast_prefix => '', - :group_request_prefix => '', - :container_name => '', - :idle_timeout => '', - :trace => '', - :ssl_ca_file => '', - :ssl_cert_file => '', - :ssl_key_file => '', - :sasl_mechanisms => '', - :sasl_config_dir => '', - :sasl_config_name => '', - :username => '', - :password => '', - )} - end - - context 'when pass parameters' do - before do - params.merge!({ - :amqp_idle_timeout => '60', - :amqp_trace => true, - :amqp_ssl_ca_file => '/etc/ca.cert', - :amqp_ssl_cert_file => '/etc/certfile', - :amqp_ssl_key_file => '/etc/key', - :amqp_username => 'amqp_user', - :amqp_password => 'password', - }) - end - - it { is_expected.to contain_oslo__messaging__amqp('sahara_config').with( - :idle_timeout => '60', - :trace => true, - :ssl_ca_file => '/etc/ca.cert', - :ssl_cert_file => '/etc/certfile', - :ssl_key_file => '/etc/key', - :username => 'amqp_user', - :password => 'password', - )} - end - end - end - - shared_examples 'sahara ssl' do - context 'without ssl' do - it { is_expected.to contain_sahara_config('ssl/ca_file').with_ensure('absent') } - it { is_expected.to contain_sahara_config('ssl/cert_file').with_ensure('absent') } - it { is_expected.to contain_sahara_config('ssl/key_file').with_ensure('absent') } - end - - context 'with ssl' do - let :params do - { - :use_ssl => true, - :ca_file => '/tmp/ca_file', - :cert_file => '/tmp/cert_file', - :key_file => '/tmp/key_file', - } - end - it { is_expected.to contain_sahara_config('ssl/ca_file').with_value('/tmp/ca_file') } - it { is_expected.to contain_sahara_config('ssl/cert_file').with_value('/tmp/cert_file') } - it { is_expected.to contain_sahara_config('ssl/key_file').with_value('/tmp/key_file') } - end - - context 'with ssl but without cert_file' do - let :params do - { - :use_ssl => true, - } - end - - it { should raise_error(Puppet::Error, /The cert_file parameter is required when use_ssl is set to true/) } - end - - context 'with ssl but without key_file' do - let :params do - { - :use_ssl => true, - :cert_file => '/tmp/cert_file', - } - end - - it { should raise_error(Puppet::Error, /The key_file parameter is required when use_ssl is set to true/) } - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts) - end - - it_configures 'sahara' - it_configures 'sahara config' - it_configures 'sahara ssl' - it_configures 'sahara rpc' - end - end - -end diff --git a/spec/classes/sahara_keystone_auth_spec.rb b/spec/classes/sahara_keystone_auth_spec.rb deleted file mode 100644 index 621869f2..00000000 --- a/spec/classes/sahara_keystone_auth_spec.rb +++ /dev/null @@ -1,89 +0,0 @@ -# -# Unit tests for sahara::keystone::auth -# - -require 'spec_helper' - -describe 'sahara::keystone::auth' do - shared_examples 'sahara::keystone::auth' do - context 'with default class parameters' do - let :params do - { :password => 'sahara_password' } - end - - it { is_expected.to contain_keystone__resource__service_identity('sahara').with( - :configure_user => true, - :configure_user_role => true, - :configure_endpoint => true, - :service_name => 'sahara', - :service_type => 'data-processing', - :service_description => 'Sahara Data Processing', - :region => 'RegionOne', - :auth_name => 'sahara', - :password => 'sahara_password', - :email => 'sahara@localhost', - :tenant => 'services', - :roles => ['admin'], - :system_scope => 'all', - :system_roles => [], - :public_url => 'http://127.0.0.1:8386', - :internal_url => 'http://127.0.0.1:8386', - :admin_url => 'http://127.0.0.1:8386', - ) } - end - - context 'when overriding parameters' do - let :params do - { :password => 'sahara_password', - :auth_name => 'alt_sahara', - :email => 'alt_sahara@alt_localhost', - :tenant => 'alt_service', - :roles => ['admin', 'service'], - :system_scope => 'alt_all', - :system_roles => ['admin', 'member', 'reader'], - :configure_endpoint => false, - :configure_user => false, - :configure_user_role => false, - :service_description => 'Alternative Sahara Data Processing', - :service_name => 'alt_service', - :service_type => 'alt_data-processing', - :region => 'RegionTwo', - :public_url => 'https://10.10.10.10:80', - :internal_url => 'http://10.10.10.11:81', - :admin_url => 'http://10.10.10.12:81' } - end - - it { is_expected.to contain_keystone__resource__service_identity('sahara').with( - :configure_user => false, - :configure_user_role => false, - :configure_endpoint => false, - :service_name => 'alt_service', - :service_type => 'alt_data-processing', - :service_description => 'Alternative Sahara Data Processing', - :region => 'RegionTwo', - :auth_name => 'alt_sahara', - :password => 'sahara_password', - :email => 'alt_sahara@alt_localhost', - :tenant => 'alt_service', - :roles => ['admin', 'service'], - :system_scope => 'alt_all', - :system_roles => ['admin', 'member', 'reader'], - :public_url => 'https://10.10.10.10:80', - :internal_url => 'http://10.10.10.11:81', - :admin_url => 'http://10.10.10.12:81', - ) } - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_behaves_like 'sahara::keystone::auth' - end - end -end diff --git a/spec/classes/sahara_keystone_authtoken_spec.rb b/spec/classes/sahara_keystone_authtoken_spec.rb deleted file mode 100644 index ef08c8ec..00000000 --- a/spec/classes/sahara_keystone_authtoken_spec.rb +++ /dev/null @@ -1,155 +0,0 @@ -require 'spec_helper' - -describe 'sahara::keystone::authtoken' do - - let :params do - { :password => 'sahara_password', } - end - - shared_examples 'sahara::keystone::authtoken' do - - context 'with default parameters' do - - it 'configure keystone_authtoken' do - is_expected.to contain_keystone__resource__authtoken('sahara_config').with( - :username => 'sahara', - :password => 'sahara_password', - :auth_url => 'http://127.0.0.1:5000/', - :project_name => 'services', - :user_domain_name => 'Default', - :project_domain_name => 'Default', - :system_scope => '', - :insecure => '', - :auth_section => '', - :auth_type => 'password', - :www_authenticate_uri => 'http://127.0.0.1:5000/', - :auth_version => '', - :cache => '', - :cafile => '', - :certfile => '', - :delay_auth_decision => '', - :enforce_token_bind => '', - :http_connect_timeout => '', - :http_request_max_retries => '', - :include_service_catalog => '', - :keyfile => '', - :memcache_pool_conn_get_timeout => '', - :memcache_pool_dead_retry => '', - :memcache_pool_maxsize => '', - :memcache_pool_socket_timeout => '', - :memcache_pool_unused_timeout => '', - :memcache_secret_key => '', - :memcache_security_strategy => '', - :memcache_use_advanced_pool => '', - :memcached_servers => '', - :manage_memcache_package => false, - :region_name => '', - :token_cache_time => '', - :service_token_roles => '', - :service_token_roles_required => '', - :service_type => '', - :interface => '', - ) - end - end - - context 'when overriding parameters' do - before do - params.merge!({ - :www_authenticate_uri => 'https://10.0.0.1:9999/', - :username => 'myuser', - :password => 'mypasswd', - :auth_url => 'http://127.0.0.1:5000', - :project_name => 'service_project', - :user_domain_name => 'domainX', - :project_domain_name => 'domainX', - :system_scope => 'all', - :insecure => false, - :auth_section => 'new_section', - :auth_type => 'password', - :auth_version => 'v3', - :cache => 'somevalue', - :cafile => '/opt/stack/data/cafile.pem', - :certfile => 'certfile.crt', - :delay_auth_decision => false, - :enforce_token_bind => 'permissive', - :http_connect_timeout => '300', - :http_request_max_retries => '3', - :include_service_catalog => true, - :keyfile => 'keyfile', - :memcache_pool_conn_get_timeout => '9', - :memcache_pool_dead_retry => '302', - :memcache_pool_maxsize => '11', - :memcache_pool_socket_timeout => '2', - :memcache_pool_unused_timeout => '61', - :memcache_secret_key => 'secret_key', - :memcache_security_strategy => 'ENCRYPT', - :memcache_use_advanced_pool => true, - :memcached_servers => ['memcached01:11211','memcached02:11211'], - :manage_memcache_package => true, - :region_name => 'region2', - :token_cache_time => '301', - :service_token_roles => ['service'], - :service_token_roles_required => false, - :service_type => 'identity', - :interface => 'internal', - }) - end - - it 'configure keystone_authtoken' do - is_expected.to contain_keystone__resource__authtoken('sahara_config').with( - :www_authenticate_uri => 'https://10.0.0.1:9999/', - :username => 'myuser', - :password => 'mypasswd', - :auth_url => 'http://127.0.0.1:5000', - :project_name => 'service_project', - :user_domain_name => 'domainX', - :project_domain_name => 'domainX', - :system_scope => 'all', - :insecure => false, - :auth_section => 'new_section', - :auth_type => 'password', - :auth_version => 'v3', - :cache => 'somevalue', - :cafile => '/opt/stack/data/cafile.pem', - :certfile => 'certfile.crt', - :delay_auth_decision => false, - :enforce_token_bind => 'permissive', - :http_connect_timeout => '300', - :http_request_max_retries => '3', - :include_service_catalog => true, - :keyfile => 'keyfile', - :memcache_pool_conn_get_timeout => '9', - :memcache_pool_dead_retry => '302', - :memcache_pool_maxsize => '11', - :memcache_pool_socket_timeout => '2', - :memcache_pool_unused_timeout => '61', - :memcache_secret_key => 'secret_key', - :memcache_security_strategy => 'ENCRYPT', - :memcache_use_advanced_pool => true, - :memcached_servers => ['memcached01:11211','memcached02:11211'], - :manage_memcache_package => true, - :region_name => 'region2', - :token_cache_time => '301', - :service_token_roles => ['service'], - :service_token_roles_required => false, - :service_type => 'identity', - :interface => 'internal', - ) - end - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_configures 'sahara::keystone::authtoken' - end - end - -end diff --git a/spec/classes/sahara_logging_spec.rb b/spec/classes/sahara_logging_spec.rb deleted file mode 100644 index ac03c6a9..00000000 --- a/spec/classes/sahara_logging_spec.rb +++ /dev/null @@ -1,151 +0,0 @@ -require 'spec_helper' - -describe 'sahara::logging' do - - let :params do - { - } - end - - let :log_params do - { - :debug => 'true', - :use_syslog => 'true', - :use_json => 'true', - :use_journal => 'true', - :use_stderr => 'false', - :log_facility => 'LOG_LOCAL0', - :log_file => 'sahara.log', - :watch_log_file => 'true', - :log_dir => '/tmp/sahara', - :logging_context_format_string => '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s', - :logging_default_format_string => '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s', - :logging_debug_format_suffix => '%(funcName)s %(pathname)s:%(lineno)d', - :logging_exception_prefix => '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s', - :log_config_append => '/etc/sahara/logging.conf', - :publish_errors => true, - :default_log_levels => { - 'amqp' => 'WARN', - 'amqplib' => 'WARN', - 'boto' => 'WARN', - 'sqlalchemy' => 'WARN', - 'suds' => 'INFO', - 'iso8601' => 'WARN', - 'requests.packages.urllib3.connectionpool' => 'WARN' }, - :fatal_deprecations => true, - :instance_format => '[instance: %(uuid)s] ', - :instance_uuid_format => '[instance: %(uuid)s] ', - :log_date_format => '%Y-%m-%d %H:%M:%S', - } - end - - shared_examples 'sahara-logging' do - - context 'with basic logging options defaults' do - it_behaves_like 'basic logging options defaults' - end - - context 'with basic logging options passed' do - before { params.merge!( log_params ) } - it_behaves_like 'basic logging options passed' - end - - context 'with extended logging options' do - before { params.merge!( log_params ) } - it_behaves_like 'logging params set' - end - - context 'without extended logging options' do - it_behaves_like 'logging params unset' - end - - end - - shared_examples 'basic logging options defaults' do - - context 'with defaults' do - it { is_expected.to contain_oslo__log('sahara_config').with( - :use_syslog => '', - :use_json => '', - :use_journal => '', - :use_stderr => '', - :log_file => '', - :watch_log_file => '', - :log_dir => '/var/log/sahara', - :debug => '', - )} - end - - context 'with syslog enabled and default log facility' do - let :params do - { :use_syslog => 'true' } - end - - it { is_expected.to contain_oslo__log('sahara_config').with( - :use_syslog => true, - :syslog_log_facility => '', - )} - end - end - - shared_examples 'basic logging options passed' do - context 'with passed params' do - it { is_expected.to contain_oslo__log('sahara_config').with( - :use_syslog => true, - :use_json => true, - :use_journal => true, - :use_stderr => false, - :syslog_log_facility => 'LOG_LOCAL0', - :log_file => 'sahara.log', - :watch_log_file => true, - :log_dir => '/tmp/sahara', - :debug => true, - )} - end - end - - shared_examples 'logging params set' do - it 'enables logging params' do - is_expected.to contain_oslo__log('sahara_config').with( - :logging_context_format_string => - '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s', - :logging_default_format_string => '%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s', - :logging_debug_format_suffix => '%(funcName)s %(pathname)s:%(lineno)d', - :logging_exception_prefix => '%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s', - :log_config_append => '/etc/sahara/logging.conf', - :publish_errors => true, - :default_log_levels => { - 'amqp' => 'WARN', 'amqplib' => 'WARN', 'boto' => 'WARN', - 'sqlalchemy' => 'WARN', 'suds' => 'INFO', 'iso8601' => 'WARN', - 'requests.packages.urllib3.connectionpool' => 'WARN' }, - :fatal_deprecations => true, - :instance_format => '[instance: %(uuid)s] ', - :instance_uuid_format => '[instance: %(uuid)s] ', - :log_date_format => '%Y-%m-%d %H:%M:%S', - ) - end - end - - shared_examples 'logging params unset' do - [ :logging_context_format_string, :logging_default_format_string, - :logging_debug_format_suffix, :logging_exception_prefix, - :log_config_append, :publish_errors, - :default_log_levels, :fatal_deprecations, - :instance_format, :instance_uuid_format, - :log_date_format, ].each { |param| - it { is_expected.to contain_oslo__log('sahara_config').with("#{param}" => '') } - } - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge(OSDefaults.get_facts()) - end - it_behaves_like 'sahara-logging' - end - end - -end diff --git a/spec/classes/sahara_notify_spec.rb b/spec/classes/sahara_notify_spec.rb deleted file mode 100644 index 19e12d2a..00000000 --- a/spec/classes/sahara_notify_spec.rb +++ /dev/null @@ -1,39 +0,0 @@ -require 'spec_helper' -describe 'sahara::notify' do - - shared_examples 'sahara-notify' do - context 'when defaults parameters' do - it { is_expected.to contain_sahara_config('oslo_messaging_notifications/transport_url').with_value('') } - it { is_expected.to contain_sahara_config('oslo_messaging_notifications/driver').with_value('') } - it { is_expected.to contain_sahara_config('oslo_messaging_notifications/topics').with_value('') } - end - - context 'with overridden parameters' do - let :params do - { - :notification_transport_url => 'rabbit://guest2:pass@localhost2:5673', - :notification_driver => 'messaging', - :notification_topics => 'notifications', - } - it { is_expected.to contain_sahara_config('oslo_messaging_notifications/transport_url').with_value('rabbit://guest2:pass@localhost2:5673') } - it { is_expected.to contain_sahara_config('oslo_messaging_notifications/driver').with_value('messaging') } - it { is_expected.to contain_sahara_config('oslo_messaging_notifications/topics').with_value('notifications') } - end - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_configures 'sahara-notify' - end - end - - -end - diff --git a/spec/classes/sahara_policy_spec.rb b/spec/classes/sahara_policy_spec.rb deleted file mode 100644 index 08014484..00000000 --- a/spec/classes/sahara_policy_spec.rb +++ /dev/null @@ -1,89 +0,0 @@ -require 'spec_helper' - -describe 'sahara::policy' do - shared_examples 'sahara::policy' do - - context 'setup policy with parameters' do - let :params do - { - :enforce_scope => false, - :enforce_new_defaults => false, - :policy_path => '/etc/sahara/policy.yaml', - :policy_default_rule => 'default', - :policy_dirs => '/etc/sahara/policy.d', - :policies => { - 'context_is_admin' => { - 'key' => 'context_is_admin', - 'value' => 'foo:bar' - } - } - } - end - - it 'set up the policies' do - is_expected.to contain_openstacklib__policy('/etc/sahara/policy.yaml').with( - :policies => { - 'context_is_admin' => { - 'key' => 'context_is_admin', - 'value' => 'foo:bar' - } - }, - :policy_path => '/etc/sahara/policy.yaml', - :file_user => 'root', - :file_group => 'sahara', - :file_format => 'yaml', - :purge_config => false, - :tag => 'sahara', - ) - is_expected.to contain_oslo__policy('sahara_config').with( - :enforce_scope => false, - :enforce_new_defaults => false, - :policy_file => '/etc/sahara/policy.yaml', - :policy_default_rule => 'default', - :policy_dirs => '/etc/sahara/policy.d', - ) - end - end - - context 'with empty policies and purge_config enabled' do - let :params do - { - :enforce_scope => false, - :enforce_new_defaults => false, - :policy_path => '/etc/sahara/policy.yaml', - :policies => {}, - :purge_config => true, - } - end - - it 'set up the policies' do - is_expected.to contain_openstacklib__policy('/etc/sahara/policy.yaml').with( - :policies => {}, - :policy_path => '/etc/sahara/policy.yaml', - :file_user => 'root', - :file_group => 'sahara', - :file_format => 'yaml', - :purge_config => true, - :tag => 'sahara', - ) - is_expected.to contain_oslo__policy('sahara_config').with( - :enforce_scope => false, - :enforce_new_defaults => false, - :policy_file => '/etc/sahara/policy.yaml', - ) - end - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_behaves_like 'sahara::policy' - end - end -end diff --git a/spec/classes/sahara_wsgi_apache_spec.rb b/spec/classes/sahara_wsgi_apache_spec.rb deleted file mode 100644 index df0a23dc..00000000 --- a/spec/classes/sahara_wsgi_apache_spec.rb +++ /dev/null @@ -1,186 +0,0 @@ -require 'spec_helper' - -describe 'sahara::wsgi::apache' do - - shared_examples 'sahara::wsgi::apache' do - context 'with default params' do - it { - should contain_class('sahara::deps') - should contain_class('sahara::params') - } - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :bind_port => 8386, - :group => 'sahara', - :path => '/', - :priority => 10, - :servername => 'foo.example.com', - :ssl => false, - :threads => 1, - :user => 'sahara', - :workers => facts[:os_workers], - :wsgi_daemon_process => 'sahara', - :wsgi_process_group => 'sahara', - :wsgi_script_dir => platform_params[:wsgi_script_path], - :wsgi_script_file => 'app', - :wsgi_script_source => platform_params[:wsgi_script_source], - :headers => nil, - :request_headers => nil, - :custom_wsgi_process_options => {}, - :access_log_file => nil, - :access_log_pipe => nil, - :access_log_syslog => nil, - :access_log_format => nil, - :error_log_file => nil, - :error_log_pipe => nil, - :error_log_syslog => nil, - )} - end - - context 'when overriding paramters' do - let :params do - { - :servername => 'dummy.host', - :bind_host => '10.42.51.1', - :port => 12345, - :ssl => false, - :workers => 8, - :wsgi_process_display_name => 'sahara', - :threads => 2, - :custom_wsgi_process_options => { - 'python_path' => '/my/python/path', - }, - :headers => ['set X-XSS-Protection "1; mode=block"'], - :request_headers => ['set Content-Type "application/json"'], - } - end - - it { is_expected.to contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :bind_host => '10.42.51.1', - :bind_port => 12345, - :group => 'sahara', - :path => '/', - :servername => 'dummy.host', - :ssl => false, - :threads => 2, - :user => 'sahara', - :workers => 8, - :wsgi_daemon_process => 'sahara', - :wsgi_process_display_name => 'sahara', - :wsgi_process_group => 'sahara', - :wsgi_script_dir => platform_params[:wsgi_script_path], - :wsgi_script_file => 'app', - :wsgi_script_source => platform_params[:wsgi_script_source], - :headers => ['set X-XSS-Protection "1; mode=block"'], - :request_headers => ['set Content-Type "application/json"'], - :custom_wsgi_process_options => { - 'python_path' => '/my/python/path', - }, - )} - end - - context 'with ssl' do - let :params do - { - :ssl => true, - } - end - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with_ssl(true) } - end - - context 'with custom access logging' do - let :params do - { - :access_log_format => 'foo', - :access_log_syslog => 'syslog:local0', - :error_log_syslog => 'syslog:local1', - } - end - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :access_log_format => params[:access_log_format], - :access_log_syslog => params[:access_log_syslog], - :error_log_syslog => params[:error_log_syslog], - )} - end - - context 'with access_log_file' do - let :params do - { - :access_log_file => '/path/to/file', - } - end - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :access_log_file => params[:access_log_file], - )} - end - - context 'with access_log_pipe' do - let :params do - { - :access_log_pipe => 'pipe', - } - end - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :access_log_pipe => params[:access_log_pipe], - )} - end - - context 'with error_log_file' do - let :params do - { - :error_log_file => '/path/to/file', - } - end - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :error_log_file => params[:error_log_file], - )} - end - - context 'with error_log_pipe' do - let :params do - { - :error_log_pipe => 'pipe', - } - end - - it { should contain_openstacklib__wsgi__apache('sahara_wsgi').with( - :error_log_pipe => params[:error_log_pipe], - )} - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts({ - :os_workers => 4, - })) - end - - let(:platform_params) do - case facts[:os]['family'] - when 'Debian' - { - :wsgi_script_path => '/usr/lib/cgi-bin/sahara', - :wsgi_script_source => '/usr/bin/sahara-wsgi-api' - } - when 'RedHat' - { - :wsgi_script_path => '/var/www/cgi-bin/sahara', - :wsgi_script_source => '/usr/bin/sahara-wsgi-api' - } - end - end - - it_behaves_like 'sahara::wsgi::apache' - end - end -end - diff --git a/spec/classes/sahara_wsgi_uwsgi_spec.rb b/spec/classes/sahara_wsgi_uwsgi_spec.rb deleted file mode 100644 index 56c9835e..00000000 --- a/spec/classes/sahara_wsgi_uwsgi_spec.rb +++ /dev/null @@ -1,31 +0,0 @@ -require 'spec_helper' - -describe 'sahara::wsgi::uwsgi' do - - shared_examples 'sahara::wsgi::uwsgi' do - context 'with default parameters' do - it { - should contain_class('sahara::deps') - } - - it { - is_expected.to contain_sahara_api_uwsgi_config('uwsgi/processes').with_value(facts[:os_workers]) - is_expected.to contain_sahara_api_uwsgi_config('uwsgi/threads').with_value('32') - is_expected.to contain_sahara_api_uwsgi_config('uwsgi/listen').with_value('100') - } - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts({ - :os_workers => 8, - })) - end - it_behaves_like 'sahara::wsgi::uwsgi' - end - end -end diff --git a/spec/defines/sahara_plugin_spec.rb b/spec/defines/sahara_plugin_spec.rb deleted file mode 100644 index 8f2cd32e..00000000 --- a/spec/defines/sahara_plugin_spec.rb +++ /dev/null @@ -1,32 +0,0 @@ -require 'spec_helper' - -describe 'sahara::plugin' do - let(:title) {'vanilla'} - - shared_examples_for 'sahara::plugin' do - - context 'with default parameters' do - - it 'installs the plugin package' do - is_expected.to contain_package('sahara-plugin-vanilla').with( - :ensure => 'present', - :name => 'python3-sahara-plugin-vanilla', - :tag => ['openstack', 'sahara-package'], - ) - end - end - end - - on_supported_os({ - :supported_os => OSDefaults.get_supported_os - }).each do |os,facts| - context "on #{os}" do - let (:facts) do - facts.merge!(OSDefaults.get_facts()) - end - - it_configures 'sahara::plugin' - end - end - -end diff --git a/spec/shared_examples.rb b/spec/shared_examples.rb deleted file mode 100644 index fec0eacc..00000000 --- a/spec/shared_examples.rb +++ /dev/null @@ -1,5 +0,0 @@ -shared_examples_for "a Puppet::Error" do |description| - it "with message matching #{description.inspect}" do - expect { is_expected.to have_class_count(1) }.to raise_error(Puppet::Error, description) - end -end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb deleted file mode 100644 index 653e84d8..00000000 --- a/spec/spec_helper.rb +++ /dev/null @@ -1,17 +0,0 @@ -# Load libraries here to simulate how they live together in a real puppet run (for provider unit tests) -$LOAD_PATH.push(File.join(File.dirname(__FILE__), 'fixtures', 'modules', 'inifile', 'lib')) -$LOAD_PATH.push(File.join(File.dirname(__FILE__), 'fixtures', 'modules', 'openstacklib', 'lib')) -require 'puppetlabs_spec_helper/module_spec_helper' -require 'shared_examples' -require 'puppet-openstack_spec_helper/facts' - -fixture_path = File.expand_path(File.join(File.dirname(__FILE__), 'fixtures')) - -RSpec.configure do |c| - c.alias_it_should_behave_like_to :it_configures, 'configures' - c.alias_it_should_behave_like_to :it_raises, 'raises' - - c.module_path = File.join(fixture_path, 'modules') -end - -at_exit { RSpec::Puppet::Coverage.report! } diff --git a/spec/spec_helper_acceptance.rb b/spec/spec_helper_acceptance.rb deleted file mode 100644 index d51dfdbf..00000000 --- a/spec/spec_helper_acceptance.rb +++ /dev/null @@ -1 +0,0 @@ -require 'puppet-openstack_spec_helper/litmus_spec_helper' diff --git a/spec/unit/provider/sahara_api_paste_ini/ini_setting_spec.rb b/spec/unit/provider/sahara_api_paste_ini/ini_setting_spec.rb deleted file mode 100644 index 694bf2ef..00000000 --- a/spec/unit/provider/sahara_api_paste_ini/ini_setting_spec.rb +++ /dev/null @@ -1,13 +0,0 @@ -require 'spec_helper' -provider_class = Puppet::Type.type(:sahara_api_paste_ini).provider(:ini_setting) -describe provider_class do - - it 'should allow setting to be set explicitly' do - resource = Puppet::Type::Sahara_api_paste_ini.new( - {:name => 'dude/foo', :value => 'bar'} - ) - provider = provider_class.new(resource) - expect(provider.section).to eq('dude') - expect(provider.setting).to eq('foo') - end -end diff --git a/spec/unit/provider/sahara_api_uwsgi_config/ini_setting_spec.rb b/spec/unit/provider/sahara_api_uwsgi_config/ini_setting_spec.rb deleted file mode 100644 index 650f5273..00000000 --- a/spec/unit/provider/sahara_api_uwsgi_config/ini_setting_spec.rb +++ /dev/null @@ -1,41 +0,0 @@ -require 'spec_helper' -provider_class = Puppet::Type.type(:sahara_api_uwsgi_config).provider(:ini_setting) -describe provider_class do - - it 'should default to the default setting when no other one is specified' do - resource = Puppet::Type::Sahara_api_uwsgi_config.new( - {:name => 'DEFAULT/foo', :value => 'bar'} - ) - provider = provider_class.new(resource) - expect(provider.section).to eq('DEFAULT') - expect(provider.setting).to eq('foo') - end - - it 'should allow setting to be set explicitly' do - resource = Puppet::Type::Sahara_api_uwsgi_config.new( - {:name => 'dude/foo', :value => 'bar'} - ) - provider = provider_class.new(resource) - expect(provider.section).to eq('dude') - expect(provider.setting).to eq('foo') - end - - it 'should ensure absent when is specified as a value' do - resource = Puppet::Type::Sahara_api_uwsgi_config.new( - {:name => 'dude/foo', :value => ''} - ) - provider = provider_class.new(resource) - provider.exists? - expect(resource[:ensure]).to eq :absent - end - - it 'should ensure absent when value matches ensure_absent_val' do - resource = Puppet::Type::Sahara_api_uwsgi_config.new( - {:name => 'dude/foo', :value => 'foo', :ensure_absent_val => 'foo' } - ) - provider = provider_class.new(resource) - provider.exists? - expect(resource[:ensure]).to eq :absent - end - -end diff --git a/spec/unit/provider/sahara_cluster_template/openstack_spec.rb b/spec/unit/provider/sahara_cluster_template/openstack_spec.rb deleted file mode 100644 index 60e497a6..00000000 --- a/spec/unit/provider/sahara_cluster_template/openstack_spec.rb +++ /dev/null @@ -1,98 +0,0 @@ -require 'spec_helper' -require 'puppet' -require 'puppet/provider/sahara_cluster_template/openstack' - -provider_class = Puppet::Type.type(:sahara_cluster_template).provider(:openstack) - -describe provider_class do - let(:attributes) do - { - :name => 'cluster_template_1', - :ensure => :present, - :node_groups => [ 'group1:1', 'group2:2' ], - } - end - - let(:resource) do - Puppet::Type::Sahara_cluster_template.new(attributes) - end - - let(:provider) do - resource.provider - end - - subject { provider } - - describe 'managing template' do - describe '#create' do - it 'creates a template' do - expect(subject.class).to receive(:request) - .with('dataprocessing cluster template', 'create', ['--name', 'cluster_template_1', '--node-groups', ['group1:1', 'group2:2'], '--autoconfig']) - provider.create - end - end - - describe '#destroy' do - it 'destroys a template' do - allow(subject).to receive(:id).and_return('19e4d640-e88f-4241-9475-0543c2bc412b') - expect(subject.class).to receive(:request) - .with('dataprocessing cluster template', 'delete', '19e4d640-e88f-4241-9475-0543c2bc412b') - provider.destroy - end - end - - describe '#instances' do - it 'finds templates' do - - hash = { - id: "33c85b61-e9b3-468a-ab06-ef60091c68b6", - name: "cluster_template_2", - plugin_name: "plugin_name_2", - plugin_version: "another_version", - node_groups: "group:2", - use_autoconfig: "False" - } - - expect(subject.class).to receive(:request) - .with('dataprocessing cluster template', 'show', '33c85b61-e9b3-468a-ab06-ef60091c68b6') - .and_return(hash) - - hash = { - id: "19e4d640-e88f-4241-9475-0543c2bc412b", - name: "cluster_template_1", - node_groups: "group1:1, group2:2", - plugin_name: "plugin_name", - plugin_version: "some_version", - use_autoconfig: "False" - } - - expect(subject.class).to receive(:request) - .with('dataprocessing cluster template', 'show', '19e4d640-e88f-4241-9475-0543c2bc412b') - .and_return(hash) - - list = [ - { - name: "cluster_template_1", - id: "19e4d640-e88f-4241-9475-0543c2bc412b", - plugin_name: "plugin_name", - plugin_version: "some_version", - }, - { - name: "cluster_template_2", - id: "33c85b61-e9b3-468a-ab06-ef60091c68b6", - plugin_name: "plugin_name_2", - plugin_version: "another_version", - } - ] - - expect(subject.class).to receive(:request) - .with('dataprocessing cluster template', 'list') - .and_return(list) - instances = provider_class.instances - expect(instances.count).to eq(2) - expect(instances[0].name).to eq('cluster_template_1') - expect(instances[1].name).to eq('cluster_template_2') - end - end - end -end diff --git a/spec/unit/provider/sahara_config/openstackconfig_spec.rb b/spec/unit/provider/sahara_config/openstackconfig_spec.rb deleted file mode 100644 index 225af70b..00000000 --- a/spec/unit/provider/sahara_config/openstackconfig_spec.rb +++ /dev/null @@ -1,41 +0,0 @@ -require 'spec_helper' -provider_class = Puppet::Type.type(:sahara_config).provider(:openstackconfig) -describe provider_class do - - it 'should default to the default setting when no other one is specified' do - resource = Puppet::Type::Sahara_config.new( - {:name => 'DEFAULT/foo', :value => 'bar'} - ) - provider = provider_class.new(resource) - expect(provider.section).to eq('DEFAULT') - expect(provider.setting).to eq('foo') - end - - it 'should allow setting to be set explicitly' do - resource = Puppet::Type::Sahara_config.new( - {:name => 'dude/whoa', :value => 'bar'} - ) - provider = provider_class.new(resource) - expect(provider.section).to eq('dude') - expect(provider.setting).to eq('whoa') - end - - it 'should ensure absent when is specified as a value' do - resource = Puppet::Type::Sahara_config.new( - {:name => 'dude/foo', :value => ''} - ) - provider = provider_class.new(resource) - provider.exists? - expect(resource[:ensure]).to eq :absent - end - - it 'should ensure absent when value matches ensure_absent_val' do - resource = Puppet::Type::Sahara_config.new( - {:name => 'dude/foo', :value => 'foo', :ensure_absent_val => 'foo' } - ) - provider = provider_class.new(resource) - provider.exists? - expect(resource[:ensure]).to eq :absent - end - -end diff --git a/spec/unit/provider/sahara_node_group_template/openstack_spec.rb b/spec/unit/provider/sahara_node_group_template/openstack_spec.rb deleted file mode 100644 index 5976a2e5..00000000 --- a/spec/unit/provider/sahara_node_group_template/openstack_spec.rb +++ /dev/null @@ -1,118 +0,0 @@ -require 'puppet' -require 'puppet/provider/sahara_node_group_template/openstack' - -provider_class = Puppet::Type.type(:sahara_node_group_template).provider(:openstack) - -describe provider_class do - let(:attributes) do - { - :name => 'node_group_template_1', - :ensure => :present, - :plugin => 'plugin_name', - :plugin_version => 'some_version', - :node_processes => [ 'process1', 'process2' ], - :flavor => 'small' - } - end - - let(:resource) do - Puppet::Type::Sahara_node_group_template.new(attributes) - end - - let(:provider) do - resource.provider - end - - subject { provider } - - describe 'managing template' do - describe '#create' do - it 'creates a template' do - expect(subject.class).to receive(:request) - .with('dataprocessing node group template', 'create', ['--name', 'node_group_template_1', '--plugin', 'plugin_name', '--plugin-version', 'some_version', '--auto-security-group', '--flavor', 'small', '--processes', ['process1', 'process2']]) - provider.create - end - end - - describe '#destroy' do - it 'destroys a template' do - allow(subject).to receive(:id).and_return('19e4d640-e88f-4241-9475-0543c2bc412b') - expect(subject.class).to receive(:request) - .with('dataprocessing node group template', 'delete', '19e4d640-e88f-4241-9475-0543c2bc412b') - provider.destroy - end - end - - describe '#instances' do - it 'finds templates' do - - hash = { - flavor_id: "small", - id: "33c85b61-e9b3-468a-ab06-ef60091c68b6", - name: "node_group_template_2", - node_processes: "process1, process2", - plugin_name: "plugin_name_2", - plugin_version: "another_version", - description: "Some description.", - security_groups: "None", - auto_security_group: "True", - } - - expect(subject.class).to receive(:request) - .with('dataprocessing node group template', 'show', '33c85b61-e9b3-468a-ab06-ef60091c68b6') - .and_return(hash) - - hash = { - flavor_id: "small", - id: "19e4d640-e88f-4241-9475-0543c2bc412b", - name: "node_group_template_1", - node_processes: "process1, process2", - plugin_name: "plugin_name", - plugin_version: "some_version", - description: "Some description.", - security_groups: "None", - auto_security_group: "True", - } - - expect(subject.class).to receive(:request) - .with('dataprocessing node group template', 'show', '19e4d640-e88f-4241-9475-0543c2bc412b') - .and_return(hash) - - list = [ - { - name: "node_group_template_1", - id: "19e4d640-e88f-4241-9475-0543c2bc412b", - plugin_name: "plugin_name", - plugin_version: "some_version", - }, - { - name: "node_group_template_2", - id: "33c85b61-e9b3-468a-ab06-ef60091c68b6", - plugin_name: "plugin_name_2", - plugin_version: "another_version", - } - ] - - expect(subject.class).to receive(:request) - .with('dataprocessing node group template', 'list') - .and_return(list) - instances = provider_class.instances - expect(instances.count).to eq(2) - expect(instances[0].name).to eq('node_group_template_1') - expect(instances[1].name).to eq('node_group_template_2') - end - end - - describe '#string2list' do - it 'should return an empty array when input None' do - s = "None" - expect(provider_class.string2list(s)).to eq([]) - end - - it 'should return non-empty array when have some input' do - s = "[u'default']" - expect(provider_class.string2list(s)).to eq(['default']) - end - end - end -end diff --git a/spec/unit/type/sahara_api_paste_ini_spec.rb b/spec/unit/type/sahara_api_paste_ini_spec.rb deleted file mode 100644 index 281d64c6..00000000 --- a/spec/unit/type/sahara_api_paste_ini_spec.rb +++ /dev/null @@ -1,24 +0,0 @@ -require 'puppet' -require 'puppet/type/sahara_api_paste_ini' - -describe 'Puppet::Type.type(:sahara_api_paste_ini)' do - before :each do - @sahara_api_paste_ini = Puppet::Type.type(:sahara_api_paste_ini).new(:name => 'DEFAULT/foo', :value => 'bar') - end - - it 'should accept a valid value' do - @sahara_api_paste_ini[:value] = 'bar' - expect(@sahara_api_paste_ini[:value]).to eq('bar') - end - - it 'should autorequire the package that install the file' do - catalog = Puppet::Resource::Catalog.new - anchor = Puppet::Type.type(:anchor).new(:name => 'sahara::install::end') - catalog.add_resource anchor, @sahara_api_paste_ini - dependency = @sahara_api_paste_ini.autorequire - expect(dependency.size).to eq(1) - expect(dependency[0].target).to eq(@sahara_api_paste_ini) - expect(dependency[0].source).to eq(anchor) - end - -end diff --git a/spec/unit/type/sahara_api_uwsgi_config_spec.rb b/spec/unit/type/sahara_api_uwsgi_config_spec.rb deleted file mode 100644 index 48fcd5f1..00000000 --- a/spec/unit/type/sahara_api_uwsgi_config_spec.rb +++ /dev/null @@ -1,64 +0,0 @@ -require 'puppet' -require 'puppet/type/sahara_api_uwsgi_config' - -describe 'Puppet::Type.type(:sahara_api_uwsgi_config)' do - before :each do - @sahara_api_uwsgi_config = Puppet::Type.type(:sahara_api_uwsgi_config).new(:name => 'DEFAULT/foo', :value => 'bar') - end - - it 'should require a name' do - expect { - Puppet::Type.type(:sahara_api_uwsgi_config).new({}) - }.to raise_error(Puppet::Error, 'Title or name must be provided') - end - - it 'should not expect a name with whitespace' do - expect { - Puppet::Type.type(:sahara_api_uwsgi_config).new(:name => 'f oo') - }.to raise_error(Puppet::Error, /Parameter name failed/) - end - - it 'should fail when there is no section' do - expect { - Puppet::Type.type(:sahara_api_uwsgi_config).new(:name => 'foo') - }.to raise_error(Puppet::Error, /Parameter name failed/) - end - - it 'should not require a value when ensure is absent' do - Puppet::Type.type(:sahara_api_uwsgi_config).new(:name => 'DEFAULT/foo', :ensure => :absent) - end - - it 'should accept a valid value' do - @sahara_api_uwsgi_config[:value] = 'bar' - expect(@sahara_api_uwsgi_config[:value]).to eq('bar') - end - - it 'should accept a value with whitespace' do - @sahara_api_uwsgi_config[:value] = 'b ar' - expect(@sahara_api_uwsgi_config[:value]).to eq('b ar') - end - - it 'should accept valid ensure values' do - @sahara_api_uwsgi_config[:ensure] = :present - expect(@sahara_api_uwsgi_config[:ensure]).to eq(:present) - @sahara_api_uwsgi_config[:ensure] = :absent - expect(@sahara_api_uwsgi_config[:ensure]).to eq(:absent) - end - - it 'should not accept invalid ensure values' do - expect { - @sahara_api_uwsgi_config[:ensure] = :latest - }.to raise_error(Puppet::Error, /Invalid value/) - end - - it 'should autorequire the package that install the file' do - catalog = Puppet::Resource::Catalog.new - anchor = Puppet::Type.type(:anchor).new(:name => 'sahara::install::end') - catalog.add_resource anchor, @sahara_api_uwsgi_config - dependency = @sahara_api_uwsgi_config.autorequire - expect(dependency.size).to eq(1) - expect(dependency[0].target).to eq(@sahara_api_uwsgi_config) - expect(dependency[0].source).to eq(anchor) - end - -end diff --git a/spec/unit/type/sahara_cluster_template_spec.rb b/spec/unit/type/sahara_cluster_template_spec.rb deleted file mode 100644 index e9d5f932..00000000 --- a/spec/unit/type/sahara_cluster_template_spec.rb +++ /dev/null @@ -1,68 +0,0 @@ -require 'puppet' -require 'puppet/type/sahara_cluster_template' - -describe Puppet::Type.type(:sahara_cluster_template) do - - before :each do - Puppet::Type.rmtype(:sahara_cluster_template) - end - - it 'should reject empty node_groups' do - incorrect_input = { - :name => 'test_type', - :node_groups => [ ] - } - expect { Puppet::Type.type(:sahara_cluster_template).new(incorrect_input) }.to raise_error(Puppet::ResourceError, /You should specify at least one node group/) - end - - it 'should reject wrong node group format' do - incorrect_input = { - :name => 'test_type', - :node_groups => [ 'nodegroup_2' ] - } - expect { Puppet::Type.type(:sahara_cluster_template).new(incorrect_input) }.to raise_error(Puppet::ResourceError, /You should specify node_groups in format/) - end - - it 'should reject wrong node group count' do - incorrect_input = { - :name => 'test_type', - :node_groups => [ 'nodegroup_2:sdf' ] - } - expect { Puppet::Type.type(:sahara_cluster_template).new(incorrect_input) }.to raise_error(Puppet::ResourceError, /Node group count should be an integer/) - end - - it 'should autorequire sahara-api service' do - catalog = Puppet::Resource::Catalog.new - anchor = Puppet::Type.type(:anchor).new(:name => 'sahara::service::end') - correct_input = { - :name => 'test_type', - :node_groups => [ 'nodegroup_1:1', 'nodegroup_2:2' ] - } - sahara_cluster_template = Puppet::Type.type(:sahara_cluster_template).new(correct_input) - catalog.add_resource anchor, sahara_cluster_template - dependency = sahara_cluster_template.autorequire - expect(dependency.size).to eq(1) - expect(dependency[0].target).to eq(sahara_cluster_template) - expect(dependency[0].source).to eq(anchor) - end - - it 'should autorequire sahara_node_group_template' do - catalog = Puppet::Resource::Catalog.new - sahara_node_group_template = Puppet::Type.type(:sahara_node_group_template).new({ - :name => 'test_type', - :plugin => 'plugin', - :plugin_version => 'version', - :flavor => 'flavor', - :node_processes => [ 'process1', 'process2' ] - }) - sahara_cluster_template = Puppet::Type.type(:sahara_cluster_template).new({ - :name => 'test_cluster_type', - :node_groups => [ 'test_type:1' ] - }) - catalog.add_resource sahara_node_group_template, sahara_cluster_template - dependency = sahara_cluster_template.autorequire - expect(dependency.size).to eq(1) - expect(dependency[0].target).to eq(sahara_cluster_template) - expect(dependency[0].source).to eq(sahara_node_group_template) - end -end diff --git a/spec/unit/type/sahara_config_spec.rb b/spec/unit/type/sahara_config_spec.rb deleted file mode 100644 index e36cded0..00000000 --- a/spec/unit/type/sahara_config_spec.rb +++ /dev/null @@ -1,63 +0,0 @@ -require 'puppet' -require 'puppet/type/sahara_config' - -describe 'Puppet::Type.type(:sahara_config)' do - before :each do - @sahara_config = Puppet::Type.type(:sahara_config).new(:name => 'DEFAULT/foo', :value => 'bar') - end - - it 'should require a name' do - expect { - Puppet::Type.type(:sahara_config).new({}) - }.to raise_error(Puppet::Error, 'Title or name must be provided') - end - - it 'should not expect a name with whitespace' do - expect { - Puppet::Type.type(:sahara_config).new(:name => 'f oo') - }.to raise_error(Puppet::Error, /Parameter name failed/) - end - - it 'should fail when there is no section' do - expect { - Puppet::Type.type(:sahara_config).new(:name => 'foo') - }.to raise_error(Puppet::Error, /Parameter name failed/) - end - - it 'should not require a value when ensure is absent' do - Puppet::Type.type(:sahara_config).new(:name => 'DEFAULT/foo', :ensure => :absent) - end - - it 'should accept a valid value' do - @sahara_config[:value] = 'bar' - expect(@sahara_config[:value]).to eq(['bar']) - end - - it 'should accept a value with whitespace' do - @sahara_config[:value] = 'b ar' - expect(@sahara_config[:value]).to eq(['b ar']) - end - - it 'should accept valid ensure values' do - @sahara_config[:ensure] = :present - expect(@sahara_config[:ensure]).to eq(:present) - @sahara_config[:ensure] = :absent - expect(@sahara_config[:ensure]).to eq(:absent) - end - - it 'should not accept invalid ensure values' do - expect { - @sahara_config[:ensure] = :latest - }.to raise_error(Puppet::Error, /Invalid value/) - end - - it 'should autorequire the package that install the file' do - catalog = Puppet::Resource::Catalog.new - anchor = Puppet::Type.type(:anchor).new(:name => 'sahara::install::end') - catalog.add_resource anchor, @sahara_config - dependency = @sahara_config.autorequire - expect(dependency.size).to eq(1) - expect(dependency[0].target).to eq(@sahara_config) - expect(dependency[0].source).to eq(anchor) - end -end diff --git a/spec/unit/type/sahara_node_group_template_spec.rb b/spec/unit/type/sahara_node_group_template_spec.rb deleted file mode 100644 index 0033a0f5..00000000 --- a/spec/unit/type/sahara_node_group_template_spec.rb +++ /dev/null @@ -1,38 +0,0 @@ -require 'puppet' -require 'puppet/type/sahara_node_group_template' - -describe Puppet::Type.type(:sahara_node_group_template) do - - before :each do - Puppet::Type.rmtype(:sahara_node_group_template) - end - - it 'should reject empty node_processes' do - incorrect_input = { - :name => 'test_type', - :plugin => 'plugin', - :plugin_version => 'version', - :flavor => 'flavor', - :node_processes => [] - } - expect { Puppet::Type.type(:sahara_node_group_template).new(incorrect_input) }.to raise_error(Puppet::ResourceError, /You should specify at least one node process/) - end - - it 'should autorequire cinder-api service' do - catalog = Puppet::Resource::Catalog.new - anchor = Puppet::Type.type(:anchor).new(:name => 'sahara::service::end') - correct_input = { - :name => 'test_type', - :plugin => 'plugin', - :plugin_version => 'version', - :flavor => 'flavor', - :node_processes => [ 'process1', 'process2' ] - } - sahara_node_group_template = Puppet::Type.type(:sahara_node_group_template).new(correct_input) - catalog.add_resource anchor, sahara_node_group_template - dependency = sahara_node_group_template.autorequire - expect(dependency.size).to eq(1) - expect(dependency[0].target).to eq(sahara_node_group_template) - expect(dependency[0].source).to eq(anchor) - end -end diff --git a/tox.ini b/tox.ini deleted file mode 100644 index 5bf76d23..00000000 --- a/tox.ini +++ /dev/null @@ -1,13 +0,0 @@ -[tox] -minversion = 3.1 -skipsdist = True -envlist = releasenotes -ignore_basepython_conflict = True - -[testenv] -basepython = python3 - -[testenv:releasenotes] -deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} - -r{toxinidir}/doc/requirements.txt -commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html