keys.sh 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. {% macro gen_keys(values) -%}
  2. #!/bin/sh
  3. set -e
  4. {%- set base_cmd = "/usr/local/concourse/bin/concourse generate-key -t" %}
  5. {%- set signing_key = "%s/session_signing_key" | format(values.consts.keys_path) %}
  6. {%- set tsa_host_key = "%s/tsa_host_key" | format(values.consts.keys_path) %}
  7. {%- set worker_key = "%s/worker_key" | format(values.consts.keys_path) %}
  8. {%- set authorized_keys = "%s/authorized_keys.pub" | format(values.consts.keys_path) %}
  9. [ ! -f "{{ signing_key }}" ] \
  10. && { echo "Generating session signing key..."; {{ base_cmd }} rsa -f {{ signing_key }}; } \
  11. || echo "Session signing key already exists."
  12. [ ! -f "{{ tsa_host_key }}" ] \
  13. && { echo "Generating TSA host key..."; {{ base_cmd }} ssh -f {{ tsa_host_key }}; } \
  14. || echo "TSA host key already exists."
  15. [ ! -f "{{ worker_key }}" ] \
  16. && { echo "Generating worker key..."; {{ base_cmd }} ssh -f {{ worker_key }}; } \
  17. || echo "Worker key already exists."
  18. [ ! -f "{{ authorized_keys }}" ] \
  19. && { echo "Creating authorized keys file..."; touch {{ authorized_keys }}; } \
  20. || echo "Authorized keys file already exists."
  21. worker_key=$(cat {{ worker_key }}.pub)
  22. grep -q "$worker_key" {{ authorized_keys }} \
  23. && echo "Worker key already exists in authorized keys." \
  24. || { echo "Adding worker key to authorized keys..."; echo "$worker_key" >> {{ authorized_keys }}; }
  25. echo "Done."
  26. {% endmacro %}