- name: Install Hex become: true become_user: pleroma ansible.builtin.command: chdir: /opt/pleroma cmd: mix local.hex --force - name: Install rebar3 become: true become_user: pleroma ansible.builtin.command: chdir: /opt/pleroma cmd: mix local.rebar --force - name: Install Pleroma deps become: true become_user: pleroma ansible.builtin.command: chdir: /opt/pleroma cmd: mix deps.get --force - name: Get Pleroma Domain ansible.builtin.pause: prompt: Input Pleroma domain register: result - name: Set Pleroma Domain ansible.builtin.set_fact: pleroma_building_domain: "{{ result.user_input }}" - name: Get Pleroma instance name ansible.builtin.pause: prompt: Input Pleroma instance name register: result - name: Set Pleroma instance name ansible.builtin.set_fact: pleroma_building_instance_name: "{{ result.user_input }}" - name: Get admin email ansible.builtin.pause: prompt: Input admin email register: result - name: Set admin email ansible.builtin.set_fact: pleroma_building_admin_email: "{{ result.user_input }}" - name: Get notify email ansible.builtin.pause: prompt: Input notify email register: result - name: Set notify email ansible.builtin.set_fact: pleroma_building_notify_email: "{{ result.user_input }}" - name: Generate random postgres password ansible.builtin.set_fact: pleroma_building_db_pass: "{{ lookup('community.general.random_string', length=32, special=false) }}" - name: Create PostgreSQL user for pleroma become: true become_user: postgres community.postgresql.postgresql_user: name: pleroma password: "{{ pleroma_building_db_pass }}" - name: Create PostgreSQL database for pleroma become: true become_user: postgres community.postgresql.postgresql_db: name: pleroma owner: pleroma - name: Copy Pleroma config ansible.builtin.template: src: config.exs.j2 dest: /opt/pleroma/config/prod.secret.exs owner: pleroma mode: '0640' - name: Build Pleroma become: true become_user: pleroma environment: MIX_ENV: prod ansible.builtin.command: cmd: mix ecto.migrate chdir: /opt/pleroma