{% macro jobs(job) -%} - name: {{ job.name }} serial: true on_success: put: state-success resource: status-{{ job.name }} no_get: true params: state: success sha: ((.:git_sha)) on_failure: put: state-failure resource: status-{{ job.name }} no_get: true params: state: failure sha: ((.:git_sha)) plan: - get: repo trigger: true - load_var: git_sha file: repo/.git/ref - put: state-pending resource: status-{{ job.name }} no_get: true params: state: pending sha: ((.:git_sha)) - task: build-image privileged: true file: repo/tasks/build-image.yml vars: context: repo/images/{{ job.name }} dockerfile: '' target: '' {%- if "args" in job %} params: {%- for name, value in job.args.items() %} BUILD_ARG_{{name}}: "{{value}}" {%- endfor %} {%- endif %} - put: image-{{ job.name }} inputs: detect params: { image: image/image.tar } no_get: true {%- endmacro -%} {# vim: ft=yaml-jinja #}