---

- name: Fail if playbook called incorrectly
  fail:
    msg: "The `username` variable needs to be provided to this playbook, via --extra-vars"
  when: "username is not defined or username == '<your-username>'"

- name: Fail if playbook called incorrectly
  fail:
    msg: "The `password` variable needs to be provided to this playbook, via --extra-vars"
  when: "password is not defined or password == '<your-password>'"

- name: Fail if playbook called incorrectly
  fail:
    msg: "The `admin` variable needs to be provided to this playbook, via --extra-vars"
  when: "admin is not defined or admin not in ['yes', 'no']"

- name: Ensure matrix-synapse is started
  service:
    name: matrix-synapse
    state: started
    daemon_reload: true
  register: start_result

- name: Wait a while, so that Synapse can manage to start
  pause:
    seconds: 7
  when: "start_result.changed"

- name: Register user
  command: "{{ matrix_local_bin_path }}/matrix-synapse-register-user {{ username|quote }} {{ password|quote }} {{ '1' if admin == 'yes' else '0' }}"
