Initialise repository structure and placeholder files. Generic functionality works i guess, need to come up with a better solution for compose templates
This commit is contained in:
commit
53695f4fff
411 files changed
+7817
No files matched your search
@@ -0,0 +1,100 @@
|
||||
---
|
||||
- name: Install Pelican server daemon packages
|
||||
ansible.builtin.apt:
|
||||
name:
|
||||
- ca-certificates
|
||||
- curl
|
||||
- tar
|
||||
state: present
|
||||
update_cache: true
|
||||
tags: [pelican_server, packages]
|
||||
|
||||
- name: Create Pelican server directories
|
||||
ansible.builtin.file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
owner: root
|
||||
group: root
|
||||
mode: "0755"
|
||||
loop:
|
||||
- "{{ pelican_server_config_dir }}"
|
||||
- "{{ pelican_server_runtime_dir }}"
|
||||
tags: [pelican_server, directories]
|
||||
|
||||
- name: Install Pelican server daemon binary
|
||||
ansible.builtin.get_url:
|
||||
url: "{{ pelican_server_binary_url }}"
|
||||
dest: "{{ pelican_server_binary_path }}"
|
||||
owner: root
|
||||
group: root
|
||||
mode: "{{ pelican_server_binary_mode }}"
|
||||
notify: restart pelican server
|
||||
tags: [pelican_server, install]
|
||||
|
||||
- name: Check Pelican server daemon binary
|
||||
ansible.builtin.stat:
|
||||
path: "{{ pelican_server_binary_path }}"
|
||||
register: pelican_server_binary
|
||||
tags: [pelican_server, install]
|
||||
|
||||
- name: Require Pelican server daemon binary
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- pelican_server_binary.stat.exists
|
||||
- pelican_server_binary.stat.executable
|
||||
fail_msg: >-
|
||||
Pelican server daemon binary was not found at {{ pelican_server_binary_path }}.
|
||||
Set pelican_server_binary_url or install the daemon binary before enabling this role.
|
||||
tags: [pelican_server, install]
|
||||
|
||||
- name: Check Pelican server config file
|
||||
ansible.builtin.stat:
|
||||
path: "{{ pelican_server_config_file }}"
|
||||
register: pelican_server_config
|
||||
when: pelican_server_require_config | bool
|
||||
tags: [pelican_server, config]
|
||||
|
||||
- name: Require Pelican server config file
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- pelican_server_config.stat.exists
|
||||
fail_msg: >-
|
||||
Pelican server config was not found at {{ pelican_server_config_file }}.
|
||||
Create it from the Pelican panel node configuration before starting the daemon.
|
||||
when: pelican_server_require_config | bool
|
||||
tags: [pelican_server, config]
|
||||
|
||||
- name: Install Pelican server systemd unit
|
||||
ansible.builtin.template:
|
||||
src: wings.service.j2
|
||||
dest: "/etc/systemd/system/{{ pelican_server_service_name }}.service"
|
||||
owner: root
|
||||
group: root
|
||||
mode: "0644"
|
||||
notify:
|
||||
- reload systemd
|
||||
- restart pelican server
|
||||
tags: [pelican_server, systemd]
|
||||
|
||||
- name: Open Pelican server daemon and SFTP ports
|
||||
community.general.ufw:
|
||||
rule: allow
|
||||
port: "{{ item.port }}"
|
||||
proto: "{{ item.proto | default('tcp') }}"
|
||||
loop: "{{ pelican_server_firewall_ports }}"
|
||||
tags: [pelican_server, firewall]
|
||||
|
||||
- name: Open Pelican server allocation ports
|
||||
community.general.ufw:
|
||||
rule: allow
|
||||
port: "{{ item.port }}"
|
||||
proto: "{{ item.proto | default('tcp') }}"
|
||||
loop: "{{ pelican_server_allocation_ports }}"
|
||||
tags: [pelican_server, firewall]
|
||||
|
||||
- name: Enable Pelican server service
|
||||
ansible.builtin.service:
|
||||
name: "{{ pelican_server_service_name }}"
|
||||
enabled: "{{ pelican_server_service_enabled }}"
|
||||
state: "{{ pelican_server_service_state }}"
|
||||
tags: [pelican_server, services]
|
||||
Reference in new issue
Block a user