--- - name: Add Buildkite GPG apt Key ansible.builtin.get_url: url: "https://keys.openpgp.org/vks/v1/by-fingerprint/{{ buildkite_gpg_fingerprint }}" dest: /etc/apt/trusted.gpg.d/buildkite.asc - name: Add Buildkite Repository apt_repository: repo: >- deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/buildkite.asc] https://apt.buildkite.com/buildkite-agent stable main filename: buildkite - name: Install buildkite-agent apt: name: - buildkite-agent - name: Add buildkite-agent default configuration ansible.builtin.lineinfile: create: true path: /etc/buildkite-agent/buildkite-agent.cfg regexp: "^{{ item.key }}=" line: | {{ item.key }}={% if item.quote | default(true) %}"{{ item.value }}"{% else %}{{ item.value }}{% endif %} owner: "buildkite-agent" group: "buildkite-agent" loop: "{{ buildkite_default_config }}" notify: - restart buildkite-agent - name: Add buildkite-agent user configuration ansible.builtin.lineinfile: path: /etc/buildkite-agent/buildkite-agent.cfg regexp: "^{{ item.key }}=" line: | {{ item.key }}={% if item.quote | default(true) %}"{{ item.value }}"{% else %}{{ item.value }}{% endif %} owner: "buildkite-agent" group: "buildkite-agent" loop: "{{ buildkite_config }}" notify: - restart buildkite-agent - name: Copy environment hook ansible.builtin.copy: dest: /etc/buildkite-agent/hooks/environment owner: "buildkite-agent" group: "buildkite-agent" content: | #!/bin/bash set -euo pipefail {{ buildkite_environment_hook }} notify: - restart buildkite-agent - name: Ensure buildkite-agent is enabled systemd: name: buildkite-agent state: started enabled: true