concat
在编写模板时,经常会使用到字符串拼接功能。例如,从虚拟机的结果中获取一个IP,从APP的结果中获取一个监听Port,并在模板的输出中打印出最终的、直观的访问http地址。
字符串拼接是一个内置函数,concat用于将描述字段转换成字符串并进行拼接,支持内嵌get_attribute、get_input函数。
当前版本,仅支持concat定义在output中,不支持在node_templates中定义concat并嵌套get_attribute形式。
语法
concat: [args, {get_attribute:[…]}, {get_input: […]} ]
参数说明
参数 |
参数说明 |
---|---|
args |
用户自定义的任意字段,支持整型,布尔型,字符串型。 例如: concat:[“string example”, 100, -10, true, false], {get_attribute: […]}, {get_input: […]} 上述三种参数排列无顺序要求,内置函数同get_attribute、get_input 。 |
返回值
返回拼接成功的字符串。
示例
properties: package: image: {get_input: magento-image} imagePullPolicy: {get_input: imagePullPolicy} env: - name: MYSQL_HOST #告诉业务,MySQL在哪里 value: concat: - {get_input: mysql-name} - .default.svc.cluster.local # MySQL实际地址,是一个k8s的内部域名 - name: MYSQL_USER value: {get_input: mysql-user} - name: MYSQL_PASSWORD value: {get_input: mysql-password} - name: MYSQL_DATABASE value: {get_input: mysql-database} - name: ACCESS_URL value: concat: - "http://" - {get_input: magento-EIP} - ":" - {get_input: magento-EPORT-s}