Use groups to determine distro packages to install

Use the groups defined in swift_services to determine which distro
packages to install onto hosts instead of installing all distro service
packages on all swift hosts.

The 'swift-plugin-s3' package has also been removed from debian's
package list. s3api should be configured through swift middleware instead.

Change-Id: I1e7a8eba6500c819d418ee565a5f03cc16dfe165
This commit is contained in:
Jimmy McCrory 2019-06-11 10:34:21 -07:00
parent d690240354
commit 3d9567ebad
4 changed files with 51 additions and 12 deletions

View File

@ -32,10 +32,17 @@ swift_service_distro_packages:
- python-memcache
- python-swift
- swift
swift_account_distro_packages:
- swift-account
swift_container_distro_packages:
- swift-container
swift_object_distro_packages:
- swift-object
- swift-plugin-s3
swift_proxy_distro_packages:
- swift-proxy
swift_rsync_service_name: rsync

View File

@ -13,5 +13,21 @@
# See the License for the specific language governing permissions and
# limitations under the License.
swift_package_list: "{{ swift_distro_packages + swift_service_distro_packages }}"
swift_package_list: |-
{% set packages = swift_distro_packages %}
{% if swift_services['swift-account-server']['group'] in group_names %}
{% set _ = packages.extend(swift_account_distro_packages) %}
{% endif %}
{% if swift_services['swift-container-server']['group'] in group_names %}
{% set _ = packages.extend(swift_container_distro_packages) %}
{% endif %}
{% if swift_services['swift-object-server']['group'] in group_names %}
{% set _ = packages.extend(swift_object_distro_packages) %}
{% endif %}
{% if swift_services['swift-proxy-server']['group'] in group_names %}
{% set _ = packages.extend(swift_proxy_distro_packages) %}
{% endif %}
{% set _ = packages.extend(swift_service_distro_packages) %}
{{ packages }}
_swift_bin: "/usr/bin"

View File

@ -29,14 +29,22 @@ swift_devel_distro_packages:
swift_service_distro_packages:
- openstack-swift
- openstack-swift-account
- openstack-swift-container
- openstack-swift-object
- openstack-swift-proxy
- python-keystonemiddleware
- python-memcached
- python-swift
swift_account_distro_packages:
- openstack-swift-account
swift_container_distro_packages:
- openstack-swift-container
swift_object_distro_packages:
- openstack-swift-object
swift_proxy_distro_packages:
- openstack-swift-proxy
swift_rsync_service_name: rsyncd
swift_sshd: sshd

View File

@ -29,14 +29,22 @@ swift_devel_distro_packages:
swift_service_distro_packages:
- openstack-swift
- openstack-swift-account
- openstack-swift-container
- openstack-swift-object
- openstack-swift-proxy
- python-keystonemiddleware
- python-python-memcached
- python-swift
swift_account_distro_packages:
- openstack-swift-account
swift_container_distro_packages:
- openstack-swift-container
swift_object_distro_packages:
- openstack-swift-object
swift_proxy_distro_packages:
- openstack-swift-proxy
swift_rsync_service_name: rsyncd
swift_sshd: sshd