tripleo-heat-templates/ci/environments/scenario004-standalone.yaml
Zhu Sheng Li 48d735e723 Add non-string value support for CephAnsibleEnvironmentVariables
CephAnsibleEnvironmentVariables data is supposed to be transformed
into "KEY=VALUE" format by yaql expression.

```
ceph_ansible_environment_variables:
  yaql:
    data: {get_param: CephAnsibleEnvironmentVariables}
    expression: $.data.items().select($[0] + '=' + $[1])
```

However, the expression here uses `+` to join the key($[0]) and
value($[1]), which will cause syntax error when value is not string
type.

For example:

If we use boolean or integer for environment values such as
```
parameter_defaults:
  CephAnsibleEnvironmentVariables:
    ANSIBLE_DEBUG: true
```

the following error will occour

```
overcloud.CephStorageServiceChain:
  resource_type: OS::TripleO::CephStorageServices
  physical_resource_id: 51fd6f95-027b-4047-9132-763e1cb8150c
  status: UPDATE_FAILED
  status_reason: |
    resources.CephStorageServiceChain:
    Error in 4 output role_data:
    Error in CephBase output role_data:
    No function "#operator_+" matches supplied arguments
```

Change-Id: I8394cec6bbaca9c89c848eaddf724c072bc36cb3
Closes-Bug: #1878720
(cherry picked from commit 7c46fd0142)
2020-07-05 20:21:42 +00:00

98 lines
4.5 KiB
YAML

resource_registry:
OS::TripleO::Services::Aide: ../../deployment/aide/aide-baremetal-ansible.yaml
OS::TripleO::Services::CinderApi: OS::Heat::None
OS::TripleO::Services::CinderScheduler: OS::Heat::None
OS::TripleO::Services::CinderVolume: OS::Heat::None
OS::TripleO::Services::Redis: OS::Heat::None
OS::TripleO::Services::Horizon: OS::Heat::None
OS::TripleO::Services::CephMgr: ../../deployment/ceph-ansible/ceph-mgr.yaml
OS::TripleO::Services::CephMon: ../../deployment/ceph-ansible/ceph-mon.yaml
OS::TripleO::Services::CephOSD: ../../deployment/ceph-ansible/ceph-osd.yaml
OS::TripleO::Services::CephMds: ../../deployment/ceph-ansible/ceph-mds.yaml
OS::TripleO::Services::CephRgw: ../../deployment/ceph-ansible/ceph-rgw.yaml
OS::TripleO::Services::CephClient: ../../deployment/ceph-ansible/ceph-client.yaml
OS::TripleO::Services::SwiftProxy: OS::Heat::None
OS::TripleO::Services::SwiftStorage: OS::Heat::None
OS::TripleO::Services::SwiftRingBuilder: OS::Heat::None
OS::TripleO::Services::ManilaApi: ../../deployment/manila/manila-api-container-puppet.yaml
OS::TripleO::Services::ManilaScheduler: ../../deployment/manila/manila-scheduler-container-puppet.yaml
OS::TripleO::Services::ManilaShare: ../../deployment/manila/manila-share-pacemaker-puppet.yaml
OS::TripleO::Services::ManilaBackendCephFs: ../../deployment/manila/manila-backend-cephfs.yaml
OS::TripleO::Services::OsloMessagingRpc: ../../deployment/rabbitmq/rabbitmq-messaging-rpc-pacemaker-puppet.yaml
OS::TripleO::Services::OsloMessagingNotify: ../../deployment/rabbitmq/rabbitmq-messaging-notify-shared-puppet.yaml
OS::TripleO::Services::HAproxy: ../../deployment/haproxy/haproxy-pacemaker-puppet.yaml
OS::TripleO::Services::Pacemaker: ../../deployment/pacemaker/pacemaker-baremetal-puppet.yaml
OS::TripleO::Services::PacemakerRemote: ../../deployment/pacemaker/pacemaker-remote-baremetal-puppet.yaml
OS::TripleO::Services::Clustercheck: ../../deployment/pacemaker/clustercheck-container-puppet.yaml
OS::TripleO::Services::MySQL: ../../deployment/database/mysql-pacemaker-puppet.yaml
OS::TripleO::Services::LoginDefs: ../../deployment/login-defs/login-defs-baremetal.yaml
# Some infra instances don't pass the ping test but are otherwise working.
# Since the OVB jobs also test this functionality we can shut it off here.
OS::TripleO::AllNodes::Validation: ../common/all-nodes-validation-disabled.yaml
parameter_defaults:
ManagePolling: true
Debug: true
CephAnsibleDisksConfig:
osd_objectstore: bluestore
osd_scenario: lvm
lvm_volumes:
- data: ceph_lv_data
data_vg: ceph_vg
db: ceph_lv_db
db_vg: ceph_vg
wal: ceph_lv_wal
wal_vg: ceph_vg
CephPoolDefaultPgNum: 32
CephPoolDefaultSize: 1
CephAnsibleExtraConfig:
centos_package_dependencies: []
ceph_osd_docker_memory_limit: '1g'
ceph_mds_docker_memory_limit: '1g'
mon_host_v1: { 'enabled': False }
handler_health_mon_check_retries: 10
handler_health_mon_check_delay: 20
#NOTE: These ID's and keys should be regenerated for
# a production deployment. What is here is suitable for
# developer and CI testing only.
CephClusterFSID: '4b5c8c0a-ff60-454b-a1b4-9747aa737d19'
CephClientKey: 'AQC+vYNXgDAgAhAAc8UoYt+OTz5uhV7ItLdwUw=='
CephRgwKey: 'AQDLOh1VgEp6FRAAFzT7Zw+Y9V6JJExQAsRnRQ=='
CephAnsiblePlaybookVerbosity: 1
CephAnsibleRepo: "tripleo-centos-ceph-nautilus"
CephAnsibleEnvironmentVariables:
ANSIBLE_SSH_RETRIES: 4
DEFAULT_FORKS: 3
ManilaCephFSDataPoolPGNum: 16
ManilaCephFSMetadataPoolPGNum: 16
NovaEnableRbdBackend: true
GlanceBackend: rbd
CeilometerEnableGnocchi: true
GnocchiBackend: rbd
GnocchiArchivePolicy: 'high'
BannerText: |
******************************************************************
* This system is for the use of authorized users only. Usage of *
* this system may be monitored and recorded by system personnel. *
* Anyone using this system expressly consents to such monitoring *
* and is advised that if such monitoring reveals possible *
* evidence of criminal activity, system personnel may provide *
* the evidence from such monitoring to law enforcement officials.*
******************************************************************
CollectdExtraPlugins:
- rrdtool
LoggingServers:
- host: 127.0.0.1
port: 24224
TtyValues:
- console
- tty1
- tty2
- tty3
- tty4
- tty5
- tty6
CephConfigOverrides:
globalkey: globalvalue
anotherkey: anothervalue