diff --git a/roles/base/tasks/main.yml b/roles/base/tasks/main.yml index e72abe97719053435cefd6f0800d2f5d0e285008..2d31b648db48b5f118a44f084401d2e18bfcb258 100644 --- a/roles/base/tasks/main.yml +++ b/roles/base/tasks/main.yml @@ -16,11 +16,51 @@ 'cifs-utils', 's3fs', 'default-jre-headless', - 'default-jdk-headless' ] + 'default-jdk-headless', + 'python3-cryptography'] - name: Set up dhclient.conf ansible.builtin.lineinfile: insertafter: EOF line: send dhcp-client-identifier = hardware; path: /etc/dhcp/dhclient.conf notify: restart-network - + + +- name: Create /etc/eci-platform. + ansible.builtin.file: + path: /etc/eci-platform + state: directory + mode: '0711' + +- name: Create /etc/eci-platform/priv. + ansible.builtin.file: + path: /etc/eci-platform/priv + state: directory + mode: '0700' + +- name: Create /etc/eci-platform/pub. + ansible.builtin.file: + path: /etc/eci-platform/pub + state: directory + mode: '0755' + +- name: Create private key. + community.crypto.openssl_privatekey: + path: /etc/eci-platform/priv/certificate.key + +- name: Create certificate signing request (CSR) for self-signed certificate. + community.crypto.openssl_csr_pipe: + privatekey_path: /etc/eci-platform/priv/certificate.key + common_name: "{{ hostvars[inventory_hostname]['ansible_default_ipv4']['address'] }}.uni.lux" + organization_name: Environmental Cheminformatics + subject_alt_name: + - "DNS:{{ hostvars[inventory_hostname]['ansible_default_ipv4']['address'] }}.uni.lux" + register: csr + +- name: Create self-signed certificate from CSR + community.crypto.x509_certificate: + path: /etc/eci-platform/pub/certificate.key + csr_content: "{{ csr.csr }}" + privatekey_path: /etc/eci-platform/priv/certificate.key + provider: selfsigned +