- copy: src: "{{image.name}}.Dockerfile" dest: "/container/docker-images/slurm/{{image.name}}.Dockerfile" owner: "{{unpriv_user}}" group: docker register: slurm_cp_dockerfile # TODO: single source of truth: # dockerfile -> parse for startup files or startup files template in dockerfile - name: copy startup scripts copy: contents: "{{ item.content | default(lookup('file', item.name)) }}" dest: "/container/docker-images/slurm/start-scripts/{{item.name}}" owner: root group: root mode: u=rwx,g=rx,o=rx loop: "{{ start_scripts | default([]) }}" register: slurm_cp_stscrs - set_fact: slurm_stscrs_changed: "{{ (slurm_stscrs_changed | default([])) + (slurm_cp_stscrs.results | selectattr('changed') | map(attribute='item.name') | list) }}" - set_fact: slurm_stscrs_relevant: "{{ slurm_stscrs_changed | intersect(start_scripts | default([]) | map(attribute='name') | list) | length > 0 }}" - debug: msg="{{slurm_cp_dockerfile.changed or slurm_stscrs_relevant or slurm_baseimg_build_chg }}" - docker_image: name: "slurm" tag: "{{image.name}}" # pull: False build: pull: False path: "/container/docker-images/slurm/" dockerfile: "{{image.name}}.Dockerfile" # target: "{{image.name}}" # unsupported on old docker-py version as in el7 source: build force_source: "{{slurm_cp_dockerfile.changed or slurm_stscrs_relevant or slurm_baseimg_build_chg }}" # TODO: force when base image changed!