diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 3a77206..0000000 --- a/.gitignore +++ /dev/null @@ -1,69 +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' - -# Compiled source # -################### -*.com -*.class -*.dll -*.exe -*.o -*.so -*.pyc -build/ -dist/ -doc/build/ - -# Packages # -############ -# it's better to unpack these files and commit the raw source -# git has its own built in compression methods -*.7z -*.dmg -*.gz -*.iso -*.jar -*.rar -*.tar -*.zip - -# Logs and databases # -###################### -*.log -*.sql -*.sqlite -logs/* - -# OS generated files # -###################### -._* -.tox -*.egg-info -.eggs - -# Generated by pbr while building docs -###################################### -AUTHORS -ChangeLog - -# Files created by releasenotes build -releasenotes/build - -# Test temp files -tests/common -tests/*.retry - -# Vagrant artifacts -.vagrant - -# Git clones -openstack-ansible-ops -previous diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst deleted file mode 100644 index f55d981..0000000 --- a/CONTRIBUTING.rst +++ /dev/null @@ -1,19 +0,0 @@ -The source repository for this project can be found at: - - https://opendev.org/openstack/openstack-ansible-os_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/openstack-ansible - -For more specific information about contributing to this repository, see the -openstack-ansible contributor guide: - - https://docs.openstack.org/openstack-ansible/latest/contributor/contributing.html diff --git a/LICENSE b/LICENSE deleted file mode 100644 index e06d208..0000000 --- a/LICENSE +++ /dev/null @@ -1,202 +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. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright {yyyy} {name of copyright owner} - - 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. - diff --git a/README.rst b/README.rst index 2a54102..363d547 100644 --- a/README.rst +++ b/README.rst @@ -1,29 +1,10 @@ -======================== -Team and repository tags -======================== +This project is no longer maintained. -.. image:: https://governance.openstack.org/tc/badges/openstack-ansible-os_sahara.svg - :target: https://governance.openstack.org/tc/reference/tags/index.html +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". -.. Change things from this point on - -======================== -OpenStack-Ansible sahara -======================== - -This Ansible role installs and configures OpenStack sahara. - -Documentation for the project can be found at: - https://docs.openstack.org/openstack-ansible-os_sahara/latest/ - -Release notes for the project can be found at: - https://docs.openstack.org/releasenotes/openstack-ansible-os_sahara/ - -The project source code repository is located at: - https://opendev.org/openstack/openstack-ansible-os_sahara/ - -The project home is at: - https://launchpad.net/openstack-ansible - -The bugs is at: - https://bugs.launchpad.net/openstack-ansible +For any further questions, please email +openstack-discuss@lists.openstack.org with `[openstack-ansible]` in +topic or join #openstack-ansible on OFTC. diff --git a/Vagrantfile b/Vagrantfile deleted file mode 100644 index 2a83de4..0000000 --- a/Vagrantfile +++ /dev/null @@ -1,46 +0,0 @@ -# Note: -# This file is maintained in the openstack-ansible-tests repository. -# https://opendev.org/openstack/openstack-ansible-tests/src/Vagrantfile -# -# If you need to perform any change on it, you should modify the central file, -# then, an OpenStack CI job will propagate your changes to every OSA repository -# since every repo uses the same Vagrantfile - -# Verify whether required plugins are installed. -required_plugins = [ "vagrant-disksize" ] -required_plugins.each do |plugin| - if not Vagrant.has_plugin?(plugin) - raise "The vagrant plugin #{plugin} is required. Please run `vagrant plugin install #{plugin}`" - end -end - -Vagrant.configure(2) do |config| - config.vm.provider "virtualbox" do |v| - v.memory = 6144 - v.cpus = 2 - # https://github.com/hashicorp/vagrant/issues/9524 - v.customize ["modifyvm", :id, "--audio", "none"] - end - - config.vm.synced_folder ".", "/vagrant", type: "rsync" - - config.vm.provision "shell", - privileged: false, - inline: <<-SHELL - cd /vagrant - ./run_tests.sh - SHELL - - config.vm.define "centos8" do |centos8| - centos8.vm.box = "centos/8" - end - - config.vm.define "debian10" do |debian10| - debian10.vm.box = "debian/buster64" - end - - config.vm.define "ubuntu2004" do |focal| - focal.disksize.size = "40GB" - focal.vm.box = "ubuntu/focal64" - end -end diff --git a/bindep.txt b/bindep.txt deleted file mode 100644 index 3db7d13..0000000 --- a/bindep.txt +++ /dev/null @@ -1,47 +0,0 @@ -# This file facilitates OpenStack-CI package installation -# before the execution of any tests. -# -# See the following for details: -# - https://docs.openstack.org/infra/bindep/ -# - https://opendev.org/openstack-infra/bindep -# -# Even if the role does not make use of this facility, it -# is better to have this file empty, otherwise OpenStack-CI -# will fall back to installing its default packages which -# will potentially be detrimental to the tests executed. -# -# Note: -# This file is maintained in the openstack-ansible-tests repository. -# https://opendev.org/openstack/openstack-ansible-tests/src/bindep.txt -# If you need to remove or add extra dependencies, you should modify -# the central file instead and once your change is accepted then update -# this file as well. The purpose of this file is to ensure that Python and -# Ansible have all their necessary binary requirements on the test host before -# tox executes. Any binary requirements needed by services/roles should be -# installed by those roles in their applicable package install tasks, not through -# using this file. -# - -# The gcc compiler -gcc - -# Base requirements for Ubuntu -git-core [platform:dpkg] -libssl-dev [platform:dpkg] -libffi-dev [platform:dpkg] -python3 [platform:dpkg] -python3-apt [platform:dpkg] -python3-dev [platform:dpkg] - -# Base requirements for RPM distros -gcc-c++ [platform:rpm] -git [platform:rpm] -libffi-devel [platform:rpm] -openssl-devel [platform:rpm] -python3-dnf [platform:fedora] -python3-devel [platform:rpm] - -# For SELinux -libselinux-python3 [platform:redhat] -libsemanage-python3 [platform:redhat] -iptables [platform:redhat] diff --git a/defaults/main.yml b/defaults/main.yml deleted file mode 100644 index fb7a32a..0000000 --- a/defaults/main.yml +++ /dev/null @@ -1,316 +0,0 @@ ---- -# 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. - -## Verbosity Options -debug: False - -# python venv executable -sahara_venv_python_executable: "{{ openstack_venv_python_executable | default('python3') }}" - -# Set the host which will execute the shade modules -# for the service setup. The host must already have -# clouds.yaml properly configured. -sahara_service_setup_host: "{{ openstack_service_setup_host | default('localhost') }}" -sahara_service_setup_host_python_interpreter: >- - {{ - openstack_service_setup_host_python_interpreter | default( - (sahara_service_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_facts['python']['executable'])) - }} - -# Set the package install state for distribution packages -# Options are 'present' and 'latest' -sahara_package_state: "{{ package_state | default('latest') }}" - -sahara_git_repo: https://opendev.org/openstack/sahara -sahara_git_install_branch: master -sahara_upper_constraints_url: >- - {{ requirements_git_url | default('https://releases.openstack.org/constraints/upper/' ~ requirements_git_install_branch | default('master')) }} -sahara_git_constraints: - - "--constraint {{ sahara_upper_constraints_url }}" - -sahara_pip_install_args: "{{ pip_install_options | default('') }}" - -# Name of the virtual env to deploy into -sahara_venv_tag: "{{ venv_tag | default('untagged') }}" -sahara_bin: "/openstack/venvs/sahara-{{ sahara_venv_tag }}/bin" - -sahara_etc_dir: "{{ sahara_bin | dirname }}/etc/sahara" - -sahara_db_config: /etc/sahara/sahara.conf - -# Enable/Disable Ceilometer -sahara_ceilometer_enabled: "{{ (groups['ceilometer_all'] is defined) and (groups['ceilometer_all'] | length > 0) }}" - -sahara_profiler_enabled: False -sahara_fatal_deprecations: False - -## System info -sahara_system_user_name: sahara -sahara_system_group_name: sahara -sahara_system_shell: /bin/false -sahara_system_comment: sahara system user -sahara_system_user_home: "/var/lib/{{ sahara_system_user_name }}" - -sahara_engine_host: "{{ internal_lb_vip_address }}" - -## Oslo Messaging Info -# RPC -sahara_oslomsg_rpc_host_group: "{{ oslomsg_rpc_host_group | default('rabbitmq_all') }}" -sahara_oslomsg_rpc_setup_host: "{{ (sahara_oslomsg_rpc_host_group in groups) | ternary(groups[sahara_oslomsg_rpc_host_group][0], 'localhost') }}" -sahara_oslomsg_rpc_transport: "{{ oslomsg_rpc_transport | default('rabbit') }}" -sahara_oslomsg_rpc_servers: "{{ oslomsg_rpc_servers | default('127.0.0.1') }}" -sahara_oslomsg_rpc_port: "{{ oslomsg_rpc_port | default('5672') }}" -sahara_oslomsg_rpc_use_ssl: "{{ oslomsg_rpc_use_ssl | default(False) }}" -sahara_oslomsg_rpc_userid: sahara -# vhost name depends on value of oslomsg_rabbit_quorum_queues. In case quorum queues -# are not used - vhost name will be prefixed with leading `/`. -sahara_oslomsg_rpc_vhost: - - name: /sahara - state: "{{ sahara_oslomsg_rabbit_quorum_queues | ternary('absent', 'present') }}" - - name: sahara - state: "{{ sahara_oslomsg_rabbit_quorum_queues | ternary('present', 'absent') }}" -sahara_oslomsg_rpc_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}" -sahara_oslomsg_rpc_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}" - -# Notify -sahara_oslomsg_notify_host_group: "{{ oslomsg_notify_host_group | default('rabbitmq_all') }}" -sahara_oslomsg_notify_setup_host: "{{ (sahara_oslomsg_notify_host_group in groups) | ternary(groups[sahara_oslomsg_notify_host_group][0], 'localhost') }}" -sahara_oslomsg_notify_transport: "{{ oslomsg_notify_transport | default('rabbit') }}" -sahara_oslomsg_notify_servers: "{{ oslomsg_notify_servers | default('127.0.0.1') }}" -sahara_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}" -sahara_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}" -sahara_oslomsg_notify_userid: "{{ sahara_oslomsg_rpc_userid }}" -sahara_oslomsg_notify_password: "{{ sahara_oslomsg_rpc_password }}" -sahara_oslomsg_notify_vhost: "{{ sahara_oslomsg_rpc_vhost }}" -sahara_oslomsg_notify_ssl_version: "{{ oslomsg_notify_ssl_version | default('TLSv1_2') }}" -sahara_oslomsg_notify_ssl_ca_file: "{{ oslomsg_notify_ssl_ca_file | default('') }}" - -## RabbitMQ integration -sahara_oslomsg_rabbit_quorum_queues: "{{ oslomsg_rabbit_quorum_queues | default(True) }}" -sahara_oslomsg_rabbit_quorum_delivery_limit: "{{ oslomsg_rabbit_quorum_delivery_limit | default(0) }}" -sahara_oslomsg_rabbit_quorum_max_memory_bytes: "{{ oslomsg_rabbit_quorum_max_memory_bytes | default(0) }}" - -## (Qdrouterd) info -# TODO(ansmith): Change structure when more backends will be supported -sahara_oslomsg_amqp1_enabled: "{{ sahara_oslomsg_rpc_transport == 'amqp' }}" - -## Database info -sahara_db_setup_host: "{{ openstack_db_setup_host | default('localhost') }}" -sahara_db_setup_python_interpreter: >- - {{ - openstack_db_setup_python_interpreter | default( - (sahara_db_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_facts['python']['executable'])) - }} -sahara_galera_address: "{{ galera_address | default('127.0.0.1') }}" -sahara_galera_database: sahara -sahara_galera_user: sahara -sahara_galera_use_ssl: "{{ galera_use_ssl | default(False) }}" -sahara_galera_ssl_ca_cert: "{{ galera_ssl_ca_cert | default('') }}" -sahara_galera_port: "{{ galera_port | default('3306') }}" -sahara_db_max_overflow: "{{ openstack_db_max_overflow | default('50') }}" -sahara_db_max_pool_size: "{{ openstack_db_max_pool_size | default('5') }}" -sahara_db_pool_timeout: "{{ openstack_db_pool_timeout | default('30') }}" -sahara_db_connection_recycle_time: "{{ openstack_db_connection_recycle_time | default('600') }}" - -sahara_api_bind_address: "{{ openstack_service_bind_address | default('0.0.0.0') }}" -sahara_api_service_port: 8386 - -## Service Type and Data -sahara_service_region: "{{ service_region | default('RegionOne') }}" -sahara_service_name: sahara -sahara_service_port: 8386 -sahara_service_proto: http -sahara_service_engine_proto: "{{ sahara_service_proto }}" -sahara_service_publicuri_proto: "{{ openstack_service_publicuri_proto | default(sahara_service_proto) }}" -sahara_service_adminuri_proto: "{{ openstack_service_adminuri_proto | default(sahara_service_proto) }}" -sahara_service_internaluri_proto: "{{ openstack_service_internaluri_proto | default(sahara_service_proto) }}" -sahara_service_type: data-processing -sahara_service_description: "Sahara Data Processing Service" -sahara_service_user_name: sahara -sahara_service_project_name: service -sahara_service_project_domain_id: default -sahara_service_user_domain_id: default -sahara_service_project_domain_name: Default -sahara_service_user_domain_name: Default -sahara_service_role_names: - - admin - - service -sahara_service_token_roles: - - service -sahara_service_token_roles_required: "{{ openstack_service_token_roles_required | default(True) }}" -sahara_service_publicuri: "{{ sahara_service_publicuri_proto }}://{{ external_lb_vip_address }}:{{ sahara_service_port }}" -sahara_service_internaluri: "{{ sahara_service_internaluri_proto }}://{{ internal_lb_vip_address }}:{{ sahara_service_port }}" -sahara_service_adminuri: "{{ sahara_service_adminuri_proto }}://{{ internal_lb_vip_address }}:{{ sahara_service_port }}" - -## Keystone authentication middleware -sahara_keystone_auth_plugin: password - -## Sahara config -sahara_use_floating_ips: False -sahara_use_namespaces: False -sahara_global_remote_threshold: 100 -sahara_cluster_remote_threshold: 70 -sahara_os_region_name: "{{ sahara_service_region }}" -sahara_default_ntp_server: "pool.ntp.org" - -sahara_use_domain_for_proxy_users: True -sahara_proxy_user_domain_name: sahara_proxy -sahara_proxy_user_role_names: member - -# Other plugins can be added to the system by simply extending the list `sahara_plugin_base`. -sahara_plugin_base: - - ambari - - cdh - - mapr - - spark - - storm - - vanilla - -sahara_plugin_loaded_base: "{% for plugin in sahara_plugin_base %}{{ plugin }}{% if not loop.last %},{% endif %}{% endfor %}" -sahara_plugin_pip_packages: - - sahara-plugin-ambari - - sahara-plugin-cdh - - sahara-plugin-mapr - - sahara-plugin-spark - - sahara-plugin-storm - - sahara-plugin-vanilla - -## Cap the maximum number of threads / workers when a user value is unspecified. -sahara_api_workers_max: 16 -sahara_api_workers: >- - {{ [[(ansible_facts['processor_vcpus'] // ansible_facts['processor_threads_per_core']) | default(1), 1] | max * 2, sahara_api_workers_max] | min }} - -sahara_task_executor: taskflow -sahara_digest_algorithm: sha256 -sahara_http_keepalive: True - -## Sahara policy -sahara_policy_file: policy.json -sahara_policy_default_rule: default -sahara_policy_dirs: policy.d - -## Policy vars -# Provide a list of access controls to update the default policy.json with. These changes will be merged -# with the access controls in the default policy.json. E.g. -# sahara_policy_overrides: -# "clusters:get_all": "" -# "clusters:create": "" - -sahara_service_in_ldap: "{{ service_ldap_backend_enabled | default(False) }}" - -# Common pip packages -sahara_pip_packages: - - cryptography - - keystonemiddleware - - osprofiler - - PyMySQL - - pymemcache - - python-memcached - - python-saharaclient - - python-keystoneclient - - "git+{{ sahara_git_repo }}@{{ sahara_git_install_branch }}#egg=sahara" - - systemd-python - - warlock - -# Memcached override -sahara_memcached_servers: "{{ memcached_servers }}" - -sahara_optional_oslomsg_amqp1_pip_packages: - - oslo.messaging[amqp1] - -# Specific pip packages provided by the user -sahara_user_pip_packages: [] - -sahara_engine_init_overrides: {} -sahara_api_init_overrides: {} - -## Service Names -sahara_services: - sahara-api: - group: sahara_api - service_name: sahara-api - init_config_overrides: "{{ sahara_api_init_overrides }}" - wsgi_app: True - wsgi_name: sahara-wsgi-api - uwsgi_overrides: "{{ sahara_api_uwsgi_ini_overrides }}" - uwsgi_port: "{{ sahara_api_service_port }}" - uwsgi_bind_address: "{{ sahara_api_bind_address }}" - uwsgi_tls: "{{ sahara_backend_ssl | ternary(sahara_uwsgi_tls, {}) }}" - sahara-engine: - group: sahara_engine - service_name: sahara-engine - init_config_overrides: "{{ sahara_engine_init_overrides }}" - execstarts: "{{ sahara_bin }}/sahara-engine" - -## Sahara uWSGI settings -sahara_wsgi_processes_max: 16 -sahara_wsgi_processes: "{{ [[ansible_facts['processor_vcpus'] | default(1), 1] | max * 2, sahara_wsgi_processes_max] | min }}" -sahara_wsgi_threads: 1 -sahara_uwsgi_tls: - crt: "{{ sahara_ssl_cert }}" - key: "{{ sahara_ssl_key }}" - -## Tunable overrides -sahara_api_paste_ini_overrides: {} -sahara_conf_overrides: {} -sahara_rootwrap_conf_overrides: {} -sahara_policy_overrides: {} -sahara_api_uwsgi_ini_overrides: {} - -### -### Backend TLS -### - -# Define if communication between haproxy and service backends should be -# encrypted with TLS. -sahara_backend_ssl: "{{ openstack_service_backend_ssl | default(False) }}" - -# Storage location for SSL certificate authority -sahara_pki_dir: "{{ openstack_pki_dir | default('/etc/openstack_deploy/pki') }}" - -# Delegated host for operating the certificate authority -sahara_pki_setup_host: "{{ openstack_pki_setup_host | default('localhost') }}" - -# sahara server certificate -sahara_pki_keys_path: "{{ sahara_pki_dir ~ '/certs/private/' }}" -sahara_pki_certs_path: "{{ sahara_pki_dir ~ '/certs/certs/' }}" -sahara_pki_intermediate_cert_name: "{{ openstack_pki_service_intermediate_cert_name | default('ExampleCorpIntermediate') }}" -sahara_pki_regen_cert: '' -sahara_pki_san: "{{ openstack_pki_san | default('DNS:' ~ ansible_facts['hostname'] ~ ',IP:' ~ management_address) }}" -sahara_pki_certificates: - - name: "sahara_{{ ansible_facts['hostname'] }}" - provider: ownca - cn: "{{ ansible_facts['hostname'] }}" - san: "{{ sahara_pki_san }}" - signed_by: "{{ sahara_pki_intermediate_cert_name }}" - -# sahara destination files for SSL certificates -sahara_ssl_cert: /etc/sahara/sahara.pem -sahara_ssl_key: /etc/sahara/sahara.key - -# Installation details for SSL certificates -sahara_pki_install_certificates: - - src: "{{ sahara_user_ssl_cert | default(sahara_pki_certs_path ~ 'sahara_' ~ ansible_facts['hostname'] ~ '-chain.crt') }}" - dest: "{{ sahara_ssl_cert }}" - owner: "{{ sahara_system_user_name }}" - group: "{{ sahara_system_user_name }}" - mode: "0644" - - src: "{{ sahara_user_ssl_key | default(sahara_pki_keys_path ~ 'sahara_' ~ ansible_facts['hostname'] ~ '.key.pem') }}" - dest: "{{ sahara_ssl_key }}" - owner: "{{ sahara_system_user_name }}" - group: "{{ sahara_system_user_name }}" - mode: "0600" - -# Define user-provided SSL certificates -# sahara_user_ssl_cert: -# sahara_user_ssl_key: diff --git a/doc/Makefile b/doc/Makefile deleted file mode 100644 index 8c7a4ec..0000000 --- a/doc/Makefile +++ /dev/null @@ -1,195 +0,0 @@ -# Makefile for Sphinx documentation -# - -# You can set these variables from the command line. -SPHINXOPTS = -SPHINXBUILD = sphinx-build -PAPER = -BUILDDIR = build - -# User-friendly check for sphinx-build -ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) -$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) -endif - -# Internal variables. -PAPEROPT_a4 = -D latex_paper_size=a4 -PAPEROPT_letter = -D latex_paper_size=letter -ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source -# the i18n builder cannot share the environment and doctrees with the others -I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source - -.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext - -help: - @echo "Please use \`make ' where is one of" - @echo " html to make standalone HTML files" - @echo " dirhtml to make HTML files named index.html in directories" - @echo " singlehtml to make a single large HTML file" - @echo " pickle to make pickle files" - @echo " json to make JSON files" - @echo " htmlhelp to make HTML files and a HTML help project" - @echo " qthelp to make HTML files and a qthelp project" - @echo " applehelp to make an Apple Help Book" - @echo " devhelp to make HTML files and a Devhelp project" - @echo " epub to make an epub" - @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" - @echo " latexpdf to make LaTeX files and run them through pdflatex" - @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx" - @echo " text to make text files" - @echo " man to make manual pages" - @echo " texinfo to make Texinfo files" - @echo " info to make Texinfo files and run them through makeinfo" - @echo " gettext to make PO message catalogs" - @echo " changes to make an overview of all changed/added/deprecated items" - @echo " xml to make Docutils-native XML files" - @echo " pseudoxml to make pseudoxml-XML files for display purposes" - @echo " linkcheck to check all external links for integrity" - @echo " doctest to run all doctests embedded in the documentation (if enabled)" - @echo " coverage to run coverage check of the documentation (if enabled)" - -clean: - rm -rf $(BUILDDIR)/* - -html: - $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." - -dirhtml: - $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml - @echo - @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." - -singlehtml: - $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml - @echo - @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." - -pickle: - $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle - @echo - @echo "Build finished; now you can process the pickle files." - -json: - $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json - @echo - @echo "Build finished; now you can process the JSON files." - -htmlhelp: - $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp - @echo - @echo "Build finished; now you can run HTML Help Workshop with the" \ - ".hhp project file in $(BUILDDIR)/htmlhelp." - -qthelp: - $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp - @echo - @echo "Build finished; now you can run "qcollectiongenerator" with the" \ - ".qhcp project file in $(BUILDDIR)/qthelp, like this:" - @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/openstack-ansible-os_sahara.qhcp" - @echo "To view the help file:" - @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/openstack-ansible-os_sahara.qhc" - -applehelp: - $(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp - @echo - @echo "Build finished. The help book is in $(BUILDDIR)/applehelp." - @echo "N.B. You won't be able to view it unless you put it in" \ - "~/Library/Documentation/Help or install it in your application" \ - "bundle." - -devhelp: - $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp - @echo - @echo "Build finished." - @echo "To view the help file:" - @echo "# mkdir -p $$HOME/.local/share/devhelp/openstack-ansible-os_sahara" - @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/openstack-ansible-os_sahara" - @echo "# devhelp" - -epub: - $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub - @echo - @echo "Build finished. The epub file is in $(BUILDDIR)/epub." - -latex: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo - @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." - @echo "Run \`make' in that directory to run these through (pdf)latex" \ - "(use \`make latexpdf' here to do that automatically)." - -latexpdf: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through pdflatex..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -latexpdfja: - $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex - @echo "Running LaTeX files through platex and dvipdfmx..." - $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja - @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." - -text: - $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text - @echo - @echo "Build finished. The text files are in $(BUILDDIR)/text." - -man: - $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man - @echo - @echo "Build finished. The manual pages are in $(BUILDDIR)/man." - -texinfo: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo - @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo." - @echo "Run \`make' in that directory to run these through makeinfo" \ - "(use \`make info' here to do that automatically)." - -info: - $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo - @echo "Running Texinfo files through makeinfo..." - make -C $(BUILDDIR)/texinfo info - @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo." - -gettext: - $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale - @echo - @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale." - -changes: - $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes - @echo - @echo "The overview file is in $(BUILDDIR)/changes." - -linkcheck: - $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck - @echo - @echo "Link check complete; look for any errors in the above output " \ - "or in $(BUILDDIR)/linkcheck/output.txt." - -doctest: - $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest - @echo "Testing of doctests in the sources finished, look at the " \ - "results in $(BUILDDIR)/doctest/output.txt." - -coverage: - $(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage - @echo "Testing of coverage in the sources finished, look at the " \ - "results in $(BUILDDIR)/coverage/python.txt." - -xml: - $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml - @echo - @echo "Build finished. The XML files are in $(BUILDDIR)/xml." - -pseudoxml: - $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml - @echo - @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." - -livehtml: html - sphinx-autobuild -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html diff --git a/doc/requirements.txt b/doc/requirements.txt deleted file mode 100644 index 07801f8..0000000 --- a/doc/requirements.txt +++ /dev/null @@ -1,16 +0,0 @@ -# The order of packages is significant, because pip processes them in the order -# of appearance. Changing the order has an impact on the overall integration -# process, which may cause wedges in the gate later. - -# WARNING: -# This file is maintained in the openstack-ansible-tests repository. -# https://opendev.org/openstack/openstack-ansible-tests/src/branch/master/sync/doc/requirements.txt -# If you need to modify this file, update the one in the -# openstack-ansible-tests repository. Once it merges there, the changes will -# automatically be proposed to all the repositories which use it. - -sphinx>=2.0.0,!=2.1.0 # BSD -sphinxcontrib-svg2pdfconverter>=0.1.0 # BSD -openstackdocstheme>=2.2.1 # Apache-2.0 -reno>=3.1.0 # Apache-2.0 -doc8>=0.6.0 # Apache-2.0 diff --git a/doc/source/_static/.gitkeep b/doc/source/_static/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/doc/source/conf.py b/doc/source/conf.py deleted file mode 100644 index 634e31c..0000000 --- a/doc/source/conf.py +++ /dev/null @@ -1,302 +0,0 @@ -#!/usr/bin/env python3 - -# 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. - -# This file is execfile()d with the current directory set to its -# containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -# 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', - 'sphinx.ext.autodoc', - 'sphinxcontrib.rsvgconverter', -] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix(es) of source filenames. -# You can specify multiple suffix as a list of string: -# source_suffix = ['.rst', '.md'] -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. -author = 'OpenStack-Ansible Contributors' -category = 'Miscellaneous' -copyright = '2014-2016, OpenStack-Ansible Contributors' -description = 'OpenStack-Ansible deploys OpenStack environments using Ansible.' -project = 'OpenStack-Ansible' -role_name = 'os_sahara' -target_name = 'openstack-ansible-' + role_name -title = 'OpenStack-Ansible Documentation: ' + role_name + ' role' - -# openstackdocstheme options -openstackdocs_repo_name = 'openstack/' + target_name -openstackdocs_pdf_link = True -openstackdocs_bug_project = project.lower() -openstackdocs_bug_tag = '' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -# -# This is also used if you do content translation via gettext catalogs. -# Usually you set "language" from the command line for these cases. -language = 'en' - -# 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 - -# If true, `todo` and `todoList` produce output, else they produce nothing. -todo_include_todos = 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 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 - -# Language to be used for generating the HTML full-text search index. -# Sphinx supports the following languages: -# 'da', 'de', 'en', 'es', 'fi', 'fr', 'h', 'it', 'ja' -# 'nl', 'no', 'pt', 'ro', 'r', 'sv', 'tr' -# html_search_language = 'en' - -# A dictionary with options for the search language support, empty by default. -# Now only 'ja' uses this config value -# html_search_options = {'type': 'default'} - -# The name of a javascript file (relative to the configuration directory) that -# implements a search results scorer. If empty, the default will be used. -# html_search_scorer = 'scorer.js' - -# Output file base name for HTML help builder. -htmlhelp_basename = target_name + '-docs' - -# -- Options for LaTeX output --------------------------------------------- - -latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - # 'papersize': 'letterpaper', - - # The font size ('10pt', '11pt' or '12pt'). - # 'pointsize': '10pt', - - # Additional stuff for the LaTeX preamble. - # 'preamble': '', - - # Latex figure (float) alignment - # 'figure_align': 'htbp', -} - -# 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 = [ - (master_doc, 'doc-' + target_name + '.tex', - title.replace("_", r"\_"), author, 'manual'), -] - -latex_use_xindy = False - -# 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 = [ - (master_doc, target_name, - title, [author], 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 = [ - (master_doc, target_name, - title, author, project, - description, category), -] - -# 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 PDF output -------------------------------------------------- - -pdf_documents = [ - (master_doc, target_name, - title, author) -] - -locale_dirs = ['locale/'] diff --git a/doc/source/configure-sahara.rst b/doc/source/configure-sahara.rst deleted file mode 100644 index e596536..0000000 --- a/doc/source/configure-sahara.rst +++ /dev/null @@ -1,181 +0,0 @@ -=========================================================== -Configuring the Data Processing (sahara) service (optional) -=========================================================== - -.. note:: - - This feature is experimental at this time and it has not been fully - production tested yet. - -Sahara provide users with a simple means to provision data processing -frameworks (such as Hadoop, Spark and Storm) on OpenStack. - -Sahara is configured using the ``/etc/openstack_deploy/conf.d/sahara.yml`` -file and the ``/etc/openstack_deploy/user_variables.yml`` file. - -Configuring target hosts -~~~~~~~~~~~~~~~~~~~~~~~~ - -Modify ``/etc/openstack_deploy/conf.d/sahara.yml`` by adding a list -containing the infrastructure target hosts in the sahara-infra_hosts -section: - -In ``sahara.yml``: - - .. code-block:: yaml - - sahara-infra_hosts: - infra01: - ip: INFRA01_IP_ADDRESS - infra02: - ip: INFRA02_IP_ADDRESS - infra03: - ip: INFRA03_IP_ADDRESS - -Replace ``*_IP_ADDRESS`` with the IP address of the br-mgmt container -management bridge on each target host. - -This hosts will be used to deploy the containers where sahara will be -installed. - -Configuring the cluster network -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Sahara is configured to use the neutron implementation of OpenStack -Networking. - -Floating IP management ----------------------- - -By default sahara is configured to use fixed IP addresses for access. This -is controlled by the ``sahara_use_floating_ips`` variable. By changing -``sahara_use_floating_ips`` to ``True`` the user may specify a floating IP -address pool for each node group directly. - - In ``user_variables.yml``: - - .. code-block:: yaml - - sahara_use_floating_ips: False - -.. warning:: - When using floating IP addresses for management **every** instance in - the cluster must have a floating IP address, otherwise sahara will not - be able to utilize that cluster. - -When using fixed IP addresses (``sahara_use_floating_ips=False``) the user -will be able to choose the fixed IP network for all instances in a cluster. -It is important to ensure that all instances running sahara have access to -the fixed IP networks. - - -Object Storage access using proxy users -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -By default sahara is configured to use proxy users and delegated trusts -for Object Storage access. In that way, users are not required to enter -credentials for their data sources and job binaries referenced in Object -Storage. To disable this functionality change the following variable to -``False``. - - In ``user_variables.yml``: - - .. code-block:: yaml - - sahara_use_domain_for_proxy_users: True - -Also, is it possible to change which roles the trust users will receive -in the proxy domain, by default it receives the ``member`` role. - - In ``user_variables.yml``: - - .. code-block:: yaml - - sahara_proxy_user_role_names: member - -.. warning:: - In the context of the proxy user, any roles that are required for - Object Storage access by the project owning the object store must - be delegated to the proxy user for authentication to be successful. - - -Configuring cluster instances NTP -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -By default sahara will enable the NTP service on all cluster instances if -the NTP package is included in the image. The default NTP server will be -``pool.ntp.org`` this can be overridden using the -``sahara_default_ntp_server`` variable. - - In ``user_variables.yml``: - - .. code-block:: yaml - - sahara_default_ntp_server: "pool.ntp.org" - - -Configuring plugins -~~~~~~~~~~~~~~~~~~~ - -The following plugins are installed and loaded by default: - - .. code-block:: yaml - - sahara_plugin_base: - - vanilla - - spark - - cdh - - ambari - -To add/remove plugins, just change the ``sahara_plugin_base`` variable -accordingly, in the ``user_variables.yml`` file. - - -Configuring notifications -~~~~~~~~~~~~~~~~~~~~~~~~~ - -Sahara can be configured to send notifications to the OpenStack Telemetry -module. By default, the variable is set to true if there are any Ceilometer -hosts in the environment. To change this, the following variable must be -set: - - In ``user_variables.yml``: - - .. code-block:: yaml - - sahara_ceilometer_enabled: True - - -Dashboard -~~~~~~~~~ - -To enable the Data Processing panel on horizon, the following variable -should be set: - - In ``user_variables.yml``: - - .. code-block:: yaml - - horizon_enable_sahara_ui: True - - -Setting up Sahara -~~~~~~~~~~~~~~~~~ - -Run the setup-hosts playbook, to create the sahara containers, and the -repo-build playbook to update the repository with the sahara packages. - - .. code-block:: console - - # cd /opt/openstack-ansible/playbooks - # openstack-ansible setup-hosts.yml - # openstack-ansible repo-build.yml - -Run the sahara and horizon playbooks to install sahara and enable the -Data Processing panel in horizon: - - .. code-block:: console - - # cd /opt/openstack-ansible/playbooks - # openstack-ansible os-sahara-install.yml - # openstack-ansible os-horizon-install.yml diff --git a/doc/source/index.rst b/doc/source/index.rst deleted file mode 100644 index 5d0a562..0000000 --- a/doc/source/index.rst +++ /dev/null @@ -1,50 +0,0 @@ -============================= -OpenStack-Ansible sahara role -============================= - -.. toctree:: - :maxdepth: 2 - - configure-sahara.rst - -This role installs the following Systemd services: - - * sahara-api - * sahara-engine - -To clone or view the source code for this repository, visit the role repository -for `os_sahara `_. - -Default variables -~~~~~~~~~~~~~~~~~ - -.. literalinclude:: ../../defaults/main.yml - :language: yaml - :start-after: under the License. - -Dependencies -~~~~~~~~~~~~ - -This role needs pip >= 7.1 installed on the target host. - -To use this role, define the following variables: - -.. code-block:: yaml - - sahara_galera_address - sahara_container_mysql_password - sahara_service_password - sahara_rabbitmq_password - -Example playbook -~~~~~~~~~~~~~~~~ - -.. literalinclude:: ../../examples/playbook.yml - :language: yaml - -Tags -~~~~ - -This role supports two tags: ``sahara-install`` and ``sahara-config``. -The ``sahara-install`` tag can be used to install and upgrade. The -``sahara-config`` tag can be used to manage configuration. diff --git a/examples/playbook.yml b/examples/playbook.yml deleted file mode 100644 index dbd84ad..0000000 --- a/examples/playbook.yml +++ /dev/null @@ -1,80 +0,0 @@ ---- -# 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. - -- name: Gather sahara facts - hosts: sahara_all - gather_facts: "{{ osa_gather_facts | default(True) }}" - tasks: - - name: Gather additional facts - include_tasks: "common-tasks/gather-hardware-facts.yml" - when: osa_gather_facts | default(True) - tags: - - always - -- name: Configure haproxy services - import_playbook: openstack.osa.haproxy_service_config - vars: - service_group: sahara_api - service_variable: "sahara_haproxy_services" - when: groups[service_group] | length > 0 - tags: - - haproxy-service-config - -- name: Install sahara server - hosts: sahara_all - gather_facts: "{{ osa_gather_facts | default(True) }}" - serial: "{{ sahara_serial | default(['1','100%']) }}" - user: root - environment: "{{ deployment_environment_variables | default({}) }}" - vars_files: - - "defaults/{{ install_method }}_install.yml" - tags: - - sahara - pre_tasks: - # In order to ensure that any container, software or - # config file changes which causes a container/service - # restart do not cause an unexpected outage, we drain - # the load balancer back end for this container. - - name: Disabling haproxy backends - include_tasks: common-tasks/haproxy-endpoint-manage.yml - vars: - haproxy_backend: sahara_api-back - haproxy_state: disabled - when: - - "'sahara_api' in group_names" - - "groups['sahara_api'] | length > 1" - - - name: Including container-setup tasks - include_role: - name: "openstack.osa.{{ container_tech | default('lxc') }}_container_setup" - when: not is_metal - - - name: Including unbound-clients tasks - include_tasks: common-tasks/unbound-clients.yml - when: - - hostvars['localhost']['resolvconf_enabled'] | bool - roles: - - role: "os_sahara" - - post_tasks: - # Now that container changes are done, we can set - # the load balancer back end for this container - # to available again. - - name: Enabling haproxy backends - include_tasks: common-tasks/haproxy-endpoint-manage.yml - vars: - haproxy_backend: sahara_api-back - haproxy_state: enabled - when: - - "'sahara_api' in group_names" - - "groups['sahara_api'] | length > 1" diff --git a/files/rootwrap.d/sahara.filters b/files/rootwrap.d/sahara.filters deleted file mode 100644 index 207b153..0000000 --- a/files/rootwrap.d/sahara.filters +++ /dev/null @@ -1,4 +0,0 @@ -[Filters] -ip: IpNetnsExecFilter, ip, root -nc: CommandFilter, nc, root -kill: CommandFilter, kill, root diff --git a/handlers/main.yml b/handlers/main.yml deleted file mode 100644 index 79a4a7b..0000000 --- a/handlers/main.yml +++ /dev/null @@ -1,24 +0,0 @@ ---- -# 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. - -- name: Restart sahara services - systemd: - name: "{{ item.service_name }}" - state: "restarted" - daemon_reload: yes - with_items: "{{ filtered_sahara_services }}" - when: inventory_hostname in groups[item.group] - listen: - - "venv changed" - - "systemd service changed" - - "cert installed" diff --git a/manual-test.rc b/manual-test.rc deleted file mode 100644 index 7016c45..0000000 --- a/manual-test.rc +++ /dev/null @@ -1,33 +0,0 @@ -export VIRTUAL_ENV=$(pwd) -export ANSIBLE_HOST_KEY_CHECKING=False -export ANSIBLE_SSH_CONTROL_PATH=/tmp/%%h-%%r - -# TODO (odyssey4me) These are only here as they are non-standard folder -# names for Ansible 1.9.x. We are using the standard folder names for -# Ansible v2.x. We can remove this when we move to Ansible 2.x. -export ANSIBLE_ACTION_PLUGINS=${HOME}/.ansible/plugins/action -export ANSIBLE_CALLBACK_PLUGINS=${HOME}/.ansible/plugins/callback -export ANSIBLE_FILTER_PLUGINS=${HOME}/.ansible/plugins/filter -export ANSIBLE_LOOKUP_PLUGINS=${HOME}/.ansible/plugins/lookup - -# This is required as the default is the current path or a path specified -# in ansible.cfg -export ANSIBLE_LIBRARY=${HOME}/.ansible/plugins/library - -# This is required as the default is '/etc/ansible/roles' or a path -# specified in ansible.cfg -export ANSIBLE_ROLES_PATH=${HOME}/.ansible/roles:$(pwd)/.. - -export ANSIBLE_SSH_ARGS="-o ControlMaster=no \ - -o UserKnownHostsFile=/dev/null \ - -o StrictHostKeyChecking=no \ - -o ServerAliveInterval=64 \ - -o ServerAliveCountMax=1024 \ - -o Compression=no \ - -o TCPKeepAlive=yes \ - -o VerifyHostKeyDNS=no \ - -o ForwardX11=no \ - -o ForwardAgent=yes" - -echo "Run manual functional tests by executing the following:" -echo "# ./.tox/functional/bin/ansible-playbook -i tests/inventory tests/test.yml" diff --git a/meta/main.yml b/meta/main.yml deleted file mode 100644 index 1048dd1..0000000 --- a/meta/main.yml +++ /dev/null @@ -1,30 +0,0 @@ ---- -galaxy_info: - author: flaviodsr - description: Installation and setup of sahara - company: LSD/UFCG - license: Apache2 - role_name: os_sahara - namespace: openstack - min_ansible_version: "2.10" - platforms: - - name: Debian - versions: - - bullseye - - name: Ubuntu - versions: - - focal - - jammy - - name: EL - versions: - - "9" - galaxy_tags: - - cloud - - python - - sahara - - development - - openstack -dependencies: - - role: apt_package_pinning - when: - - ansible_facts['pkg_mgr'] == 'apt' diff --git a/meta/openstack-ansible.yml b/meta/openstack-ansible.yml deleted file mode 100644 index ed8ed64..0000000 --- a/meta/openstack-ansible.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -# Copyright 2017, Rackspace US, Inc. -# -# 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. -# -# (c) 2017, Jean-Philippe Evrard - -maturity_info: - status: complete - created_during: newton diff --git a/releasenotes/notes/.placeholder b/releasenotes/notes/.placeholder deleted file mode 100644 index e69de29..0000000 diff --git a/releasenotes/notes/capping_sahara_api_workers-d95bdf63093ce893.yaml b/releasenotes/notes/capping_sahara_api_workers-d95bdf63093ce893.yaml deleted file mode 100644 index bfe8462..0000000 --- a/releasenotes/notes/capping_sahara_api_workers-d95bdf63093ce893.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -features: - - Capping the default value for the variable ``sahara_api_workers`` - to 16 when the user doesn't configure this variable. Default - value is half the number of vCPUs available on the machine with - a capping value of 16. diff --git a/releasenotes/notes/os_sahara-only-install-venv-8ead48687897ce0b.yaml b/releasenotes/notes/os_sahara-only-install-venv-8ead48687897ce0b.yaml deleted file mode 100644 index c002b78..0000000 --- a/releasenotes/notes/os_sahara-only-install-venv-8ead48687897ce0b.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -upgrade: - - Installation of sahara and its dependent pip packages will now only - occur within a Python virtual environment. The ``sahara_venv_bin``, - ``sahara_venv_enabled``, ``sahara_venv_etc_dir``, and - ``sahara_non_venv_etc_dir`` variables have been removed. diff --git a/releasenotes/notes/oslo-messaging-separate-backends-702d7b33fda7a9f5.yaml b/releasenotes/notes/oslo-messaging-separate-backends-702d7b33fda7a9f5.yaml deleted file mode 100644 index a27058c..0000000 --- a/releasenotes/notes/oslo-messaging-separate-backends-702d7b33fda7a9f5.yaml +++ /dev/null @@ -1,20 +0,0 @@ ---- -features: - - Support separate oslo.messaging services for RPC and Notifications - to enable operation of separate and different messaging backend - servers in sahara. -deprecations: - - | - The rabbitmq server parameters have been replaced by corresponding - oslo.messaging RPC and Notify parameters in order to abstract the - messaging service from the actual backend server deployment. - - sahara_oslomsg_rpc_servers replaces sahara_rabbitmq_servers - - sahara_oslomsg_rpc_port replaces sahara_rabbitmq_port - - sahara_oslomsg_rpc_use_ssl replaces sahara_rabbitmq_use_ssl - - sahara_oslomsg_rpc_userid replaces sahara_rabbitmq_userid - - sahara_oslomsg_rpc_vhost replaces sahara_rabbitmq_vhost - - sahara_oslomsg_notify_servers replaces sahara_rabbitmq_telemetry_servers - - sahara_oslomsg_notify_port replaces sahara_rabbitmq_telemetry_port - - sahara_oslomsg_notify_use_ssl replaces sahara_rabbitmq_telemetry_use_ssl - - sahara_oslomsg_notify_userid replaces sahara_rabbitmq_telemetry_userid - - sahara_oslomsg_notify_vhost replaces sahara_rabbitmq_telemetry_vhost diff --git a/releasenotes/notes/package-state-979c963fb18f7a25.yaml b/releasenotes/notes/package-state-979c963fb18f7a25.yaml deleted file mode 100644 index 9884e5e..0000000 --- a/releasenotes/notes/package-state-979c963fb18f7a25.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -features: - - The os_sahara role now supports the ability to configure whether - apt/yum tasks install the latest available package, or just ensure - that the package is present. The default action is to ensure that - the latest package is present. The action taken may be changed to - only ensure that the package is present by setting - ``sahara_package_state`` to ``present``. -upgrade: - - The os_sahara role always checks whether the latest package is - installed when executed. If a deployer wishes to change the check to - only validate the presence of the package, the option - ``sahara_package_state`` should be set to ``present``. diff --git a/releasenotes/notes/remove-requirements-git-59f58bcf4e54a569.yaml b/releasenotes/notes/remove-requirements-git-59f58bcf4e54a569.yaml deleted file mode 100644 index 891d310..0000000 --- a/releasenotes/notes/remove-requirements-git-59f58bcf4e54a569.yaml +++ /dev/null @@ -1,7 +0,0 @@ ---- -upgrade: - - The variables ``sahara_requirements_git_repo`` and - ``sahara_requirements_git_install_branch`` have been - removed in favour of using the URL/path to the - upper-constraints file using the - variable ``pip_install_upper_constraints`` instead. diff --git a/releasenotes/notes/remove_rpc_backend-89135235e3513394.yaml b/releasenotes/notes/remove_rpc_backend-89135235e3513394.yaml deleted file mode 100644 index 190ae13..0000000 --- a/releasenotes/notes/remove_rpc_backend-89135235e3513394.yaml +++ /dev/null @@ -1,5 +0,0 @@ ---- -deprecations: - - | - Remove ``sahara_rpc_backend`` option due to deprecation of - rpc_backend option in oslo.messaging. diff --git a/releasenotes/notes/remove_use_neutron-76135a385ef1345d.yaml b/releasenotes/notes/remove_use_neutron-76135a385ef1345d.yaml deleted file mode 100644 index 51f8289..0000000 --- a/releasenotes/notes/remove_use_neutron-76135a385ef1345d.yaml +++ /dev/null @@ -1,3 +0,0 @@ ---- -other: - - The use_neutron option was marked to be removed in sahara. diff --git a/releasenotes/notes/sahara-init-config-overrides-4c35b88618b0d0b4.yaml b/releasenotes/notes/sahara-init-config-overrides-4c35b88618b0d0b4.yaml deleted file mode 100644 index 8e63774..0000000 --- a/releasenotes/notes/sahara-init-config-overrides-4c35b88618b0d0b4.yaml +++ /dev/null @@ -1,10 +0,0 @@ ---- -features: - - New variables have been added to allow a deployer to customize - a sahara systemd unit file to their liking. - - The task dropping the sahara systemd unit files now uses the - ``config_template`` action plugin allowing deployers access to - customize the unit files as they see fit without having to - load extra options into the defaults and polute the generic - systemd unit file with jinja2 variables and conditionals. - diff --git a/releasenotes/notes/sahara-service-setup-host-18f57fbc1671adfc.yaml b/releasenotes/notes/sahara-service-setup-host-18f57fbc1671adfc.yaml deleted file mode 100644 index de9f132..0000000 --- a/releasenotes/notes/sahara-service-setup-host-18f57fbc1671adfc.yaml +++ /dev/null @@ -1,17 +0,0 @@ ---- -features: - - | - The service setup in keystone for sahara will now be executed - through delegation to the ``sahara_service_setup_host`` which, - by default, is ``localhost`` (the deploy host). Deployers can - opt to rather change this to the utility container by implementing - the following override in ``user_variables.yml``. - - .. code-block:: yaml - - sahara_service_setup_host: "{{ groups['utility_all'][0] }}" - -deprecations: - - | - The variable ``sahara_requires_pip_packages`` is no longer required - and has therefore been removed. diff --git a/releasenotes/notes/sahara_init_time_settings-5ed44feb1285b867.yaml b/releasenotes/notes/sahara_init_time_settings-5ed44feb1285b867.yaml deleted file mode 100644 index e1d56a4..0000000 --- a/releasenotes/notes/sahara_init_time_settings-5ed44feb1285b867.yaml +++ /dev/null @@ -1,23 +0,0 @@ ---- -features: - - For the ``os_sahara`` role, the systemd unit ``TimeoutSec`` value which - controls the time between sending a SIGTERM signal and a SIGKILL signal - when stopping or restarting the service has been reduced from 300 seconds - to 120 seconds. This provides 2 minutes for long-lived sessions to drain - while preventing new ones from starting before a restart or a stop. The - ``RestartSec`` value which controls the time between the service stop and - start when restarting has been reduced from 150 seconds to 2 seconds to - make the restart happen faster. These values can be adjusted by using the - ``sahara_*_init_config_overrides`` variables which use the - ``config_template`` task to change template defaults. -upgrade: - - For the ``os_sahara`` role, the systemd unit ``TimeoutSec`` value which - controls the time between sending a SIGTERM signal and a SIGKILL signal - when stopping or restarting the service has been reduced from 300 seconds - to 120 seconds. This provides 2 minutes for long-lived sessions to drain - while preventing new ones from starting before a restart or a stop. The - ``RestartSec`` value which controls the time between the service stop and - start when restarting has been reduced from 150 seconds to 2 seconds to - make the restart happen faster. These values can be adjusted by using the - ``sahara_*_init_config_overrides`` variables which use the - ``config_template`` task to change template defaults. diff --git a/releasenotes/notes/sahara_uwsgi-41e7e0a91a3f8c33.yaml b/releasenotes/notes/sahara_uwsgi-41e7e0a91a3f8c33.yaml deleted file mode 100644 index dbd914a..0000000 --- a/releasenotes/notes/sahara_uwsgi-41e7e0a91a3f8c33.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -features: - - The ``sahara-api`` service has moved to run as a - uWSGI application. You can set the max number of - WSGI processes, the number of processes, threads, - and buffer size utilizing the - ``sahara_wsgi_processes_max``, - ``sahara_wsgi_processes``, ``sahara_wsgi_threads``, - and ``sahara_wsgi_buffer_size``. - Additionally, you can override any settings in the - uWSGI ini configuration file using the - ``sahara_api_uwsgi_ini_overrides`` setting. - The uWSGI application will listen on the address - specified by ``sahara_uwsgi_bind_address`` which - defaults to ``0.0.0.0``. diff --git a/releasenotes/source/_static/.placeholder b/releasenotes/source/_static/.placeholder deleted file mode 100644 index e69de29..0000000 diff --git a/releasenotes/source/_templates/.placeholder b/releasenotes/source/_templates/.placeholder deleted file mode 100644 index e69de29..0000000 diff --git a/releasenotes/source/conf.py b/releasenotes/source/conf.py deleted file mode 100644 index 6d41c0d..0000000 --- a/releasenotes/source/conf.py +++ /dev/null @@ -1,276 +0,0 @@ -#!/usr/bin/env python3 - -# 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. - -# This file is execfile()d with the current directory set to its -# containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -# 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. -author = 'OpenStack-Ansible Contributors' -category = 'Miscellaneous' -copyright = '2014-2016, OpenStack-Ansible Contributors' -description = 'OpenStack-Ansible deploys OpenStack environments using Ansible.' -project = 'OpenStack-Ansible' -role_name = 'os_sahara' -target_name = 'openstack-ansible-' + role_name -title = 'OpenStack-Ansible Release Notes: ' + role_name + 'role' - -# Release notes do not need a version number in the title, they -# cover multiple releases. -# The full version, including alpha/beta/rc tags. -release = '' -# The short X.Y version. -version = '' - -# openstackdocstheme options -openstackdocs_repo_name = 'openstack/' + target_name -openstackdocs_bug_project = project.lower() -openstackdocs_bug_tag = '' - -# 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 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 = target_name + '-docs' - - -# -- Options for LaTeX output --------------------------------------------- - -latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - # 'papersize': 'letterpaper', - - # The font size ('10pt', '11pt' or '12pt'). - # 'pointsize': '10pt', - - # Additional stuff for the LaTeX preamble. - # 'preamble': '', -} - -# 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 = [ - (master_doc, target_name + '.tex', - title, author, '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 = [ - (master_doc, target_name, - title, [author], 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 = [ - (master_doc, target_name, - title, author, project, - description, category), -] - -# 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/'] diff --git a/releasenotes/source/index.rst b/releasenotes/source/index.rst deleted file mode 100644 index 373c6f3..0000000 --- a/releasenotes/source/index.rst +++ /dev/null @@ -1,17 +0,0 @@ -================================ - OpenStack-Ansible Release Notes -================================ - -.. toctree:: - :maxdepth: 1 - - unreleased - zed - ussuri - train - stein - rocky - queens - pike - ocata - newton diff --git a/releasenotes/source/newton.rst b/releasenotes/source/newton.rst deleted file mode 100644 index 97036ed..0000000 --- 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 ebe62f4..0000000 --- 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 e43bfc0..0000000 --- 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 36ac616..0000000 --- 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 40dd517..0000000 --- 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 efaceb6..0000000 --- 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 5839003..0000000 --- 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 cd22aab..0000000 --- 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 e21e50e..0000000 --- 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/zed.rst b/releasenotes/source/zed.rst deleted file mode 100644 index 6cc2b15..0000000 --- a/releasenotes/source/zed.rst +++ /dev/null @@ -1,6 +0,0 @@ -======================== -Zed Series Release Notes -======================== - -.. release-notes:: - :branch: unmaintained/zed diff --git a/run_tests.sh b/run_tests.sh deleted file mode 100755 index 35280c8..0000000 --- a/run_tests.sh +++ /dev/null @@ -1,88 +0,0 @@ -#!/usr/bin/env bash -# Copyright 2015, Rackspace US, Inc. -# -# 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. - -# PURPOSE: -# This script clones the openstack-ansible-tests repository to the -# tests/common folder in order to be able to re-use test components -# for role testing. This is intended to be the thinnest possible -# shim for test execution outside of OpenStack CI. - -# WARNING: -# This file is maintained in the openstack-ansible-tests repository. -# https://opendev.org/openstack/openstack-ansible-tests/src/run_tests.sh -# If you need to modify this file, update the one in the openstack-ansible-tests -# repository and then update this file as well. The purpose of this file is to -# prepare the host and then execute all the tox tests. -# - -## Shell Opts ---------------------------------------------------------------- -set -xeu - -## Vars ---------------------------------------------------------------------- - -WORKING_DIR="$(readlink -f $(dirname $0))" -OSA_PROJECT_NAME="$(sed -n 's|^project=openstack/\(.*\).git$|\1|p' $(pwd)/.gitreview)" - -COMMON_TESTS_PATH="${WORKING_DIR}/tests/common" -TESTING_HOME=${TESTING_HOME:-$HOME} -ZUUL_TESTS_CLONE_LOCATION="/home/zuul/src/opendev.org/openstack/openstack-ansible-tests" - -# Use .gitreview as the key to determine the appropriate -# branch to clone for tests. -TESTING_BRANCH=$(awk -F'=' '/defaultbranch/ {print $2}' "${WORKING_DIR}/.gitreview") -if [[ "${TESTING_BRANCH}" == "" ]]; then - TESTING_BRANCH="master" -fi - -## Main ---------------------------------------------------------------------- - -# Source distribution information -source /etc/os-release || source /usr/lib/os-release - -# Figure out the appropriate package install command -case ${ID,,} in - centos|rhel|fedora|rocky) pkg_mgr_cmd="dnf install -y" ;; - ubuntu|debian) pkg_mgr_cmd="apt-get install -y" ;; - *) echo "unsupported distribution: ${ID,,}"; exit 1 ;; -esac - -# Install git so that we can clone the tests repo if git is not available -which git &>/dev/null || eval sudo "${pkg_mgr_cmd}" git - -# Clone the tests repo for access to the common test script -if [[ ! -d "${COMMON_TESTS_PATH}" ]]; then - # The tests repo doesn't need a clone, we can just - # symlink it. - if [[ "${OSA_PROJECT_NAME}" == "openstack-ansible-tests" ]]; then - ln -s "${WORKING_DIR}" "${COMMON_TESTS_PATH}" - - # In zuul v3 any dependent repository is placed into - # /home/zuul/src/opendev.org, so we check to see - # if there is a tests checkout there already. If so, we - # symlink that and use it. - elif [[ -d "${ZUUL_TESTS_CLONE_LOCATION}" ]]; then - ln -s "${ZUUL_TESTS_CLONE_LOCATION}" "${COMMON_TESTS_PATH}" - - # Otherwise we're clearly not in zuul or using a previously setup - # repo in some way, so just clone it from upstream. - else - git clone -b "${TESTING_BRANCH}" \ - https://opendev.org/openstack/openstack-ansible-tests \ - "${COMMON_TESTS_PATH}" - fi -fi - -# Execute the common test script -source tests/common/run_tests_common.sh diff --git a/tasks/main.yml b/tasks/main.yml deleted file mode 100644 index fc6c3f6..0000000 --- a/tasks/main.yml +++ /dev/null @@ -1,194 +0,0 @@ ---- -# 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. - -- name: Gather variables for each operating system - include_vars: "{{ item }}" - with_first_found: - - "{{ ansible_facts['distribution'] | lower }}-{{ ansible_facts['distribution_version'] | lower }}.yml" - - "{{ ansible_facts['distribution'] | lower }}-{{ ansible_facts['distribution_major_version'] | lower }}.yml" - - "{{ ansible_facts['os_family'] | lower }}-{{ ansible_facts['distribution_major_version'] | lower }}.yml" - - "{{ ansible_facts['distribution'] | lower }}.yml" - - "{{ ansible_facts['os_family'] | lower }}-{{ ansible_facts['distribution_version'].split('.')[0] }}.yml" - - "{{ ansible_facts['os_family'] | lower }}.yml" - tags: - - always - -- name: Including osa.db_setup role - include_role: - name: openstack.osa.db_setup - apply: - tags: - - common-db - - sahara-config - when: - - _sahara_is_first_play_host - vars: - _oslodb_setup_host: "{{ sahara_db_setup_host }}" - _oslodb_ansible_python_interpreter: "{{ sahara_db_setup_python_interpreter }}" - _oslodb_setup_endpoint: "{{ sahara_galera_address }}" - _oslodb_setup_port: "{{ sahara_galera_port }}" - _oslodb_databases: - - name: "{{ sahara_galera_database }}" - users: - - username: "{{ sahara_galera_user }}" - password: "{{ sahara_container_mysql_password }}" - tags: - - always - -- name: Including osa.mq_setup role - include_role: - name: openstack.osa.mq_setup - apply: - tags: - - common-mq - - sahara-config - when: - - _sahara_is_first_play_host - vars: - _oslomsg_rpc_setup_host: "{{ sahara_oslomsg_rpc_setup_host }}" - _oslomsg_rpc_userid: "{{ sahara_oslomsg_rpc_userid }}" - _oslomsg_rpc_password: "{{ sahara_oslomsg_rpc_password }}" - _oslomsg_rpc_vhost: "{{ sahara_oslomsg_rpc_vhost }}" - _oslomsg_rpc_transport: "{{ sahara_oslomsg_rpc_transport }}" - _oslomsg_notify_setup_host: "{{ sahara_oslomsg_notify_setup_host }}" - _oslomsg_notify_userid: "{{ sahara_oslomsg_notify_userid }}" - _oslomsg_notify_password: "{{ sahara_oslomsg_notify_password }}" - _oslomsg_notify_vhost: "{{ sahara_oslomsg_notify_vhost }}" - _oslomsg_notify_transport: "{{ sahara_oslomsg_notify_transport }}" - tags: - - always - -- name: Importing sahara_pre_install tasks - import_tasks: sahara_pre_install.yml - tags: - - sahara-install - -- name: Create and install SSL certificates - include_role: - name: pki - tasks_from: main_certs.yml - apply: - tags: - - sahara-config - - pki - vars: - pki_setup_host: "{{ sahara_pki_setup_host }}" - pki_dir: "{{ sahara_pki_dir }}" - pki_create_certificates: "{{ sahara_user_ssl_cert is not defined and sahara_user_ssl_key is not defined }}" - pki_regen_cert: "{{ sahara_pki_regen_cert }}" - pki_certificates: "{{ sahara_pki_certificates }}" - pki_install_certificates: "{{ sahara_pki_install_certificates }}" - when: - - sahara_backend_ssl - tags: - - always - -- name: Install the python venv - import_role: - name: "python_venv_build" - vars: - venv_python_executable: "{{ sahara_venv_python_executable }}" - venv_build_constraints: "{{ sahara_git_constraints }}" - venv_install_destination_path: "{{ sahara_bin | dirname }}" - venv_install_distro_package_list: "{{ sahara_distro_packages }}" - venv_pip_install_args: "{{ sahara_pip_install_args }}" - venv_pip_packages: >- - {{ sahara_pip_packages | - union(sahara_user_pip_packages) | - union(sahara_plugin_pip_packages) | - union(((sahara_oslomsg_amqp1_enabled | bool) | ternary(sahara_optional_oslomsg_amqp1_pip_packages, []))) }} - venv_facts_when_changed: - - section: "sahara" - option: "venv_tag" - value: "{{ sahara_venv_tag }}" - tags: - - sahara-install - -- name: Importing sahara_post_install tasks - import_tasks: sahara_post_install.yml - tags: - - sahara-config - -- name: Import uwsgi role - import_role: - name: uwsgi - vars: - uwsgi_services: "{{ uwsgi_sahara_services }}" - uwsgi_install_method: "source" - tags: - - sahara-config - - uwsgi - -- name: Run the systemd service role - import_role: - name: systemd_service - vars: - systemd_user_name: "{{ sahara_system_user_name }}" - systemd_group_name: "{{ sahara_system_group_name }}" - systemd_tempd_prefix: openstack - systemd_slice_name: sahara - systemd_lock_path: /var/lock/sahara - systemd_service_cpu_accounting: true - systemd_service_block_io_accounting: true - systemd_service_memory_accounting: true - systemd_service_tasks_accounting: true - systemd_services: "{{ filtered_sahara_services }}" - tags: - - sahara-config - - systemd-service - -- name: Importing sahara_db_sync tasks - import_tasks: sahara_db_sync.yml - when: _sahara_is_first_play_host - tags: - - sahara-config - -- name: Including osa.service_setup role - include_role: - name: openstack.osa.service_setup - apply: - tags: - - common-service - - sahara-config - vars: - _service_adminuri_insecure: "{{ keystone_service_adminuri_insecure }}" - _service_in_ldap: "{{ sahara_service_in_ldap }}" - _service_setup_host: "{{ sahara_service_setup_host }}" - _service_setup_host_python_interpreter: "{{ sahara_service_setup_host_python_interpreter }}" - _service_project_name: "{{ sahara_service_project_name }}" - _service_region: "{{ sahara_service_region }}" - _domain_name: "{{ sahara_proxy_user_domain_name }}" - _service_users: - - name: "{{ sahara_service_user_name }}" - password: "{{ sahara_service_password }}" - role: "{{ sahara_service_role_names }}" - _service_endpoints: - - service: "{{ sahara_service_name }}" - interface: "public" - url: "{{ sahara_service_publicuri }}" - - service: "{{ sahara_service_name }}" - interface: "internal" - url: "{{ sahara_service_internaluri }}" - - service: "{{ sahara_service_name }}" - interface: "admin" - url: "{{ sahara_service_adminuri }}" - _service_catalog: - - name: "{{ sahara_service_name }}" - type: "{{ sahara_service_type }}" - description: "{{ sahara_service_description }}" - when: _sahara_is_first_play_host - tags: - - always - -- name: Flush handlers - meta: flush_handlers diff --git a/tasks/sahara_db_sync.yml b/tasks/sahara_db_sync.yml deleted file mode 100644 index 7be2c3e..0000000 --- a/tasks/sahara_db_sync.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# 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. - -- name: Perform a Sahara DB sync - command: "{{ sahara_bin }}/sahara-db-manage - --config-file {{ sahara_db_config }} upgrade head" - become: yes - become_user: "{{ sahara_system_user_name }}" - changed_when: false diff --git a/tasks/sahara_post_install.yml b/tasks/sahara_post_install.yml deleted file mode 100644 index 76863d4..0000000 --- a/tasks/sahara_post_install.yml +++ /dev/null @@ -1,74 +0,0 @@ ---- -# 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. - -- name: Drop Sahara Config(s) - openstack.config_template.config_template: - src: "{{ item.src }}" - dest: "{{ item.dest }}" - owner: "{{ sahara_system_user_name }}" - group: "{{ sahara_system_group_name }}" - mode: "0644" - config_overrides: "{{ item.config_overrides }}" - config_type: "{{ item.config_type }}" - with_items: - - src: "api-paste.ini.j2" - dest: "/etc/sahara/api-paste.ini" - config_overrides: "{{ sahara_api_paste_ini_overrides }}" - config_type: "ini" - - src: "sahara.conf.j2" - dest: "/etc/sahara/sahara.conf" - config_overrides: "{{ sahara_conf_overrides }}" - config_type: "ini" - - src: "rootwrap.conf.j2" - dest: "/etc/sahara/rootwrap.conf" - owner: "root" - group: "root" - config_overrides: "{{ sahara_rootwrap_conf_overrides }}" - config_type: "ini" - notify: - - Restart sahara services - - Restart uwsgi services - -- name: Implement policy.yaml if there are overrides configured - openstack.config_template.config_template: - content: "{{ sahara_policy_overrides }}" - dest: "/etc/sahara/policy.yaml" - owner: "{{ sahara_system_user_name }}" - group: "{{ sahara_system_group_name }}" - mode: "0644" - config_type: yaml - when: - - sahara_policy_overrides | length > 0 - tags: - - sahara-policy-override - -- name: Remove legacy policy.yaml file - file: - path: "/etc/sahara/policy.yaml" - state: absent - when: - - sahara_policy_overrides | length == 0 - tags: - - sahara-policy-override - -- name: Drop rootwrap filter(s) - copy: - src: "{{ item }}" - dest: "/etc/sahara/rootwrap.d/" - owner: "root" - group: "root" - mode: "0644" - with_fileglob: - - rootwrap.d/* - notify: - - Restart sahara services diff --git a/tasks/sahara_pre_install.yml b/tasks/sahara_pre_install.yml deleted file mode 100644 index d1fc845..0000000 --- a/tasks/sahara_pre_install.yml +++ /dev/null @@ -1,51 +0,0 @@ ---- -# 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. - -- name: Create the system group - group: - name: "{{ sahara_system_group_name }}" - state: "present" - system: "yes" - -- name: Create the sahara system user - user: - name: "{{ sahara_system_user_name }}" - group: "{{ sahara_system_group_name }}" - comment: "{{ sahara_system_comment }}" - shell: "{{ sahara_system_shell }}" - system: "yes" - createhome: "yes" - home: "{{ sahara_system_user_home }}" - -- name: Create sahara dir - file: - path: "{{ item.path }}" - state: directory - owner: "{{ item.owner | default(sahara_system_user_name) }}" - group: "{{ item.group | default(sahara_system_group_name) }}" - mode: "{{ item.mode | default('0755') }}" - with_items: - - { path: "/openstack/venvs", mode: "0755", owner: "root", group: "root" } - - { path: "/etc/sahara" } - - { path: "/etc/sahara/rootwrap.d", owner: "root", group: "root" } - - { path: "/etc/sudoers.d", mode: "0750", owner: "root", group: "root" } - - { path: "/var/cache/sahara" } - - { path: "{{ sahara_system_user_home }}" } - -- name: Drop sudoers file - template: - src: "sudoers.j2" - dest: "/etc/sudoers.d/{{ sahara_system_user_name }}_sudoers" - mode: "0440" - owner: "root" - group: "root" diff --git a/templates/api-paste.ini.j2 b/templates/api-paste.ini.j2 deleted file mode 100644 index b00a5ad..0000000 --- a/templates/api-paste.ini.j2 +++ /dev/null @@ -1,39 +0,0 @@ -[pipeline:sahara] -pipeline = cors http_proxy_to_wsgi request_id versions acl auth_validator sahara_api - -[composite:sahara_api] -use = egg:Paste#urlmap -/: sahara_apiv2 - -# this app is given as a reference for v1-only deployments -# [app:sahara_apiv11] -# paste.app_factory = sahara.api.middleware.sahara_middleware:Router.factory - -[app:sahara_apiv2] -paste.app_factory = sahara.api.middleware.sahara_middleware:RouterV2.factory - -[filter:cors] -paste.filter_factory = oslo_middleware.cors:filter_factory -oslo_config_project = sahara - -[filter:request_id] -paste.filter_factory = oslo_middleware.request_id:RequestId.factory - -[filter:acl] -paste.filter_factory = keystonemiddleware.auth_token:filter_factory - -[filter:auth_validator] -paste.filter_factory = sahara.api.middleware.auth_valid:AuthValidator.factory - -[filter:debug] -paste.filter_factory = oslo_middleware.debug:Debug.factory - -[filter:http_proxy_to_wsgi] -paste.filter_factory = oslo_middleware:HTTPProxyToWSGI.factory - -[filter:versions] -paste.filter_factory = sahara.api.middleware.version_discovery:VersionResponseMiddlewareV2.factory - -# this filter is given as a reference for v1-only deployments -#[filter:versions] -#paste.filter_factory = sahara.api.middleware.version_discovery:VersionResponseMiddlewareV1.factory diff --git a/templates/rootwrap.conf.j2 b/templates/rootwrap.conf.j2 deleted file mode 100644 index 1cf69ca..0000000 --- a/templates/rootwrap.conf.j2 +++ /dev/null @@ -1,34 +0,0 @@ -# Configuration for sahara-rootwrap -# This file should be owned by (and only-writable by) the root user - -[DEFAULT] -# List of directories to load filter definitions from (separated by ','). -# These directories MUST all be only writable by root ! -filters_path=/etc/sahara/rootwrap.d,/usr/share/sahara/rootwrap - -# List of directories to search executables in, in case filters do not -# explicitely specify a full path (separated by ',') -# If not specified, defaults to system PATH environment variable. -# These directories MUST all be only writable by root ! -exec_dirs={{ sahara_bin }},/sbin,/usr/sbin,/bin,/usr/bin - -# Enable logging to syslog -# Default value is False -use_syslog=False - -# Which syslog facility to use. -# Valid values include auth, authpriv, syslog, local0, local1... -# Default value is 'syslog' -syslog_log_facility=syslog - -# Which messages to log. -# INFO means log all usage -# ERROR means only log unsuccessful attempts -syslog_log_level=ERROR - -[xenapi] -# XenAPI configuration is only required by the L2 agent if it is to -# target a XenServer/XCP compute host's dom0. -xenapi_connection_url= -xenapi_connection_username=root -xenapi_connection_password= diff --git a/templates/sahara.conf.j2 b/templates/sahara.conf.j2 deleted file mode 100644 index 22eea65..0000000 --- a/templates/sahara.conf.j2 +++ /dev/null @@ -1,84 +0,0 @@ -# {{ ansible_managed }} - -[DEFAULT] -# Disable stderr logging -use_stderr = False - -debug = {{ debug }} -use_journal = True -fatal_deprecations = {{ sahara_fatal_deprecations }} -host = {{ sahara_api_bind_address }} -port = {{ sahara_api_service_port }} -workers = {{ sahara_api_workers }} -use_floating_ips = {{ sahara_use_floating_ips }} -use_namespaces = {{ sahara_use_namespaces }} -plugins = {{ sahara_plugin_loaded_base }} -global_remote_threshold = {{ sahara_global_remote_threshold }} -cluster_remote_threshold = {{ sahara_cluster_remote_threshold }} -os_region_name = {{ sahara_os_region_name }} -default_ntp_server = {{ sahara_default_ntp_server }} -{% if sahara_use_domain_for_proxy_users %} -use_domain_for_proxy_users = {{ sahara_use_domain_for_proxy_users }} -proxy_user_domain_name = {{ sahara_proxy_user_domain_name }} -proxy_user_role_names = {{ sahara_proxy_user_role_names }} -{% endif %} - -## RPC Backend -transport_url = {{ sahara_oslomsg_rpc_transport }}://{% for host in sahara_oslomsg_rpc_servers.split(',') %}{{ sahara_oslomsg_rpc_userid }}:{{ sahara_oslomsg_rpc_password }}@{{ host }}:{{ sahara_oslomsg_rpc_port }}{% if not loop.last %},{% else %}/{{ _sahara_oslomsg_rpc_vhost_conf }}{% if sahara_oslomsg_rpc_use_ssl | bool %}?ssl=1&ssl_version={{ sahara_oslomsg_rpc_ssl_version }}&ssl_ca_file={{ sahara_oslomsg_rpc_ssl_ca_file }}{% else %}?ssl=0{% endif %}{% endif %}{% endfor %} - -[database] -connection = mysql+pymysql://{{ sahara_galera_user }}:{{ sahara_container_mysql_password }}@{{ sahara_galera_address }}:{{ sahara_galera_port }}/{{ sahara_galera_database }}?charset=utf8{% if sahara_galera_use_ssl | bool %}&ssl_verify_cert=true{% if sahara_galera_ssl_ca_cert | length > 0 %}&ssl_ca={{ sahara_galera_ssl_ca_cert }}{% endif %}{% endif +%} -max_overflow = {{ sahara_db_max_overflow }} -max_pool_size = {{ sahara_db_max_pool_size }} -pool_timeout = {{ sahara_db_pool_timeout }} -connection_recycle_time = {{ sahara_db_connection_recycle_time }} - -[keystone_authtoken] -insecure = {{ keystone_service_internaluri_insecure | bool }} -auth_type = {{ sahara_keystone_auth_plugin }} -auth_url = {{ keystone_service_adminurl }} -www_authenticate_uri = {{ keystone_service_internaluri }} -project_domain_id = {{ sahara_service_project_domain_id }} -user_domain_id = {{ sahara_service_user_domain_id }} -project_name = {{ sahara_service_project_name }} -username = {{ sahara_service_user_name }} -password = {{ sahara_service_password }} - -service_token_roles_required = {{ sahara_service_token_roles_required | bool }} -service_token_roles = {{ sahara_service_token_roles | join(',') }} -service_type = {{ sahara_service_type }} - -memcached_servers = {{ sahara_memcached_servers }} - -token_cache_time = 300 - -# if your memcached server is shared, use these settings to avoid cache poisoning -memcache_security_strategy = ENCRYPT -memcache_secret_key = {{ memcached_encryption_key }} - -[oslo_policy] -policy_file = {{ sahara_policy_file }} -policy_default_rule = {{ sahara_policy_default_rule }} -policy_dirs = {{ sahara_policy_dirs }} - -# Ceilometer options -[oslo_messaging_notifications] -driver = {{ (sahara_ceilometer_enabled | bool) | ternary('messagingv2', 'noop') }} -transport_url = {{ sahara_oslomsg_notify_transport }}://{% for host in sahara_oslomsg_notify_servers.split(',') %}{{ sahara_oslomsg_notify_userid }}:{{ sahara_oslomsg_notify_password }}@{{ host }}:{{ sahara_oslomsg_notify_port }}{% if not loop.last %},{% else %}/{{ _sahara_oslomsg_notify_vhost_conf }}{% if sahara_oslomsg_notify_use_ssl | bool %}?ssl=1&ssl_version={{ sahara_oslomsg_notify_ssl_version }}&ssl_ca_file={{ sahara_oslomsg_notify_ssl_ca_file }}{% else %}?ssl=0{% endif %}{% endif %}{% endfor %} - -[oslo_messaging_rabbit] -ssl = {{ sahara_oslomsg_rpc_use_ssl }} -rabbit_quorum_queue = {{ sahara_oslomsg_rabbit_quorum_queues }} -rabbit_quorum_delivery_limit = {{ sahara_oslomsg_rabbit_quorum_delivery_limit }} -rabbit_quorum_max_memory_bytes = {{ sahara_oslomsg_rabbit_quorum_max_memory_bytes }} - -[profiler] -enabled = {{ sahara_profiler_enabled }} - -[trustee] -auth_url = {{ keystone_service_adminurl }} -username = {{ sahara_service_user_name }} -password = {{ sahara_service_password }} -project_name = {{ sahara_service_project_name }} -user_domain_name = {{ sahara_service_user_domain_name }} -project_domain_name = {{ sahara_service_project_domain_name }} diff --git a/templates/sudoers.j2 b/templates/sudoers.j2 deleted file mode 100644 index a1a914c..0000000 --- a/templates/sudoers.j2 +++ /dev/null @@ -1,6 +0,0 @@ -# {{ ansible_managed }} - -Defaults:{{ sahara_system_user_name }} !requiretty -Defaults:{{ sahara_system_user_name }} secure_path="{{ sahara_bin }}:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" - -{{ sahara_system_user_name }} ALL = (root) NOPASSWD: {{ sahara_bin }}/{{ sahara_service_name }}-rootwrap diff --git a/tests/ansible-role-requirements.yml b/tests/ansible-role-requirements.yml deleted file mode 100644 index 69bf1c1..0000000 --- a/tests/ansible-role-requirements.yml +++ /dev/null @@ -1,65 +0,0 @@ ---- -- name: apt_package_pinning - src: https://opendev.org/openstack/openstack-ansible-apt_package_pinning - scm: git - version: master -- name: ceph_client - src: https://opendev.org/openstack/openstack-ansible-ceph_client - scm: git - version: master -- name: memcached_server - src: https://opendev.org/openstack/openstack-ansible-memcached_server - scm: git - version: master -- name: openstack_hosts - src: https://opendev.org/openstack/openstack-ansible-openstack_hosts - scm: git - version: master -- name: lxc_hosts - src: https://opendev.org/openstack/openstack-ansible-lxc_hosts - scm: git - version: master -- name: lxc_container_create - src: https://opendev.org/openstack/openstack-ansible-lxc_container_create - scm: git - version: master -- name: galera_client - src: https://opendev.org/openstack/openstack-ansible-galera_client - scm: git - version: master -- name: galera_server - src: https://opendev.org/openstack/openstack-ansible-galera_server - scm: git - version: master -- name: rabbitmq_server - src: https://opendev.org/openstack/openstack-ansible-rabbitmq_server - scm: git - version: master -- name: openstack_openrc - src: https://opendev.org/openstack/openstack-ansible-openstack_openrc - scm: git - version: master -- name: os_keystone - src: https://opendev.org/openstack/openstack-ansible-os_keystone - scm: git - version: master -- name: os_nova - src: https://opendev.org/openstack/openstack-ansible-os_nova - scm: git - version: master -- name: os_tempest - src: https://opendev.org/openstack/openstack-ansible-os_tempest - scm: git - version: master -- name: systemd_service - src: https://opendev.org/openstack/ansible-role-systemd_service - scm: git - version: master -- name: python_venv_build - src: https://opendev.org/openstack/ansible-role-python_venv_build - scm: git - version: master -- name: uwsgi - src: https://opendev.org/openstack/ansible-role-uwsgi - scm: git - version: master diff --git a/tests/group_vars/all_containers.yml b/tests/group_vars/all_containers.yml deleted file mode 100644 index 802a50f..0000000 --- a/tests/group_vars/all_containers.yml +++ /dev/null @@ -1,25 +0,0 @@ ---- -# Copyright 2016, Rackspace US, Inc. -# -# 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. - -container_networks: - management_address: - address: "{{ ansible_host }}" - bridge: "br-mgmt" - interface: "eth1" - netmask: "255.255.255.0" - type: "veth" -physical_host: localhost -properties: - service_name: "{{ inventory_hostname }}" diff --git a/tests/host_vars/infra1.yml b/tests/host_vars/infra1.yml deleted file mode 100644 index 257556f..0000000 --- a/tests/host_vars/infra1.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# Copyright 2016, Rackspace US, Inc. -# -# 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. - -ansible_host: 10.1.1.101 -ansible_become: True -ansible_user: root -container_name: infra1 diff --git a/tests/host_vars/localhost.yml b/tests/host_vars/localhost.yml deleted file mode 100644 index 072e30f..0000000 --- a/tests/host_vars/localhost.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# Copyright 2016, Rackspace US, Inc. -# -# 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. - -ansible_host: 127.0.0.1 -bridges: - - name: "br-mgmt" - ip_addr: "10.1.1.1" diff --git a/tests/host_vars/openstack1.yml b/tests/host_vars/openstack1.yml deleted file mode 100644 index 29c48ad..0000000 --- a/tests/host_vars/openstack1.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# Copyright 2016, Rackspace US, Inc. -# -# 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. - -ansible_host: 10.1.1.102 -ansible_become: True -ansible_user: root -container_name: openstack1 diff --git a/tests/host_vars/sahara1.yml b/tests/host_vars/sahara1.yml deleted file mode 100644 index 4d0ec62..0000000 --- a/tests/host_vars/sahara1.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- -# Copyright 2016, Rackspace US, Inc. -# -# 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. - -ansible_host: 10.1.1.103 -ansible_become: True -ansible_user: root -container_name: sahara1 diff --git a/tests/inventory b/tests/inventory deleted file mode 100644 index 5c378b3..0000000 --- a/tests/inventory +++ /dev/null @@ -1,63 +0,0 @@ -[all] -localhost -infra1 -openstack1 -sahara1 - -[all_containers] -infra1 -openstack1 -sahara1 - -[oslomsg_rpc_all] -infra1 - -[oslomsg_notify_all] -infra1 - -[rabbitmq_all] -infra1 - -[galera_all] -infra1 - -[utility_all] -infra1 - -[service_all:children] -rabbitmq_all -galera_all - -[nova_api_metadata] - -[nova_api_os_compute] -openstack1 - -[nova_api_placement] - -[nova_cert] - -[nova_compute] - -[nova_conductor] -openstack1 - -[nova_console] - -[nova_scheduler] - -[nova_all:children] -nova_api_os_compute - -[keystone_all] -openstack1 - -[sahara_api] -sahara1 - -[sahara_engine] -sahara1 - -[sahara_all:children] -sahara_api -sahara_engine diff --git a/tests/os_sahara-overrides.yml b/tests/os_sahara-overrides.yml deleted file mode 100644 index 737b4a0..0000000 --- a/tests/os_sahara-overrides.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- -# Copyright 2016, Rackspace US, Inc. -# -# 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. - -tempest_run: yes - -tempest_plugins: - - name: sahara-tests - repo: https://opendev.org/openstack/sahara-tests - branch: master - -tempest_test_whitelist: - - sahara_tempest_plugin.tests.api - -sahara_service_password: "secrete" -sahara_container_mysql_password: "SuperSecrete" -sahara_oslomsg_rpc_password: "{{ oslomsg_rpc_password }}" -sahara_service_publicuri: "{{ sahara_service_proto }}://{{ hostvars[groups['sahara_api'][0]]['ansible_host'] }}:{{ sahara_service_port }}" -sahara_service_internaluri: "{{ sahara_service_publicuri }}" -sahara_service_adminuri: "{{ sahara_service_publicuri }}" -sahara_wsgi_processes: 2 diff --git a/tests/test-install-sahara.yml b/tests/test-install-sahara.yml deleted file mode 100644 index 016ae4e..0000000 --- a/tests/test-install-sahara.yml +++ /dev/null @@ -1,24 +0,0 @@ ---- -# Copyright 2015, Rackspace US, Inc. -# -# 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. - -- name: Install Sahara - hosts: sahara_all - remote_user: root - gather_facts: true - any_errors_fatal: true - vars_files: - - common/test-vars.yml - roles: - - role: "os_sahara" diff --git a/tests/test.yml b/tests/test.yml deleted file mode 100644 index 00a2734..0000000 --- a/tests/test.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- -# Copyright 2015, Rackspace US, Inc. -# -# 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. - -# Setup the host -- import_playbook: common/test-setup-host.yml - -# Install RabbitMQ/MariaDB -- import_playbook: common/test-install-infra.yml - -# Install Keystone -- import_playbook: common/test-install-keystone.yml - -# Install Nova -- import_playbook: common/test-install-nova.yml - -# Install Sahara -- import_playbook: test-install-sahara.yml - -# Install and execute Tempest -- import_playbook: common/test-install-tempest.yml diff --git a/tox.ini b/tox.ini deleted file mode 100644 index 3eb0319..0000000 --- a/tox.ini +++ /dev/null @@ -1,93 +0,0 @@ -[tox] -minversion = 3.1 -skipsdist = True -envlist = docs,linters,functional -ignore_basepython_conflict = True - -[testenv] -basepython = python3 -usedevelop = False -commands = - /usr/bin/find . -type f -name "*.pyc" -delete -passenv = - COMMON_TESTS_PATH - HOME - http_proxy - HTTP_PROXY - https_proxy - HTTPS_PROXY - no_proxy - NO_PROXY - TESTING_BRANCH - TESTING_HOME - USER -allowlist_externals = - bash -setenv = - PYTHONUNBUFFERED=1 - ROLE_NAME=os_sahara - TEST_IDEMPOTENCE=false - VIRTUAL_ENV={envdir} - WORKING_DIR={toxinidir} - -[testenv:docs] -deps = - -r{toxinidir}/doc/requirements.txt - -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -commands = - bash -c "rm -rf doc/build" - doc8 doc - sphinx-build -W --keep-going -b html doc/source doc/build/html - -[testenv:pdf-docs] -deps = {[testenv:docs]deps} -allowlist_externals = - make -commands = - sphinx-build -W --keep-going -b latex doc/source doc/build/pdf - make -C doc/build/pdf - -[doc8] -extensions = .rst - -[testenv:releasenotes] -deps = - -r{toxinidir}/doc/requirements.txt - -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -commands = - sphinx-build -a -E -W -d releasenotes/build/doctrees --keep-going -b html releasenotes/source releasenotes/build/html - -[testenv:venv] -commands = - {posargs} - -[testenv:pep8] -commands = - bash -c "{toxinidir}/tests/common/test-pep8.sh" - -[flake8] -ignore = F403,H303 - -[testenv:bashate] -commands = - bash -c "{toxinidir}/tests/common/test-bashate.sh" - -[testenv:ansible-syntax] -commands = - bash -c "{toxinidir}/tests/common/test-ansible-syntax.sh" - -[testenv:ansible-lint] -commands = - bash -c "{toxinidir}/tests/common/test-ansible-lint.sh" - -[testenv:functional] -commands = - bash -c "{toxinidir}/tests/common/test-ansible-functional.sh" - -[testenv:linters] -commands = - bash -c "{toxinidir}/tests/common/test-ansible-env-prep.sh" - {[testenv:pep8]commands} - {[testenv:bashate]commands} - {[testenv:ansible-lint]commands} - {[testenv:ansible-syntax]commands} diff --git a/vars/debian.yml b/vars/debian.yml deleted file mode 100644 index 5283b55..0000000 --- a/vars/debian.yml +++ /dev/null @@ -1,22 +0,0 @@ -# Copyright 2016, Intel Corporation. -# -# 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. - -## APT Cache options -cache_timeout: 600 - -# Common apt packages -sahara_distro_packages: - - git - - libsystemd-dev - - libxml2-dev diff --git a/vars/main.yml b/vars/main.yml deleted file mode 100644 index 57fb2f0..0000000 --- a/vars/main.yml +++ /dev/null @@ -1,76 +0,0 @@ ---- -# Copyright 2019, VEXXHOST, Inc. -# -# 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. - -_sahara_is_first_play_host: >- - {{ - (sahara_services['sahara-api']['group'] in group_names and - inventory_hostname == (groups[sahara_services['sahara-api']['group']] | intersect(ansible_play_hosts)) | first) | bool - }} -_sahara_oslomsg_rpc_vhost_conf: >- - {{ - (sahara_oslomsg_rpc_vhost is string) | ternary( - sahara_oslomsg_rpc_vhost, sahara_oslomsg_rpc_vhost | selectattr('state', 'eq', 'present') | map(attribute='name') | first) - }} -_sahara_oslomsg_notify_vhost_conf: >- - {{ - (sahara_oslomsg_notify_vhost is string) | ternary( - sahara_oslomsg_notify_vhost, sahara_oslomsg_notify_vhost | selectattr('state', 'eq', 'present') | map(attribute='name') | first) - }} - - -filtered_sahara_services: |- - {% set services = [] %} - {% for key, value in sahara_services.items() %} - {% if value['group'] in group_names and not ('wsgi_app' in value and value['wsgi_app']) %} - {% set _ = value.update( - { - 'service_key': key, - 'enabled': value['enabled'] | default(True), - 'state': value['state'] | default('started'), - 'config_overrides': value.init_config_overrides - } - ) - %} - {% set _ = value.pop('init_config_overrides') %} - {# Note (noonedeadpunk): The following condition is added for backwards compatability #} - {# As up to train release sahara role didn't have 'execstarts' in sahara_services keys #} - {% if ('execstarts' not in value) %} - {% set _ = value.update({'execstarts': value.program_override | default(sahara_bin ~ '/' ~ value.service_name)}) %} - {% endif %} - {% set _ = services.append(value) %} - {% endif %} - {% endfor %} - {{ services }} - -uwsgi_sahara_services: |- - {% set services = {} %} - {% for key, value in sahara_services.items() %} - {% if (value['group'] in group_names) and - (('condition' not in value) or ('condition' in value and value['condition'])) - and ('wsgi_app' in value and value['wsgi_app']) %} - {% set _ = value.update( - { - 'wsgi_path': sahara_bin ~ '/' ~ value.wsgi_name, - 'wsgi_venv': sahara_bin | dirname, - 'uwsgi_uid': sahara_system_user_name, - 'uwsgi_guid': sahara_system_group_name, - 'uwsgi_processes': sahara_wsgi_processes, - 'uwsgi_threads': sahara_wsgi_threads - } - ) %} - {% set _ = services.update({key: value}) %} - {% endif %} - {% endfor %} - {{ services }} diff --git a/vars/redhat.yml b/vars/redhat.yml deleted file mode 100644 index bab541c..0000000 --- a/vars/redhat.yml +++ /dev/null @@ -1,20 +0,0 @@ -# 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. - -sahara_distro_packages: - - cronie - - cronie-anacron - - git - - libxml2-devel - - rpcbind - - systemd-devel - - which diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml deleted file mode 100644 index f71d125..0000000 --- a/zuul.d/project.yaml +++ /dev/null @@ -1,25 +0,0 @@ ---- -# Copyright 2017, Rackspace US, Inc. -# -# 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. - -- project: - templates: - - check-requirements - # - openstack-ansible-deploy-aio_metal-jobs - # Note: Uncomment the next template when distro installs are - # ready for the 3 major distros: - # - openstack-ansible-deploy-aio_distro_metal-jobs - - openstack-ansible-linters-jobs - - publish-openstack-docs-pti - - build-release-notes-jobs-python3