向数据泵自动化寻求建议

时间:2019-07-11 13:59:48

标签: ansible yaml datapump

我正在尝试遍历每个数据泵并下载正确的DP。它无法区分prod产品和prod产品。仅当JSON文件中“类型”下的条目与字典中的条目直接匹配时,该方法才有效。

了解哪个数据泵是预生产或生产的唯一方法是使用客户端本身的名称。产品前数据泵以-clone结尾。有什么方法可以修改YAML文件来解决这个问题?

vars:
      package_dir: "/var/"
      version_file: "{{ lookup('file','~/github/datapump-ansible/DPA/inventories/jsonlinks.json') | from_json }}"
  - unarchive:
     src: {{ item.link }}
     dest: {{ item.path }}/{{ source[Type] }}/datapump-common
     remote_src: no
    with_items:
      - "{{ find_result.files }}"
      - "{{ DPTypes | list }}"
      - "{{ source[Type] | json_query('results[*].json[*].Type')}}"
  • {{ find_result.files }}/usr/local/datapump/clients/
  • 中每个客户的列表
  • {{ DPTypes | list }}siscanvassftp的字典,它们将它们映射到自己(sis:siscanvas:canvas,{{ 1}})
  • sftp:sftp将是字典中正在迭代的当前条目

如果我们以路径{{ source[Type] }}

为例
  • /usr/local/datapump/clients/abc-client/sftp是指{{ find_result.files }},它是客户端列表中的第一个目录
  • /usr/local/datapump/clients/abc-client/指的是{{ source[Type] }},因为sftp被映射到字典中的sftp

0 个答案:

没有答案