Ansibleは、特定の文字列を含むファイルのみを検索します。

Ansibleは、特定の文字列を含むファイルのみを検索します。

Ansible Playbookを書くのに助けが必要です。これまで、私は基本的に設定を含むすべてのファイルを一覧表示する次のように書きました。ただし、デフォルトでは.git/configファイルをフィルタリングする必要があります。

- hosts: all
  connection: local
  gather_facts: no
  tasks:

  - name: "Serching old git URL"
    become: true
    become_user: root
    find:
      paths: builds
      file_type: file
      recurse: yes
      patterns:
        - config$
      use_regex: true
      contains: 'atlgit-01.us.manh.com'

    register: configfiles
  - debug:
      msg: "{{configfiles.files | map(attribute='path')| list }}"

以下はゼロ出力です。

"/builds/v2020/app/db-upgradesetup-to/.git/config",
"/builds/v2020/app/db-upgradesetup-to/environments/configure/configureEnv.xml",
"/builds/v2020/app/db-upgradesetup-from/.git/config",
"/builds/v2020/app/db-upgradesetup-from/environments/configure/configureEnv.xml",
"/builds/v2020/app/db-upgradesetup-from/ui/help/Content/Resources/images/config.gif",
"/builds/v2020/app/db-upgradesetup-from/ui/help/Content/Resources/images/configure_button.gif",
"/builds/v2020/CI/source/dockerqa/.git/config",
"/builds/v2020/CI/source/docker_ci/.git/config",
"/builds/v2020/escrow/.git/config"

ご協力ありがとうございます

ベストアンサー1

find コマンドには、必要な操作を実行する除外オプションがあります。
除外: '.*./.git.config'

https://docs.ansible.com/ansible/latest/collections/ansible/builtin/find_module.html

おすすめ記事