X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=docker%2Fservices%2Fmemcached.yaml;h=d85a087884fed4fe012e1c191e01d671ff4db169;hb=34566ec6a091387b85f4a4636f64fa68f903b29d;hp=87b5f40861452a7f6cf7b85ebf08726f9b70176f;hpb=89927b6b4da16b5234778711e262e0febd3f6814;p=apex-tripleo-heat-templates.git diff --git a/docker/services/memcached.yaml b/docker/services/memcached.yaml index 87b5f408..67b84249 100644 --- a/docker/services/memcached.yaml +++ b/docker/services/memcached.yaml @@ -1,22 +1,24 @@ -heat_template_version: ocata +heat_template_version: pike description: > OpenStack containerized Memcached services parameters: - DockerNamespace: - description: namespace - default: 'tripleoupstream' - type: string DockerMemcachedImage: description: image - default: 'centos-binary-memcached:latest' + type: string + DockerMemcachedConfigImage: + description: The container image to use for the memcached config_volume type: string EndpointMap: default: {} description: Mapping of service endpoint -> protocol. Typically set via parameter_defaults in the resource registry. type: json + ServiceData: + default: {} + description: Dictionary packing service data + type: json ServiceNetMap: default: {} description: Mapping of service_name -> network name. Typically set @@ -26,6 +28,14 @@ parameters: DefaultPasswords: default: {} type: json + RoleName: + default: '' + description: Role name on which the service is applied + type: string + RoleParameters: + default: {} + description: Parameters specific to the role + type: json resources: @@ -36,8 +46,11 @@ resources: type: ../../puppet/services/memcached.yaml properties: EndpointMap: {get_param: EndpointMap} + ServiceData: {get_param: ServiceData} ServiceNetMap: {get_param: ServiceNetMap} DefaultPasswords: {get_param: DefaultPasswords} + RoleName: {get_param: RoleName} + RoleParameters: {get_param: RoleParameters} outputs: role_data: @@ -45,6 +58,8 @@ outputs: value: service_name: {get_attr: [MemcachedBase, role_data, service_name]} config_settings: {get_attr: [MemcachedBase, role_data, config_settings]} + logging_source: {get_attr: [MemcachedBase, role_data, logging_source]} + logging_groups: {get_attr: [MemcachedBase, role_data, logging_groups]} step_config: &step_config get_attr: [MemcachedBase, role_data, step_config] service_config_settings: {get_attr: [MemcachedBase, role_data, service_config_settings]} @@ -53,28 +68,41 @@ outputs: config_volume: 'memcached' puppet_tags: 'file' step_config: *step_config - config_image: &memcached_image - list_join: - - '/' - - [ {get_param: DockerNamespace}, {get_param: DockerMemcachedImage} ] + config_image: {get_param: DockerMemcachedConfigImage} kolla_config: {} docker_config: step_1: + memcached_init_logs: + start_order: 0 + detach: false + image: &memcached_image {get_param: DockerMemcachedImage} + privileged: false + user: root + volumes: + - /var/lib/config-data/memcached/etc/sysconfig/memcached:/etc/sysconfig/memcached:ro + - /var/log/containers/memcached:/var/log/ + command: ['/bin/bash', '-c', 'source /etc/sysconfig/memcached; touch /var/log/memcached.log && chown ${USER} /var/log/memcached.log'] memcached: + start_order: 1 image: *memcached_image net: host privileged: false restart: always volumes: - yaql: - expression: $.data.common.concat($.data.service) - data: - common: {get_attr: [ContainersCommon, volumes]} - service: - - /var/lib/config-data/memcached/etc/sysconfig/memcached:/etc/sysconfig/memcached:ro - command: ['/bin/bash', '-c', 'source /etc/sysconfig/memcached; /usr/bin/memcached -p ${PORT} -u ${USER} -m ${CACHESIZE} -c ${MAXCONN} $OPTIONS'] - environment: - - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS + list_concat: + - {get_attr: [ContainersCommon, volumes]} + - + - /var/lib/config-data/memcached/etc/sysconfig/memcached:/etc/sysconfig/memcached:ro + - /var/log/containers/memcached:/var/log/ + # NOTE: We're adding the log redirection here, even though should + # already be part of the options. This is because the redirection + # via the options is not working and ends up being passed as a + # parameter to the memcached command (which it silently ignores). + # Thus the need for the explicit redirection here. The redirection + # will be removed from the $OPTIONS, which is done via the puppet + # module, but we'll only be able to do this once the following pull + # request merges: https://github.com/saz/puppet-memcached/pull/88 + command: ['/bin/bash', '-c', 'source /etc/sysconfig/memcached; /usr/bin/memcached -p ${PORT} -u ${USER} -m ${CACHESIZE} -c ${MAXCONN} $OPTIONS >> /var/log/memcached.log 2>&1'] upgrade_tasks: - name: Stop and disable memcached service tags: step2