- name: setup directories for telegraf file: path: "/container/{{item}}/telegraf/" state: directory owner: "{{unpriv_user}}" group: docker loop: - docker-images - volumes - name: copy telegraf Dockerfile copy: src: telegraf.Dockerfile dest: /container/docker-images/telegraf/Dockerfile owner: "{{unpriv_user}}" group: docker register: cobald_cp_telegraf_dockerfile - name: copy telegraf repo file copy: # telegraf is found in influxdb repo src: influxdb.repo dest: /container/docker-images/telegraf/influxdb.repo owner: "{{unpriv_user}}" group: docker - name: docker image for telegraf docker_image: name: "ed-telegraf" build: pull: False path: "/container/docker-images/telegraf/" source: build force_source: "{{cobald_cp_telegraf_dockerfile.changed}}" - import_tasks: influxdb.yml tags: influxdb - name: generate telegraf config template: src: telegraf.conf.j2 dest: /container/volumes/telegraf/telegraf.conf owner: "{{unpriv_user}}" group: docker vars: influx_token: "{{influx_telegraf_token.token}}" influx_url: "http://{{cobald_influx_hostname}}:8086" register: telegraf_config_gen - name: run telegraf container docker_container: name: ed-telegraf image: ed-telegraf hostname: telegraf domainname: "{{ cobald_domainname }}" networks: - name: "{{ cobald_docker_network }}" aliases: ["ed-telegraf"] volumes: - "/container/volumes/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf:ro" state: started recreate: "{{ telegraf_config_gen.changed | default(False) | bool }}" detach: True # cleanup: True networks_cli_compatible: True - import_tasks: grafana.yml vars: influx_url: "http://{{cobald_influx_hostname}}:8086" tags: influxdb