X-Git-Url: https://git.arvados.org/arvados-formula.git/blobdiff_plain/2d2dd6742e1d8ee0a4cefa5f9db85ec1bdca2dae..aea99ea5eafb8d2256a6441a72021eaf9db7cbb2:/test/salt/states/examples/single_host/snakeoil_certs.sls diff --git a/test/salt/states/examples/single_host/snakeoil_certs.sls b/test/salt/states/examples/single_host/snakeoil_certs.sls index e6c6a96..91617e4 100644 --- a/test/salt/states/examples/single_host/snakeoil_certs.sls +++ b/test/salt/states/examples/single_host/snakeoil_certs.sls @@ -1,14 +1,22 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: Apache-2.0 + {%- set curr_tpldir = tpldir %} {%- set tpldir = 'arvados' %} {%- from "arvados/map.jinja" import arvados with context %} {%- set tpldir = curr_tpldir %} include: + - nginx.passenger + - nginx.config - nginx.service -{%- set arvados_ca_cert_file = '/etc/ssl/certs/arvados-snakeoil-ca.pem' %} +# Debian uses different dirs for certs and keys, but being a Snake Oil example, +# we'll keep it simple here. +{%- set arvados_ca_cert_file = '/etc/ssl/private/arvados-snakeoil-ca.pem' %} {%- set arvados_ca_key_file = '/etc/ssl/private/arvados-snakeoil-ca.key' %} -{%- set arvados_cert_file = '/etc/ssl/certs/arvados-snakeoil-cert.pem' %} +{%- set arvados_cert_file = '/etc/ssl/private/arvados-snakeoil-cert.pem' %} {%- set arvados_csr_file = '/etc/ssl/private/arvados-snakeoil-cert.csr' %} {%- set arvados_key_file = '/etc/ssl/private/arvados-snakeoil-cert.key' %} @@ -46,7 +54,7 @@ arvados_test_salt_states_examples_single_host_snakeoil_certs_arvados_snake_oil_c <(printf "\n[x509_ext]\nbasicConstraints=critical,CA:true,pathlen:0\nkeyUsage=critical,keyCertSign,cRLSign")) \ -out {{ arvados_ca_cert_file }} \ -keyout {{ arvados_ca_key_file }} \ - -days 3650 && \ + -days 365 && \ cp {{ arvados_ca_cert_file }} {{ arvados_ca_cert_dest }} && \ {{ update_ca_cert }} - unless: @@ -90,6 +98,7 @@ arvados_test_salt_states_examples_single_host_snakeoil_certs_arvados_snake_oil_c %} DNS.{{ loop.index }} = {{ entry }}.{{ arvados.cluster.name }}.{{ arvados.cluster.domain }} {%- endfor %} + DNS.7 = {{ arvados.cluster.name }}.{{ arvados.cluster.domain }} CNF # The req @@ -103,7 +112,7 @@ arvados_test_salt_states_examples_single_host_snakeoil_certs_arvados_snake_oil_c # The cert openssl x509 \ -req \ - -days 3650 \ + -days 365 \ -in {{ arvados_csr_file }} \ -out {{ arvados_cert_file }} \ -extfile /tmp/openssl.cnf \ @@ -119,6 +128,9 @@ arvados_test_salt_states_examples_single_host_snakeoil_certs_arvados_snake_oil_c - require: - pkg: arvados_test_salt_states_examples_single_host_snakeoil_certs_dependencies_pkg_installed - cmd: arvados_test_salt_states_examples_single_host_snakeoil_certs_arvados_snake_oil_ca_cmd_run + # We need this before we can add the nginx's snippet + - require_in: + - file: nginx_snippet_arvados-snakeoil.conf {%- if grains.get('os_family') == 'Debian' %} arvados_test_salt_states_examples_single_host_snakeoil_certs_ssl_cert_pkg_installed: @@ -128,21 +140,13 @@ arvados_test_salt_states_examples_single_host_snakeoil_certs_ssl_cert_pkg_instal - sls: postgres arvados_test_salt_states_examples_single_host_snakeoil_certs_certs_permissions_cmd_run: - cmd.run: - - name: | - chown root:ssl-cert {{ arvados_key_file }} + file.managed: + - name: {{ arvados_key_file }} + - owner: root + - group: ssl-cert - require: - cmd: arvados_test_salt_states_examples_single_host_snakeoil_certs_arvados_snake_oil_cert_cmd_run - pkg: arvados_test_salt_states_examples_single_host_snakeoil_certs_ssl_cert_pkg_installed + - require_in: + - file: nginx_snippet_arvados-snakeoil.conf {%- endif %} - -arvados_test_salt_states_examples_single_host_snakeoil_certs_nginx_snakeoil_file_managed: - file.managed: - - name: /etc/nginx/snippets/arvados-snakeoil.conf - - contents: | - ssl_certificate {{ arvados_cert_file }}; - ssl_certificate_key {{ arvados_key_file }}; - - watch_in: - - service: nginx_service - -