---
# Configure admin server to be able to create chain-spec file and subkey commands

- name: Copy bash_profile content
  shell: cat ~/.bash_profile
  register: bash_data

- name: Copy bash_profile content to bashrc for non-interactive sessions
  blockinfile:
    block: '{{ bash_data.stdout }}'
    path: ~/.bashrc
    insertbefore: BOF

- name: Get dependencies for subkey
  shell: curl https://getsubstrate.io -sSf | bash -s -- --fast

- name: Install subkey
  shell: cargo install --force subkey --git https://github.com/paritytech/substrate --version 2.0.1 --locked
  # Run in async fashion for max duration of 1 hr
  async: 3600
  poll: 0
  register: install_result

- name: Check whether install subkey task has finished
  async_status:
    jid: '{{ install_result.ansible_job_id }}'
  register: job_result
  until: job_result.finished
  # Max number of times to check for status
  retries: 36
  # Check for the status every 100s
  delay: 100
